From 6d7f1b2670cfb4cf2e0b73dc9b2ef77367b30701 Mon Sep 17 00:00:00 2001 From: Jou Sung-Shik Date: Sun, 30 Nov 2014 22:20:19 +0900 Subject: [PATCH 001/117] Add sphinx-intl for I18N --- requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/requirements.txt b/requirements.txt index f47f24596..88fd07f68 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,3 @@ requests sphinx +sphinx-intl From 1f6cea8b2fcb6a38b6c8df7d3f24098b0d407d20 Mon Sep 17 00:00:00 2001 From: Jou Sung-Shik Date: Mon, 1 Dec 2014 00:06:11 +0900 Subject: [PATCH 002/117] Add locale information for Korean --- docs/conf.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/conf.py b/docs/conf.py index b4d183314..575d0cad4 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -271,3 +271,8 @@ intersphinx_mapping = { 'python': ('http://docs.python.org/', None), } + + +locale_dirs = ['locale/'] # path is example but recommended. +gettext_compact = False # optional. + From 738f6387d0af6a1e60014c39b14c506798802840 Mon Sep 17 00:00:00 2001 From: Jou Sung-Shik Date: Mon, 1 Dec 2014 00:07:31 +0900 Subject: [PATCH 003/117] Add initial commit for Korean translation --- docs/locale/ko/LC_MESSAGES/_themes/README.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/_themes/README.po | 47 ++ docs/locale/ko/LC_MESSAGES/dev/env.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/dev/env.po | 460 +++++++++++++ docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 267 ++++++++ docs/locale/ko/LC_MESSAGES/index.mo | Bin 0 -> 471 bytes docs/locale/ko/LC_MESSAGES/index.po | 92 +++ docs/locale/ko/LC_MESSAGES/intro/community.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/intro/community.po | 140 ++++ .../ko/LC_MESSAGES/intro/documentation.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/intro/documentation.po | 66 ++ docs/locale/ko/LC_MESSAGES/intro/duction.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/intro/duction.po | 147 +++++ docs/locale/ko/LC_MESSAGES/intro/learning.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/intro/learning.po | 462 +++++++++++++ docs/locale/ko/LC_MESSAGES/intro/news.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/intro/news.po | 85 +++ .../locale/ko/LC_MESSAGES/notes/contribute.mo | Bin 0 -> 352 bytes .../locale/ko/LC_MESSAGES/notes/contribute.po | 52 ++ docs/locale/ko/LC_MESSAGES/notes/license.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/notes/license.po | 23 + .../locale/ko/LC_MESSAGES/notes/styleguide.mo | Bin 0 -> 352 bytes .../locale/ko/LC_MESSAGES/notes/styleguide.po | 206 ++++++ docs/locale/ko/LC_MESSAGES/scenarios/admin.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/scenarios/admin.po | 304 +++++++++ docs/locale/ko/LC_MESSAGES/scenarios/ci.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/scenarios/ci.po | 141 ++++ docs/locale/ko/LC_MESSAGES/scenarios/cli.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/scenarios/cli.po | 123 ++++ .../locale/ko/LC_MESSAGES/scenarios/client.mo | Bin 0 -> 352 bytes .../locale/ko/LC_MESSAGES/scenarios/client.po | 99 +++ .../locale/ko/LC_MESSAGES/scenarios/crypto.mo | Bin 0 -> 352 bytes .../locale/ko/LC_MESSAGES/scenarios/crypto.po | 53 ++ docs/locale/ko/LC_MESSAGES/scenarios/db.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/scenarios/db.po | 84 +++ docs/locale/ko/LC_MESSAGES/scenarios/gui.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/scenarios/gui.po | 209 ++++++ .../ko/LC_MESSAGES/scenarios/imaging.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/scenarios/imaging.po | 54 ++ .../ko/LC_MESSAGES/scenarios/network.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/scenarios/network.po | 77 +++ .../ko/LC_MESSAGES/scenarios/scientific.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/scenarios/scientific.po | 223 +++++++ .../locale/ko/LC_MESSAGES/scenarios/scrape.mo | Bin 0 -> 352 bytes .../locale/ko/LC_MESSAGES/scenarios/scrape.po | 114 ++++ docs/locale/ko/LC_MESSAGES/scenarios/speed.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/scenarios/speed.po | 158 +++++ docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/scenarios/web.po | 485 ++++++++++++++ docs/locale/ko/LC_MESSAGES/scenarios/xml.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/scenarios/xml.po | 72 ++ .../ko/LC_MESSAGES/shipping/freezing.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/shipping/freezing.po | 240 +++++++ .../ko/LC_MESSAGES/shipping/packaging.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/shipping/packaging.po | 228 +++++++ .../ko/LC_MESSAGES/starting/install/linux.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/starting/install/linux.po | 108 +++ .../ko/LC_MESSAGES/starting/install/osx.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/starting/install/osx.po | 150 +++++ .../ko/LC_MESSAGES/starting/install/win.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/starting/install/win.po | 134 ++++ .../ko/LC_MESSAGES/starting/installation.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/starting/installation.po | 52 ++ .../ko/LC_MESSAGES/starting/pip-virtualenv.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/starting/pip-virtualenv.po | 157 +++++ .../ko/LC_MESSAGES/starting/which-python.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/starting/which-python.po | 293 +++++++++ .../ko/LC_MESSAGES/writing/documentation.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/writing/documentation.po | 230 +++++++ docs/locale/ko/LC_MESSAGES/writing/gotchas.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/writing/gotchas.po | 160 +++++ docs/locale/ko/LC_MESSAGES/writing/license.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/writing/license.po | 120 ++++ docs/locale/ko/LC_MESSAGES/writing/reading.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/writing/reading.po | 98 +++ .../ko/LC_MESSAGES/writing/structure.mo | Bin 0 -> 352 bytes .../ko/LC_MESSAGES/writing/structure.po | 600 +++++++++++++++++ docs/locale/ko/LC_MESSAGES/writing/style.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/writing/style.po | 614 ++++++++++++++++++ docs/locale/ko/LC_MESSAGES/writing/tests.mo | Bin 0 -> 352 bytes docs/locale/ko/LC_MESSAGES/writing/tests.po | 334 ++++++++++ 82 files changed, 7761 insertions(+) create mode 100644 docs/locale/ko/LC_MESSAGES/_themes/README.mo create mode 100644 docs/locale/ko/LC_MESSAGES/_themes/README.po create mode 100644 docs/locale/ko/LC_MESSAGES/dev/env.mo create mode 100644 docs/locale/ko/LC_MESSAGES/dev/env.po create mode 100644 docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo create mode 100644 docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po create mode 100644 docs/locale/ko/LC_MESSAGES/index.mo create mode 100644 docs/locale/ko/LC_MESSAGES/index.po create mode 100644 docs/locale/ko/LC_MESSAGES/intro/community.mo create mode 100644 docs/locale/ko/LC_MESSAGES/intro/community.po create mode 100644 docs/locale/ko/LC_MESSAGES/intro/documentation.mo create mode 100644 docs/locale/ko/LC_MESSAGES/intro/documentation.po create mode 100644 docs/locale/ko/LC_MESSAGES/intro/duction.mo create mode 100644 docs/locale/ko/LC_MESSAGES/intro/duction.po create mode 100644 docs/locale/ko/LC_MESSAGES/intro/learning.mo create mode 100644 docs/locale/ko/LC_MESSAGES/intro/learning.po create mode 100644 docs/locale/ko/LC_MESSAGES/intro/news.mo create mode 100644 docs/locale/ko/LC_MESSAGES/intro/news.po create mode 100644 docs/locale/ko/LC_MESSAGES/notes/contribute.mo create mode 100644 docs/locale/ko/LC_MESSAGES/notes/contribute.po create mode 100644 docs/locale/ko/LC_MESSAGES/notes/license.mo create mode 100644 docs/locale/ko/LC_MESSAGES/notes/license.po create mode 100644 docs/locale/ko/LC_MESSAGES/notes/styleguide.mo create mode 100644 docs/locale/ko/LC_MESSAGES/notes/styleguide.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/admin.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/admin.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/ci.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/ci.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/cli.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/cli.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/client.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/client.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/crypto.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/db.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/db.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/gui.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/gui.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/imaging.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/network.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/network.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/scientific.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/scientific.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/scrape.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/speed.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/speed.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/web.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/web.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/xml.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/xml.po create mode 100644 docs/locale/ko/LC_MESSAGES/shipping/freezing.mo create mode 100644 docs/locale/ko/LC_MESSAGES/shipping/freezing.po create mode 100644 docs/locale/ko/LC_MESSAGES/shipping/packaging.mo create mode 100644 docs/locale/ko/LC_MESSAGES/shipping/packaging.po create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install/linux.mo create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install/linux.po create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install/osx.mo create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install/osx.po create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install/win.mo create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install/win.po create mode 100644 docs/locale/ko/LC_MESSAGES/starting/installation.mo create mode 100644 docs/locale/ko/LC_MESSAGES/starting/installation.po create mode 100644 docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo create mode 100644 docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po create mode 100644 docs/locale/ko/LC_MESSAGES/starting/which-python.mo create mode 100644 docs/locale/ko/LC_MESSAGES/starting/which-python.po create mode 100644 docs/locale/ko/LC_MESSAGES/writing/documentation.mo create mode 100644 docs/locale/ko/LC_MESSAGES/writing/documentation.po create mode 100644 docs/locale/ko/LC_MESSAGES/writing/gotchas.mo create mode 100644 docs/locale/ko/LC_MESSAGES/writing/gotchas.po create mode 100644 docs/locale/ko/LC_MESSAGES/writing/license.mo create mode 100644 docs/locale/ko/LC_MESSAGES/writing/license.po create mode 100644 docs/locale/ko/LC_MESSAGES/writing/reading.mo create mode 100644 docs/locale/ko/LC_MESSAGES/writing/reading.po create mode 100644 docs/locale/ko/LC_MESSAGES/writing/structure.mo create mode 100644 docs/locale/ko/LC_MESSAGES/writing/structure.po create mode 100644 docs/locale/ko/LC_MESSAGES/writing/style.mo create mode 100644 docs/locale/ko/LC_MESSAGES/writing/style.po create mode 100644 docs/locale/ko/LC_MESSAGES/writing/tests.mo create mode 100644 docs/locale/ko/LC_MESSAGES/writing/tests.po diff --git a/docs/locale/ko/LC_MESSAGES/_themes/README.mo b/docs/locale/ko/LC_MESSAGES/_themes/README.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/_themes/README.po b/docs/locale/ko/LC_MESSAGES/_themes/README.po new file mode 100644 index 000000000..a8c68719b --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/_themes/README.po @@ -0,0 +1,47 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../_themes/README.rst:2 +msgid "krTheme Sphinx Style" +msgstr "" + +#: ../../_themes/README.rst:4 +msgid "" +"This repository contains sphinx styles Kenneth Reitz uses in most of his " +"projects. It is a derivative of Mitsuhiko's themes for Flask and Flask " +"related projects. To use this style in your Sphinx documentation, follow " +"this guide:" +msgstr "" + +#: ../../_themes/README.rst:9 +msgid "" +"put this folder as _themes into your docs folder. Alternatively you can " +"also use git submodules to check out the contents there." +msgstr "" + +#: ../../_themes/README.rst:12 +msgid "add this to your :file:`conf.py`: ::" +msgstr "" + +#: ../../_themes/README.rst:18 +msgid "The following themes exist:" +msgstr "" + +#: ../../_themes/README.rst:21 +msgid "the standard flask documentation theme for large projects" +msgstr "" + +#: ../../_themes/README.rst:24 +msgid "" +"small one-page theme. Intended to be used by very small addon libraries." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.mo b/docs/locale/ko/LC_MESSAGES/dev/env.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.po b/docs/locale/ko/LC_MESSAGES/dev/env.po new file mode 100644 index 000000000..3510a75e2 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/dev/env.po @@ -0,0 +1,460 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../dev/env.rst:2 +msgid "Your Development Environment" +msgstr "" + +#: ../../dev/env.rst:6 +msgid "Text Editors" +msgstr "" + +#: ../../dev/env.rst:8 +msgid "" +"Just about anything that can edit plain text will work for writing Python " +"code, however, using a more powerful editor may make your life a bit easier." +msgstr "" + +#: ../../dev/env.rst:13 +msgid "Vim" +msgstr "" + +#: ../../dev/env.rst:15 +msgid "" +"Vim is a text editor which uses keyboard shortcuts for editing instead of " +"menus or icons. There are a couple of plugins and settings for the Vim " +"editor to aid Python development. If you only develop in Python, a good " +"start is to set the default settings for indentation and line-wrapping to " +"values compliant with :pep:`8`. In your home directory, open a file called " +":file:`.vimrc` and add the following lines::" +msgstr "" + +#: ../../dev/env.rst:30 +msgid "" +"With these settings, newlines are inserted after 79 characters and " +"indentation is set to 4 spaces per tab. If you also use Vim for other " +"languages, there is a handy plugin called indent_, which handles indentation" +" settings for Python source files." +msgstr "" + +#: ../../dev/env.rst:35 +msgid "" +"There is also a handy syntax plugin called syntax_ featuring some " +"improvements over the syntax file included in Vim 6.1." +msgstr "" + +#: ../../dev/env.rst:38 +msgid "" +"These plugins supply you with a basic environment for developing in Python. " +"To get the most out of Vim, you should continually check your code for " +"syntax errors and PEP8 compliance. Luckily PEP8_ and Pyflakes_ will do this " +"for you. If your Vim is compiled with :option:`+python` you can also utilize" +" some very handy plugins to do these checks from within the editor." +msgstr "" + +#: ../../dev/env.rst:44 +msgid "" +"For PEP8 checking, install the vim-pep8_ plugin, and for pyflakes you can " +"install vim-pyflakes_. Now you can map the functions ``Pep8()`` or " +"``Pyflakes()`` to any hotkey or action you want in Vim. Both plugins will " +"display errors at the bottom of the screen, and provide an easy way to jump " +"to the corresponding line. It's very handy to call these functions whenever " +"you save a file. In order to do this, add the following lines to your " +":file:`.vimrc`::" +msgstr "" + +#: ../../dev/env.rst:54 +msgid "" +"If you are already using syntastic_, you can set it to run Pyflakes on write" +" and show errors and warnings in the quickfix window. An example " +"configuration to do that which also shows status and warning messages in the" +" statusbar would be::" +msgstr "" + +#: ../../dev/env.rst:66 +msgid "Python-mode" +msgstr "" + +#: ../../dev/env.rst:68 +msgid "" +"Python-mode_ is a complex solution for working with Python code in Vim. It " +"has:" +msgstr "" + +#: ../../dev/env.rst:71 +msgid "" +"Asynchronous Python code checking (``pylint``, ``pyflakes``, ``pep8``, " +"``mccabe``) in any combination" +msgstr "" + +#: ../../dev/env.rst:72 +msgid "Code refactoring and autocompletion with Rope" +msgstr "" + +#: ../../dev/env.rst:73 +msgid "Fast Python folding" +msgstr "" + +#: ../../dev/env.rst:74 +msgid "Virtualenv support" +msgstr "" + +#: ../../dev/env.rst:75 +msgid "Search through Python documentation and run Python code" +msgstr "" + +#: ../../dev/env.rst:76 +msgid "Auto PEP8_ error fixes" +msgstr "" + +#: ../../dev/env.rst:78 +msgid "And more." +msgstr "" + +#: ../../dev/env.rst:81 +msgid "SuperTab" +msgstr "" + +#: ../../dev/env.rst:83 +msgid "" +"SuperTab_ is a small Vim plugin that makes code completion more convenient " +"by using ```` key or any other customized keys." +msgstr "" + +#: ../../dev/env.rst:97 +msgid "Emacs" +msgstr "" + +#: ../../dev/env.rst:99 +msgid "" +"Emacs is another powerful text editor. It is fully programmable (lisp), but " +"it can be some work to wire up correctly. A good start if you're already an " +"Emacs user is `Python Programming in Emacs`_ at EmacsWiki." +msgstr "" + +#: ../../dev/env.rst:103 +msgid "Emacs itself comes with a Python mode." +msgstr "" + +#: ../../dev/env.rst:104 +msgid "" +"Python ships with an alternate version: `python-mode.el " +"`_" +msgstr "" + +#: ../../dev/env.rst:106 +msgid "" +"Fabián Ezequiel Gallina's `python.el " +"`_ provides nice functionality and " +"behavior out of the box" +msgstr "" + +#: ../../dev/env.rst:112 +msgid "TextMate" +msgstr "" + +#: ../../dev/env.rst:114 +msgid "" +"`TextMate `_ brings Apple's approach to operating " +"systems into the world of text editors. By bridging UNIX underpinnings and " +"GUI, TextMate cherry-picks the best of both worlds to the benefit of expert " +"scripters and novice users alike." +msgstr "" + +#: ../../dev/env.rst:120 +msgid "Sublime Text" +msgstr "" + +#: ../../dev/env.rst:122 +msgid "" +"`Sublime Text `_ is a sophisticated text editor" +" for code, markup and prose. You'll love the slick user interface, " +"extraordinary features and amazing performance." +msgstr "" + +#: ../../dev/env.rst:126 +msgid "" +"Sublime Text has excellent support for editing Python code and uses Python " +"for its plugin API. It also has a diverse variety of plugins, `some of which" +" `_ allow for in-editor PEP8" +" checking and code \"linting\"." +msgstr "" + +#: ../../dev/env.rst:131 +msgid "Atom" +msgstr "" + +#: ../../dev/env.rst:133 +msgid "" +"`Atom `_ is a hackable text editor for the 21st century, " +"built on atom-shell, and based on everything we love about our favorite " +"editors." +msgstr "" + +#: ../../dev/env.rst:136 +msgid "" +"Atom is web native (HTML, CSS, JS), focusing on modular design and easy " +"plugin development. It comes with native package control and plethora of " +"packages. Recommended for Python development is `Linter " +"`_ combined with `linter-flake8 " +"`_." +msgstr "" + +#: ../../dev/env.rst:143 +msgid "IDEs" +msgstr "" + +#: ../../dev/env.rst:146 +msgid "PyCharm / IntelliJ IDEA" +msgstr "" + +#: ../../dev/env.rst:148 +msgid "" +"`PyCharm `_ is developed by JetBrains, " +"also known for IntelliJ IDEA. Both share the same code base and most of " +"PyCharm's features can be brought to IntelliJ with the free `Python Plug-In " +"`_. There are two versions of " +"PyCharm: Professional Edition (Free 30-day trial) and Community " +"Edition(Apache 2.0 License) with less features." +msgstr "" + +#: ../../dev/env.rst:156 +msgid "Eclipse" +msgstr "" + +#: ../../dev/env.rst:158 +msgid "" +"The most popular Eclipse plugin for Python development is Aptana's `PyDev " +"`_." +msgstr "" + +#: ../../dev/env.rst:163 +msgid "Komodo IDE" +msgstr "" + +#: ../../dev/env.rst:165 +msgid "" +"`Komodo IDE `_ is developed by " +"ActiveState and is a commercial IDE for Windows, Mac, and Linux. `KomodoEdit" +" `_ is the open source alternative." +msgstr "" + +#: ../../dev/env.rst:172 +msgid "Spyder" +msgstr "" + +#: ../../dev/env.rst:174 +msgid "" +"`Spyder `_ is an IDE specifically " +"geared toward working with scientific Python libraries (namely `Scipy " +"`_). It includes integration with pyflakes_, `pylint " +"`_ and `rope `_." +msgstr "" + +#: ../../dev/env.rst:179 +msgid "" +"Spyder is open-source (free), offers code completion, syntax highlighting, a" +" class and function browser, and object inspection." +msgstr "" + +#: ../../dev/env.rst:184 +msgid "WingIDE" +msgstr "" + +#: ../../dev/env.rst:186 +msgid "" +"`WingIDE `_ is a Python specific IDE. It runs on " +"Linux, Windows and Mac (as an X11 application, which frustrates some Mac " +"users)." +msgstr "" + +#: ../../dev/env.rst:189 +msgid "" +"WingIDE offers code completion, syntax highlighting, source browser, " +"graphical debugger and support for version control systems." +msgstr "" + +#: ../../dev/env.rst:194 +msgid "NINJA-IDE" +msgstr "" + +#: ../../dev/env.rst:196 +msgid "" +"`NINJA-IDE `_ (from the recursive acronym: " +"\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially " +"designed to build Python applications, and runs on Linux/X11, Mac OS X and " +"Windows desktop operating systems. Installers for these platforms can be " +"downloaded from the website." +msgstr "" + +#: ../../dev/env.rst:201 +msgid "" +"NINJA-IDE is open-source software (GPLv3 licence) and is developed in Python" +" and Qt. The source files can be downloaded from `GitHub `_." +msgstr "" + +#: ../../dev/env.rst:206 +msgid "Eric (The Eric Python IDE)" +msgstr "" + +#: ../../dev/env.rst:208 +msgid "" +"`Eric `_ is a full featured Python IDE" +" offering sourcecode autocompletion, syntax highlighting, support for " +"version control systems, python 3 support, integrated web browser, python " +"shell, integrated debugger and a flexible plug-in system. Written in python," +" it is based on the Qt gui toolkit, integrating the Scintilla editor " +"control. Eric is an open-source software (GPLv3 licence) with more than ten " +"years of active development." +msgstr "" + +#: ../../dev/env.rst:218 +msgid "Interpreter Tools" +msgstr "" + +#: ../../dev/env.rst:222 +msgid "Virtual Environments" +msgstr "" + +#: ../../dev/env.rst:224 +msgid "" +"A Virtual Environment is a tool to keep the dependencies required by " +"different projects in separate places, by creating virtual Python " +"environments for them. It solves the \"Project X depends on version 1.x but," +" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"directory clean and manageable." +msgstr "" + +#: ../../dev/env.rst:229 +msgid "" +"For example, you can work on a project which requires Django 1.3 while also " +"maintaining a project which requires Django 1.0." +msgstr "" + +#: ../../dev/env.rst:232 +msgid "" +"To start using and see more information: `Virtual Environments " +"`_ docs." +msgstr "" + +#: ../../dev/env.rst:235 +msgid "Other Tools" +msgstr "" + +#: ../../dev/env.rst:238 +msgid "IDLE" +msgstr "" + +#: ../../dev/env.rst:240 +msgid "" +":ref:`IDLE ` is an integrated development environment that is " +"part of Python standard library. It is completely written in Python and uses" +" the Tkinter GUI toolkit. Though IDLE is not suited for full-blown " +"development using Python, it is quite helpful to try out small Python " +"snippets and experiment with different features in Python." +msgstr "" + +#: ../../dev/env.rst:246 +msgid "It provides the following features:" +msgstr "" + +#: ../../dev/env.rst:248 +msgid "Python Shell Window (interpreter)" +msgstr "" + +#: ../../dev/env.rst:249 +msgid "Multi window text editor that colorizes Python code" +msgstr "" + +#: ../../dev/env.rst:250 +msgid "Minimal debugging facility" +msgstr "" + +#: ../../dev/env.rst:254 +msgid "IPython" +msgstr "" + +#: ../../dev/env.rst:256 +msgid "" +"`IPython `_ provides a rich toolkit to help you make " +"the most out of using Python interactively. Its main components are:" +msgstr "" + +#: ../../dev/env.rst:259 +msgid "Powerful Python shells (terminal- and Qt-based)." +msgstr "" + +#: ../../dev/env.rst:260 +msgid "" +"A web-based notebook with the same core features but support for rich media," +" text, code, mathematical expressions and inline plots." +msgstr "" + +#: ../../dev/env.rst:262 +msgid "Support for interactive data visualization and use of GUI toolkits." +msgstr "" + +#: ../../dev/env.rst:263 +msgid "Flexible, embeddable interpreters to load into your own projects." +msgstr "" + +#: ../../dev/env.rst:264 +msgid "Tools for high level and interactive parallel computing." +msgstr "" + +#: ../../dev/env.rst:273 +msgid "BPython" +msgstr "" + +#: ../../dev/env.rst:275 +msgid "" +"`bpython `_ is an alternative interface to " +"the Python interpreter for Unix-like operating systems. It has the following" +" features:" +msgstr "" + +#: ../../dev/env.rst:278 +msgid "In-line syntax highlighting." +msgstr "" + +#: ../../dev/env.rst:279 +msgid "Readline-like autocomplete with suggestions displayed as you type." +msgstr "" + +#: ../../dev/env.rst:280 +msgid "Expected parameter list for any Python function." +msgstr "" + +#: ../../dev/env.rst:281 +msgid "" +"\"Rewind\" function to pop the last line of code from memory and re-" +"evaluate." +msgstr "" + +#: ../../dev/env.rst:282 +msgid "Send entered code off to a pastebin." +msgstr "" + +#: ../../dev/env.rst:283 +msgid "Save entered code to a file." +msgstr "" + +#: ../../dev/env.rst:284 +msgid "Auto-indentation." +msgstr "" + +#: ../../dev/env.rst:285 +msgid "Python 3 support." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po new file mode 100644 index 000000000..57a5e56b8 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po @@ -0,0 +1,267 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../dev/virtualenvs.rst:2 +msgid "Virtual Environments" +msgstr "" + +#: ../../dev/virtualenvs.rst:4 +msgid "" +"A Virtual Environment is a tool to keep the dependencies required by " +"different projects in separate places, by creating virtual Python " +"environments for them. It solves the \"Project X depends on version 1.x but," +" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"directory clean and manageable." +msgstr "" + +#: ../../dev/virtualenvs.rst:9 +msgid "" +"For example, you can work on a project which requires Django 1.3 while also " +"maintaining a project which requires Django 1.0." +msgstr "" + +#: ../../dev/virtualenvs.rst:13 +msgid "virtualenv" +msgstr "" + +#: ../../dev/virtualenvs.rst:15 +msgid "" +"`virtualenv `_ is a tool to create " +"isolated Python environments. virtualenv creates a folder which contains all" +" the necessary executables to use the packages that a Python project would " +"need." +msgstr "" + +#: ../../dev/virtualenvs.rst:19 +msgid "Install virtualenv via pip:" +msgstr "" + +#: ../../dev/virtualenvs.rst:26 ../../dev/virtualenvs.rst:145 +msgid "Basic Usage" +msgstr "" + +#: ../../dev/virtualenvs.rst:28 +msgid "Create a virtual environment for a project:" +msgstr "" + +#: ../../dev/virtualenvs.rst:35 +msgid "" +"``virtualenv venv`` will create a folder in the current directory which will" +" contain the Python executable files, and a copy of the ``pip`` library " +"which you can use to install other packages. The name of the virtual " +"environment (in this case, it was ``venv``) can be anything; omitting the " +"name will place the files in the current directory instead." +msgstr "" + +#: ../../dev/virtualenvs.rst:40 +msgid "" +"This creates a copy of Python in whichever directory you ran the command in," +" placing it in a folder named :file:`venv`." +msgstr "" + +#: ../../dev/virtualenvs.rst:43 +msgid "You can also use a Python interpreter of your choice." +msgstr "" + +#: ../../dev/virtualenvs.rst:49 +msgid "This will use the Python interpreter in :file:`/usr/bin/python2.7`" +msgstr "" + +#: ../../dev/virtualenvs.rst:51 +msgid "To begin using the virtual environment, it needs to be activated:" +msgstr "" + +#: ../../dev/virtualenvs.rst:57 +msgid "" +"The name of the current virtual environment will now appear on the left of " +"the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to let you " +"know that it's active. From now on, any package that you install using pip " +"will be placed in the ``venv`` folder, isolated from the global Python " +"installation." +msgstr "" + +#: ../../dev/virtualenvs.rst:62 +msgid "Install packages as usual, for example:" +msgstr "" + +#: ../../dev/virtualenvs.rst:68 +msgid "" +"If you are done working in the virtual environment for the moment, you can " +"deactivate it:" +msgstr "" + +#: ../../dev/virtualenvs.rst:75 +msgid "" +"This puts you back to the system's default Python interpreter with all its " +"installed libraries." +msgstr "" + +#: ../../dev/virtualenvs.rst:78 +msgid "" +"To delete a virtual environment, just delete its folder. (In this case, it " +"would be ``rm -rf venv``.)" +msgstr "" + +#: ../../dev/virtualenvs.rst:81 +msgid "" +"After a while, though, you might end up with a lot of virtual environments " +"littered across your system, and its possible you'll forget their names or " +"where they were placed." +msgstr "" + +#: ../../dev/virtualenvs.rst:86 +msgid "Other Notes" +msgstr "" + +#: ../../dev/virtualenvs.rst:88 +msgid "" +"Running ``virtualenv`` with the option :option:`--no-site-packages` will not" +" include the packages that are installed globally. This can be useful for " +"keeping the package list clean in case it needs to be accessed later. [This " +"is the default behavior for ``virtualenv`` 1.7 and later.]" +msgstr "" + +#: ../../dev/virtualenvs.rst:93 +msgid "" +"In order to keep your environment consistent, it's a good idea to \"freeze\"" +" the current state of the environment packages. To do this, run" +msgstr "" + +#: ../../dev/virtualenvs.rst:100 +msgid "" +"This will create a :file:`requirements.txt` file, which contains a simple " +"list of all the packages in the current environment, and their respective " +"versions. Later it will be easier for a different developer (or you, if you " +"need to re-create the environment) to install the same packages using the " +"same versions:" +msgstr "" + +#: ../../dev/virtualenvs.rst:110 +msgid "" +"This can help ensure consistency across installations, across deployments, " +"and across developers." +msgstr "" + +#: ../../dev/virtualenvs.rst:113 +msgid "" +"Lastly, remember to exclude the virtual environment folder from source " +"control by adding it to the ignore list." +msgstr "" + +#: ../../dev/virtualenvs.rst:117 +msgid "virtualenvwrapper" +msgstr "" + +#: ../../dev/virtualenvs.rst:119 +msgid "" +"`virtualenvwrapper " +"`_ provides a" +" set of commands which makes working with virtual environments much more " +"pleasant. It also places all your virtual environments in one place." +msgstr "" + +#: ../../dev/virtualenvs.rst:123 ../../dev/virtualenvs.rst:135 +msgid "To install (make sure **virtualenv** is already installed):" +msgstr "" + +#: ../../dev/virtualenvs.rst:131 +msgid "" +"(`Full virtualenvwrapper install instructions " +"`_.)" +msgstr "" + +#: ../../dev/virtualenvs.rst:133 +msgid "" +"For Windows, you can use the `virtualenvwrapper-powershell " +"`_ clone." +msgstr "" + +#: ../../dev/virtualenvs.rst:147 +msgid "Create a virtual environment:" +msgstr "" + +#: ../../dev/virtualenvs.rst:153 +msgid "This creates the :file:`venv` folder inside :file:`~/Envs`." +msgstr "" + +#: ../../dev/virtualenvs.rst:155 +msgid "Work on a virtual environment:" +msgstr "" + +#: ../../dev/virtualenvs.rst:161 +msgid "" +"**virtualenvwrapper** provides tab-completion on environment names. It " +"really helps when you have a lot of environments and have trouble " +"remembering their names." +msgstr "" + +#: ../../dev/virtualenvs.rst:165 +msgid "" +"``workon`` also deactivates whatever environment you are currently in, so " +"you can quickly switch between environments." +msgstr "" + +#: ../../dev/virtualenvs.rst:168 +msgid "Deactivating is still the same:" +msgstr "" + +#: ../../dev/virtualenvs.rst:174 +msgid "To delete:" +msgstr "" + +#: ../../dev/virtualenvs.rst:181 +msgid "Other useful commands" +msgstr "" + +#: ../../dev/virtualenvs.rst:184 +msgid "List all of the environments." +msgstr "" + +#: ../../dev/virtualenvs.rst:187 +msgid "" +"Navigate into the directory of the currently activated virtual environment, " +"so you can browse its :file:`site-packages`, for example." +msgstr "" + +#: ../../dev/virtualenvs.rst:191 +msgid "Like the above, but directly into :file:`site-packages` directory." +msgstr "" + +#: ../../dev/virtualenvs.rst:194 +msgid "Shows contents of :file:`site-packages` directory." +msgstr "" + +#: ../../dev/virtualenvs.rst:196 +msgid "" +"`Full list of virtualenvwrapper commands " +"`_." +msgstr "" + +#: ../../dev/virtualenvs.rst:199 +msgid "autoenv" +msgstr "" + +#: ../../dev/virtualenvs.rst:200 +msgid "" +"When you ``cd`` into a directory containing a :file:`.env`, `autoenv " +"`_ automagically activates the " +"environment." +msgstr "" + +#: ../../dev/virtualenvs.rst:203 +msgid "Install it on Mac OS X using ``brew``:" +msgstr "" + +#: ../../dev/virtualenvs.rst:209 +msgid "And on Linux:" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo new file mode 100644 index 0000000000000000000000000000000000000000..82eedd62723c7399503be3c83e7632b026912740 GIT binary patch literal 471 zcmYLE!A{#i5Opg~KK9(h7eX=yMOguJtYVcxSn5h3xi(D~$&0zJB zWqrKo-wd~+gu*u0agy)@s-9)g%z2-Jme4)Yi4+y9tK=6NYi#xL9aR~Z!iV9a#}-o8 zaUIX@(VLuWUz+a%K%DI&6zXsLYIkvZ(;g5jPq5A~EEWUp2?*nsfV ziRED3ObC_}Mlqsf;6uBy+uUz71E{y#8!30BV(WI;3WJBoJjb;+rO;HEQ%6H%SJOlN za+ne>UPGJ^l~KL6AHBuegKlo=GgTOfSoXPKKGZ&OZCmAdT-@9h=eNbp2#TxQ^76Et mT+hxfp!|MP{JJ*9y#M>h?B^dSrlWE)g<^6tJH9JMQ|ljd%ALai literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po new file mode 100644 index 000000000..f34e5e3fe --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -0,0 +1,92 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: Jou Sung-Shik \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../index.rst:7 +msgid "The Hitchhiker's Guide to Python!" +msgstr "파이썬을 여행하는 히치하이커를 위한 안내서" + +#: ../../index.rst:9 +msgid "Welcome to The Hitchhiker's Guide to Python." +msgstr "" + +#: ../../index.rst:11 +msgid "" +"**This guide is currently under heavy active development.** If you'd like " +"to help, `fork us on GitHub `_!" +msgstr "" + +#: ../../index.rst:14 +msgid "" +"This *opinionated* guide exists to provide both novice and expert Python " +"developers a best-practice handbook to the installation, configuration, and " +"usage of Python on a daily basis." +msgstr "" + +#: ../../contents.rst.inc:2 +msgid "Getting Started" +msgstr "" + +#: ../../contents.rst.inc:4 +msgid "This part of the guide focuses on setting up your Python environment." +msgstr "" + +#: ../../contents.rst.inc:11 +msgid "Properly Install Python" +msgstr "" + +#: ../../contents.rst.inc:23 +msgid "Writing Great Code" +msgstr "" + +#: ../../contents.rst.inc:25 +msgid "" +"This part of the guide focuses on best practices for writing Python code." +msgstr "" + +#: ../../contents.rst.inc:41 +msgid "Scenario Guide" +msgstr "" + +#: ../../contents.rst.inc:43 +msgid "" +"This part of the guide focuses on tool and module advice based on different " +"scenarios." +msgstr "" + +#: ../../contents.rst.inc:66 +msgid "Shipping Great Code" +msgstr "" + +#: ../../contents.rst.inc:68 +msgid "This part of the guide focuses on deploying your Python code." +msgstr "" + +#: ../../contents.rst.inc:78 +msgid "Development Environment" +msgstr "" + +#: ../../contents.rst.inc:90 +msgid "Additional Notes" +msgstr "" + +#: ../../contents.rst.inc:92 +msgid "" +"This part of the guide, which is mostly prose, begins with some background " +"information about Python, then focuses on next steps." +msgstr "" + +#: ../../contents.rst.inc:109 +msgid "" +"Contribution notes and legal information are here (for those interested)." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/intro/community.mo b/docs/locale/ko/LC_MESSAGES/intro/community.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/intro/community.po b/docs/locale/ko/LC_MESSAGES/intro/community.po new file mode 100644 index 000000000..0006b9a9b --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/intro/community.po @@ -0,0 +1,140 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../intro/community.rst:4 +msgid "The Community" +msgstr "" + +#: ../../intro/community.rst:7 +msgid "BDFL" +msgstr "" + +#: ../../intro/community.rst:9 +msgid "" +"Guido van Rossum, the creator of Python, is often referred to as the BDFL — " +"the Benevolent Dictator For Life." +msgstr "" + +#: ../../intro/community.rst:15 +msgid "Python Software Foundation" +msgstr "" + +#: ../../intro/community.rst:17 +msgid "" +"The mission of the Python Software Foundation is to promote, protect, and " +"advance the Python programming language, and to support and facilitate the " +"growth of a diverse and international community of Python programmers." +msgstr "" + +#: ../../intro/community.rst:21 +msgid "`Learn More about the PSF `_." +msgstr "" + +#: ../../intro/community.rst:25 +msgid "PEPs" +msgstr "" + +#: ../../intro/community.rst:27 +msgid "" +"PEPs are *Python Enhancement Proposals*. They describe changes to Python " +"itself, or the standards around it." +msgstr "" + +#: ../../intro/community.rst:30 +msgid "There are three different types of PEPs (as defined by :pep:`1`):" +msgstr "" + +#: ../../intro/community.rst:33 +msgid "Describes a new feature or implementation." +msgstr "" + +#: ../../intro/community.rst:36 +msgid "" +"Describes a design issue, general guidelines, or information to the " +"community." +msgstr "" + +#: ../../intro/community.rst:40 +msgid "Describes a process related to Python." +msgstr "" + +#: ../../intro/community.rst:44 +msgid "Notable PEPs" +msgstr "" + +#: ../../intro/community.rst:46 +msgid "There are a few PEPs that could be considered required reading:" +msgstr "" + +#: ../../intro/community.rst:49 +msgid "Read this. All of it. Follow it." +msgstr "" + +#: ../../intro/community.rst:52 +msgid "" +"A list of 19 statements that briefly explain the philosophy behind Python." +msgstr "" + +#: ../../intro/community.rst:55 +msgid "" +"Gives guidelines for semantics and conventions associated with Python " +"docstrings." +msgstr "" + +#: ../../intro/community.rst:58 +msgid "" +"You can read more at `The PEP Index `_." +msgstr "" + +#: ../../intro/community.rst:61 +msgid "Submitting a PEP" +msgstr "" + +#: ../../intro/community.rst:63 +msgid "" +"PEPs are peer-reviewed and accepted/rejected after much discussion. Anyone " +"can write and submit a PEP for review." +msgstr "" + +#: ../../intro/community.rst:66 +msgid "Here's an overview of the PEP acceptance workflow:" +msgstr "" + +#: ../../intro/community.rst:72 +msgid "Python Conferences" +msgstr "" + +#: ../../intro/community.rst:74 +msgid "" +"The major events for the Python community are developer conferences. The two" +" most notable conferences are PyCon, which is held in the US, and its " +"European sibling, EuroPython." +msgstr "" + +#: ../../intro/community.rst:78 +msgid "" +"A comprehensive list of conferences is maintained at `pycon.org " +"`_." +msgstr "" + +#: ../../intro/community.rst:82 +msgid "Python User Groups" +msgstr "" + +#: ../../intro/community.rst:84 +msgid "" +"User Groups are where a bunch of Python developers meet to present or talk " +"about Python topics of interest. A list of local user groups is maintained " +"at the `Python Software Foundation Wiki " +"`_." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.mo b/docs/locale/ko/LC_MESSAGES/intro/documentation.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.po b/docs/locale/ko/LC_MESSAGES/intro/documentation.po new file mode 100644 index 000000000..dfc19b59b --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/intro/documentation.po @@ -0,0 +1,66 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../intro/documentation.rst:2 +msgid "Documentation" +msgstr "" + +#: ../../intro/documentation.rst:5 +msgid "Official Documentation" +msgstr "" + +#: ../../intro/documentation.rst:7 +msgid "" +"The official Python Language and Library documentation can be found here:" +msgstr "" + +#: ../../intro/documentation.rst:9 +msgid "`Python 2.x `_" +msgstr "" + +#: ../../intro/documentation.rst:10 +msgid "`Python 3.x `_" +msgstr "" + +#: ../../intro/documentation.rst:14 +msgid "Read the Docs" +msgstr "" + +#: ../../intro/documentation.rst:16 +msgid "" +"Read the Docs is a popular community project that hosts documentation for " +"open source software. It holds documentation for many Python modules, both " +"popular and exotic." +msgstr "" + +#: ../../intro/documentation.rst:20 +msgid "`Read the Docs `_" +msgstr "" + +#: ../../intro/documentation.rst:24 +msgid "pydoc" +msgstr "" + +#: ../../intro/documentation.rst:26 +msgid "" +":program:`pydoc` is a utlity that is installed when you install Python. It " +"allows you to quickly retrieve and search for documentation from your shell." +" For example, if you needed a quick refresher on the :mod:`time` module, " +"pulling up documentation would be as simple as" +msgstr "" + +#: ../../intro/documentation.rst:35 +msgid "" +"The above command is essentially equivalent to opening the Python REPL and " +"running" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.mo b/docs/locale/ko/LC_MESSAGES/intro/duction.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.po b/docs/locale/ko/LC_MESSAGES/intro/duction.po new file mode 100644 index 000000000..6eeb9a963 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/intro/duction.po @@ -0,0 +1,147 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../intro/duction.rst:2 +msgid "Introduction" +msgstr "" + +#: ../../intro/duction.rst:4 +msgid "From the `official Python website `_:" +msgstr "" + +#: ../../intro/duction.rst:6 +msgid "" +"Python is a general-purpose, high-level programming language similar to Tcl," +" Perl, Ruby, Scheme, or Java. Some of its main key features include:" +msgstr "" + +#: ../../intro/duction.rst:10 +msgid "**very clear, readable syntax**" +msgstr "" + +#: ../../intro/duction.rst:12 +msgid "" +"Python's philosophy focuses on readability, from code blocks delineated with" +" significant whitespace to intuitive keywords in place of inscrutable " +"punctuation." +msgstr "" + +#: ../../intro/duction.rst:16 +msgid "" +"**extensive standard libraries and third party modules for virtually any " +"task**" +msgstr "" + +#: ../../intro/duction.rst:19 +msgid "" +"Python is sometimes described with the words \"batteries included\" because " +"of its extensive `standard library `_, " +"which includes modules for regular expressions, file IO, fraction handling, " +"object serialization, and much more." +msgstr "" + +#: ../../intro/duction.rst:25 +msgid "" +"Additionally, the `Python Package Index `_ is " +"available for users to submit their packages for widespread use, similar to " +"Perl's `CPAN `_. There is a thriving community of very " +"powerful Python frameworks and tools like the `Django " +"`_ web framework and the `NumPy " +"`_ set of math routines." +msgstr "" + +#: ../../intro/duction.rst:33 +msgid "**integration with other systems**" +msgstr "" + +#: ../../intro/duction.rst:35 +msgid "" +"Python can integrate with `Java libraries `_, " +"enabling it to be used with the rich Java environment that corporate " +"programmers are used to. It can also be `extended by C or C++ modules " +"`_ when speed is of the essence." +msgstr "" + +#: ../../intro/duction.rst:41 +msgid "**ubiquity on computers**" +msgstr "" + +#: ../../intro/duction.rst:43 +msgid "" +"Python is available on Windows, \\*nix, and Mac. It runs wherever the Java " +"virtual machine runs, and the reference implementation CPython can help " +"bring Python to wherever there is a working C compiler." +msgstr "" + +#: ../../intro/duction.rst:47 +msgid "**friendly community**" +msgstr "" + +#: ../../intro/duction.rst:49 +msgid "" +"Python has a vibrant and large :ref:`community ` which " +"maintains wikis, conferences, countless repositories, mailing lists, IRC " +"channels, and so much more. Heck, the Python community is even helping to " +"write this guide!" +msgstr "" + +#: ../../intro/duction.rst:58 +msgid "About This Guide" +msgstr "" + +#: ../../intro/duction.rst:61 +msgid "Purpose" +msgstr "" + +#: ../../intro/duction.rst:63 +msgid "" +"The Hitchhiker's Guide to Python exists to provide both novice and expert " +"Python developers a best-practice handbook to the installation, " +"configuration, and usage of Python on a daily basis." +msgstr "" + +#: ../../intro/duction.rst:69 +msgid "By the Community" +msgstr "" + +#: ../../intro/duction.rst:71 +msgid "" +"This guide is architected and maintained by `Kenneth Reitz " +"`_ in an open fashion. This is a community-" +"driven effort that serves one purpose: to serve the community." +msgstr "" + +#: ../../intro/duction.rst:76 +msgid "For the Community" +msgstr "" + +#: ../../intro/duction.rst:78 +msgid "" +"All contributions to the Guide are welcome, from Pythonistas of all levels. " +"If you think there's a gap in what the Guide covers, fork the Guide on " +"GitHub and submit a pull request." +msgstr "" + +#: ../../intro/duction.rst:82 +msgid "" +"Contributions are welcome from everyone, whether they're an old hand or a " +"first-time Pythonista, and the authors to the Guide will gladly help if you " +"have any questions about the appropriateness, completeness, or accuracy of a" +" contribution." +msgstr "" + +#: ../../intro/duction.rst:87 +msgid "" +"To get started working on The Hitchhiker's Guide, see the " +":doc:`/notes/contribute` page." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.mo b/docs/locale/ko/LC_MESSAGES/intro/learning.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.po b/docs/locale/ko/LC_MESSAGES/intro/learning.po new file mode 100644 index 000000000..9acc40428 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/intro/learning.po @@ -0,0 +1,462 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../intro/learning.rst:2 +msgid "Learning Python" +msgstr "" + +#: ../../intro/learning.rst:5 +msgid "Beginner" +msgstr "" + +#: ../../intro/learning.rst:8 +msgid "The Python Tutorial" +msgstr "" + +#: ../../intro/learning.rst:10 +msgid "" +"This is the official tutorial. It covers all the basics, and offers a tour " +"of the language and the standard library. Recommended for those who need a " +"quickstart guide to the language." +msgstr "" + +#: ../../intro/learning.rst:14 +msgid "`The Python Tutorial `_" +msgstr "" + +#: ../../intro/learning.rst:18 +msgid "Learn Python Interactive Tutorial" +msgstr "" + +#: ../../intro/learning.rst:20 +msgid "" +"Learnpython.org is an easy non-intimidating way to get introduced to Python." +" The website takes the same approach used on the popular `Try Ruby " +"`_ website, it has an interactive Python interpreter " +"built into the site that allows you to go through the lessons without having" +" to install Python locally." +msgstr "" + +#: ../../intro/learning.rst:25 +msgid "`Learn Python `_" +msgstr "" + +#: ../../intro/learning.rst:28 +msgid "" +"If you want a more traditional book, *Python For You and Me* is an excellent" +" resource for learning all aspects of the language." +msgstr "" + +#: ../../intro/learning.rst:31 +msgid "`Python for You and Me `_" +msgstr "" + +#: ../../intro/learning.rst:35 +msgid "Invent Your Own Computer Games with Python" +msgstr "" + +#: ../../intro/learning.rst:37 +msgid "" +"This beginner's book is for those with no programming experience at all. " +"Each chapter has the source code to a small game, using these example " +"programs to demonstrate programming concepts to give the reader an idea of " +"what programs \"look like\"." +msgstr "" + +#: ../../intro/learning.rst:42 +msgid "" +"`Invent Your Own Computer Games with Python `_" +msgstr "" + +#: ../../intro/learning.rst:46 +msgid "Hacking Secret Ciphers with Python" +msgstr "" + +#: ../../intro/learning.rst:48 +msgid "" +"This book teaches Python programming and basic cryptography for absolute " +"beginners. The chapters provide the source code for various ciphers, as well" +" as programs that can break them." +msgstr "" + +#: ../../intro/learning.rst:52 +msgid "" +"`Hacking Secret Ciphers with Python `_" +msgstr "" + +#: ../../intro/learning.rst:55 +msgid "Learn Python the Hard Way" +msgstr "" + +#: ../../intro/learning.rst:57 +msgid "" +"This is an excellent beginner programmer's guide to Python. It covers " +"\"hello world\" from the console to the web." +msgstr "" + +#: ../../intro/learning.rst:60 +msgid "`Learn Python the Hard Way `_" +msgstr "" + +#: ../../intro/learning.rst:64 +msgid "Crash into Python" +msgstr "" + +#: ../../intro/learning.rst:66 +msgid "" +"Also known as *Python for Programmers with 3 Hours*, this guide gives " +"experienced developers from other languages a crash course on Python." +msgstr "" + +#: ../../intro/learning.rst:69 +msgid "`Crash into Python `_" +msgstr "" + +#: ../../intro/learning.rst:73 +msgid "Dive Into Python 3" +msgstr "" + +#: ../../intro/learning.rst:75 +msgid "" +"Dive Into Python 3 is a good book for those ready to jump in to Python 3. " +"It's a good read if you are moving from Python 2 to 3 or if you already have" +" some experience programming in another language." +msgstr "" + +#: ../../intro/learning.rst:79 +msgid "`Dive Into Python 3 `_" +msgstr "" + +#: ../../intro/learning.rst:82 +msgid "Think Python: How to Think Like a Computer Scientist" +msgstr "" + +#: ../../intro/learning.rst:84 +msgid "" +"Think Python attempts to give an introduction to basic concepts in computer " +"science through the use of the Python language. The focus was to create a " +"book with plenty of exercises, minimal jargon and a section in each chapter " +"devoted to the subject of debugging." +msgstr "" + +#: ../../intro/learning.rst:89 +msgid "" +"While exploring the various features available in the Python language the " +"author weaves in various design patterns and best practices." +msgstr "" + +#: ../../intro/learning.rst:92 +msgid "" +"The book also includes several case studies which have the reader explore " +"the topics discussed in the book in greater detail by applying those topics " +"to real-world examples. Case studies include assignments in GUI and Markov " +"Analysis." +msgstr "" + +#: ../../intro/learning.rst:97 +msgid "`Think Python `_" +msgstr "" + +#: ../../intro/learning.rst:101 +msgid "Python Koans" +msgstr "" + +#: ../../intro/learning.rst:103 +msgid "" +"Python Koans is a port of Edgecase's Ruby Koans. It uses a test-driven " +"approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive tutorial" +" teaching basic Python concepts. By fixing assertion statements that fail " +"in a test script, this provides sequential steps to learning Python." +msgstr "" + +#: ../../intro/learning.rst:108 +msgid "" +"For those used to languages and figuring out puzzles on their own, this can " +"be a fun, attractive option. For those new to Python and programming, having" +" an additional resource or reference will be helpful." +msgstr "" + +#: ../../intro/learning.rst:112 +msgid "`Python Koans `_" +msgstr "" + +#: ../../intro/learning.rst:114 +msgid "" +"More information about test driven development can be found at these " +"resources:" +msgstr "" + +#: ../../intro/learning.rst:116 +msgid "" +"`Test Driven Development `_" +msgstr "" + +#: ../../intro/learning.rst:119 +msgid "A Byte of Python" +msgstr "" + +#: ../../intro/learning.rst:121 +msgid "" +"A free introductory book that teaches Python at the beginner level, it " +"assumes no previous programming experience." +msgstr "" + +#: ../../intro/learning.rst:124 +msgid "" +"`A Byte of Python for Python 2.x " +"`_ `A Byte of Python " +"for Python 3.x `_" +msgstr "" + +#: ../../intro/learning.rst:129 +msgid "Advanced" +msgstr "" + +#: ../../intro/learning.rst:132 +msgid "Pro Python" +msgstr "" + +#: ../../intro/learning.rst:134 +msgid "" +"This book is for intermediate to advanced Python programmers who are looking" +" to understand how and why Python works the way it does and how they can " +"take their code to the next level." +msgstr "" + +#: ../../intro/learning.rst:137 +msgid "`Pro Python `_" +msgstr "" + +#: ../../intro/learning.rst:141 +msgid "Expert Python Programming" +msgstr "" + +#: ../../intro/learning.rst:142 +msgid "" +"Expert Python Programming deals with best practices in programming Python " +"and is focused on the more advanced crowd." +msgstr "" + +#: ../../intro/learning.rst:145 +msgid "" +"It starts with topics like decorators (with caching, proxy, and context " +"manager case-studies), method resolution order, using super() and meta-" +"programming, and general :pep:`8` best practices." +msgstr "" + +#: ../../intro/learning.rst:149 +msgid "" +"It has a detailed, multi-chapter case study on writing and releasing a " +"package and eventually an application, including a chapter on using " +"zc.buildout. Later chapters detail best practices with writing " +"documentation, test-driven development, version control, and " +"optimization/profiling." +msgstr "" + +#: ../../intro/learning.rst:154 +msgid "" +"`Expert Python Programming `_" +msgstr "" + +#: ../../intro/learning.rst:158 +msgid "A Guide to Python's Magic Methods" +msgstr "" + +#: ../../intro/learning.rst:160 +msgid "" +"This is a collection of blog posts by Rafe Kettler which explain 'magic " +"methods' in Python. Magic methods are surrounded by double underscores " +"(i.e. __init__) and can make classes and objects behave in different and " +"magical ways." +msgstr "" + +#: ../../intro/learning.rst:164 +msgid "" +"`A Guide to Python's Magic Methods " +"`_" +msgstr "" + +#: ../../intro/learning.rst:168 +msgid "For Engineers and Scientists" +msgstr "" + +#: ../../intro/learning.rst:171 +msgid "A Primer on Scientific Programming with Python" +msgstr "" + +#: ../../intro/learning.rst:173 +msgid "" +"A Primer on Scientific Programming with Python, written by Hans Petter " +"Langtangen, mainly covers Python's usage in scientific field. In the book, " +"examples are chosen from mathematics and the natural sciences." +msgstr "" + +#: ../../intro/learning.rst:177 +msgid "" +"`A Primer on Scientific Programming with Python " +"`_" +msgstr "" + +#: ../../intro/learning.rst:180 +msgid "Numerical Methods in Engineering with Python" +msgstr "" + +#: ../../intro/learning.rst:182 +msgid "" +"Numerical Methods in Engineering with Python, written by Jaan Kiusalaas, " +"attempts to emphasis on numerical methods and how to implement them in " +"Python." +msgstr "" + +#: ../../intro/learning.rst:185 +msgid "" +"`Numerical Methods in Engineering with Python " +"`_" +msgstr "" + +#: ../../intro/learning.rst:188 +msgid "Miscellaneous topics" +msgstr "" + +#: ../../intro/learning.rst:191 +msgid "Problem Solving with Algorithms and Data Structures" +msgstr "" + +#: ../../intro/learning.rst:193 +msgid "" +"Problem Solving with Algorithms and Data Structures covers a range of data " +"structures and algorithms. All concepts are illustrated with Python code " +"along with interactive samples that can be run directly in the browser." +msgstr "" + +#: ../../intro/learning.rst:197 +msgid "" +"`Problem Solving with Algorithms and Data Structures " +"`_" +msgstr "" + +#: ../../intro/learning.rst:201 +msgid "Programming Collective Intelligence" +msgstr "" + +#: ../../intro/learning.rst:203 +msgid "" +"Programming Collective Intelligence introduces a wide array of basic machine" +" learning and data mining methods. The exposition is not very mathematically" +" formal, but rather focuses on explaining the underlying intuition and shows" +" how to implement the algorithms in Python." +msgstr "" + +#: ../../intro/learning.rst:207 +msgid "" +"`Programming Collective Intelligence " +"`_" +msgstr "" + +#: ../../intro/learning.rst:210 +msgid "References" +msgstr "" + +#: ../../intro/learning.rst:213 +msgid "Python in a Nutshell" +msgstr "" + +#: ../../intro/learning.rst:215 +msgid "" +"Python in a Nutshell, written by Alex Martelli, covers most cross-platform " +"Python's usage, from its syntax to built-in libraries to advanced topics " +"such as writing C extensions." +msgstr "" + +#: ../../intro/learning.rst:219 +msgid "" +"`Python in a Nutshell `_" +msgstr "" + +#: ../../intro/learning.rst:222 +msgid "The Python Language Reference" +msgstr "" + +#: ../../intro/learning.rst:224 +msgid "" +"This is Python's reference manual, it covers the syntax and the core " +"semantics of the language." +msgstr "" + +#: ../../intro/learning.rst:227 +msgid "" +"`The Python Language Reference " +"`_" +msgstr "" + +#: ../../intro/learning.rst:230 +msgid "Python Pocket Reference" +msgstr "" + +#: ../../intro/learning.rst:232 +msgid "" +"Python Pocket Reference, written by Mark Lutz, is an easy to use reference " +"to the core language, with descriptions of commonly used modules and " +"toolkits. It covers Python 3 and 2.6 versions." +msgstr "" + +#: ../../intro/learning.rst:236 +msgid "" +"`Python Pocket Reference " +"`_" +msgstr "" + +#: ../../intro/learning.rst:239 +msgid "Python Cookbook" +msgstr "" + +#: ../../intro/learning.rst:241 +msgid "" +"Python Cookbook, written by David Beazley and Brian K. Jones, is packed with" +" practical recipes. This book covers the core python language as well as " +"tasks common to a wide variety of application domains." +msgstr "" + +#: ../../intro/learning.rst:245 +msgid "`Python Cookbook `_" +msgstr "" + +#: ../../intro/learning.rst:248 +msgid "Writing Idiomatic Python" +msgstr "" + +#: ../../intro/learning.rst:250 +msgid "" +"\"Writing Idiomatic Python\", written by Jeff Knupp, contains the most " +"common and important Python idioms in a format that maximizes identification" +" and understanding. Each idiom is presented as a recommendation of a way to " +"write some commonly used piece of code, followed by an explanation of why " +"the idiom is important. It also contains two code samples for each idiom: " +"the \"Harmful\" way to write it and the \"Idiomatic\" way." +msgstr "" + +#: ../../intro/learning.rst:257 +msgid "" +"`For Python 2.7.3+ `_" +msgstr "" + +#: ../../intro/learning.rst:259 +msgid "" +"`For Python 3.3+ `_" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.mo b/docs/locale/ko/LC_MESSAGES/intro/news.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.po b/docs/locale/ko/LC_MESSAGES/intro/news.po new file mode 100644 index 000000000..c119cbc6d --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/intro/news.po @@ -0,0 +1,85 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../intro/news.rst:2 +msgid "News" +msgstr "" + +#: ../../intro/news.rst:5 +msgid "Planet Python" +msgstr "" + +#: ../../intro/news.rst:7 +msgid "" +"This is an aggregate of Python news from a growing number of developers." +msgstr "" + +#: ../../intro/news.rst:9 +msgid "`Planet Python `_" +msgstr "" + +#: ../../intro/news.rst:12 +msgid "/r/python" +msgstr "" + +#: ../../intro/news.rst:14 +msgid "" +"/r/python is the Reddit Python community where users contribute and vote on " +"Python-related news." +msgstr "" + +#: ../../intro/news.rst:17 +msgid "`/r/python `_" +msgstr "" + +#: ../../intro/news.rst:20 +msgid "Pycoder's Weekly" +msgstr "" + +#: ../../intro/news.rst:22 +msgid "" +"Pycoder's Weekly is a free weekly Python newsletter for Python developers by" +" Python developers (Projects, Articles, News, and Jobs)." +msgstr "" + +#: ../../intro/news.rst:25 +msgid "`Pycoder's Weekly `_" +msgstr "" + +#: ../../intro/news.rst:28 +msgid "Python Weekly" +msgstr "" + +#: ../../intro/news.rst:30 +msgid "" +"Python Weekly is a free weekly newsletter featuring curated news, articles, " +"new releases, jobs, etc. related to Python." +msgstr "" + +#: ../../intro/news.rst:33 +msgid "`Python Weekly `_" +msgstr "" + +#: ../../intro/news.rst:36 +msgid "Python News" +msgstr "" + +#: ../../intro/news.rst:38 +msgid "" +"News section in the official Python web site (www.python.org). It briefly " +"highlights the news from Python community." +msgstr "" + +#: ../../intro/news.rst:41 +msgid "`Python News `_" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/notes/contribute.mo b/docs/locale/ko/LC_MESSAGES/notes/contribute.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/notes/contribute.po b/docs/locale/ko/LC_MESSAGES/notes/contribute.po new file mode 100644 index 000000000..238d1b7e8 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/notes/contribute.po @@ -0,0 +1,52 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../notes/contribute.rst:2 +msgid "Contribute" +msgstr "" + +#: ../../notes/contribute.rst:4 +msgid "" +"Python-guide is under active development, and contributors are welcome." +msgstr "" + +#: ../../notes/contribute.rst:6 +msgid "" +"If you have a feature request, suggestion, or bug report, please open a new " +"issue on GitHub_. To submit patches, please send a pull request on GitHub_. " +"Once your changes get merged back in, you'll automatically be added to the " +"`Contributors List `_." +msgstr "" + +#: ../../notes/contribute.rst:12 +msgid "Style Guide" +msgstr "" + +#: ../../notes/contribute.rst:14 +msgid "For all contributions, please follow the :ref:`guide-style-guide`." +msgstr "" + +#: ../../notes/contribute.rst:19 +msgid "Todo List" +msgstr "" + +#: ../../notes/contribute.rst:21 +msgid "" +"If you'd like to contribute, there's plenty to do. Here's a short todo_ " +"list." +msgstr "" + +#: ../../../TODO.rst:1 +msgid "Establish \"use this\" vs \"alternatives are....\" recommendations" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/notes/license.mo b/docs/locale/ko/LC_MESSAGES/notes/license.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/notes/license.po b/docs/locale/ko/LC_MESSAGES/notes/license.po new file mode 100644 index 000000000..79f151cfe --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/notes/license.po @@ -0,0 +1,23 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../notes/license.rst:3 +msgid "License" +msgstr "" + +#: ../../notes/license.rst:5 +msgid "" +"The Guide is licensed under the `Creative Commons Attribution-NonCommercial-" +"ShareAlike 3.0 Unported license `_." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo b/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/notes/styleguide.po b/docs/locale/ko/LC_MESSAGES/notes/styleguide.po new file mode 100644 index 000000000..87fe9068f --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/notes/styleguide.po @@ -0,0 +1,206 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../notes/styleguide.rst:5 +msgid "The Guide Style Guide" +msgstr "" + +#: ../../notes/styleguide.rst:7 +msgid "" +"As with all documentation, having a consistent format helps make the " +"document more understandable. In order to make The Guide easier to digest, " +"all contributions should fit within the rules of this style guide where " +"appropriate." +msgstr "" + +#: ../../notes/styleguide.rst:12 +msgid "The Guide is written as :ref:`restructuredtext-ref`." +msgstr "" + +#: ../../notes/styleguide.rst:14 +msgid "" +"Parts of The Guide may not yet match this style guide. Feel free to update " +"those parts to be in sync with The Guide Style Guide" +msgstr "" + +#: ../../notes/styleguide.rst:17 +msgid "" +"On any page of the rendered HTML you can click \"Show Source\" to see how " +"authors have styled the page." +msgstr "" + +#: ../../notes/styleguide.rst:21 +msgid "Relevancy" +msgstr "" + +#: ../../notes/styleguide.rst:23 +msgid "" +"Strive to keep any contributions relevant to the :ref:`purpose of The Guide " +"`." +msgstr "" + +#: ../../notes/styleguide.rst:26 +msgid "" +"Avoid including too much information on subjects that don't directly relate " +"to Python development." +msgstr "" + +#: ../../notes/styleguide.rst:28 +msgid "" +"Prefer to link to other sources if the information is already out there. Be " +"sure to describe what and why you are linking." +msgstr "" + +#: ../../notes/styleguide.rst:30 +msgid "" +"`Cite `_ " +"references where needed." +msgstr "" + +#: ../../notes/styleguide.rst:32 +msgid "" +"If a subject isn't directly relevant to Python, but useful in conjunction " +"with Python (e.g., Git, GitHub, Databases), reference by linking to useful " +"resources, and describe why it's useful to Python." +msgstr "" + +#: ../../notes/styleguide.rst:35 +msgid "When in doubt, ask." +msgstr "" + +#: ../../notes/styleguide.rst:38 +msgid "Headings" +msgstr "" + +#: ../../notes/styleguide.rst:40 +msgid "Use the following styles for headings." +msgstr "" + +#: ../../notes/styleguide.rst:42 +msgid "Chapter title:" +msgstr "" + +#: ../../notes/styleguide.rst:50 +msgid "Page title:" +msgstr "" + +#: ../../notes/styleguide.rst:58 +msgid "Section headings:" +msgstr "" + +#: ../../notes/styleguide.rst:65 +msgid "Sub section headings:" +msgstr "" + +#: ../../notes/styleguide.rst:73 +msgid "Prose" +msgstr "" + +#: ../../notes/styleguide.rst:75 +msgid "" +"Wrap text lines at 78 characters. Where necessary, lines may exceed 78 " +"characters, especially if wrapping would make the source text more difficult" +" to read." +msgstr "" + +#: ../../notes/styleguide.rst:81 +msgid "Code Examples" +msgstr "" + +#: ../../notes/styleguide.rst:83 +msgid "" +"Wrap all code examples at 70 characters to avoid horizontal scrollbars." +msgstr "" + +#: ../../notes/styleguide.rst:85 +msgid "Command line examples:" +msgstr "" + +#: ../../notes/styleguide.rst:94 +msgid "Be sure to include the ``$`` prefix before each line." +msgstr "" + +#: ../../notes/styleguide.rst:96 +msgid "Python interpreter examples:" +msgstr "" + +#: ../../notes/styleguide.rst:106 +msgid "Python examples:" +msgstr "" + +#: ../../notes/styleguide.rst:118 +msgid "Externally Linking" +msgstr "" + +#: ../../notes/styleguide.rst:120 +msgid "Prefer labels for well known subjects (ex: proper nouns) when linking:" +msgstr "" + +#: ../../notes/styleguide.rst:128 +msgid "" +"Prefer to use descriptive labels with inline links instead of leaving bare " +"links:" +msgstr "" + +#: ../../notes/styleguide.rst:135 +msgid "" +"Avoid using labels such as \"click here\", \"this\", etc. preferring " +"descriptive labels (SEO worthy) instead." +msgstr "" + +#: ../../notes/styleguide.rst:139 +msgid "Linking to Sections in The Guide" +msgstr "" + +#: ../../notes/styleguide.rst:141 +msgid "" +"To cross-reference other parts of this documentation, use the `:ref: " +"`_ keyword and labels." +msgstr "" + +#: ../../notes/styleguide.rst:145 +msgid "" +"To make reference labels more clear and unique, always add a ``-ref`` " +"suffix:" +msgstr "" + +#: ../../notes/styleguide.rst:155 +msgid "Notes and Warnings" +msgstr "" + +#: ../../notes/styleguide.rst:157 +msgid "" +"Make use of the appropriate `admonitions directives " +"`_ when making notes." +msgstr "" + +#: ../../notes/styleguide.rst:160 +msgid "Notes:" +msgstr "" + +#: ../../notes/styleguide.rst:169 +msgid "Warnings:" +msgstr "" + +#: ../../notes/styleguide.rst:176 +msgid "TODOs" +msgstr "" + +#: ../../notes/styleguide.rst:178 +msgid "" +"Please mark any incomplete areas of The Guide with a `todo directive " +"`_. To " +"avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for stub " +"documents or large incomplete sections." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo b/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po new file mode 100644 index 000000000..108e086a6 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po @@ -0,0 +1,304 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/admin.rst:2 +msgid "Systems Administration" +msgstr "" + +#: ../../scenarios/admin.rst:5 +msgid "Fabric" +msgstr "" + +#: ../../scenarios/admin.rst:7 +msgid "" +"`Fabric `_ is a library for simplifying system " +"administration tasks. While Chef and Puppet tend to focus on managing " +"servers and system libraries, Fabric is more focused on application level " +"tasks such as deployment." +msgstr "" + +#: ../../scenarios/admin.rst:12 +msgid "Install Fabric:" +msgstr "" + +#: ../../scenarios/admin.rst:18 +msgid "" +"The following code will create two tasks that we can use: ``memory_usage`` " +"and ``deploy``. The former will output the memory usage on each machine. The" +" latter will ssh into each server, cd to our project directory, activate the" +" virtual environment, pull the newest codebase, and restart the application " +"server." +msgstr "" + +#: ../../scenarios/admin.rst:41 +msgid "" +"With the previous code saved in a file named :file:`fabfile.py`, we can " +"check memory usage with:" +msgstr "" + +#: ../../scenarios/admin.rst:61 +msgid "and we can deploy with:" +msgstr "" + +#: ../../scenarios/admin.rst:67 +msgid "" +"Additional features include parallel execution, interaction with remote " +"programs, and host grouping." +msgstr "" + +#: ../../scenarios/admin.rst:70 +msgid "`Fabric Documentation `_" +msgstr "" + +#: ../../scenarios/admin.rst:73 +msgid "Salt" +msgstr "" + +#: ../../scenarios/admin.rst:75 +msgid "" +"`Salt `_ is an open source infrastructure management " +"tool. It supports remote command execution from a central point (master " +"host) to multiple hosts (minions). It also supports system states which can " +"be used to configure multiple servers using simple template files." +msgstr "" + +#: ../../scenarios/admin.rst:80 +msgid "" +"Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" +msgstr "" + +#: ../../scenarios/admin.rst:86 +msgid "" +"After configuring a master server and any number of minion hosts, we can run" +" arbitrary shell commands or use pre-built modules of complex commands on " +"our minions." +msgstr "" + +#: ../../scenarios/admin.rst:89 +msgid "" +"The following command lists all available minion hosts, using the ping " +"module." +msgstr "" + +#: ../../scenarios/admin.rst:95 +msgid "" +"The host filtering is accomplished by matching the minion id, or using the " +"grains system. The `grains " +"`_ system " +"uses static host information like the operating system version or the CPU " +"architecture to provide a host taxonomy for the Salt modules." +msgstr "" + +#: ../../scenarios/admin.rst:100 +msgid "" +"The following command lists all available minions running CentOS using the " +"grains system:" +msgstr "" + +#: ../../scenarios/admin.rst:106 +msgid "" +"Salt also provides a state system. States can be used to configure the " +"minion hosts." +msgstr "" + +#: ../../scenarios/admin.rst:108 +msgid "" +"For example, when a minion host is ordered to read the following state file," +" it will install and start the Apache server:" +msgstr "" + +#: ../../scenarios/admin.rst:122 +msgid "" +"State files can be written using YAML, the Jinja2 template system or pure " +"Python." +msgstr "" + +#: ../../scenarios/admin.rst:124 +msgid "`Salt Documentation `_" +msgstr "" + +#: ../../scenarios/admin.rst:128 +msgid "Psutil" +msgstr "" + +#: ../../scenarios/admin.rst:130 +msgid "" +"`Psutil `_ is an interface to different " +"system information (e.g. CPU, memory, disks, network, users and processes)." +msgstr "" + +#: ../../scenarios/admin.rst:133 +msgid "" +"Here is an example to be aware of some server overload. If any of the tests " +"(net, CPU) fail, it will send an email." +msgstr "" + +#: ../../scenarios/admin.rst:179 +msgid "" +"A full terminal application like a widely extended top which is based on " +"psutil and with the ability of a client-server monitoring is `glance " +"`_." +msgstr "" + +#: ../../scenarios/admin.rst:184 +msgid "Ansible" +msgstr "" + +#: ../../scenarios/admin.rst:186 +msgid "" +"`Ansible `_ is an open source system automation tool. " +"The biggest advantage over Puppet or Chef is it does not require an agent on" +" the client machine. Playbooks are Ansible’s configuration, deployment, and " +"orchestration language and are written in in YAML with Jinja2 for " +"templating." +msgstr "" + +#: ../../scenarios/admin.rst:191 +msgid "" +"Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" +msgstr "" + +#: ../../scenarios/admin.rst:197 +msgid "" +"Ansible requires an inventory file that describes the hosts to which it has " +"access. Below is an example of a host and playbook that will ping all the " +"hosts in the inventory file." +msgstr "" + +#: ../../scenarios/admin.rst:201 +msgid "Here is an example inventory file: :file:`hosts.yml`" +msgstr "" + +#: ../../scenarios/admin.rst:209 +msgid "Here is an example playbook: :file:`ping.yml`" +msgstr "" + +#: ../../scenarios/admin.rst:221 +msgid "To run the playbook:" +msgstr "" + +#: ../../scenarios/admin.rst:227 +msgid "" +"The Ansible playbook will ping all of the servers in the :file:`hosts.yml` " +"file. You can also select groups of servers using Ansible. For more " +"information about Ansible, read the `Ansible Docs " +"`_." +msgstr "" + +#: ../../scenarios/admin.rst:233 +msgid "Chef" +msgstr "" + +#: ../../scenarios/admin.rst:235 +msgid "Write about Chef" +msgstr "" + +#: ../../scenarios/admin.rst:237 +msgid "" +"`Chef Documentation `_" +msgstr "" + +#: ../../scenarios/admin.rst:241 +msgid "Puppet" +msgstr "" + +#: ../../scenarios/admin.rst:243 +msgid "" +"`Puppet `_ is an IT Automation and configuration " +"management software from Puppet Labs that allows System Administrators to " +"define the state of their IT Infrastructure, thereby providing an elegant " +"way to manage their fleet of physical and virtual machines." +msgstr "" + +#: ../../scenarios/admin.rst:248 +msgid "" +"Puppet is available both as an Open Source and an Enterprise variant. " +"Modules are small,shareable units of code written to automate or define the " +"state of a system. `Puppet Forge `_ is a " +"repository for modules written by the community for Open Source and " +"Enterprise Puppet." +msgstr "" + +#: ../../scenarios/admin.rst:253 +msgid "" +"Puppet Agents are installed on nodes whose state needs to be monitored or " +"changed. A desginated server known as the Puppet Master is responsible for " +"orchastrating the agent nodes." +msgstr "" + +#: ../../scenarios/admin.rst:257 +msgid "" +"Agent nodes send basic facts about the system such as to the operating " +"system, kernel, architecture, ip address, hostname etc. to the Puppet " +"Master. The Puppet Master then compiles a catalog with information provided " +"by the agents on how each node should be configured and sends it to the " +"agent. The agent enforces the change as prescribed in the catalog and sends " +"a report back to the Puppet Master." +msgstr "" + +#: ../../scenarios/admin.rst:263 +msgid "" +"Facter is an interesting tool that ships with Puppet that pulls basic facts " +"about the System. These facts can be referenced as a variable while writing " +"your Puppet modules." +msgstr "" + +#: ../../scenarios/admin.rst:276 +msgid "" +"Writing Modules in Puppet is pretty straight forward. Puppet Manifests " +"together form Puppet Modules. Puppet manifest end with an extension of " +"``.pp``. Here is an example of 'Hello World' in Puppet." +msgstr "" + +#: ../../scenarios/admin.rst:288 +msgid "" +"Here is another example with system based logic. Note how the " +"operatingsystem fact is being used as a variable prepended with the ``$`` " +"sign. Similarly, this holds true for other facts such as hostname which can " +"be referenced by ``$hostname``" +msgstr "" + +#: ../../scenarios/admin.rst:301 +msgid "" +"There are several resource types for Puppet but the package-file-service " +"paradigm is all you need for undertaking majority of the configuration " +"management. The following Puppet code makes sure that the OpenSSH-Server " +"package is installed in a system and the sshd service is notified to restart" +" everytime the sshd configuration file is changed." +msgstr "" + +#: ../../scenarios/admin.rst:331 +msgid "" +"For more information checkout `Puppet Labs Documentation " +"`_" +msgstr "" + +#: ../../scenarios/admin.rst:334 +msgid "Blueprint" +msgstr "" + +#: ../../scenarios/admin.rst:336 +msgid "Write about Blueprint" +msgstr "" + +#: ../../scenarios/admin.rst:339 +msgid "Buildout" +msgstr "" + +#: ../../scenarios/admin.rst:341 +msgid "Write about Buildout" +msgstr "" + +#: ../../scenarios/admin.rst:343 +msgid "`Buildout Website `_" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo b/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po new file mode 100644 index 000000000..4301ebe05 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po @@ -0,0 +1,141 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/ci.rst:2 +msgid "Continuous Integration" +msgstr "" + +#: ../../scenarios/ci.rst:6 +msgid "Why?" +msgstr "" + +#: ../../scenarios/ci.rst:8 +msgid "" +"Martin Fowler, who first wrote about `Continuous Integration " +"`_ (short: CI) " +"together with Kent Beck, describes the CI as follows:" +msgstr "" + +#: ../../scenarios/ci.rst:11 +msgid "" +"Continuous Integration is a software development practice where members of a" +" team integrate their work frequently, usually each person integrates at " +"least daily - leading to multiple integrations per day. Each integration is " +"verified by an automated build (including test) to detect integration errors" +" as quickly as possible. Many teams find that this approach leads to " +"significantly reduced integration problems and allows a team to develop " +"cohesive software more rapidly." +msgstr "" + +#: ../../scenarios/ci.rst:20 +msgid "Jenkins" +msgstr "" + +#: ../../scenarios/ci.rst:22 +msgid "" +"`Jenkins CI `_ is an extensible continuous " +"integration engine. Use it." +msgstr "" + +#: ../../scenarios/ci.rst:28 +msgid "Buildbot" +msgstr "" + +#: ../../scenarios/ci.rst:30 +msgid "" +"`Buildbot `_ is a Python system to " +"automate the compile/test cycle to validate code changes." +msgstr "" + +#: ../../scenarios/ci.rst:35 +msgid "Mule" +msgstr "" + +#: ../../scenarios/ci.rst:37 +msgid "" +"`Mule " +"`_ " +"is a lightweight integration platform that enables you to connect anything, " +"anywhere. You can use Mule to intelligently manage message routing, data " +"mapping, orchestration, reliability, security and scalability between nodes." +" Plug other systems and applications into Mule and let it handle all the " +"communication between systems, enabling you to track and monitor everything " +"that happens." +msgstr "" + +#: ../../scenarios/ci.rst:47 +msgid "Tox" +msgstr "" + +#: ../../scenarios/ci.rst:49 +msgid "" +"`tox `_ is an automation tool " +"providing packaging, testing and deployment of Python software right from " +"the console or CI server. It is a generic virtualenv management and test " +"command line tool which provides the following features:" +msgstr "" + +#: ../../scenarios/ci.rst:54 +msgid "" +"Checking that packages install correctly with different Python versions and " +"interpreters" +msgstr "" + +#: ../../scenarios/ci.rst:56 +msgid "" +"Running tests in each of the environments, configuring your test tool of " +"choice" +msgstr "" + +#: ../../scenarios/ci.rst:58 +msgid "" +"Acting as a front-end to Continuous Integration servers, reducing " +"boilerplate and merging CI and shell-based testing." +msgstr "" + +#: ../../scenarios/ci.rst:63 +msgid "Travis-CI" +msgstr "" + +#: ../../scenarios/ci.rst:65 +msgid "" +"`Travis-CI `_ is a distributed CI server which " +"builds tests for open source projects for free. It provides multiple workers" +" to run Python tests on and seamlessly integrates with GitHub. You can even " +"have it comment on your Pull Requests whether this particular changeset " +"breaks the build or not. So if you are hosting your code on GitHub, travis-" +"ci is a great and easy way to get started with Continuous Integration." +msgstr "" + +#: ../../scenarios/ci.rst:72 +msgid "" +"In order to get started, add a :file:`.travis.yml` file to your repository " +"with this example content::" +msgstr "" + +#: ../../scenarios/ci.rst:88 +msgid "" +"This will get your project tested on all the listed Python versions by " +"running the given script, and will only build the master branch. There are a" +" lot more options you can enable, like notifications, before and after steps" +" and much more. The `travis-ci docs `_ " +"explain all of these options, and are very thorough." +msgstr "" + +#: ../../scenarios/ci.rst:94 +msgid "" +"In order to activate testing for your project, go to `the travis-ci site " +"`_ and login with your GitHub account. Then activate" +" your project in your profile settings and you're ready to go. From now on, " +"your project's tests will be run on every push to GitHub." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo b/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po new file mode 100644 index 000000000..ca055059c --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po @@ -0,0 +1,123 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/cli.rst:2 +msgid "Command-line Applications" +msgstr "" + +#: ../../scenarios/cli.rst:4 +msgid "" +"Command-line applications, also referred to as `Console Applications " +"`_, are computer programs " +"designed to be used from a text interface, such as a `shell " +"`_. Command-line " +"applications usually accept various inputs as arguments, often referred to " +"as parameters or sub-commands, as well as options, often referred to as " +"flags or switches." +msgstr "" + +#: ../../scenarios/cli.rst:12 +msgid "Some popular command-line applications include:" +msgstr "" + +#: ../../scenarios/cli.rst:14 +msgid "" +"`Grep `_ - A plain-text data search " +"utility" +msgstr "" + +#: ../../scenarios/cli.rst:15 +msgid "" +"`curl `_ - A tool for data transfer with URL syntax" +msgstr "" + +#: ../../scenarios/cli.rst:16 +msgid "" +"`httpie `_ - A command line HTTP " +"client, a user-friendly cURL replacement" +msgstr "" + +#: ../../scenarios/cli.rst:18 +msgid "`git `_ - A distributed version control system" +msgstr "" + +#: ../../scenarios/cli.rst:19 +msgid "" +"`mercurial `_ - A distributed version control" +" system primarily written in Python" +msgstr "" + +#: ../../scenarios/cli.rst:23 +msgid "Clint" +msgstr "" + +#: ../../scenarios/cli.rst:25 +msgid "" +"`clint `_ is a Python module which is " +"filled with very useful tools for developing command-line applications. It " +"supports features such as; CLI colors and indents, simple and powerful " +"column printer, iterator based progress bars and implicit argument handling." +msgstr "" + +#: ../../scenarios/cli.rst:31 +msgid "Click" +msgstr "" + +#: ../../scenarios/cli.rst:33 +msgid "" +"`click `_ is an upcoming Python package for " +"creating command-line interfaces in a composable way with as little code as " +"possible. This “Command-line Interface Creation Kit” is highly configurable " +"but comes with good defaults out of the box." +msgstr "" + +#: ../../scenarios/cli.rst:39 +msgid "docopt" +msgstr "" + +#: ../../scenarios/cli.rst:41 +msgid "" +"`docopt `_ is a lightweight, highly Pythonic package " +"that allows creating command-line interfaces easily and intuitively, by " +"parsing POSIX-style usage instructions." +msgstr "" + +#: ../../scenarios/cli.rst:46 +msgid "Plac" +msgstr "" + +#: ../../scenarios/cli.rst:48 +msgid "" +"`Plac `_ is a simple wrapper over the " +"Python standard library `argparse " +"`_, which hides most of its " +"complexity by using a declarative interface: the argument parser is inferred" +" rather than written down by imperatively. This module targets especially " +"unsophisticated users, programmers, sys-admins, scientists and in general " +"people writing throw-away scripts for themselves, who choose to create a " +"command-line interface because it is quick and simple." +msgstr "" + +#: ../../scenarios/cli.rst:57 +msgid "Cliff" +msgstr "" + +#: ../../scenarios/cli.rst:59 +msgid "" +"`Cliff `_ is a framework for " +"building command-line programs. It uses setuptools entry points to provide " +"subcommands, output formatters, and other extensions. The framework is meant" +" to be used to create multi-level commands such as subversion and git, where" +" the main program handles some basic argument parsing and then invokes a " +"sub-command to do the work." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.mo b/docs/locale/ko/LC_MESSAGES/scenarios/client.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.po b/docs/locale/ko/LC_MESSAGES/scenarios/client.po new file mode 100644 index 000000000..05a96105b --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/client.po @@ -0,0 +1,99 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/client.rst:2 +msgid "Network Applications" +msgstr "" + +#: ../../scenarios/client.rst:7 +msgid "HTTP" +msgstr "" + +#: ../../scenarios/client.rst:9 +msgid "" +"The Hypertext Transfer Protocol (HTTP) is an application protocol for " +"distributed, collaborative, hypermedia information systems. HTTP is the " +"foundation of data communication for the World Wide Web." +msgstr "" + +#: ../../scenarios/client.rst:14 +msgid "Requests" +msgstr "" + +#: ../../scenarios/client.rst:16 +msgid "" +"Python’s standard urllib2 module provides most of the HTTP capabilities you " +"need, but the API is thoroughly broken. It was built for a different time — " +"and a different web. It requires an enormous amount of work (even method " +"overrides) to perform the simplest of tasks." +msgstr "" + +#: ../../scenarios/client.rst:21 +msgid "" +"Requests takes all of the work out of Python HTTP — making your integration " +"with web services seamless. There’s no need to manually add query strings to" +" your URLs, or to form-encode your POST data. Keep-alive and HTTP connection" +" pooling are 100% automatic, powered by urllib3, which is embedded within " +"Requests." +msgstr "" + +#: ../../scenarios/client.rst:27 +msgid "" +"`Documentation `_" +msgstr "" + +#: ../../scenarios/client.rst:28 +msgid "`PyPi `_" +msgstr "" + +#: ../../scenarios/client.rst:29 +msgid "`GitHub `_" +msgstr "" + +#: ../../scenarios/client.rst:33 +msgid "Distributed Systems" +msgstr "" + +#: ../../scenarios/client.rst:37 +msgid "ZeroMQ" +msgstr "" + +#: ../../scenarios/client.rst:39 +msgid "" +"ØMQ (also spelled ZeroMQ, 0MQ or ZMQ) is a high-performance asynchronous " +"messaging library aimed at use in scalable distributed or concurrent " +"applications. It provides a message queue, but unlike message-oriented " +"middleware, a ØMQ system can run without a dedicated message broker. The " +"library is designed to have a familiar socket-style API." +msgstr "" + +#: ../../scenarios/client.rst:46 +msgid "RabbitMQ" +msgstr "" + +#: ../../scenarios/client.rst:48 +msgid "" +"RabbitMQ is an open source message broker software that implements the " +"Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written in " +"the Erlang programming language and is built on the Open Telecom Platform " +"framework for clustering and failover. Client libraries to interface with " +"the broker are available for all major programming languages." +msgstr "" + +#: ../../scenarios/client.rst:53 +msgid "`Homepage `_" +msgstr "" + +#: ../../scenarios/client.rst:54 +msgid "`GitHub Organization `_" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po new file mode 100644 index 000000000..e71a9d8a0 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po @@ -0,0 +1,53 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/crypto.rst:2 ../../scenarios/crypto.rst:5 +msgid "Cryptography" +msgstr "" + +#: ../../scenarios/crypto.rst:7 +msgid "" +"`Cryptography `_ is an actively " +"developed library that provides cryptographic recipes and primitives. It " +"supports Python 2.6-2.7, Python 3.2+ and PyPy." +msgstr "" + +#: ../../scenarios/crypto.rst:12 +msgid "" +"Cryptography is divided into two layers of recipes and hazardous materials " +"(hazmat). The recipes layer provides simple API for proper symmetric " +"encryption and the hazmat layer provides low-level cryptographic primitives." +msgstr "" + +#: ../../scenarios/crypto.rst:19 ../../scenarios/crypto.rst:49 +msgid "Installation" +msgstr "" + +#: ../../scenarios/crypto.rst:26 ../../scenarios/crypto.rst:56 +msgid "Example" +msgstr "" + +#: ../../scenarios/crypto.rst:28 +msgid "Example code using high level symmetric encryption recipe:" +msgstr "" + +#: ../../scenarios/crypto.rst:42 +msgid "PyCrypto" +msgstr "" + +#: ../../scenarios/crypto.rst:44 +msgid "" +"`PyCrypto `_ is another library, " +"which provides secure hash functions and various encryption algorithms. It " +"supports Python version 2.1 through 3.3." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.mo b/docs/locale/ko/LC_MESSAGES/scenarios/db.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.po b/docs/locale/ko/LC_MESSAGES/scenarios/db.po new file mode 100644 index 000000000..514a10058 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/db.po @@ -0,0 +1,84 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/db.rst:2 +msgid "Databases" +msgstr "" + +#: ../../scenarios/db.rst:5 +msgid "DB-API" +msgstr "" + +#: ../../scenarios/db.rst:7 +msgid "" +"The Python Database API (DB-API) defines a standard interface for Python " +"database access modules. It's documented in :pep:`249`. Nearly all Python " +"database modules such as `sqlite3`, `psycopg` and `mysql-python` conform to " +"this interface." +msgstr "" + +#: ../../scenarios/db.rst:12 +msgid "" +"Tutorials that explain how to work with modules that conform to this " +"interface can be found `here " +"`__ and " +"`here " +"`__." +msgstr "" + +#: ../../scenarios/db.rst:17 +msgid "SQLAlchemy" +msgstr "" + +#: ../../scenarios/db.rst:19 +msgid "" +"`SQLAlchemy `_ is a commonly used database " +"toolkit. Unlike many database libraries it not only provides an ORM layer " +"but also a generalized API for writing database-agnostic code without SQL." +msgstr "" + +#: ../../scenarios/db.rst:28 +msgid "Django ORM" +msgstr "" + +#: ../../scenarios/db.rst:30 +msgid "" +"The Django ORM is the interface used by `Django " +"`_ to provide database access." +msgstr "" + +#: ../../scenarios/db.rst:33 +msgid "" +"It's based on the idea of `models `_, an abstraction that makes it easier to manipulate data" +" in Python." +msgstr "" + +#: ../../scenarios/db.rst:36 +msgid "The basics:" +msgstr "" + +#: ../../scenarios/db.rst:38 +msgid "Each model is a Python class that subclasses django.db.models.Model." +msgstr "" + +#: ../../scenarios/db.rst:39 +msgid "Each attribute of the model represents a database field." +msgstr "" + +#: ../../scenarios/db.rst:40 +msgid "" +"Django gives you an automatically-generated database-access API; see `Making" +" queries `__." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo b/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po new file mode 100644 index 000000000..dea371bc4 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po @@ -0,0 +1,209 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/gui.rst:2 +msgid "GUI Applications" +msgstr "" + +#: ../../scenarios/gui.rst:4 +msgid "Alphabetical list of GUI Applications." +msgstr "" + +#: ../../scenarios/gui.rst:7 +msgid "Camelot" +msgstr "" + +#: ../../scenarios/gui.rst:8 +msgid "" +"`Camelot `_ provides components for building " +"applications on top of Python, SQLAlchemy and Qt. It is inspired by the " +"Django admin interface." +msgstr "" + +#: ../../scenarios/gui.rst:12 +msgid "" +"The main resource for information is the website: http://www.python-" +"camelot.com and the mailing list https://groups.google.com/forum/#!forum" +"/project-camelot" +msgstr "" + +#: ../../scenarios/gui.rst:17 +msgid "Cocoa" +msgstr "" + +#: ../../scenarios/gui.rst:18 +msgid "" +"The Cocoa framework is only available on OS X. Don't pick this if you're " +"writing a cross-platform application!" +msgstr "" + +#: ../../scenarios/gui.rst:21 +msgid "GTk" +msgstr "" + +#: ../../scenarios/gui.rst:22 +msgid "" +"PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ library " +"itself, it is currently licensed under the GNU LGPL. It is worth noting that" +" PyGTK only currently supports the Gtk-2.X API (NOT Gtk-3.0). It is " +"currently recommended that PyGTK not be used for new projects and that " +"existing applications be ported from PyGTK to PyGObject." +msgstr "" + +#: ../../scenarios/gui.rst:29 +msgid "Kivy" +msgstr "" + +#: ../../scenarios/gui.rst:30 +msgid "" +"`Kivy `_ is a Python library for development of multi-touch" +" enabled media rich applications. The aim is to allow for quick and easy " +"interaction design and rapid prototyping, while making your code reusable " +"and deployable." +msgstr "" + +#: ../../scenarios/gui.rst:35 +msgid "" +"Kivy is written in Python, based on OpenGL and supports different input " +"devices such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, " +"Apple's products and so on." +msgstr "" + +#: ../../scenarios/gui.rst:38 +msgid "" +"Kivy is actively being developed by a community and free to use. It operates" +" on all major platforms (Linux, OSX, Windows, Android)." +msgstr "" + +#: ../../scenarios/gui.rst:41 +msgid "The main resource for information is the website: http://kivy.org" +msgstr "" + +#: ../../scenarios/gui.rst:44 +msgid "PyObjC" +msgstr "" + +#: ../../scenarios/gui.rst:45 +msgid "" +"Only available on OS X. Don't pick this if you're writing a cross-platform " +"application." +msgstr "" + +#: ../../scenarios/gui.rst:48 +msgid "PySide" +msgstr "" + +#: ../../scenarios/gui.rst:49 +msgid "PySide is a Python binding of the cross-platform GUI toolkit Qt." +msgstr "" + +#: ../../scenarios/gui.rst:51 +msgid "http://developer.qt.nokia.com/wiki/PySideDownloads/" +msgstr "" + +#: ../../scenarios/gui.rst:54 +msgid "PyQt" +msgstr "" + +#: ../../scenarios/gui.rst:55 +msgid "" +"If your software does not fully comply with the GPL you will need a " +"commercial license!" +msgstr "" + +#: ../../scenarios/gui.rst:57 +msgid "PyQt provides Python bindings for the Qt Framework (see below)." +msgstr "" + +#: ../../scenarios/gui.rst:59 +msgid "http://www.riverbankcomputing.co.uk/software/pyqt/download" +msgstr "" + +#: ../../scenarios/gui.rst:62 +msgid "PyjamasDesktop (pyjs Desktop)" +msgstr "" + +#: ../../scenarios/gui.rst:63 +msgid "" +"PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget " +"set for desktop and a cross-platform framework. (After release v0.6 " +"PyjamasDesktop is a part of Pyjamas (Pyjs)). Briefly, it allows the exact " +"same Python web application source code to be executed as a standalone " +"desktop application." +msgstr "" + +#: ../../scenarios/gui.rst:68 +msgid "" +"`Python Wiki for PyjamasDesktop " +"`_." +msgstr "" + +#: ../../scenarios/gui.rst:70 +msgid "The main website; `pyjs Desktop `_." +msgstr "" + +#: ../../scenarios/gui.rst:73 +msgid "Qt" +msgstr "" + +#: ../../scenarios/gui.rst:74 +msgid "" +"`Qt `_ is a cross-platform application framework " +"that is widely used for developing software with a GUI but can also be used " +"for non-GUI applications." +msgstr "" + +#: ../../scenarios/gui.rst:79 +msgid "Tk" +msgstr "" + +#: ../../scenarios/gui.rst:80 +msgid "" +"Tkinter is a thin object-oriented layer on top of Tcl/Tk. **It has the " +"advantage of being included with the Python standard library, making it the " +"most convenient and compatible toolkit to program with.**" +msgstr "" + +#: ../../scenarios/gui.rst:84 +msgid "" +"Both Tk and Tkinter are available on most Unix platforms, as well as on " +"Windows and Macintosh systems. Starting with the 8.0 release, Tk offers " +"native look and feel on all platforms." +msgstr "" + +#: ../../scenarios/gui.rst:88 +msgid "" +"There's a good multi-language Tk tutorial with Python examples at `TkDocs " +"`_. There's more information " +"available on the `Python Wiki `_." +msgstr "" + +#: ../../scenarios/gui.rst:93 +msgid "wxPython" +msgstr "" + +#: ../../scenarios/gui.rst:94 +msgid "" +"wxPython is a GUI toolkit for the Python programming language. It allows " +"Python programmers to create programs with a robust, highly functional " +"graphical user interface, simply and easily. It is implemented as a Python " +"extension module (native code) that wraps the popular wxWidgets cross " +"platform GUI library, which is written in C++." +msgstr "" + +#: ../../scenarios/gui.rst:100 +msgid "" +"**Install (Stable) wxPython** *go to " +"http://www.wxpython.org/download.php#stable and download the appropriate " +"package for your OS.*" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po new file mode 100644 index 000000000..26c11c833 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po @@ -0,0 +1,54 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/imaging.rst:3 +msgid "Image Manipulation" +msgstr "" + +#: ../../scenarios/imaging.rst:6 +msgid "Add introduction about image manipulation and its Python libraries." +msgstr "" + +#: ../../scenarios/imaging.rst:9 +msgid "Python Imaging Library" +msgstr "" + +#: ../../scenarios/imaging.rst:11 +msgid "" +"The `Python Imaging Library `_, or " +"PIL for short, is *the* library for image manipulation in Python. " +"Unfortunately, its development has stagnated, with its last release in 2009." +msgstr "" + +#: ../../scenarios/imaging.rst:15 +msgid "" +"Luckily for you, there's an actively-developed fork of PIL called `Pillow " +"`_ - it's easier to install, runs on all " +"operating systems, and supports Python 3." +msgstr "" + +#: ../../scenarios/imaging.rst:19 +msgid "Installation" +msgstr "" + +#: ../../scenarios/imaging.rst:21 +msgid "" +"Before installing Pillow, you'll have to install Pillow's prerequisites. " +"Find the instructions for your platform `here " +"`_." +msgstr "" + +#: ../../scenarios/imaging.rst:24 +msgid "After that, it's straightforward:" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.mo b/docs/locale/ko/LC_MESSAGES/scenarios/network.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.po b/docs/locale/ko/LC_MESSAGES/scenarios/network.po new file mode 100644 index 000000000..8ad46c422 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/network.po @@ -0,0 +1,77 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/network.rst:2 +msgid "Networking" +msgstr "" + +#: ../../scenarios/network.rst:5 +msgid "Twisted" +msgstr "" + +#: ../../scenarios/network.rst:7 +msgid "" +"`Twisted `_ is an event-driven networking " +"engine. It can be used to build applications around many different " +"networking protocols, including http servers and clients, applications using" +" SMTP, POP3, IMAP or SSH protocols, instant messaging and `much more " +"`_." +msgstr "" + +#: ../../scenarios/network.rst:13 +msgid "PyZMQ" +msgstr "" + +#: ../../scenarios/network.rst:15 +msgid "" +"`PyZMQ `_ is the Python binding for `ZeroMQ" +" `_, which is a high-performance asynchronous " +"messaging library. One great advantage of ZeroMQ is that it can be used for " +"message queuing without a message broker. The basic patterns for this are:" +msgstr "" + +#: ../../scenarios/network.rst:20 +msgid "" +"request-reply: connects a set of clients to a set of services. This is a " +"remote procedure call and task distribution pattern." +msgstr "" + +#: ../../scenarios/network.rst:22 +msgid "" +"publish-subscribe: connects a set of publishers to a set of subscribers. " +"This is a data distribution pattern." +msgstr "" + +#: ../../scenarios/network.rst:24 +msgid "" +"push-pull (or pipeline): connects nodes in a fan-out / fan-in pattern that " +"can have multiple steps, and loops. This is a parallel task distribution and" +" collection pattern." +msgstr "" + +#: ../../scenarios/network.rst:28 +msgid "" +"For a quick start, read the `ZeroMQ guide " +"`_." +msgstr "" + +#: ../../scenarios/network.rst:31 +msgid "gevent" +msgstr "" + +#: ../../scenarios/network.rst:33 +msgid "" +"`gevent `_ is a coroutine-based Python networking " +"library that uses greenlets to provide a high-level synchronous API on top " +"of the libev event loop." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.mo b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po new file mode 100644 index 000000000..c11799a64 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po @@ -0,0 +1,223 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/scientific.rst:3 +msgid "Scientific Applications" +msgstr "" + +#: ../../scenarios/scientific.rst:6 +msgid "Context" +msgstr "" + +#: ../../scenarios/scientific.rst:8 +msgid "" +"Python is frequently used for high-performance scientific applications. It " +"is widely used in academia and scientific projects because it is easy to " +"write and performs well." +msgstr "" + +#: ../../scenarios/scientific.rst:12 +msgid "" +"Due to its high performance nature, scientific computing in Python often " +"utilizes external libraries, typically written in faster languages (like C, " +"or FORTRAN for matrix operations). The main libraries used are `NumPy`_, " +"`SciPy`_ and `Matplotlib`_. Going into detail about these libraries is " +"beyond the scope of the Python guide. However, a comprehensive introduction " +"to the scientific Python ecosystem can be found in the `Python Scientific " +"Lecture Notes `_" +msgstr "" + +#: ../../scenarios/scientific.rst:22 +msgid "Tools" +msgstr "" + +#: ../../scenarios/scientific.rst:25 +msgid "IPython" +msgstr "" + +#: ../../scenarios/scientific.rst:27 +msgid "" +"`IPython `_ is an enhanced version of Python " +"interpreter, which provides features of great interest to scientists. The " +"`inline mode` allow graphics and plots to be displayed in the terminal (Qt " +"based version). Moreover, the `notebook` mode supports literate programming " +"and reproducible science generating a web-based Python notebook. This " +"notebook allows you to store chunks of Python code along side the results " +"and additional comments (HTML, LaTeX, Markdown). The notebook can then be " +"shared and exported in various file formats." +msgstr "" + +#: ../../scenarios/scientific.rst:38 +msgid "Libraries" +msgstr "" + +#: ../../scenarios/scientific.rst:41 +msgid "NumPy" +msgstr "" + +#: ../../scenarios/scientific.rst:43 +msgid "" +"`NumPy `_ is a low level library written in C (and " +"FORTRAN) for high level mathematical functions. NumPy cleverly overcomes the" +" problem of running slower algorithms on Python by using multidimensional " +"arrays and functions that operate on arrays. Any algorithm can then be " +"expressed as a function on arrays, allowing the algorithms to be run " +"quickly." +msgstr "" + +#: ../../scenarios/scientific.rst:49 +msgid "" +"NumPy is part of the SciPy project, and is released as a separate library so" +" people who only need the basic requirements can use it without installing " +"the rest of SciPy." +msgstr "" + +#: ../../scenarios/scientific.rst:53 +msgid "" +"NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." +msgstr "" + +#: ../../scenarios/scientific.rst:56 +msgid "Numba" +msgstr "" + +#: ../../scenarios/scientific.rst:58 +msgid "" +"`Numba `_ is an Numpy aware Python compiler (just-" +"in-time (JIT) specializing compiler) which compiles annotated Python (and " +"Numpy) code to LLVM (Low Level Virtual Machine) through special decorators. " +"Briefly, Numba uses a system that compiles Python code with LLVM to code " +"which can be natively executed at runtime." +msgstr "" + +#: ../../scenarios/scientific.rst:65 +msgid "SciPy" +msgstr "" + +#: ../../scenarios/scientific.rst:67 +msgid "" +"`SciPy `_ is a library that uses NumPy for more " +"mathematical functions. SciPy uses NumPy arrays as the basic data structure," +" and comes with modules for various commonly used tasks in scientific " +"programming, including linear algebra, integration (calculus), ordinary " +"differential equation solving and signal processing." +msgstr "" + +#: ../../scenarios/scientific.rst:74 +msgid "Matplotlib" +msgstr "" + +#: ../../scenarios/scientific.rst:76 +msgid "" +"`Matplotlib `_ is a flexible plotting " +"library for creating interactive 2D and 3D plots that can also be saved as " +"manuscript-quality figures. The API in many ways reflects that of `MATLAB " +"`_, easing transition of MATLAB " +"users to Python. Many examples, along with the source code to re-create " +"them, are available in the `matplotlib gallery " +"`_." +msgstr "" + +#: ../../scenarios/scientific.rst:85 +msgid "Pandas" +msgstr "" + +#: ../../scenarios/scientific.rst:87 +msgid "" +"`Pandas `_ is data manipulation library based on " +"Numpy which provides many useful functions for accessing, indexing, merging " +"and grouping data easily. The main data structure (DataFrame) is close to " +"what could be found in the R statistical package; that is, heterogeneous " +"data tables with name indexing, time series operations and auto-alignment of" +" data." +msgstr "" + +#: ../../scenarios/scientific.rst:95 +msgid "Rpy2" +msgstr "" + +#: ../../scenarios/scientific.rst:97 +msgid "" +"`Rpy2 `_ is a Python binding for the R" +" statistical package allowing the execution of R functions from Python and " +"passing data back and forth between the two environments. Rpy2 is the object" +" oriented implementation of the `Rpy `_" +" bindings." +msgstr "" + +#: ../../scenarios/scientific.rst:103 +msgid "PsychoPy" +msgstr "" + +#: ../../scenarios/scientific.rst:105 +msgid "" +"`PsychoPy `_ is a library for cognitive scientists" +" allowing the creation of cognitive psychology and neuroscience experiments." +" The library handles presentation of stimuli, scripting of experimental " +"design and data collection." +msgstr "" + +#: ../../scenarios/scientific.rst:112 +msgid "Resources" +msgstr "" + +#: ../../scenarios/scientific.rst:114 +msgid "" +"Installation of scientific Python packages can be troublesome, as many of " +"these packages are implemented as Python C extensions which need to be " +"compiled. This section lists various so-called scientific Python " +"distributions which provide precompiled and easy-to-install collections of " +"scientific Python packages." +msgstr "" + +#: ../../scenarios/scientific.rst:121 +msgid "Unofficial Windows Binaries for Python Extension Packages" +msgstr "" + +#: ../../scenarios/scientific.rst:123 +msgid "" +"Many people who do scientific computing are on Windows, yet many of the " +"scientific computing packages are notoriously difficult to build and install" +" on this platform. `Christoph Gohlke " +"`_ however, has compiled a list " +"of Windows binaries for many useful Python packages. The list of packages " +"has grown from a mainly scientific Python resource to a more general list. " +"If you're on Windows, you may want to check it out." +msgstr "" + +#: ../../scenarios/scientific.rst:131 +msgid "Anaconda" +msgstr "" + +#: ../../scenarios/scientific.rst:133 +msgid "" +"`Continuum Analytics `_ offers the `Anaconda Python " +"Distribution `_ which includes " +"all the common scientific Python packages as well as many packages related " +"to data analytics and big data. Anaconda itself is free, and Continuum sells" +" a number of proprietary add-ons. Free licenses for the add-ons are " +"available for academics and researchers." +msgstr "" + +#: ../../scenarios/scientific.rst:141 +msgid "Canopy" +msgstr "" + +#: ../../scenarios/scientific.rst:143 +msgid "" +"`Canopy `_ is another scientific" +" Python distribution, produced by `Enthought `_." +" A limited 'Canopy Express' variant is available for free, but Enthought " +"charges for the full distribution. Free licenses are available for " +"academics." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po new file mode 100644 index 000000000..7a72cf258 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po @@ -0,0 +1,114 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/scrape.rst:2 +msgid "HTML Scraping" +msgstr "" + +#: ../../scenarios/scrape.rst:5 +msgid "Web Scraping" +msgstr "" + +#: ../../scenarios/scrape.rst:7 +msgid "" +"Web sites are written using HTML, which means that each web page is a " +"structured document. Sometimes it would be great to obtain some data from " +"them and preserve the structure while we're at it. Web sites don't always " +"provide their data in comfortable formats such as ``csv`` or ``json``." +msgstr "" + +#: ../../scenarios/scrape.rst:12 +msgid "" +"This is where web scraping comes in. Web scraping is the practice of using a" +" computer program to sift through a web page and gather the data that you " +"need in a format most useful to you while at the same time preserving the " +"structure of the data." +msgstr "" + +#: ../../scenarios/scrape.rst:18 +msgid "lxml and Requests" +msgstr "" + +#: ../../scenarios/scrape.rst:20 +msgid "" +"`lxml `_ is a pretty extensive library written for parsing " +"XML and HTML documents very quickly, even handling messed up tags in the " +"process. We will also be using the `Requests `_ module instead of the already built-in urllib2 " +"module due to improvements in speed and readability. You can easily install " +"both using ``pip install lxml`` and ``pip install requests``." +msgstr "" + +#: ../../scenarios/scrape.rst:27 +msgid "Let's start with the imports:" +msgstr "" + +#: ../../scenarios/scrape.rst:34 +msgid "" +"Next we will use ``requests.get`` to retrieve the web page with our data, " +"parse it using the ``html`` module and save the results in ``tree``:" +msgstr "" + +#: ../../scenarios/scrape.rst:42 +msgid "" +"``tree`` now contains the whole HTML file in a nice tree structure which we " +"can go over two different ways: XPath and CSSSelect. In this example, we " +"will focus on the former." +msgstr "" + +#: ../../scenarios/scrape.rst:46 +msgid "" +"XPath is a way of locating information in structured documents such as HTML " +"or XML documents. A good introduction to XPath is on `W3Schools " +"`_ ." +msgstr "" + +#: ../../scenarios/scrape.rst:50 +msgid "" +"There are also various tools for obtaining the XPath of elements such as " +"FireBug for Firefox or the Chrome Inspector. If you're using Chrome, you can" +" right click an element, choose 'Inspect element', highlight the code, right" +" click again and choose 'Copy XPath'." +msgstr "" + +#: ../../scenarios/scrape.rst:55 +msgid "" +"After a quick analysis, we see that in our page the data is contained in two" +" elements - one is a div with title 'buyer-name' and the other is a span " +"with class 'item-price':" +msgstr "" + +#: ../../scenarios/scrape.rst:64 +msgid "" +"Knowing this we can create the correct XPath query and use the lxml " +"``xpath`` function like this:" +msgstr "" + +#: ../../scenarios/scrape.rst:74 +msgid "Let's see what we got exactly:" +msgstr "" + +#: ../../scenarios/scrape.rst:94 +msgid "" +"Congratulations! We have successfully scraped all the data we wanted from a " +"web page using lxml and Requests. We have it stored in memory as two lists. " +"Now we can do all sorts of cool stuff with it: we can analyze it using " +"Python or we can save it to a file and share it with the world." +msgstr "" + +#: ../../scenarios/scrape.rst:99 +msgid "" +"Some more cool ideas to think about are modifying this script to iterate " +"through the rest of the pages of this example dataset, or rewriting this " +"application to use threads for improved speed." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo b/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po new file mode 100644 index 000000000..1dcfbe2a8 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po @@ -0,0 +1,158 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/speed.rst:2 +msgid "Speed" +msgstr "" + +#: ../../scenarios/speed.rst:4 +msgid "" +"CPython, the most commonly used implementation of Python, is slow for CPU " +"bound tasks. `PyPy`_ is fast." +msgstr "" + +#: ../../scenarios/speed.rst:7 +msgid "" +"Using a slightly modified version of `David Beazleys`_ CPU bound test code " +"(added loop for multiple tests), you can see the difference between CPython " +"and PyPy's processing." +msgstr "" + +#: ../../scenarios/speed.rst:37 +msgid "Context" +msgstr "" + +#: ../../scenarios/speed.rst:41 ../../scenarios/speed.rst:59 +msgid "The GIL" +msgstr "" + +#: ../../scenarios/speed.rst:43 +msgid "" +"`The GIL`_ (Global Interpreter Lock) is how Python allows multiple threads " +"to operate at the same time. Python's memory management isn't entirely " +"thread-safe, so the GIL is required to prevent multiple threads from running" +" the same Python code at once." +msgstr "" + +#: ../../scenarios/speed.rst:48 +msgid "" +"David Beazley has a great `guide`_ on how the GIL operates. He also covers " +"the `new GIL`_ in Python 3.2. His results show that maximizing performance " +"in a Python application requires a strong understanding of the GIL, how it " +"affects your specific application, how many cores you have, and where your " +"application bottlenecks are." +msgstr "" + +#: ../../scenarios/speed.rst:55 ../../scenarios/speed.rst:65 +msgid "C Extensions" +msgstr "" + +#: ../../scenarios/speed.rst:61 +msgid "" +"`Special care`_ must be taken when writing C extensions to make sure you " +"register your threads with the interpreter." +msgstr "" + +#: ../../scenarios/speed.rst:69 +msgid "Cython" +msgstr "" + +#: ../../scenarios/speed.rst:71 +msgid "" +"`Cython `_ implements a superset of the Python language " +"with which you are able to write C and C++ modules for Python. Cython also " +"allows you to call functions from compiled C libraries. Using Cython allows " +"you to take advantage of Python's strong typing of variables and operations." +msgstr "" + +#: ../../scenarios/speed.rst:76 +msgid "Here's an example of strong typing with Cython:" +msgstr "" + +#: ../../scenarios/speed.rst:103 +msgid "" +"This implementation of an algorithm to find prime numbers has some " +"additional keywords compared to the next one, which is implemented in pure " +"Python:" +msgstr "" + +#: ../../scenarios/speed.rst:128 +msgid "" +"Notice that in the Cython version you declare integers and integer arrays to" +" be compiled into C types while also creating a Python list:" +msgstr "" + +#: ../../scenarios/speed.rst:151 +msgid "" +"What is the difference? In the upper Cython version you can see the " +"declaration of the variable types and the integer array in a similar way as " +"in standard C. For example `cdef int n,k,i` in line 3. This additional type " +"declaration (i.e. integer) allows the Cython compiler to generate more " +"efficient C code from the second version. While standard Python code is " +"saved in :file:`*.py` files, Cython code is saved in :file:`*.pyx` files." +msgstr "" + +#: ../../scenarios/speed.rst:158 +msgid "What's the difference in speed? Let's try it!" +msgstr "" + +#: ../../scenarios/speed.rst:184 +msgid "These lines both need a remark:" +msgstr "" + +#: ../../scenarios/speed.rst:192 +msgid "" +"The `pyximport` module allows you to import :file:`*.pyx` files (e.g., " +":file:`primesCy.pyx`) with the Cython-compiled version of the `primes` " +"function. The `pyximport.install()` command allows the Python interpreter to" +" start the Cython compiler directly to generate C-code, which is " +"automatically compiled to a :file:`*.so` C-library. Cython is then able to " +"import this library for you in your Python code, easily and efficiently. " +"With the `time.time()` function you are able to compare the time between " +"these 2 different calls to find 500 prime numbers. On a standard notebook " +"(dual core AMD E-450 1.6 GHz), the measured values are:" +msgstr "" + +#: ../../scenarios/speed.rst:209 +msgid "" +"And here the output of an embedded `ARM beaglebone " +"`_ machine:" +msgstr "" + +#: ../../scenarios/speed.rst:219 +msgid "Pyrex" +msgstr "" + +#: ../../scenarios/speed.rst:223 +msgid "Shedskin?" +msgstr "" + +#: ../../scenarios/speed.rst:226 +msgid "Numba" +msgstr "" + +#: ../../scenarios/speed.rst:227 +msgid "Write about Numba and the autojit compiler for NumPy" +msgstr "" + +#: ../../scenarios/speed.rst:230 ../../scenarios/speed.rst:234 +msgid "Threading" +msgstr "" + +#: ../../scenarios/speed.rst:238 +msgid "Spawning Processes" +msgstr "" + +#: ../../scenarios/speed.rst:242 +msgid "Multiprocessing" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.po b/docs/locale/ko/LC_MESSAGES/scenarios/web.po new file mode 100644 index 000000000..f7f127173 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/web.po @@ -0,0 +1,485 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/web.rst:3 +msgid "Web Applications" +msgstr "" + +#: ../../scenarios/web.rst:5 +msgid "" +"As a powerful scripting language adapted to both fast prototyping and bigger" +" projects, Python is widely used in Web applications development." +msgstr "" + +#: ../../scenarios/web.rst:10 +msgid "Context" +msgstr "" + +#: ../../scenarios/web.rst:14 +msgid "WSGI" +msgstr "" + +#: ../../scenarios/web.rst:16 +msgid "" +"The Web Server Gateway Interface (or \"WSGI\" for short) is a standard " +"interface between web servers and Python web application frameworks. By " +"standardizing behavior and communication between web servers and Python web " +"frameworks, WSGI makes it possible to write portable Python web code that " +"can be deployed in any :ref:`WSGI-compliant web server `. " +"WSGI is documented in :pep:`3333`." +msgstr "" + +#: ../../scenarios/web.rst:25 +msgid "Frameworks" +msgstr "" + +#: ../../scenarios/web.rst:27 +msgid "" +"Broadly speaking, a web framework consists of a set of libraries and a main " +"handler within which you can build custom code to implement a web " +"application (i.e. an interactive web site). Most web frameworks include " +"patterns and utilities to accomplish at least the following:" +msgstr "" + +#: ../../scenarios/web.rst:33 +msgid "" +"Matches an incoming HTTP request to a particular piece of Python code to be " +"invoked" +msgstr "" + +#: ../../scenarios/web.rst:37 +msgid "Encapsulate the information received from or sent to a user's browser" +msgstr "" + +#: ../../scenarios/web.rst:40 +msgid "" +"Allows for separating Python code implementing an application's logic from " +"the HTML (or other) output that it produces" +msgstr "" + +#: ../../scenarios/web.rst:44 +msgid "" +"Runs an HTTP server on development machines to enable rapid development; " +"often automatically reloads server-side code when files are updated" +msgstr "" + +#: ../../scenarios/web.rst:49 +msgid "Django" +msgstr "" + +#: ../../scenarios/web.rst:51 +msgid "" +"`Django `_ is a \"batteries included\" web " +"application framework. By providing many utilities and patterns out of the " +"box, Django aims to make it possible to build complex, database-backed web " +"applications quickly, while encouraging best practices in code written using" +" it." +msgstr "" + +#: ../../scenarios/web.rst:57 +msgid "" +"Django has a large and active community, and many pre-built `re-usable " +"modules `_ that can be incorporated into a new " +"project as-is, or customized to fit your needs." +msgstr "" + +#: ../../scenarios/web.rst:61 +msgid "" +"There are annual Django conferences `in the United States " +"`_ and `in Europe `_." +msgstr "" + +#: ../../scenarios/web.rst:66 +msgid "Flask" +msgstr "" + +#: ../../scenarios/web.rst:68 +msgid "" +"`Flask `_ is a \"microframework\" for Python. " +"Rather than aiming to provide everything you could possibly need, Flask " +"implements the most commonly-used core components of a web application " +"framework, like URL routing, request and response objects, and templates. As" +" a user of Flask, it is therefore up to you to choose and integrate other " +"components you may need, such as database access or form generation and " +"validation. For many popular modules, `Extensions " +"`_ may already exist to suit your needs." +msgstr "" + +#: ../../scenarios/web.rst:77 +msgid "" +"**Support** for flask can best be found in its mailing list. Just shoot an " +"email to flask@librelist.com and reply to the confirmation email." +msgstr "" + +#: ../../scenarios/web.rst:82 +msgid "Werkzeug" +msgstr "" + +#: ../../scenarios/web.rst:84 +msgid "" +"`Werkzeug `_ is not actually a real framework, " +"but rather a very powerful set of tools for building web applications. It " +"provides URL routing utilities, request and response objects and a basic " +"development server. It is mostly used where users need bigger flexibility " +"for their application that is not commonly found in other web frameworks." +msgstr "" + +#: ../../scenarios/web.rst:90 +msgid "" +"Support can be found on its `mailing list " +"`_." +msgstr "" + +#: ../../scenarios/web.rst:94 +msgid "Tornado" +msgstr "" + +#: ../../scenarios/web.rst:95 +msgid "" +"`Tornado `_ is a scalable, non-blocking web " +"server and web application framework with a relative simple usage. Tornado " +"is known for its high performance. It was initially developed for " +"`friendfeed `_ , a real time chat and blog system." +msgstr "" + +#: ../../scenarios/web.rst:99 +msgid "" +"In the Jinja2 template engine example it is used to serve the rendered " +"pages." +msgstr "" + +#: ../../scenarios/web.rst:103 +msgid "Pyramid" +msgstr "" + +#: ../../scenarios/web.rst:105 +msgid "" +"`Pyramid `_ lies somewhere between a big " +"framework like Django and the microframeworks: It comes with a lot of " +"libraries and functionality and can thus not be considered lightweight. On " +"the other hand, it does not provide all the functionality Django does. " +"Instead Pyramid brings basic support for most regular tasks and provides a " +"great deal of extensibility. Additionally, Pyramid has a huge focus on " +"complete `documentation " +"`__. As a little " +"extra it comes with the Werkzeug Debugger which allows you to debug a " +"running web application in the browser." +msgstr "" + +#: ../../scenarios/web.rst:115 +msgid "" +"**Support** can also be found in the `documentation " +"`__." +msgstr "" + +#: ../../scenarios/web.rst:120 +msgid "Web Servers" +msgstr "" + +#: ../../scenarios/web.rst:125 +msgid "Nginx" +msgstr "" + +#: ../../scenarios/web.rst:127 +msgid "" +"`Nginx `_ (pronounced \"engine-x\") is a web server and " +"reverse-proxy for HTTP, SMTP and other protocols. It is known for its high " +"performance, relative simplicity, and compatibility with many application " +"servers (like WSGI servers). It also includes handy features like load-" +"balancing, basic authentication, streaming, and others. Designed to serve " +"high-load websites, Nginx is gradually becoming quite popular." +msgstr "" + +#: ../../scenarios/web.rst:138 +msgid "WSGI Servers" +msgstr "" + +#: ../../scenarios/web.rst:140 +msgid "" +"Stand-alone WSGI servers typically use less resources than traditional web " +"servers and provide top performance [3]_." +msgstr "" + +#: ../../scenarios/web.rst:146 +msgid "Gunicorn" +msgstr "" + +#: ../../scenarios/web.rst:148 +msgid "" +"`Gunicorn `_ (Green Unicorn) is a WSGI server used to " +"serve Python applications. It is a Python interpretation of the Ruby " +"`Unicorn `_ server. Unicorn is designed to be " +"lightweight, easy to use, and uses many UNIX idioms. Gunicorn is not " +"designed to face the internet -- it was designed to run behind Nginx which " +"buffers slow requests and takes care of other important considerations. A " +"sample setup for Nginx + Gunicorn can be found in the `Gunicorn help " +"`_." +msgstr "" + +#: ../../scenarios/web.rst:160 +msgid "uWSGI" +msgstr "" + +#: ../../scenarios/web.rst:162 +msgid "" +"`uWSGI `_ is a full stack for building " +"hosting services. In addition to process management, process monitoring, " +"and other functionality, uWSGI acts as an application server for various " +"programming languages and protocols - including Python and WSGI. uWSGI can " +"either be run as a stand-alone web router, or be run behind a full web " +"server (such as Nginx or Apache). In the latter case, a web server can " +"configure uWSGI and an application's operation over the `uwsgi `_ protocol. uWSGI's " +"web server support allows for dynamically configuring Python, passing " +"environment variables and further tuning. For full details, see `uWSGI " +"magic variables `_." +msgstr "" + +#: ../../scenarios/web.rst:180 +msgid "Server Best Practices" +msgstr "" + +#: ../../scenarios/web.rst:182 +msgid "" +"The majority of self hosted Python applications today are hosted with a WSGI" +" server such as :ref:`Gunicorn `, either directly or behind a " +"lightweight web server such as :ref:`nginx `." +msgstr "" + +#: ../../scenarios/web.rst:186 +msgid "" +"The WSGI servers serve the Python applications while the web server handles " +"tasks better suited for it such as static file serving, request routing, " +"DDoS protection, and basic authentication." +msgstr "" + +#: ../../scenarios/web.rst:191 +msgid "Hosting" +msgstr "" + +#: ../../scenarios/web.rst:194 +msgid "Platform-as-a-Service" +msgstr "" + +#: ../../scenarios/web.rst:196 +msgid "" +"Platform-as-a-Service (PaaS) is a type of cloud computing infrastructure " +"which abstracts and manages infrastructure, routing, and scaling of web " +"applications. When using PaaS, application developers can focus on writing " +"application code rather than needing to be concerned with deployment " +"details." +msgstr "" + +#: ../../scenarios/web.rst:202 +msgid "" +"Most PaaS services offer a command-line interface that developers can use to" +" set up and interrogate configuration, and to deploy new releases of an " +"application to the service." +msgstr "" + +#: ../../scenarios/web.rst:206 +msgid "" +"PaaS services and their partners offer add-on functionality which is well " +"integrated into the platform, such as database hosting, email services, " +"logging, scheduled and background tasks, billing and payment, etc." +msgstr "" + +#: ../../scenarios/web.rst:212 +msgid "Heroku" +msgstr "" + +#: ../../scenarios/web.rst:214 +msgid "" +"`Heroku `_'s `Cedar stack " +"`_ offers first class support " +"for Python 2.7 applications." +msgstr "" + +#: ../../scenarios/web.rst:218 +msgid "" +"Heroku allows you to run as many Python web applications as you like, 24/7 " +"and free of charge. Heroku is best described as a horizontal scaling " +"platform. They start to charge you once you \"scale\" your application to " +"run on more than one Dyno (abstracted servers) at a time." +msgstr "" + +#: ../../scenarios/web.rst:223 +msgid "" +"Heroku maintains `articles " +"`_ on using Python with " +"Heroku as well as `step-by-step instructions " +"`_ on how" +" to set up your first application." +msgstr "" + +#: ../../scenarios/web.rst:230 +msgid "DotCloud" +msgstr "" + +#: ../../scenarios/web.rst:232 +msgid "" +"`DotCloud `_ supports WSGI applications and " +"background/worker tasks natively on their platform. Web applications run " +"Python version 2.6, use :ref:`nginx ` and :ref:`uWSGI `, and allow custom configuration of both for advanced users." +msgstr "" + +#: ../../scenarios/web.rst:237 +msgid "" +"DotCloud uses a custom command-line API client which can work with " +"applications managed in git repositories or any other version control " +"system." +msgstr "" + +#: ../../scenarios/web.rst:241 +msgid "" +"DotCloud has a free plan with limited database size, and without extra " +"services (caching…)." +msgstr "" + +#: ../../scenarios/web.rst:244 +msgid "" +"See the `DotCloud documentation on Python " +"`_ for more information and help " +"getting started." +msgstr "" + +#: ../../scenarios/web.rst:250 +msgid "Gondor" +msgstr "" + +#: ../../scenarios/web.rst:252 +msgid "" +"`Gondor `_ is a PaaS specialized for deploying Django " +"and Pinax applications. Gondor recommends Django version 1.6 and supports " +"any WSGI application on Python version 2.7. Gondor can automatically " +"configure your Django site if you use :file:`local_settings.py` for site-" +"specific configuration information." +msgstr "" + +#: ../../scenarios/web.rst:257 +msgid "" +"Gondor has a guide on deploying `Django projects " +"`_." +msgstr "" + +#: ../../scenarios/web.rst:261 +msgid "Templating" +msgstr "" + +#: ../../scenarios/web.rst:263 +msgid "" +"Most WSGI applications are responding to HTTP requests to serve content in " +"HTML or other markup languages. Instead of generating directly textual " +"content from Python, the concept of separation of concerns advises us to use" +" templates. A template engine manages a suite of template files, with a " +"system of hierarchy and inclusion to avoid unnecessary repetition, and is in" +" charge of rendering (generating) the actual content, filling the static " +"content of the templates with the dynamic content generated by the " +"application." +msgstr "" + +#: ../../scenarios/web.rst:273 +msgid "" +"As template files are sometimes written by designers or front-end " +"developers, it can be difficult to handle increasing complexity." +msgstr "" + +#: ../../scenarios/web.rst:277 +msgid "" +"Some general good practices apply to the part of the application passing " +"dynamic content to the template engine, and to the templates themselves." +msgstr "" + +#: ../../scenarios/web.rst:281 +msgid "" +"Template files should be passed only the dynamic content that is needed for " +"rendering the template. Avoid the temptation to pass additional content " +"\"just in case\": it is easier to add some missing variable when needed than" +" to remove a likely unused variable later." +msgstr "" + +#: ../../scenarios/web.rst:287 +msgid "" +"Many template engines allow for complex statements or assignments in the " +"template itself, and many allow some Python code to be evaluated in the " +"templates. This convenience can lead to uncontrolled increase in complexity," +" and often make it harder to find bugs." +msgstr "" + +#: ../../scenarios/web.rst:293 +msgid "" +"It is often necessary to mix JavaScript templates with HTML templates. A " +"sane approach to this design is to isolate the parts where the HTML template" +" passes some variable content to the JavaScript code." +msgstr "" + +#: ../../scenarios/web.rst:301 +msgid "Jinja2" +msgstr "" + +#: ../../scenarios/web.rst:302 +msgid "" +"`Jinja2 `_ is a template engine which is similar to" +" the Django template system with some extra features. It is a text-based " +"template language and thus can be used to generate any markup. It allows " +"customization of filters, tags, tests and globals, and unlike the template " +"system implemented in the Django Framework, also allows calling functions. " +"Jinja2 is released under the BSD license." +msgstr "" + +#: ../../scenarios/web.rst:309 +msgid "Here some important html tags in Jinja2:" +msgstr "" + +#: ../../scenarios/web.rst:330 +msgid "" +"The next listings is an example of a web site in combination with the " +"tornado web server. Tornado is not very complicate to use." +msgstr "" + +#: ../../scenarios/web.rst:371 +msgid "" +"The :file:`base.html` file can be used as base for all site pages which are " +"for example implemented in the content block." +msgstr "" + +#: ../../scenarios/web.rst:396 +msgid "" +"The next listing is our site page (:file:`site.html`) loaded in the Python " +"app which extends :file:`base.html`. The content block is automatically set " +"into the corresponding block in the :file:`base.html` page." +msgstr "" + +#: ../../scenarios/web.rst:419 +msgid "References" +msgstr "" + +#: ../../scenarios/web.rst:420 +msgid "" +"`The mod_python project is now officially dead " +"`_" +msgstr "" + +#: ../../scenarios/web.rst:421 +msgid "" +"`mod_wsgi vs mod_python " +"`_" +msgstr "" + +#: ../../scenarios/web.rst:422 +msgid "" +"`Benchmark of Python WSGI Servers `_" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo b/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.po b/docs/locale/ko/LC_MESSAGES/scenarios/xml.po new file mode 100644 index 000000000..783757b7b --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/scenarios/xml.po @@ -0,0 +1,72 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../scenarios/xml.rst:2 +msgid "XML parsing" +msgstr "" + +#: ../../scenarios/xml.rst:5 +msgid "untangle" +msgstr "" + +#: ../../scenarios/xml.rst:7 +msgid "" +"`untangle `_ is a simple library which " +"takes an XML document and returns a Python object which mirrors the nodes " +"and attributes in its structure." +msgstr "" + +#: ../../scenarios/xml.rst:11 +msgid "For example, an XML file like this:" +msgstr "" + +#: ../../scenarios/xml.rst:20 +msgid "can be loaded like this:" +msgstr "" + +#: ../../scenarios/xml.rst:27 +msgid "and then you can get the child elements name like this:" +msgstr "" + +#: ../../scenarios/xml.rst:33 +msgid "untangle also supports loading XML from a string or an URL." +msgstr "" + +#: ../../scenarios/xml.rst:36 +msgid "xmltodict" +msgstr "" + +#: ../../scenarios/xml.rst:38 +msgid "" +"`xmltodict `_ is another simple " +"library that aims at making XML feel like working with JSON." +msgstr "" + +#: ../../scenarios/xml.rst:41 +msgid "An XML file like this:" +msgstr "" + +#: ../../scenarios/xml.rst:55 +msgid "can be loaded into a Python dict like this:" +msgstr "" + +#: ../../scenarios/xml.rst:64 +msgid "and then you can access elements, attributes and values like this:" +msgstr "" + +#: ../../scenarios/xml.rst:73 +msgid "" +"xmltodict also lets you roundtrip back to XML with the unparse function, has" +" a streaming mode suitable for handling files that don't fit in memory and " +"supports namespaces." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo b/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po new file mode 100644 index 000000000..3a9ccb4ed --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po @@ -0,0 +1,240 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../shipping/freezing.rst:2 +msgid "Freezing Your Code" +msgstr "" + +#: ../../shipping/freezing.rst:4 +msgid "" +"An alternative to shipping your code is freezing it — shipping it as an " +"executable with a bundled Python interpreter." +msgstr "" + +#: ../../shipping/freezing.rst:7 +msgid "Many applications you use every day do this:" +msgstr "" + +#: ../../shipping/freezing.rst:9 +msgid "Dropbox" +msgstr "" + +#: ../../shipping/freezing.rst:10 +msgid "BitTorrent" +msgstr "" + +#: ../../shipping/freezing.rst:11 +msgid "..." +msgstr "" + +#: ../../shipping/freezing.rst:13 +msgid "Fill in \"Freezing Your Code\" stub" +msgstr "" + +#: ../../shipping/freezing.rst:18 +msgid "Comparison" +msgstr "" + +#: ../../shipping/freezing.rst:20 +msgid "Solutions and platforms/features supported:" +msgstr "" + +#: ../../shipping/freezing.rst:23 +msgid "Solution" +msgstr "" + +#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:43 +msgid "Windows" +msgstr "" + +#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:103 +msgid "Linux" +msgstr "" + +#: ../../shipping/freezing.rst:23 +msgid "OS X" +msgstr "" + +#: ../../shipping/freezing.rst:23 +msgid "Python 3" +msgstr "" + +#: ../../shipping/freezing.rst:23 +msgid "License" +msgstr "" + +#: ../../shipping/freezing.rst:23 +msgid "One-file mode" +msgstr "" + +#: ../../shipping/freezing.rst:23 +msgid "Zipfile import" +msgstr "" + +#: ../../shipping/freezing.rst:23 +msgid "Eggs" +msgstr "" + +#: ../../shipping/freezing.rst:23 +msgid "pkg_resources support" +msgstr "" + +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:46 +#: ../../shipping/freezing.rst:107 +msgid "bbFreeze" +msgstr "" + +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +msgid "yes" +msgstr "" + +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +msgid "no" +msgstr "" + +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:29 +msgid "MIT" +msgstr "" + +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:53 +msgid "py2exe" +msgstr "" + +#: ../../shipping/freezing.rst:27 +msgid "pyInstaller" +msgstr "" + +#: ../../shipping/freezing.rst:27 +msgid "GPL" +msgstr "" + +#: ../../shipping/freezing.rst:28 +msgid "cx_Freeze" +msgstr "" + +#: ../../shipping/freezing.rst:28 +msgid "PSF" +msgstr "" + +#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:96 +msgid "py2app" +msgstr "" + +#: ../../shipping/freezing.rst:33 +msgid "" +"Freezing Python code on Linux into a Windows executable was only once " +"supported in PyInstaller `and later dropped. " +"`_." +msgstr "" + +#: ../../shipping/freezing.rst:38 +msgid "" +"All solutions need MS Visual C++ dll to be installed on target machine, " +"except py2app. Only Pyinstaller makes self-executable exe that bundles the " +"dll when passing :option:`--onefile` to :file:`Configure.py`." +msgstr "" + +#: ../../shipping/freezing.rst:48 +msgid "" +"Prerequisite is to install :ref:`Python, Setuptools and pywin32 dependency " +"on Windows `." +msgstr "" + +#: ../../shipping/freezing.rst:50 +msgid "Write steps for most basic .exe" +msgstr "" + +#: ../../shipping/freezing.rst:55 +msgid "Prerequisite is to install :ref:`Python on Windows `." +msgstr "" + +#: ../../shipping/freezing.rst:57 +msgid "" +"Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" +msgstr "" + +#: ../../shipping/freezing.rst:59 +msgid "" +"Write :file:`setup.py` (`List of configuration options " +"`_)::" +msgstr "" + +#: ../../shipping/freezing.rst:70 +msgid "" +"(Optionally) `include icon `_" +msgstr "" + +#: ../../shipping/freezing.rst:72 +msgid "" +"(Optionally) `one-file mode `_" +msgstr "" + +#: ../../shipping/freezing.rst:74 +msgid "Generate :file:`.exe` into :file:`dist` directory:" +msgstr "" + +#: ../../shipping/freezing.rst:80 +msgid "" +"Provide the Microsoft Visual C runtime DLL. Two options: `globally install " +"dll on target machine `_ or `distribute dll alongside with .exe " +"`_." +msgstr "" + +#: ../../shipping/freezing.rst:83 ../../shipping/freezing.rst:99 +#: ../../shipping/freezing.rst:110 +msgid "PyInstaller" +msgstr "" + +#: ../../shipping/freezing.rst:85 +msgid "" +"Prerequisite is to have installed :ref:`Python, Setuptools and pywin32 " +"dependency on Windows `." +msgstr "" + +#: ../../shipping/freezing.rst:87 +msgid "" +"`Most basic tutorial `_" +msgstr "" + +#: ../../shipping/freezing.rst:88 +msgid "" +"`Manual " +"`_" +msgstr "" + +#: ../../shipping/freezing.rst:92 +msgid "OS X" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo b/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/shipping/packaging.po b/docs/locale/ko/LC_MESSAGES/shipping/packaging.po new file mode 100644 index 000000000..6f4ba618b --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/shipping/packaging.po @@ -0,0 +1,228 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../shipping/packaging.rst:2 +msgid "Packaging Your Code" +msgstr "" + +#: ../../shipping/packaging.rst:4 +msgid "Packaging your code is important." +msgstr "" + +#: ../../shipping/packaging.rst:6 +msgid "" +"You'll need to package your code first before sharing it with other " +"developers." +msgstr "" + +#: ../../shipping/packaging.rst:8 +msgid "" +"The `Python Packaging Guide `_ provides an extensive guide on creating " +"and maintaining Python packages." +msgstr "" + +#: ../../shipping/packaging.rst:11 +msgid "For Python Developers" +msgstr "" + +#: ../../shipping/packaging.rst:13 +msgid "" +"If you're writing an open source Python module, `PyPI " +"`_, more properly known as *The Cheeseshop*, is the " +"place to host it." +msgstr "" + +#: ../../shipping/packaging.rst:19 +msgid "Pip vs. easy_install" +msgstr "" + +#: ../../shipping/packaging.rst:21 +msgid "" +"Use `pip `_. More details `here " +"`_" +msgstr "" + +#: ../../shipping/packaging.rst:25 +msgid "Personal PyPI" +msgstr "" + +#: ../../shipping/packaging.rst:27 +msgid "" +"If you want to install packages from a source different from PyPI, (say, if " +"your packages are *proprietary*), you can do it by hosting a simple http " +"server, running from the directory which holds those packages which need to " +"be installed." +msgstr "" + +#: ../../shipping/packaging.rst:31 +msgid "**Showing an example is always beneficial**" +msgstr "" + +#: ../../shipping/packaging.rst:33 +msgid "" +"Say if you are after installing a package called :file:`MyPackage.tar.gz`, " +"and assuming this is your directory structure:" +msgstr "" + +#: ../../shipping/packaging.rst:39 +msgid "MyPackage.tar.gz" +msgstr "" + +#: ../../shipping/packaging.rst:41 +msgid "Go to your command prompt and type:" +msgstr "" + +#: ../../shipping/packaging.rst:48 +msgid "" +"This runs a simple http server running on port 9000 and will list all " +"packages (like **MyPackage**). Now you can install **MyPackage** using any " +"Python package installer. Using Pip, you would do it like:" +msgstr "" + +#: ../../shipping/packaging.rst:56 +msgid "" +"Having a folder with the same name as the package name is **crucial** here. " +"I got fooled by that, one time. But if you feel that creating a folder " +"called :file:`MyPackage` and keeping :file:`MyPackage.tar.gz` inside that, " +"is *redundant*, you can still install MyPackage using:" +msgstr "" + +#: ../../shipping/packaging.rst:66 +msgid "pypiserver" +msgstr "" + +#: ../../shipping/packaging.rst:68 +msgid "" +"`Pypiserver `_ is a minimal PyPI " +"compatible server. It can be used to serve a set of packages to easy_install" +" or pip. It includes helpful features like an administrative command " +"(:option:`-U`) which will update all its packages to their latest versions " +"found on PyPI." +msgstr "" + +#: ../../shipping/packaging.rst:75 +msgid "S3-Hosted PyPi" +msgstr "" + +#: ../../shipping/packaging.rst:77 +msgid "" +"One simple option for a personal PyPi server is to use Amazon S3. A " +"prerequisite for this is that you have an Amazon AWS account with an S3 " +"bucket." +msgstr "" + +#: ../../shipping/packaging.rst:79 +msgid "**Install all your requirements from PyPi or another source**" +msgstr "" + +#: ../../shipping/packaging.rst:80 +msgid "**Install pip2pi**" +msgstr "" + +#: ../../shipping/packaging.rst:82 +msgid ":code:`pip install git+https://github.com/wolever/pip2pi.git`" +msgstr "" + +#: ../../shipping/packaging.rst:84 +msgid "**Follow pip2pi README for pip2tgz and dir2pi commands**" +msgstr "" + +#: ../../shipping/packaging.rst:86 +msgid "" +":code:`pip2tgz packages/ YourPackage` (or :code:`pip2tgz packages/ -r " +"requirements.txt`)" +msgstr "" + +#: ../../shipping/packaging.rst:87 +msgid ":code:`dir2pi packages/`" +msgstr "" + +#: ../../shipping/packaging.rst:89 +msgid "**Upload the new files**" +msgstr "" + +#: ../../shipping/packaging.rst:91 +msgid "" +"Use a client like Cyberduck to sync the entire :file:`packages` folder to " +"your s3 bucket" +msgstr "" + +#: ../../shipping/packaging.rst:92 +msgid "" +"Make sure you upload :code:`packages/simple/index.html` as well as all new " +"files and directories" +msgstr "" + +#: ../../shipping/packaging.rst:94 +msgid "**Fix new file permissions**" +msgstr "" + +#: ../../shipping/packaging.rst:96 +msgid "" +"By default, when you upload new files to the S3 bucket, they will have the " +"wrong permissions set." +msgstr "" + +#: ../../shipping/packaging.rst:97 +msgid "" +"Use the Amazon web console to set the READ permission of the files to " +"EVERYONE." +msgstr "" + +#: ../../shipping/packaging.rst:98 +msgid "" +"If you get HTTP 403 when trying to install a package, make sure you've set " +"the permissions correctly." +msgstr "" + +#: ../../shipping/packaging.rst:100 +msgid "**All done**" +msgstr "" + +#: ../../shipping/packaging.rst:102 +msgid "" +"You can now install your package with :code:`pip install --index-" +"url=http://your-s3-bucket/packages/simple/ YourPackage`" +msgstr "" + +#: ../../shipping/packaging.rst:105 +msgid "For Linux Distributions" +msgstr "" + +#: ../../shipping/packaging.rst:107 +msgid "`Fedora `_" +msgstr "" + +#: ../../shipping/packaging.rst:108 +msgid "" +"`Debian and Ubuntu `_" +msgstr "" + +#: ../../shipping/packaging.rst:109 +msgid "" +"`Arch `_" +msgstr "" + +#: ../../shipping/packaging.rst:112 +msgid "Useful Tools" +msgstr "" + +#: ../../shipping/packaging.rst:114 +msgid "`fpm `_" +msgstr "" + +#: ../../shipping/packaging.rst:115 +msgid "`alien `_" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po new file mode 100644 index 000000000..4a22d5a0b --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -0,0 +1,108 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../starting/install/linux.rst:4 +msgid "Installing Python on Linux" +msgstr "" + +#: ../../starting/install/linux.rst:6 +msgid "" +"The latest versions of Ubuntu and Fedora **come with Python 2.7 out of the " +"box**." +msgstr "" + +#: ../../starting/install/linux.rst:8 +msgid "" +"The latest versions of Redhat Enterprise (RHEL) and CentOS come with Python " +"2.6. Some older versions of RHEL and CentOS come with Python 2.4 which is " +"unacceptable for modern Python development. Fortunately, there are `Extra " +"Packages for Enterprise Linux`_ which include high quality additional " +"packages based on their Fedora counterparts. This repository contains a " +"Python 2.6 package specifically designed to install side-by-side with the " +"system's Python 2.4 installation." +msgstr "" + +#: ../../starting/install/linux.rst:18 +msgid "" +"You do not need to install or configure anything else to use Python. Having " +"said that, I would strongly recommend that you install the tools and " +"libraries described in the next section before you start building Python " +"applications for real-world use. In particular, you should always install " +"Setuptools, as it makes it much easier for you to use other third-party " +"Python libraries." +msgstr "" + +#: ../../starting/install/linux.rst:25 +msgid "Setuptools & Pip" +msgstr "" + +#: ../../starting/install/linux.rst:27 +msgid "" +"The most crucial third-party Python software of all is Setuptools, which " +"extends the packaging and installation facilities provided by the distutils " +"in the standard library. Once you add Setuptools to your Python system you " +"can download and install any compliant Python software product with a single" +" command. It also enables you to add this network installation capability to" +" your own Python software with very little work." +msgstr "" + +#: ../../starting/install/linux.rst:34 +msgid "" +"To obtain the latest version of Setuptools for Linux, refer to the " +"documentation available here: `unix-setuptools " +"`_" +msgstr "" + +#: ../../starting/install/linux.rst:37 +msgid "" +"The new ``easy_install`` command you have available is considered by many to" +" be deprecated, so we will install its replacement: **pip**. Pip allows for " +"uninstallation of packages, and is actively maintained, unlike easy_install." +msgstr "" + +#: ../../starting/install/linux.rst:41 +msgid "To install pip, simply open a command prompt and run" +msgstr "" + +#: ../../starting/install/linux.rst:49 +msgid "Virtual Environments" +msgstr "" + +#: ../../starting/install/linux.rst:51 +msgid "" +"A Virtual Environment is a tool to keep the dependencies required by " +"different projects in separate places, by creating virtual Python " +"environments for them. It solves the \"Project X depends on version 1.x but," +" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"directory clean and manageable." +msgstr "" + +#: ../../starting/install/linux.rst:56 +msgid "" +"For example, you can work on a project which requires Django 1.3 while also " +"maintaining a project which requires Django 1.0." +msgstr "" + +#: ../../starting/install/linux.rst:59 +msgid "" +"To start using and see more information: `Virtual Environments " +"`_ docs." +msgstr "" + +#: ../../starting/install/linux.rst:64 +msgid "" +"This page is a remixed version of `another guide " +"`_, which is" +" available under the same license." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po new file mode 100644 index 000000000..63556a174 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po @@ -0,0 +1,150 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../starting/install/osx.rst:4 +msgid "Installing Python on Mac OS X" +msgstr "" + +#: ../../starting/install/osx.rst:6 +msgid "" +"The latest version of Mac OS X, Mavericks, **comes with Python 2.7 out of " +"the box**." +msgstr "" + +#: ../../starting/install/osx.rst:8 +msgid "" +"You do not need to install or configure anything else to use Python. Having " +"said that, I would strongly recommend that you install the tools and " +"libraries described in the next section before you start building Python " +"applications for real-world use. In particular, you should always install " +"Setuptools, as it makes it much easier for you to use other third-party " +"Python libraries." +msgstr "" + +#: ../../starting/install/osx.rst:14 +msgid "" +"The version of Python that ships with OS X is great for learning. Yet, it's " +"not good for development. The version shipped with OS X may be out of date " +"from the `official current Python release `_, which is considered the stable production version." +msgstr "" + +#: ../../starting/install/osx.rst:20 +msgid "Doing it Right" +msgstr "" + +#: ../../starting/install/osx.rst:22 +msgid "Let's install a real version of Python." +msgstr "" + +#: ../../starting/install/osx.rst:24 +msgid "" +"Before installing Python, you'll need to install GCC. GCC can be obtained by" +" downloading `XCode `_, the smaller " +"`Command Line Tools `_ (must have an" +" Apple account) or the even smaller `OSX-GCC-Installer " +"`_ package." +msgstr "" + +#: ../../starting/install/osx.rst:31 +msgid "" +"If you already have XCode installed, do not install OSX-GCC-Installer. In " +"combination, the software can cause issues that are difficult to diagnose." +msgstr "" + +#: ../../starting/install/osx.rst:35 +msgid "" +"While OS X comes with a large number of UNIX utilities, those familiar with " +"Linux systems will notice one key component missing: a decent package " +"manager. `Homebrew `_ fills this void." +msgstr "" + +#: ../../starting/install/osx.rst:39 +msgid "" +"To `install Homebrew " +"`_, simply run" +msgstr "" + +#: ../../starting/install/osx.rst:46 +msgid "" +"The script will explain what changes it will make and prompt you before the " +"installation begins. Once you've installed Homebrew, insert the Homebrew " +"directory at the top of your :envvar:`PATH` environment variable. You can do" +" this by adding the following line at the bottom of your :file:`~/.profile` " +"file" +msgstr "" + +#: ../../starting/install/osx.rst:56 +msgid "Now, we can install Python 2.7:" +msgstr "" + +#: ../../starting/install/osx.rst:62 +msgid "This will take a minute or two." +msgstr "" + +#: ../../starting/install/osx.rst:66 +msgid "Setuptools & Pip" +msgstr "" + +#: ../../starting/install/osx.rst:68 +msgid "Homebrew installs Setuptools and ``pip`` for you." +msgstr "" + +#: ../../starting/install/osx.rst:70 +msgid "" +"Setuptools enables you to download and install any compliant Python software" +" over a network (usually the Internet) with a single command " +"(``easy_install``). It also enables you to add this network installation " +"capability to your own Python software with very little work." +msgstr "" + +#: ../../starting/install/osx.rst:75 +msgid "" +"``pip`` is a tool for easily installing and managing Python packages, that " +"is recommended over ``easy_install``. It is superior to ``easy_install`` in " +"`several ways `_, and is actively maintained." +msgstr "" + +#: ../../starting/install/osx.rst:81 +msgid "Virtual Environments" +msgstr "" + +#: ../../starting/install/osx.rst:83 +msgid "" +"A Virtual Environment is a tool to keep the dependencies required by " +"different projects in separate places, by creating virtual Python " +"environments for them. It solves the \"Project X depends on version 1.x but," +" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"directory clean and manageable." +msgstr "" + +#: ../../starting/install/osx.rst:88 +msgid "" +"For example, you can work on a project which requires Django 1.3 while also " +"maintaining a project which requires Django 1.0." +msgstr "" + +#: ../../starting/install/osx.rst:91 +msgid "" +"To start using and see more information: `Virtual Environments " +"`_ docs." +msgstr "" + +#: ../../starting/install/osx.rst:96 +msgid "" +"This page is a remixed version of `another guide " +"`_, which is" +" available under the same license." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.po b/docs/locale/ko/LC_MESSAGES/starting/install/win.po new file mode 100644 index 000000000..f34657194 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/starting/install/win.po @@ -0,0 +1,134 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../starting/install/win.rst:4 +msgid "Installing Python on Windows" +msgstr "" + +#: ../../starting/install/win.rst:6 +msgid "" +"First, download the `latest version " +"`_ of Python 2.7 from " +"the official Website. If you want to be sure you are installing a fully up-" +"to-date version then use the \"Windows Installer\" link from the home page " +"of the `Python.org web site `_ ." +msgstr "" + +#: ../../starting/install/win.rst:11 +msgid "" +"The Windows version is provided as an MSI package. To install it manually, " +"just double-click the file. The MSI package format allows Windows " +"administrators to automate installation with their standard tools." +msgstr "" + +#: ../../starting/install/win.rst:15 +msgid "" +"By design, Python installs to a directory with the version number embedded, " +"e.g. Python version 2.7 will install at :file:`C:\\\\Python27\\\\`, so that " +"you can have multiple versions of Python on the same system without " +"conflicts. Of course, only one interpreter can be the default application " +"for Python file types. It also does not automatically modify the " +":envvar:`PATH` environment variable, so that you always have control over " +"which copy of Python is run." +msgstr "" + +#: ../../starting/install/win.rst:23 +msgid "" +"Typing the full path name for a Python interpreter each time quickly gets " +"tedious, so add the directories for your default Python version to the " +":envvar:`PATH`. Assuming that your Python installation is in " +":file:`C:\\\\Python27\\\\`, add this to your :envvar:`PATH`:" +msgstr "" + +#: ../../starting/install/win.rst:32 +msgid "You can do this easily by running the following in ``powershell``:" +msgstr "" + +#: ../../starting/install/win.rst:38 +msgid "" +"The second (:file:`Scripts`) directory receives command files when certain " +"packages are installed, so it is a very useful addition. You do not need to " +"install or configure anything else to use Python. Having said that, I would " +"strongly recommend that you install the tools and libraries described in the" +" next section before you start building Python applications for real-world " +"use. In particular, you should always install Setuptools, as it makes it " +"much easier for you to use other third-party Python libraries." +msgstr "" + +#: ../../starting/install/win.rst:47 +msgid "Setuptools + Pip" +msgstr "" + +#: ../../starting/install/win.rst:49 +msgid "" +"The most crucial third-party Python software of all is Setuptools, which " +"extends the packaging and installation facilities provided by the distutils " +"in the standard library. Once you add Setuptools to your Python system you " +"can download and install any compliant Python software product with a single" +" command. It also enables you to add this network installation capability to" +" your own Python software with very little work." +msgstr "" + +#: ../../starting/install/win.rst:56 +msgid "" +"To obtain the latest version of Setuptools for Windows, run the Python " +"script available here: `ez_setup.py " +"`_" +msgstr "" + +#: ../../starting/install/win.rst:60 +msgid "" +"You'll now have a new command available to you: **easy_install**. It is " +"considered by many to be deprecated, so we will install its replacement: " +"**pip**. Pip allows for uninstallation of packages, and is actively " +"maintained, unlike easy_install." +msgstr "" + +#: ../../starting/install/win.rst:65 +msgid "" +"To install pip, run the Python script available here: `get-pip.py " +"`_" +msgstr "" + +#: ../../starting/install/win.rst:70 +msgid "Virtual Environments" +msgstr "" + +#: ../../starting/install/win.rst:72 +msgid "" +"A Virtual Environment is a tool to keep the dependencies required by " +"different projects in separate places, by creating virtual Python " +"environments for them. It solves the \"Project X depends on version 1.x but," +" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"directory clean and manageable." +msgstr "" + +#: ../../starting/install/win.rst:77 +msgid "" +"For example, you can work on a project which requires Django 1.3 while also " +"maintaining a project which requires Django 1.0." +msgstr "" + +#: ../../starting/install/win.rst:80 +msgid "" +"To start using and see more information: `Virtual Environments " +"`_ docs." +msgstr "" + +#: ../../starting/install/win.rst:85 +msgid "" +"This page is a remixed version of `another guide " +"`_, which is" +" available under the same license." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.mo b/docs/locale/ko/LC_MESSAGES/starting/installation.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.po b/docs/locale/ko/LC_MESSAGES/starting/installation.po new file mode 100644 index 000000000..075cf5d84 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/starting/installation.po @@ -0,0 +1,52 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../starting/installation.rst:2 +msgid "Properly Installing Python" +msgstr "" + +#: ../../starting/installation.rst:4 +msgid "" +"There's a good chance that you already have Python on your operating system." +msgstr "" + +#: ../../starting/installation.rst:6 +msgid "" +"If so, you do not need to install or configure anything else to use Python. " +"Having said that, I would strongly recommend that you install the tools and " +"libraries described in the guides below before you start building Python " +"applications for real-world use. In particular, you should always install " +"Setuptools, Pip, and Virtualenv — they make it much easier for you to use " +"other third-party Python libraries." +msgstr "" + +#: ../../starting/installation.rst:14 +msgid "Installation Guides" +msgstr "" + +#: ../../starting/installation.rst:17 +msgid "" +"for development purposes, as well as setuptools, pip, and virtualenv setup." +msgstr "" + +#: ../../starting/installation.rst:19 +msgid ":ref:`Mac OS X `." +msgstr "" + +#: ../../starting/installation.rst:20 +msgid ":ref:`Microsoft Windows`." +msgstr "" + +#: ../../starting/installation.rst:21 +msgid ":ref:`Ubuntu Linux `." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po new file mode 100644 index 000000000..45efe3908 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po @@ -0,0 +1,157 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../starting/pip-virtualenv.rst:4 +msgid "Further Configuration of Pip and Virtualenv" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:7 +msgid "Requiring an active virtual environment for ``pip``" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:9 +msgid "" +"By now it should be clear that using virtual envirtonments is a great way to" +" keep your development environment clean and keeping different projects' " +"requirements separate." +msgstr "" + +#: ../../starting/pip-virtualenv.rst:13 +msgid "" +"When you start working on many different projects, it can be hard to " +"remember to activate the related virtual environment when you come back to a" +" specific project. As a result of this, it is very easy to install packages " +"globally while thinking that you are actually installing the package for the" +" virtual environment of the project. Over time this can result in a messy " +"global package list." +msgstr "" + +#: ../../starting/pip-virtualenv.rst:19 +msgid "" +"In order to make sure that you install packages to your active virtual " +"environment when you use ``pip install``, consider adding the following two " +"lines to your :file:`~/.bashrc` file:" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:27 +msgid "" +"After saving this change and sourcing the :file:`~/.bashrc` file with " +"``source ~/.bashrc``, pip will no longer let you install packages if you are" +" not in a virtual environment. If you try to use ``pip install`` outside of " +"a virtual environment pip will gently remind you that an activated virtual " +"environment is needed to install packages." +msgstr "" + +#: ../../starting/pip-virtualenv.rst:37 +msgid "" +"You can also do this configuration by editing your :file:`pip.conf` or " +":file:`pip.ini` file. :file:`pip.conf` is used by Unix and Mac OS X " +"operating systems and it can be found at:" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:45 +msgid "" +"Similarly, the :file:`pip.ini` file is used by Windows operating systems and" +" it can be found at:" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:52 +msgid "" +"If you don't have a :file:`pip.conf` or :file:`pip.ini` file at these " +"locations, you can create a new file with the correct name for your " +"operating system." +msgstr "" + +#: ../../starting/pip-virtualenv.rst:55 +msgid "" +"If you already have a configuration file, just add the following line under " +"the ``[global]`` settings to require an active virtual environment:" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:62 +msgid "" +"If you did not have a configuration file, you will need to create a new one " +"and add the following lines to this new file:" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:71 +msgid "" +"You will of course need to install some packages globally (usually ones that" +" you use across different projects consistenly) and this can be accomplished" +" by adding the following to your :file:`~/.bashrc` file:" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:81 +msgid "" +"After saving the changes and sourcing your :file:`~/.bashrc` file you can " +"now install packages globally by running ``gpip install``. You can change " +"the name of the function to anything you like, just keep in mind that you " +"will have to use that name when trying to install packages globally with " +"pip." +msgstr "" + +#: ../../starting/pip-virtualenv.rst:87 +msgid "Caching packages for future use" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:89 +msgid "" +"Every developer has preferred libraries and when you are working on a lot of" +" different projects, you are bound to have some overlap between the " +"libraries that you use. For example, you may be using the ``requests`` " +"library in a lot of different projects." +msgstr "" + +#: ../../starting/pip-virtualenv.rst:94 +msgid "" +"It is surely unnecessary to re-download the same packages/libraries each " +"time you start working on a new project (and in a new virtual environmen as " +"a result). Fortunately, you can configure pip in such a way that it tries to" +" reuse already installed packages." +msgstr "" + +#: ../../starting/pip-virtualenv.rst:99 +msgid "" +"On UNIX systems, you can add the following line to your :file:`.bashrc` or " +":file:`.bash_profile` file." +msgstr "" + +#: ../../starting/pip-virtualenv.rst:106 +msgid "" +"You can set the path to anywhere you like (as long as you have write " +"access). After adding this line, ``source`` your :file:`.bashrc` (or " +":file:`.bash_profile`) file and you will be all set." +msgstr "" + +#: ../../starting/pip-virtualenv.rst:110 +msgid "" +"Another way of doing the same configuration is via the :file:`pip.conf` or " +":file:`pip.ini` files, depending on your system. If you are on Windows, you " +"can add the following line to your :file:`pip.ini` file under ``[global]`` " +"settings:" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:118 +msgid "" +"Similarly, on UNIX systems you should simply add the following line to your " +":file:`pip.conf` file under ``[global]`` settings:" +msgstr "" + +#: ../../starting/pip-virtualenv.rst:125 +msgid "" +"Even though you can use any path you like to store your cache, it is " +"recommended that you create a new folder *in* the folder where your " +":file:`pip.conf` or :file:`pip.ini` file lives. If you don't trust yourself " +"with all of this path voodoo, just use the values provided here and you will" +" be fine." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.mo b/docs/locale/ko/LC_MESSAGES/starting/which-python.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.po b/docs/locale/ko/LC_MESSAGES/starting/which-python.po new file mode 100644 index 000000000..320f25e79 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/starting/which-python.po @@ -0,0 +1,293 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../starting/which-python.rst:2 +msgid "Picking an Interpreter" +msgstr "" + +#: ../../starting/which-python.rst:7 +msgid "The State of Python (2 vs 3)" +msgstr "" + +#: ../../starting/which-python.rst:9 +msgid "" +"When choosing a Python interpreter, one looming question is always present: " +"\"Should I choose Python 2 or Python 3\"? The answer is not as obvious as " +"one might think." +msgstr "" + +#: ../../starting/which-python.rst:14 +msgid "The basic gist of the state of things is as follows:" +msgstr "" + +#: ../../starting/which-python.rst:16 +msgid "Python 2.7 has been the standard for a *long* time." +msgstr "" + +#: ../../starting/which-python.rst:17 +msgid "" +"Python 3 introduced major changes to the language, which many developers are" +" unhappy with." +msgstr "" + +#: ../../starting/which-python.rst:18 +msgid "Python 2.7 will receive necessary security updates for a few years." +msgstr "" + +#: ../../starting/which-python.rst:19 +msgid "Python 3 is continually evolving, like Python 2 did in years past." +msgstr "" + +#: ../../starting/which-python.rst:21 +msgid "So, you can now see why this is not such an easy decision." +msgstr "" + +#: ../../starting/which-python.rst:25 +msgid "Recommendations" +msgstr "" + +#: ../../starting/which-python.rst:27 +msgid "I'll be blunt:" +msgstr "" + +#: ../../starting/which-python.rst:30 +msgid "**Use Python 3 if...**" +msgstr "" + +#: ../../starting/which-python.rst:32 +msgid "You don't care." +msgstr "" + +#: ../../starting/which-python.rst:33 +msgid "You love Python 3." +msgstr "" + +#: ../../starting/which-python.rst:34 +msgid "You are indifferent towards 2 vs 3." +msgstr "" + +#: ../../starting/which-python.rst:35 +msgid "You don't know which one to use." +msgstr "" + +#: ../../starting/which-python.rst:36 +msgid "You embrace change." +msgstr "" + +#: ../../starting/which-python.rst:38 +msgid "**Use Python 2 if...**" +msgstr "" + +#: ../../starting/which-python.rst:40 +msgid "You love Python 2 and are saddened by the future being Python 3." +msgstr "" + +#: ../../starting/which-python.rst:41 +msgid "" +"The stability requirements of your software would be improved by a language " +"and runtime that never changes." +msgstr "" + +#: ../../starting/which-python.rst:42 +msgid "Software that you depend on requires it." +msgstr "" + +#: ../../starting/which-python.rst:46 +msgid "So.... 3?" +msgstr "" + +#: ../../starting/which-python.rst:48 +msgid "" +"If you're choosing a Python interpreter to use, and aren't opinionated, then" +" I recommend you use the newest Python 3.x, since every version brings new " +"and improved standard library modules, security and bug fixes. Progress is " +"progress." +msgstr "" + +#: ../../starting/which-python.rst:52 +msgid "" +"Given such, only use Python 2 if you have a strong reason to, such as a " +"Python 2 exclusive library which has no adequate Python 3 ready alternative," +" or you (like me) absolutely love and are inspired by Python 2." +msgstr "" + +#: ../../starting/which-python.rst:56 +msgid "" +"Check out `Can I Use Python 3? `_ to see if any" +" software you're depending on will block your adoption of Python 3." +msgstr "" + +#: ../../starting/which-python.rst:59 +msgid "`Further Reading `_" +msgstr "" + +#: ../../starting/which-python.rst:61 +msgid "" +"It is possible to `write code that works on Python 2.6, 2.7, and 3.3 " +"`_. This " +"ranges from trivial to hard depending upon the kind of software you are " +"writing; if you're a beginner there are far more important things to worry " +"about." +msgstr "" + +#: ../../starting/which-python.rst:68 +msgid "Implementations" +msgstr "" + +#: ../../starting/which-python.rst:70 +msgid "" +"When people speak of *Python* they often mean not just the language but also" +" the CPython implementation. *Python* is actually a specification for a " +"language that can be implemented in many different ways." +msgstr "" + +#: ../../starting/which-python.rst:75 +msgid "CPython" +msgstr "" + +#: ../../starting/which-python.rst:77 +msgid "" +"`CPython `_ is the reference implementation of " +"Python, written in C. It compiles Python code to intermediate bytecode which" +" is then interpreted by a virtual machine. CPython provides the highest " +"level of compatibility with Python packages and C extension modules." +msgstr "" + +#: ../../starting/which-python.rst:82 +msgid "" +"If you are writing open-source Python code and want to reach the widest " +"possible audience, targeting CPython is best. To use packages which rely on " +"C extensions to function, CPython is your only implementation option." +msgstr "" + +#: ../../starting/which-python.rst:86 +msgid "" +"All versions of the Python language are implemented in C because CPython is " +"the reference implementation." +msgstr "" + +#: ../../starting/which-python.rst:90 +msgid "PyPy" +msgstr "" + +#: ../../starting/which-python.rst:92 +msgid "" +"`PyPy `_ is a Python interpreter implemented in a " +"restricted statically-typed subset of the Python language called RPython. " +"The interpreter features a just-in-time compiler and supports multiple back-" +"ends (C, CLI, JVM)." +msgstr "" + +#: ../../starting/which-python.rst:96 +msgid "" +"PyPy aims for maximum compatibility with the reference CPython " +"implementation while improving performance." +msgstr "" + +#: ../../starting/which-python.rst:99 +msgid "" +"If you are looking to increase performance of your Python code, it's worth " +"giving PyPy a try. On a suite of benchmarks, it's currently `over 5 times " +"faster than CPython `_." +msgstr "" + +#: ../../starting/which-python.rst:103 +msgid "" +"PyPy supports Python 2.7. PyPy3 [#pypy_ver]_, released in beta, targets " +"Python 3." +msgstr "" + +#: ../../starting/which-python.rst:106 +msgid "Jython" +msgstr "" + +#: ../../starting/which-python.rst:108 +msgid "" +"`Jython `_ is a Python implementation that compiles " +"Python code to Java bytecode which is then executed by the JVM (Java Virtual" +" Machine). Additionally, it is able to import and use any Java class like a " +"Python module." +msgstr "" + +#: ../../starting/which-python.rst:113 +msgid "" +"If you need to interface with an existing Java codebase or have other " +"reasons to need to write Python code for the JVM, Jython is the best choice." +msgstr "" + +#: ../../starting/which-python.rst:116 +msgid "Jython currently supports up to Python 2.5. [#jython_ver]_" +msgstr "" + +#: ../../starting/which-python.rst:119 +msgid "IronPython" +msgstr "" + +#: ../../starting/which-python.rst:121 +msgid "" +"`IronPython `_ is an implementation of Python for " +"the .NET framework. It can use both Python and .NET framework libraries, and" +" can also expose Python code to other languages in the .NET framework." +msgstr "" + +#: ../../starting/which-python.rst:125 +msgid "" +"`Python Tools for Visual Studio `_ integrates " +"IronPython directly into the Visual Studio development environment, making " +"it an ideal choice for Windows developers." +msgstr "" + +#: ../../starting/which-python.rst:129 +msgid "IronPython supports Python 2.7. [#iron_ver]_" +msgstr "" + +#: ../../starting/which-python.rst:132 +msgid "PythonNet" +msgstr "" + +#: ../../starting/which-python.rst:134 +msgid "" +"`Python for .NET `_ is a package which provides" +" near seamless integration of a natively installed Python installation with " +"the .NET Common Language Runtime (CLR). This is the inverse approach to " +"that taken by IronPython (see above), to which it is more complementary than" +" competing with." +msgstr "" + +#: ../../starting/which-python.rst:140 +msgid "" +"In conjunction with Mono, PythonNet enables native Python installations on " +"non-Windows operating systems, such as OS X and Linux, to operate within the" +" .NET framework. It can be run in addition to IronPython without conflict." +msgstr "" + +#: ../../starting/which-python.rst:145 +msgid "PythonNet supports from Python 2.3 up to Python 2.7. [#pythonnet_ver]_" +msgstr "" + +#: ../../starting/which-python.rst:147 +msgid "http://pypy.org/compat.html" +msgstr "" + +#: ../../starting/which-python.rst:149 +msgid "" +"http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" +msgstr "" + +#: ../../starting/which-python.rst:151 +msgid "http://ironpython.codeplex.com/releases/view/81726" +msgstr "" + +#: ../../starting/which-python.rst:153 +msgid "http://pythonnet.github.io/readme.html" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.mo b/docs/locale/ko/LC_MESSAGES/writing/documentation.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.po b/docs/locale/ko/LC_MESSAGES/writing/documentation.po new file mode 100644 index 000000000..64768641c --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/writing/documentation.po @@ -0,0 +1,230 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../writing/documentation.rst:2 +msgid "Documentation" +msgstr "" + +#: ../../writing/documentation.rst:4 +msgid "" +"Readability is a primary focus for Python developers, in both project and " +"code documentation. Following some simple best practices can save both you " +"and others a lot of time." +msgstr "" + +#: ../../writing/documentation.rst:9 +msgid "Project Documentation" +msgstr "" + +#: ../../writing/documentation.rst:11 +msgid "" +"A :file:`README` file at the root directory should give general information " +"to both users and maintainers of a project. It should be raw text or written" +" in some very easy to read markup, such as :ref:`reStructuredText-ref` or " +"Markdown. It should contain a few lines explaining the purpose of the " +"project or library (without assuming the user knows anything about the " +"project), the url of the main source for the software, and some basic credit" +" information. This file is the main entry point for readers of the code." +msgstr "" + +#: ../../writing/documentation.rst:19 +msgid "" +"An :file:`INSTALL` file is less necessary with Python. The installation " +"instructions are often reduced to one command, such as ``pip install " +"module`` or ``python setup.py install`` and added to the :file:`README` " +"file." +msgstr "" + +#: ../../writing/documentation.rst:24 +msgid "" +"A :file:`LICENSE` file should *always* be present and specify the license " +"under which the software is made available to the public." +msgstr "" + +#: ../../writing/documentation.rst:27 +msgid "" +"A :file:`TODO` file or a ``TODO`` section in :file:`README` should list the " +"planned development for the code." +msgstr "" + +#: ../../writing/documentation.rst:30 +msgid "" +"A :file:`CHANGELOG` file or section in :file:`README` should compile a short" +" overview of the changes in the code base for the latest versions." +msgstr "" + +#: ../../writing/documentation.rst:34 +msgid "Project Publication" +msgstr "" + +#: ../../writing/documentation.rst:36 +msgid "" +"Depending on the project, your documentation might include some or all of " +"the following components:" +msgstr "" + +#: ../../writing/documentation.rst:39 +msgid "" +"An *introduction* should show a very short overview of what can be done with" +" the product, using one or two extremely simplified use cases. This is the " +"thirty-second pitch for your project." +msgstr "" + +#: ../../writing/documentation.rst:43 +msgid "" +"A *tutorial* should show some primary use cases in more detail. The reader " +"will follow a step-by-step procedure to set-up a working prototype." +msgstr "" + +#: ../../writing/documentation.rst:46 +msgid "" +"An *API reference* is typically generated from the code (see " +":ref:`docstrings `). It will list all publicly available " +"interfaces, parameters, and return values." +msgstr "" + +#: ../../writing/documentation.rst:50 +msgid "" +"*Developer documentation* is intended for potential contributors. This can " +"include code convention and general design strategy of the project." +msgstr "" + +#: ../../writing/documentation.rst:56 +msgid "Sphinx" +msgstr "" + +#: ../../writing/documentation.rst:58 +msgid "" +"Sphinx_ is far and away the most popular Python documentation tool. **Use " +"it.** It converts :ref:`restructuredtext-ref` markup language into a range " +"of output formats including HTML, LaTeX (for printable PDF versions), manual" +" pages, and plain text." +msgstr "" + +#: ../../writing/documentation.rst:63 +msgid "" +"There is also **great**, **free** hosting for your Sphinx_ docs: `Read The " +"Docs`_. Use it. You can configure it with commit hooks to your source " +"repository so that rebuilding your documentation will happen automatically." +msgstr "" + +#: ../../writing/documentation.rst:70 +msgid "" +"Sphinx is famous for its API generation, but it also works well for general " +"project documentation. This Guide is built with Sphinx_ and is hosted on " +"`Read The Docs`_" +msgstr "" + +#: ../../writing/documentation.rst:80 +msgid "reStructuredText" +msgstr "" + +#: ../../writing/documentation.rst:82 +msgid "" +"Most Python documentation is written with reStructuredText_. It's like " +"Markdown with all the optional extensions built in." +msgstr "" + +#: ../../writing/documentation.rst:85 +msgid "" +"The `reStructuredText Primer`_ and the `reStructuredText Quick Reference`_ " +"should help you familiarize yourself with its syntax." +msgstr "" + +#: ../../writing/documentation.rst:94 +msgid "Code Documentation Advice" +msgstr "" + +#: ../../writing/documentation.rst:96 +msgid "" +"Comments clarify the code and they are added with purpose of making the code" +" easier to understand. In Python, comments begin with a hash (number sign) " +"(``#``)." +msgstr "" + +#: ../../writing/documentation.rst:102 +msgid "In Python, *docstrings* describe modules, classes, and functions:" +msgstr "" + +#: ../../writing/documentation.rst:110 +msgid "" +"In general, follow the comment section of :pep:`8#comments` (the \"Python " +"Style Guide\")." +msgstr "" + +#: ../../writing/documentation.rst:113 +msgid "Commenting Sections of Code" +msgstr "" + +#: ../../writing/documentation.rst:115 +msgid "" +"*Do not use triple-quote strings to comment code*. This is not a good " +"practice, because line-oriented command-line tools such as grep will not be " +"aware that the commented code is inactive. It is better to add hashes at the" +" proper indentation level for every commented line. Your editor probably has" +" the ability to do this easily, and it is worth learning the " +"comment/uncomment toggle." +msgstr "" + +#: ../../writing/documentation.rst:123 +msgid "Docstrings and Magic" +msgstr "" + +#: ../../writing/documentation.rst:125 +msgid "" +"Some tools use docstrings to embed more-than-documentation behavior, such as" +" unit test logic. Those can be nice, but you won't ever go wrong with " +"vanilla \"here's what this does.\"" +msgstr "" + +#: ../../writing/documentation.rst:130 +msgid "Docstrings versus Block comments" +msgstr "" + +#: ../../writing/documentation.rst:132 +msgid "" +"These aren't interchangeable. For a function or class, the leading comment " +"block is a programmer's note. The docstring describes the *operation* of the" +" function or class:" +msgstr "" + +#: ../../writing/documentation.rst:147 +msgid "Other Tools" +msgstr "" + +#: ../../writing/documentation.rst:149 +msgid "You might see these in the wild. Use :ref:`sphinx-ref`." +msgstr "" + +#: ../../writing/documentation.rst:152 +msgid "" +"Pycco is a \"literate-programming-style documentation generator\" and is a " +"port of the node.js Docco_. It makes code into a side-by-side HTML code and " +"documentation." +msgstr "" + +#: ../../writing/documentation.rst:160 +msgid "" +"Ronn builds unix manuals. It converts human readable textfiles to roff for " +"terminal display, and also to HTML for the web." +msgstr "" + +#: ../../writing/documentation.rst:166 +msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." +msgstr "" + +#: ../../writing/documentation.rst:171 +msgid "" +"MkDocs is a fast and simple static site generator that's geared towards " +"building project documentation with Markdown." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo b/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/writing/gotchas.po b/docs/locale/ko/LC_MESSAGES/writing/gotchas.po new file mode 100644 index 000000000..5d29906d4 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/writing/gotchas.po @@ -0,0 +1,160 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../writing/gotchas.rst:2 +msgid "Common Gotchas" +msgstr "" + +#: ../../writing/gotchas.rst:4 +msgid "" +"For the most part, Python aims to be a clean and consistent language that " +"avoids surprises. However, there are a few cases that can be confusing to " +"newcomers." +msgstr "" + +#: ../../writing/gotchas.rst:8 +msgid "" +"Some of these cases are intentional but can be potentially surprising. Some " +"could arguably be considered language warts. In general though, what follows" +" is a collection of potentially tricky behavior that might seem strange at " +"first glance, but is generally sensible once you're aware of the underlying " +"cause for the surprise." +msgstr "" + +#: ../../writing/gotchas.rst:17 +msgid "Mutable Default Arguments" +msgstr "" + +#: ../../writing/gotchas.rst:19 +msgid "" +"Seemingly the *most* common surprise new Python programmers encounter is " +"Python's treatment of mutable default arguments in function definitions." +msgstr "" + +#: ../../writing/gotchas.rst:23 ../../writing/gotchas.rst:94 +msgid "What You Wrote" +msgstr "" + +#: ../../writing/gotchas.rst:32 ../../writing/gotchas.rst:102 +msgid "What You Might Have Expected to Happen" +msgstr "" + +#: ../../writing/gotchas.rst:42 +msgid "" +"A new list is created each time the function is called if a second argument " +"isn't provided, so that the output is::" +msgstr "" + +#: ../../writing/gotchas.rst:49 ../../writing/gotchas.rst:119 +msgid "What Does Happen" +msgstr "" + +#: ../../writing/gotchas.rst:56 +msgid "" +"A new list is created *once* when the function is defined, and the same list" +" is used in each successive call." +msgstr "" + +#: ../../writing/gotchas.rst:59 +msgid "" +"Python's default arguments are evaluated *once* when the function is " +"defined, not each time the function is called (like it is in say, Ruby). " +"This means that if you use a mutable default argument and mutate it, you " +"*will* and have mutated that object for all future calls to the function as " +"well." +msgstr "" + +#: ../../writing/gotchas.rst:65 ../../writing/gotchas.rst:157 +msgid "What You Should Do Instead" +msgstr "" + +#: ../../writing/gotchas.rst:67 +msgid "" +"Create a new object each time the function is called, by using a default arg" +" to signal that no argument was provided (:py:data:`None` is often a good " +"choice)." +msgstr "" + +#: ../../writing/gotchas.rst:80 ../../writing/gotchas.rst:180 +msgid "When the Gotcha Isn't a Gotcha" +msgstr "" + +#: ../../writing/gotchas.rst:82 +msgid "" +"Sometimes you can specifically \"exploit\" (read: use as intended) this " +"behavior to maintain state between calls of a function. This is often done " +"when writing a caching function." +msgstr "" + +#: ../../writing/gotchas.rst:88 +msgid "Late Binding Closures" +msgstr "" + +#: ../../writing/gotchas.rst:90 +msgid "" +"Another common source of confusion is the way Python binds its variables in " +"closures (or in the surrounding global scope)." +msgstr "" + +#: ../../writing/gotchas.rst:109 +msgid "" +"A list containing five functions that each have their own closed-over ``i`` " +"variable that multiplies their argument, producing::" +msgstr "" + +#: ../../writing/gotchas.rst:129 +msgid "" +"Five functions are created; instead all of them just multiply ``x`` by 4." +msgstr "" + +#: ../../writing/gotchas.rst:131 +msgid "" +"Python's closures are *late binding*. This means that the values of " +"variables used in closures are looked up at the time the inner function is " +"called." +msgstr "" + +#: ../../writing/gotchas.rst:135 +msgid "" +"Here, whenever *any* of the returned functions are called, the value of " +"``i`` is looked up in the surrounding scope at call time. By then, the loop " +"has completed and ``i`` is left with its final value of 4." +msgstr "" + +#: ../../writing/gotchas.rst:139 +msgid "" +"What's particularly nasty about this gotcha is the seemingly prevalent " +"misinformation that this has something to do with :ref:`lambdas " +"` in Python. Functions created with a ``lambda`` expression " +"are in no way special, and in fact the same exact behavior is exhibited by " +"just using an ordinary ``def``:" +msgstr "" + +#: ../../writing/gotchas.rst:159 +msgid "" +"The most general solution is arguably a bit of a hack. Due to Python's " +"aforementioned behavior concerning evaluating default arguments to functions" +" (see :ref:`default_args`), you can create a closure that binds immediately " +"to its arguments by using a default arg like so:" +msgstr "" + +#: ../../writing/gotchas.rst:169 +msgid "Alternatively, you can use the functools.partial function:" +msgstr "" + +#: ../../writing/gotchas.rst:182 +msgid "" +"Sometimes you want your closures to behave this way. Late binding is good in" +" lots of situations. Looping to create unique functions is unfortunately a " +"case where they can cause hiccups." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/license.mo b/docs/locale/ko/LC_MESSAGES/writing/license.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/writing/license.po b/docs/locale/ko/LC_MESSAGES/writing/license.po new file mode 100644 index 000000000..99788209b --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/writing/license.po @@ -0,0 +1,120 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../writing/license.rst:2 +msgid "Choosing a License" +msgstr "" + +#: ../../writing/license.rst:4 +msgid "" +"Your source publication *needs* a license. In the US, if no license is " +"specified, users have no legal right to download, modify, or distribute. " +"Furthermore, people can't contribute to your code unless you tell them what " +"rules to play by. Choosing a license is complicated, so here are some " +"pointers:" +msgstr "" + +#: ../../writing/license.rst:10 +msgid "" +"Open source. There are plenty of `open source licenses " +"`_ available to choose from." +msgstr "" + +#: ../../writing/license.rst:14 +msgid "In general, these licenses tend to fall into one of two categories:" +msgstr "" + +#: ../../writing/license.rst:16 +msgid "" +"licenses that focus more on the user's freedom to do with the software as " +"they please (these are the more permissive open source licenses such as the " +"MIT, BSD, & Apache)." +msgstr "" + +#: ../../writing/license.rst:20 +msgid "" +"licenses that focus more on making sure that the code itself — including any" +" changes made to it and distributed along with it — always remains free " +"(these are the less permissive free software licenses such as the GPL and " +"LGPL)." +msgstr "" + +#: ../../writing/license.rst:25 +msgid "" +"The latter are less permissive in the sense that they don't permit someone " +"to add code to the software and distribute it without also including the " +"source code for their changes." +msgstr "" + +#: ../../writing/license.rst:29 +msgid "" +"To help you choose one for your project, there's a `license chooser " +"`_, **use it**." +msgstr "" + +#: ../../writing/license.rst:32 +msgid "**More Permissive**" +msgstr "" + +#: ../../writing/license.rst:34 +msgid "" +"PSFL (Python Software Foundation License) -- for contributing to Python " +"itself" +msgstr "" + +#: ../../writing/license.rst:35 +msgid "MIT / BSD / ISC" +msgstr "" + +#: ../../writing/license.rst:37 +msgid "MIT (X11)" +msgstr "" + +#: ../../writing/license.rst:38 +msgid "New BSD" +msgstr "" + +#: ../../writing/license.rst:39 +msgid "ISC" +msgstr "" + +#: ../../writing/license.rst:41 +msgid "Apache" +msgstr "" + +#: ../../writing/license.rst:43 +msgid "**Less Permissive:**" +msgstr "" + +#: ../../writing/license.rst:45 +msgid "LGPL" +msgstr "" + +#: ../../writing/license.rst:46 +msgid "GPL" +msgstr "" + +#: ../../writing/license.rst:48 +msgid "GPLv2" +msgstr "" + +#: ../../writing/license.rst:49 +msgid "GPLv3" +msgstr "" + +#: ../../writing/license.rst:51 +msgid "" +"A good overview of licenses with explanations of what one can, cannot, and " +"must do using a particular software can be found at `tl;drLegal " +"`_." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.mo b/docs/locale/ko/LC_MESSAGES/writing/reading.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.po b/docs/locale/ko/LC_MESSAGES/writing/reading.po new file mode 100644 index 000000000..8932401ab --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/writing/reading.po @@ -0,0 +1,98 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../writing/reading.rst:2 +msgid "Reading Great Code" +msgstr "" + +#: ../../writing/reading.rst:4 +msgid "" +"One of the core tenants behind the design of Python is creating readable " +"code. The motivation behind this design is simple: The number one thing that" +" Python programmers do is read code." +msgstr "" + +#: ../../writing/reading.rst:8 +msgid "" +"One of the secrets of becoming a great Python programmer is to read, " +"understand, and comprehend excellent code." +msgstr "" + +#: ../../writing/reading.rst:11 +msgid "" +"Excellent code typically follows the guidelines outlined in " +":ref:`code_style`, and does its best to express a clear and concise intent " +"to the reader." +msgstr "" + +#: ../../writing/reading.rst:15 +msgid "" +"Included below is a list of recommended Python projects for reading. Each " +"one of these projects is a paragon of Python coding." +msgstr "" + +#: ../../writing/reading.rst:18 +msgid "" +"`Howdoi `_ Howdoi is a code search tool, " +"written in Python." +msgstr "" + +#: ../../writing/reading.rst:21 +msgid "" +"`Flask `_ Flask is a microframework for " +"Python based on Werkzeug and Jinja2. It's intended for getting started very " +"quickly and was developed with best intentions in mind." +msgstr "" + +#: ../../writing/reading.rst:26 +msgid "" +"`Werkzeug `_ Werkzeug started as " +"simple collection of various utilities for WSGI applications and has become " +"one of the most advanced WSGI utility modules. It includes a powerful " +"debugger, full-featured request and response objects, HTTP utilities to " +"handle entity tags, cache control headers, HTTP dates, cookie handling, file" +" uploads, a powerful URL routing system and a bunch of community-contributed" +" addon modules." +msgstr "" + +#: ../../writing/reading.rst:34 +msgid "" +"`Requests `_ Requests is an " +"Apache2 Licensed HTTP library, written in Python, for human beings." +msgstr "" + +#: ../../writing/reading.rst:38 +msgid "" +"`Tablib `_ Tablib is a format-" +"agnostic tabular dataset library, written in Python." +msgstr "" + +#: ../../writing/reading.rst:41 +msgid "" +"Embed and explain YouTube video showing python code reading: " +"http://www.youtube.com/watch?v=Jc8M9-LoEuo This may require installing a " +"Sphinx plugin. https://bitbucket.org/birkenfeld/sphinx-" +"contrib/src/a09f29fc16970f34350ca36ac7f229e00b1b1674/youtube?at=default" +msgstr "" + +#: ../../writing/reading.rst:43 +msgid "" +"Include code examples of exemplary code from each of the projects listed. " +"Explain why it is excellent code. Use complex examples." +msgstr "" + +#: ../../writing/reading.rst:45 +msgid "" +"Explain techniques to rapidly identify data structures, algorithms and " +"determine what the code is doing." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po new file mode 100644 index 000000000..726bcf144 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -0,0 +1,600 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../writing/structure.rst:2 +msgid "Structuring Your Project" +msgstr "" + +#: ../../writing/structure.rst:4 +msgid "" +"By \"structure\" we mean the decisions you make concerning how your project " +"best meets its objective. We need to consider how to best leverage Python's " +"features to create clean, effective code. In practical terms, \"structure\" " +"means making clean code whose logic and dependencies are clear as well as " +"how the files and folders are organized in the filesystem." +msgstr "" + +#: ../../writing/structure.rst:11 +msgid "" +"Which functions should go into which modules? How does data flow through the" +" project? What features and functions can be grouped together and isolated? " +"By answering questions like these you can begin to plan, in a broad sense, " +"what your finished product will look like." +msgstr "" + +#: ../../writing/structure.rst:16 +msgid "" +"In this section we take a closer look at Python's module and import systems " +"as they are the central elements to enforcing structure in your project. We " +"then discuss various perspectives on how to build code which can be extended" +" and tested reliably." +msgstr "" + +#: ../../writing/structure.rst:23 +msgid "Structure is Key" +msgstr "" + +#: ../../writing/structure.rst:25 +msgid "" +"Thanks to the way imports and modules are handled in Python, it is " +"relatively easy to structure a Python project. Easy, here, means that you do" +" not have many constraints and that the module importing model is easy to " +"grasp. Therefore, you are left with the pure architectural task of crafting " +"the different parts of your project and their interactions." +msgstr "" + +#: ../../writing/structure.rst:32 +msgid "" +"Easy structuring of a project means it is also easy to do it poorly. Some " +"signs of a poorly structured project include:" +msgstr "" + +#: ../../writing/structure.rst:36 +msgid "" +"Multiple and messy circular dependencies: if your classes Table and Chair in" +" :file:`furn.py` need to import Carpenter from :file:`workers.py` to answer " +"a question such as ``table.isdoneby()``, and if conversely the class " +"Carpenter needs to import Table and Chair, to answer the question " +"``carpenter.whatdo()``, then you have a circular dependency. In this case " +"you will have to resort to fragile hacks such as using import statements " +"inside methods or functions." +msgstr "" + +#: ../../writing/structure.rst:45 +msgid "" +"Hidden coupling: each and every change in Table's implementation breaks 20 " +"tests in unrelated test cases because it breaks Carpenter's code, which " +"requires very careful surgery to adapt the change. This means you have too " +"many assumptions about Table in Carpenter's code or the reverse." +msgstr "" + +#: ../../writing/structure.rst:51 +msgid "" +"Heavy usage of global state or context: instead of explicitly passing " +"``(height, width, type, wood)`` to each other, Table and Carpenter rely on " +"global variables that can be modified and are modified on the fly by " +"different agents. You need to scrutinize all access to these global " +"variables to understand why a rectangular table became a square, and " +"discover that remote template code is also modifying this context, messing " +"with table dimensions." +msgstr "" + +#: ../../writing/structure.rst:60 +msgid "" +"Spaghetti code: multiple pages of nested if clauses and for loops with a lot" +" of copy-pasted procedural code and no proper segmentation are known as " +"spaghetti code. Python's meaningful indentation (one of its most " +"controversial features) make it very hard to maintain this kind of code. So " +"the good news is that you might not see too much of it." +msgstr "" + +#: ../../writing/structure.rst:67 +msgid "" +"Ravioli code is more likely in Python: it consists of hundreds of similar " +"little pieces of logic, often classes or objects, without proper structure. " +"If you never can remember if you have to use FurnitureTable, AssetTable or " +"Table, or even TableNew for your task at hand, you might be swimming in " +"ravioli code." +msgstr "" + +#: ../../writing/structure.rst:75 +msgid "Modules" +msgstr "" + +#: ../../writing/structure.rst:77 +msgid "" +"Python modules are one of the main abstraction layers available and probably" +" the most natural one. Abstraction layers allow separating code into parts " +"holding related data and functionality." +msgstr "" + +#: ../../writing/structure.rst:81 +msgid "" +"For example, a layer of a project can handle interfacing with user actions, " +"while another would handle low-level manipulation of data. The most natural " +"way to separate these two layers is to regroup all interfacing functionality" +" in one file, and all low-level operations in another file. In this case, " +"the interface file needs to import the low-level file. This is done with the" +" ``import`` and ``from ... import`` statements." +msgstr "" + +#: ../../writing/structure.rst:88 +msgid "" +"As soon as you use `import` statements you use modules. These can be either " +"built-in modules such as `os` and `sys`, third-party modules you have " +"installed in your environment, or your project's internal modules." +msgstr "" + +#: ../../writing/structure.rst:92 +msgid "" +"To keep in line with the style guide, keep module names short, lowercase, " +"and be sure to avoid using special symbols like the dot (.) or question mark" +" (?). So a file name like :file:`my.spam.py` is one you should avoid! Naming" +" this way will interfere with the way Python looks for modules." +msgstr "" + +#: ../../writing/structure.rst:97 +msgid "" +"In the case of `my.spam.py` Python expects to find a :file:`spam.py` file in" +" a folder named :file:`my` which is not the case. There is an `example " +"`_ of how the dot " +"notation should be used in the Python docs." +msgstr "" + +#: ../../writing/structure.rst:102 +msgid "" +"If you'd like you could name your module :file:`my_spam.py`, but even our " +"friend the underscore should not be seen often in module names." +msgstr "" + +#: ../../writing/structure.rst:105 +msgid "" +"Aside from some naming restrictions, nothing special is required for a " +"Python file to be a module, but you need to understand the import mechanism " +"in order to use this concept properly and avoid some issues." +msgstr "" + +#: ../../writing/structure.rst:109 +msgid "" +"Concretely, the ``import modu`` statement will look for the proper file, " +"which is :file:`modu.py` in the same directory as the caller if it exists. " +"If it is not found, the Python interpreter will search for :file:`modu.py` " +"in the \"path\" recursively and raise an ImportError exception if it is not " +"found." +msgstr "" + +#: ../../writing/structure.rst:114 +msgid "" +"Once :file:`modu.py` is found, the Python interpreter will execute the " +"module in an isolated scope. Any top-level statement in :file:`modu.py` will" +" be executed, including other imports if any. Function and class definitions" +" are stored in the module's dictionary." +msgstr "" + +#: ../../writing/structure.rst:119 +msgid "" +"Then, the module's variables, functions, and classes will be available to " +"the caller through the module's namespace, a central concept in programming " +"that is particularly helpful and powerful in Python." +msgstr "" + +#: ../../writing/structure.rst:123 +msgid "" +"In many languages, an ``include file`` directive is used by the preprocessor" +" to take all code found in the file and 'copy' it into the caller's code. It" +" is different in Python: the included code is isolated in a module " +"namespace, which means that you generally don't have to worry that the " +"included code could have unwanted effects, e.g. override an existing " +"function with the same name." +msgstr "" + +#: ../../writing/structure.rst:129 +msgid "" +"It is possible to simulate the more standard behavior by using a special " +"syntax of the import statement: ``from modu import *``. This is generally " +"considered bad practice. **Using** ``import *`` **makes code harder to read " +"and makes dependencies less compartmentalized**." +msgstr "" + +#: ../../writing/structure.rst:134 +msgid "" +"Using ``from modu import func`` is a way to pinpoint the function you want " +"to import and put it in the global namespace. While much less harmful than " +"``import *`` because it shows explicitly what is imported in the global " +"namespace, its only advantage over a simpler ``import modu`` is that it will" +" save a little typing." +msgstr "" + +#: ../../writing/structure.rst:139 +msgid "**Very bad**" +msgstr "" + +#: ../../writing/structure.rst:148 +msgid "**Better**" +msgstr "" + +#: ../../writing/structure.rst:156 ../../writing/structure.rst:443 +msgid "**Best**" +msgstr "" + +#: ../../writing/structure.rst:164 +msgid "" +"As mentioned in the :ref:`code_style` section, readability is one of the " +"main features of Python. Readability means to avoid useless boilerplate text" +" and clutter, therefore some efforts are spent trying to achieve a certain " +"level of brevity. But terseness and obscurity are the limits where brevity " +"should stop. Being able to tell immediately where a class or function comes " +"from, as in the ``modu.func`` idiom, greatly improves code readability and " +"understandability in all but the simplest single file projects." +msgstr "" + +#: ../../writing/structure.rst:174 +msgid "Packages" +msgstr "" + +#: ../../writing/structure.rst:176 +msgid "" +"Python provides a very straightforward packaging system, which is simply an " +"extension of the module mechanism to a directory." +msgstr "" + +#: ../../writing/structure.rst:179 +msgid "" +"Any directory with an :file:`__init__.py` file is considered a Python " +"package. The different modules in the package are imported in a similar " +"manner as plain modules, but with a special behavior for the " +":file:`__init__.py` file, which is used to gather all package-wide " +"definitions." +msgstr "" + +#: ../../writing/structure.rst:184 +msgid "" +"A file :file:`modu.py` in the directory :file:`pack/` is imported with the " +"statement ``import pack.modu``. This statement will look for an " +":file:`__init__.py` file in :file:`pack`, execute all of its top-level " +"statements. Then it will look for a file named :file:`pack/modu.py` and " +"execute all of its top-level statements. After these operations, any " +"variable, function, or class defined in :file:`modu.py` is available in the " +"pack.modu namespace." +msgstr "" + +#: ../../writing/structure.rst:190 +msgid "" +"A commonly seen issue is to add too much code to :file:`__init__.py` files. " +"When the project complexity grows, there may be sub-packages and sub-sub-" +"packages in a deep directory structure. In this case, importing a single " +"item from a sub-sub-package will require executing all :file:`__init__.py` " +"files met while traversing the tree." +msgstr "" + +#: ../../writing/structure.rst:196 +msgid "" +"Leaving an :file:`__init__.py` file empty is considered normal and even a " +"good practice, if the package's modules and sub-packages do not need to " +"share any code." +msgstr "" + +#: ../../writing/structure.rst:199 +msgid "" +"Lastly, a convenient syntax is available for importing deeply nested " +"packages: ``import very.deep.module as mod``. This allows you to use `mod` " +"in place of the verbose repetition of ``very.deep.module``." +msgstr "" + +#: ../../writing/structure.rst:204 +msgid "Object-oriented programming" +msgstr "" + +#: ../../writing/structure.rst:206 +msgid "" +"Python is sometimes described as an object-oriented programming language. " +"This can be somewhat misleading and needs to be clarified." +msgstr "" + +#: ../../writing/structure.rst:209 +msgid "" +"In Python, everything is an object, and can be handled as such. This is what" +" is meant when we say, for example, that functions are first-class objects. " +"Functions, classes, strings, and even types are objects in Python: like any " +"objects, they have a type, they can be passed as function arguments, they " +"may have methods and properties. In this understanding, Python is an object-" +"oriented language." +msgstr "" + +#: ../../writing/structure.rst:216 +msgid "" +"However, unlike Java, Python does not impose object-oriented programming as " +"the main programming paradigm. It is perfectly viable for a Python project " +"to not be object-oriented, i.e. to use no or very few class definitions, " +"class inheritance, or any other mechanisms that are specific to object-" +"oriented programming." +msgstr "" + +#: ../../writing/structure.rst:222 +msgid "" +"Moreover, as seen in the modules_ section, the way Python handles modules " +"and namespaces gives the developer a natural way to ensure the encapsulation" +" and separation of abstraction layers, both being the most common reasons to" +" use object-orientation. Therefore, Python programmers have more latitude to" +" not use object-orientation, when it is not required by the business model." +msgstr "" + +#: ../../writing/structure.rst:229 +msgid "" +"There are some reasons to avoid unnecessary object-orientation. Defining " +"custom classes is useful when we want to glue together some state and some " +"functionality. The problem, as pointed out by the discussions about " +"functional programming, comes from the \"state\" part of the equation." +msgstr "" + +#: ../../writing/structure.rst:234 +msgid "" +"In some architectures, typically web applications, multiple instances of " +"Python processes are spawned to respond to external requests that can happen" +" at the same time. In this case, holding some state into instantiated " +"objects, which means keeping some static information about the world, is " +"prone to concurrency problems or race-conditions. Sometimes, between the " +"initialization of the state of an object (usually done with the " +"``__init__()`` method) and the actual use of the object state through one of" +" its methods, the world may have changed, and the retained state may be " +"outdated. For example, a request may load an item in memory and mark it as " +"read by a user. If another request requires the deletion of this item at the" +" same time, it may happen that the deletion actually occurs after the first " +"process loaded the item, and then we have to mark as read a deleted object." +msgstr "" + +#: ../../writing/structure.rst:247 +msgid "" +"This and other issues led to the idea that using stateless functions is a " +"better programming paradigm." +msgstr "" + +#: ../../writing/structure.rst:250 +msgid "" +"Another way to say the same thing is to suggest using functions and " +"procedures with as few implicit contexts and side-effects as possible. A " +"function's implicit context is made up of any of the global variables or " +"items in the persistence layer that are accessed from within the function. " +"Side-effects are the changes that a function makes to its implicit context. " +"If a function saves or deletes data in a global variable or in the " +"persistence layer, it is said to have a side-effect." +msgstr "" + +#: ../../writing/structure.rst:257 +msgid "" +"Carefully isolating functions with context and side-effects from functions " +"with logic (called pure functions) allow the following benefits:" +msgstr "" + +#: ../../writing/structure.rst:260 +msgid "" +"Pure functions are deterministic: given a fixed input, the output will " +"always be the same." +msgstr "" + +#: ../../writing/structure.rst:263 +msgid "" +"Pure functions are much easier to change or replace if they need to be " +"refactored or optimized." +msgstr "" + +#: ../../writing/structure.rst:266 +msgid "" +"Pure functions are easier to test with unit-tests: There is less need for " +"complex context setup and data cleaning afterwards." +msgstr "" + +#: ../../writing/structure.rst:269 +msgid "Pure functions are easier to manipulate, decorate, and pass-around." +msgstr "" + +#: ../../writing/structure.rst:271 +msgid "" +"In summary, pure functions, without any context or side-effects, are more " +"efficient building blocks than classes and objects for some architectures." +msgstr "" + +#: ../../writing/structure.rst:274 +msgid "" +"Obviously, object-orientation is useful and even necessary in many cases, " +"for example when developing graphical desktop applications or games, where " +"the things that are manipulated (windows, buttons, avatars, vehicles) have a" +" relatively long life of their own in the computer's memory." +msgstr "" + +#: ../../writing/structure.rst:281 +msgid "Decorators" +msgstr "" + +#: ../../writing/structure.rst:283 +msgid "" +"The Python language provides a simple yet powerful syntax called " +"'decorators'. A decorator is a function or a class that wraps (or decorates)" +" a function or a method. The 'decorated' function or method will replace the" +" original 'undecorated' function or method. Because functions are first-" +"class objects in Python, this can be done 'manually', but using the " +"@decorator syntax is clearer and thus preferred." +msgstr "" + +#: ../../writing/structure.rst:306 +msgid "" +"This mechanism is useful for separating concerns and avoiding external un-" +"related logic 'polluting' the core logic of the function or method. A good " +"example of a piece of functionality that is better handled with decoration " +"is memoization or caching: you want to store the results of an expensive " +"function in a table and use them directly instead of recomputing them when " +"they have already been computed. This is clearly not part of the function " +"logic." +msgstr "" + +#: ../../writing/structure.rst:315 +msgid "Dynamic typing" +msgstr "" + +#: ../../writing/structure.rst:317 +msgid "" +"Python is said to be dynamically typed, which means that variables do not " +"have a fixed type. In fact, in Python, variables are very different from " +"what they are in many other languages, specifically statically-typed " +"languages. Variables are not a segment of the computer's memory where some " +"value is written, they are 'tags' or 'names' pointing to objects. It is " +"therefore possible for the variable 'a' to be set to the value 1, then to " +"the value 'a string', then to a function." +msgstr "" + +#: ../../writing/structure.rst:325 +msgid "" +"The dynamic typing of Python is often considered to be a weakness, and " +"indeed it can lead to complexities and hard-to-debug code. Something named " +"'a' can be set to many different things, and the developer or the maintainer" +" needs to track this name in the code to make sure it has not been set to a " +"completely unrelated object." +msgstr "" + +#: ../../writing/structure.rst:331 +msgid "Some guidelines help to avoid this issue:" +msgstr "" + +#: ../../writing/structure.rst:333 +msgid "Avoid using the same variable name for different things." +msgstr "" + +#: ../../writing/structure.rst:335 ../../writing/structure.rst:359 +#: ../../writing/structure.rst:423 +msgid "**Bad**" +msgstr "" + +#: ../../writing/structure.rst:344 ../../writing/structure.rst:433 +msgid "**Good**" +msgstr "" + +#: ../../writing/structure.rst:353 +msgid "" +"Using short functions or methods helps reduce the risk of using the same " +"name for two unrelated things." +msgstr "" + +#: ../../writing/structure.rst:356 +msgid "" +"It is better to use different names even for things that are related, when " +"they have a different type:" +msgstr "" + +#: ../../writing/structure.rst:367 +msgid "" +"There is no efficiency gain when reusing names: the assignments will have to" +" create new objects anyway. However, when the complexity grows and each " +"assignment is separated by other lines of code, including 'if' branches and " +"loops, it becomes harder to ascertain what a given variable's type is." +msgstr "" + +#: ../../writing/structure.rst:373 +msgid "" +"Some coding practices, like functional programming, recommend never " +"reassigning a variable. In Java this is done with the `final` keyword. " +"Python does not have a `final` keyword and it would be against its " +"philosophy anyway. However, it may be a good discipline to avoid assigning " +"to a variable more than once, and it helps in grasping the concept of " +"mutable and immutable types." +msgstr "" + +#: ../../writing/structure.rst:380 +msgid "Mutable and immutable types" +msgstr "" + +#: ../../writing/structure.rst:382 +msgid "Python has two kinds of built-in or user-defined types." +msgstr "" + +#: ../../writing/structure.rst:384 +msgid "" +"Mutable types are those that allow in-place modification of the content. " +"Typical mutables are lists and dictionaries: All lists have mutating " +"methods, like :py:meth:`list.append` or :py:meth:`list.pop`, and can be " +"modified in place. The same goes for dictionaries." +msgstr "" + +#: ../../writing/structure.rst:389 +msgid "" +"Immutable types provide no method for changing their content. For instance, " +"the variable x set to the integer 6 has no \"increment\" method. If you want" +" to compute x + 1, you have to create another integer and give it a name." +msgstr "" + +#: ../../writing/structure.rst:403 +msgid "" +"One consequence of this difference in behavior is that mutable types are not" +" \"stable\", and therefore cannot be used as dictionary keys." +msgstr "" + +#: ../../writing/structure.rst:407 +msgid "" +"Using properly mutable types for things that are mutable in nature and " +"immutable types for things that are fixed in nature helps to clarify the " +"intent of the code." +msgstr "" + +#: ../../writing/structure.rst:411 +msgid "" +"For example, the immutable equivalent of a list is the tuple, created with " +"``(1, 2)``. This tuple is a pair that cannot be changed in-place, and can be" +" used as a key for a dictionary." +msgstr "" + +#: ../../writing/structure.rst:415 +msgid "" +"One peculiarity of Python that can surprise beginners is that strings are " +"immutable. This means that when constructing a string from its parts, it is " +"much more efficient to accumulate the parts in a list, which is mutable, and" +" then glue ('join') the parts together when the full string is needed. One " +"thing to notice, however, is that list comprehensions are better and faster " +"than constructing a list in a loop with calls to ``append()``." +msgstr "" + +#: ../../writing/structure.rst:451 +msgid "" +"One final thing to mention about strings is that using ``join()`` is not " +"always best. In the instances where you are creating a new string from a " +"pre-determined number of strings, using the addition operator is actually " +"faster, but in cases like above or in cases where you are adding to an " +"existing string, using ``join()`` should be your preferred method." +msgstr "" + +#: ../../writing/structure.rst:467 +msgid "" +"You can also use the :ref:`% ` formatting operator" +" to concatenate a pre-determined number of strings besides " +":py:meth:`str.join` and ``+``. However, according to :pep:`3101`, the ``%`` " +"operator became deprecated in Python 3.1 and will be replaced by the " +":py:meth:`str.format` method in the later versions." +msgstr "" + +#: ../../writing/structure.rst:484 +msgid "Vendorizing Dependencies" +msgstr "" + +#: ../../writing/structure.rst:488 +msgid "Runners" +msgstr "" + +#: ../../writing/structure.rst:492 +msgid "Further Reading" +msgstr "" + +#: ../../writing/structure.rst:494 +msgid "http://docs.python.org/2/library/" +msgstr "" + +#: ../../writing/structure.rst:495 +msgid "http://www.diveintopython.net/toc/index.html" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.mo b/docs/locale/ko/LC_MESSAGES/writing/style.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po new file mode 100644 index 000000000..c9f08739d --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -0,0 +1,614 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../writing/style.rst:4 +msgid "Code Style" +msgstr "" + +#: ../../writing/style.rst:6 +msgid "" +"If you ask Python programmers what they like most in Python, they will often" +" say its high readability. Indeed, a high level of readability is at the " +"heart of the design of the Python language, following the recognised fact " +"that code is read much more often than it is written." +msgstr "" + +#: ../../writing/style.rst:11 +msgid "" +"One reason for Python code to be easily read and understood is its " +"relatively complete set of Code Style guidelines and \"Pythonic\" idioms." +msgstr "" + +#: ../../writing/style.rst:14 +msgid "" +"Moreover, when a veteran Python developer (a Pythonista) points to portions " +"of code and says they are not \"Pythonic\", it usually means that these " +"lines of code do not follow the common guidelines and fail to express the " +"intent in what is considered the best (hear: most readable) way." +msgstr "" + +#: ../../writing/style.rst:19 +msgid "" +"On some border cases, no best way has been agreed upon on how to express an " +"intent in Python code, but these cases are rare." +msgstr "" + +#: ../../writing/style.rst:23 +msgid "General concepts" +msgstr "" + +#: ../../writing/style.rst:26 +msgid "Explicit code" +msgstr "" + +#: ../../writing/style.rst:28 +msgid "" +"While any kind of black magic is possible with Python, the most explicit and" +" straightforward manner is preferred." +msgstr "" + +#: ../../writing/style.rst:31 ../../writing/style.rst:58 +msgid "**Bad**" +msgstr "" + +#: ../../writing/style.rst:39 ../../writing/style.rst:69 +msgid "**Good**" +msgstr "" + +#: ../../writing/style.rst:46 +msgid "" +"In the good code above, x and y are explicitly received from the caller, and" +" an explicit dictionary is returned. The developer using this function knows" +" exactly what to do by reading the first and last lines, which is not the " +"case with the bad example." +msgstr "" + +#: ../../writing/style.rst:52 +msgid "One statement per line" +msgstr "" + +#: ../../writing/style.rst:54 +msgid "" +"While some compound statements such as list comprehensions are allowed and " +"appreciated for their brevity and their expressiveness, it is bad practice " +"to have two disjoint statements on the same line of code." +msgstr "" + +#: ../../writing/style.rst:85 +msgid "Function arguments" +msgstr "" + +#: ../../writing/style.rst:87 +msgid "Arguments can be passed to functions in four different ways." +msgstr "" + +#: ../../writing/style.rst:89 +msgid "" +"1. **Positional arguments** are mandatory and have no default values. They " +"are the simplest form of arguments and they can be used for the few function" +" arguments that are fully part of the functions meaning and their order is " +"natural. For instance, in ``send(message, recipient)`` or ``point(x, y)`` " +"the user of the function has no difficulty remembering that those two " +"functions require two arguments, and in which order." +msgstr "" + +#: ../../writing/style.rst:96 +msgid "" +"In those two cases, it is possible to use argument names when calling the " +"functions and, doing so, it is possible to switch the order of arguments, " +"calling for instance ``send(recipient='World', message='Hello')`` and " +"``point(y=2, x=1)`` but this reduces readability and is unnecessarily " +"verbose, compared to the more straightforward calls to ``send('Hello', " +"'World')`` and ``point(1, 2)``." +msgstr "" + +#: ../../writing/style.rst:102 +msgid "" +"2. **Keyword arguments** are not mandatory and have default values. They are" +" often used for optional parameters sent to the function. When a function " +"has more than two or three positional parameters, its signature is more " +"difficult to remember and using keyword argument with default values is " +"helpful. For instance, a more complete ``send`` function could be defined as" +" ``send(message, to, cc=None, bcc=None)``. Here ``cc`` and ``bcc`` are " +"optional, and evaluate to ``None`` when they are not passed another value." +msgstr "" + +#: ../../writing/style.rst:110 +msgid "" +"Calling a function with keyword arguments can be done in multiple ways in " +"Python, for example it is possible to follow the order of arguments in the " +"definition without explicitly naming the arguments, like in ``send('Hello', " +"'World', 'Cthulhu', 'God')``, sending a blind carbon copy to God. It would " +"also be possible to name arguments in another order, like in ``send('Hello " +"again', 'World', bcc='God', cc='Cthulhu')``. Those two possibilities are " +"better avoided without any strong reason to not follow the syntax that is " +"the closest to the function definition: ``send('Hello', 'World', " +"cc='Cthulhu', bcc='God')``." +msgstr "" + +#: ../../writing/style.rst:119 +msgid "" +"As a side note, following `YAGNI " +"`_ principle, it is " +"often harder to remove an optional argument (and its logic inside the " +"function) that was added \"just in case\" and is seemingly never used, than " +"to add a new optional argument and its logic when needed." +msgstr "" + +#: ../../writing/style.rst:124 +msgid "" +"3. The **arbitrary argument list** is the third way to pass arguments to a " +"function. If the function intention is better expressed by a signature with" +" an extensible number of positional arguments, it can be defined with the " +"``*args`` constructs. In the function body, ``args`` will be a tuple of all" +" the remaining positional arguments. For example, ``send(message, *args)`` " +"can be called with each recipient as an argument: ``send('Hello', 'God', " +"'Mom', 'Cthulhu')``, and in the function body ``args`` will be equal to " +"``('God', 'Mom', 'Cthulhu')``." +msgstr "" + +#: ../../writing/style.rst:133 +msgid "" +"However, this construct has some drawbacks and should be used with caution. " +"If a function receives a list of arguments of the same nature, it is often " +"more clear to define it as a function of one argument, that argument being a" +" list or any sequence. Here, if ``send`` has multiple recipients, it is " +"better to define it explicitly: ``send(message, recipients)`` and call it " +"with ``send('Hello', ['God', 'Mom', 'Cthulhu'])``. This way, the user of the" +" function can manipulate the recipient list as a list beforehand, and it " +"opens the possibility to pass any sequence, including iterators, that cannot" +" be unpacked as other sequences." +msgstr "" + +#: ../../writing/style.rst:142 +msgid "" +"4. The **arbitrary keyword argument dictionary** is the last way to pass " +"arguments to functions. If the function requires an undetermined series of " +"named arguments, it is possible to use the ``**kwargs`` construct. In the " +"function body, ``kwargs`` will be a dictionary of all the passed named " +"arguments that have not been caught by other keyword arguments in the " +"function signature." +msgstr "" + +#: ../../writing/style.rst:148 +msgid "" +"The same caution as in the case of *arbitrary argument list* is necessary, " +"for similar reasons: these powerful techniques are to be used when there is " +"a proven necessity to use them, and they should not be used if the simpler " +"and clearer construct is sufficient to express the function's intention." +msgstr "" + +#: ../../writing/style.rst:153 +msgid "" +"It is up to the programmer writing the function to determine which arguments" +" are positional arguments and which are optional keyword arguments, and to " +"decide whether to use the advanced techniques of arbitrary argument passing." +" If the advice above is followed wisely, it is possible and enjoyable to " +"write Python functions that are:" +msgstr "" + +#: ../../writing/style.rst:159 +msgid "easy to read (the name and arguments need no explanations)" +msgstr "" + +#: ../../writing/style.rst:161 +msgid "" +"easy to change (adding a new keyword argument does not break other parts of " +"the code)" +msgstr "" + +#: ../../writing/style.rst:165 +msgid "Avoid the magical wand" +msgstr "" + +#: ../../writing/style.rst:167 +msgid "" +"A powerful tool for hackers, Python comes with a very rich set of hooks and " +"tools allowing to do almost any kind of tricky tricks. For instance, it is " +"possible to do each of the following:" +msgstr "" + +#: ../../writing/style.rst:171 +msgid "change how objects are created and instantiated" +msgstr "" + +#: ../../writing/style.rst:173 +msgid "change how the Python interpreter imports modules" +msgstr "" + +#: ../../writing/style.rst:175 +msgid "" +"it is even possible (and recommended if needed) to embed C routines in " +"Python." +msgstr "" + +#: ../../writing/style.rst:177 +msgid "" +"However, all these options have many drawbacks and it is always better to " +"use the most straightforward way to achieve your goal. The main drawback is " +"that readability suffers greatly when using these constructs. Many code " +"analysis tools, such as pylint or pyflakes, will be unable to parse this " +"\"magic\" code." +msgstr "" + +#: ../../writing/style.rst:182 +msgid "" +"We consider that a Python developer should know about these nearly infinite " +"possibilities, because it instills confidence that no impassable problem " +"will be on the way. However, knowing how and particularly when **not** to " +"use them is very important." +msgstr "" + +#: ../../writing/style.rst:187 +msgid "" +"Like a kung fu master, a Pythonista knows how to kill with a single finger, " +"and never to actually do it." +msgstr "" + +#: ../../writing/style.rst:191 +msgid "We are all consenting adults" +msgstr "" + +#: ../../writing/style.rst:193 +msgid "" +"As seen above, Python allows many tricks, and some of them are potentially " +"dangerous. A good example is that any client code can override an object's " +"properties and methods: there is no \"private\" keyword in Python. This " +"philosophy, very different from highly defensive languages like Java, which " +"give a lot of mechanisms to prevent any misuse, is expressed by the saying: " +"\"We are all consenting adults\"." +msgstr "" + +#: ../../writing/style.rst:200 +msgid "" +"This doesn't mean that, for example, no properties are considered private, " +"and that no proper encapsulation is possible in Python. Rather, instead of " +"relying on concrete walls erected by the developers between their code and " +"other's, the Python community prefers to rely on a set of conventions " +"indicating that these elements should not be accessed directly." +msgstr "" + +#: ../../writing/style.rst:206 +msgid "" +"The main convention for private properties and implementation details is to " +"prefix all \"internals\" with an underscore. If the client code breaks this " +"rule and accesses these marked elements, any misbehavior or problems " +"encountered if the code is modified is the responsibility of the client " +"code." +msgstr "" + +#: ../../writing/style.rst:211 +msgid "" +"Using this convention generously is encouraged: any method or property that " +"is not intended to be used by client code should be prefixed with an " +"underscore. This will guarantee a better separation of duties and easier " +"modification of existing code; it will always be possible to publicize a " +"private property, while privatising a public property might be a much harder" +" operation." +msgstr "" + +#: ../../writing/style.rst:218 +msgid "Returning values" +msgstr "" + +#: ../../writing/style.rst:220 +msgid "" +"When a function grows in complexity it is not uncommon to use multiple " +"return statements inside the function's body. However, in order to keep a " +"clear intent and a sustainable readability level, it is preferable to avoid " +"returning meaningful values from many output points in the body." +msgstr "" + +#: ../../writing/style.rst:225 +msgid "" +"There are two main cases for returning values in a function: the result of " +"the function return when it has been processed normally, and the error cases" +" that indicate a wrong input parameter or any other reason for the function " +"to not be able to complete its computation or task." +msgstr "" + +#: ../../writing/style.rst:230 +msgid "" +"If you do not wish to raise exceptions for the second case, then returning a" +" value, such as None or False, indicating that the function could not " +"perform correctly might be needed. In this case, it is better to return as " +"early as the incorrect context has been detected. It will help to flatten " +"the structure of the function: all the code after the return-because-of-" +"error statement can assume the condition is met to further compute the " +"function's main result. Having multiple such return statements is often " +"necessary." +msgstr "" + +#: ../../writing/style.rst:237 +msgid "" +"However, when a function has multiple main exit points for its normal " +"course, it becomes difficult to debug the returned result, so it may be " +"preferable to keep a single exit point. This will also help factoring out " +"some code paths, and the multiple exit points are a probable indication that" +" such a refactoring is needed." +msgstr "" + +#: ../../writing/style.rst:257 +msgid "Idioms" +msgstr "" + +#: ../../writing/style.rst:259 +msgid "" +"A programming idiom, put simply, is a *way* to write code. The notion of " +"programming idioms is discussed amply at `c2 " +"`_ and at `Stack Overflow " +"`_." +msgstr "" + +#: ../../writing/style.rst:262 +msgid "Idiomatic Python code is often referred to as being *Pythonic*." +msgstr "" + +#: ../../writing/style.rst:264 +msgid "" +"Although there usually is one --- and preferably only one --- obvious way to" +" do it; *the* way to write idiomatic Python code can be non-obvious to " +"Python beginners. So, good idioms must be consciously acquired." +msgstr "" + +#: ../../writing/style.rst:268 +msgid "Some common Python idioms follow:" +msgstr "" + +#: ../../writing/style.rst:273 +msgid "Unpacking" +msgstr "" + +#: ../../writing/style.rst:275 +msgid "" +"If you know the length of a list or tuple, you can assign names to its " +"elements with unpacking. For example, since ``enumerate()`` will provide a " +"tuple of two elements for each item in list:" +msgstr "" + +#: ../../writing/style.rst:284 +msgid "You can use this to swap variables as well:" +msgstr "" + +#: ../../writing/style.rst:290 +msgid "Nested unpacking works too:" +msgstr "" + +#: ../../writing/style.rst:296 +msgid "" +"In Python 3, a new method of extended unpacking was introduced by " +":pep:`3132`:" +msgstr "" + +#: ../../writing/style.rst:307 +msgid "Create an ignored variable" +msgstr "" + +#: ../../writing/style.rst:309 +msgid "" +"If you need to assign something (for instance, in :ref:`unpacking-ref`) but " +"will not need that variable, use ``__``:" +msgstr "" + +#: ../../writing/style.rst:319 +msgid "" +"Many Python style guides recommend the use of a single underscore \"``_``\" " +"for throwaway variables rather than the double underscore \"``__``\" " +"recommended here. The issue is that \"``_``\" is commonly used as an alias " +"for the :func:`~gettext.gettext` function, and is also used at the " +"interactive prompt to hold the value of the last operation. Using a double " +"underscore instead is just as clear and almost as convenient, and eliminates" +" the risk of accidentally interfering with either of these other use cases." +msgstr "" + +#: ../../writing/style.rst:329 +msgid "Create a length-N list of the same thing" +msgstr "" + +#: ../../writing/style.rst:331 +msgid "Use the Python list ``*`` operator:" +msgstr "" + +#: ../../writing/style.rst:338 +msgid "Create a length-N list of lists" +msgstr "" + +#: ../../writing/style.rst:340 +msgid "" +"Because lists are mutable, the ``*`` operator (as above) will create a list " +"of N references to the `same` list, which is not likely what you want. " +"Instead, use a list comprehension:" +msgstr "" + +#: ../../writing/style.rst:349 +msgid "" +"A common idiom for creating strings is to use :py:meth:`str.join` on an " +"empty string." +msgstr "" + +#: ../../writing/style.rst:356 +msgid "" +"This will set the value of the variable *word* to 'spam'. This idiom can be " +"applied to lists and tuples." +msgstr "" + +#: ../../writing/style.rst:358 +msgid "" +"Sometimes we need to search through a collection of things. Let's look at " +"two options: lists and dictionaries." +msgstr "" + +#: ../../writing/style.rst:360 +msgid "Take the following code for example:" +msgstr "" + +#: ../../writing/style.rst:373 +msgid "" +"Even though both functions look identical, because *lookup_dict* is " +"utilizing the fact that dictionaries in Python are hashtables, the lookup " +"performance between the two is very different. Python will have to go " +"through each item in the list to find a matching case, which is time " +"consuming. By analysing the hash of the dictionary, finding keys in the dict" +" can be done very quickly. For more information see this `StackOverflow " +"`_ page." +msgstr "" + +#: ../../writing/style.rst:382 +msgid "Zen of Python" +msgstr "" + +#: ../../writing/style.rst:384 +msgid "Also known as :pep:`20`, the guiding principles for Python's design." +msgstr "" + +#: ../../writing/style.rst:411 +msgid "" +"For some examples of good Python style, see `this Stack Overflow question " +"`_ or `these " +"slides from a Python user group " +"`_." +msgstr "" + +#: ../../writing/style.rst:417 +msgid "PEP 8" +msgstr "" + +#: ../../writing/style.rst:419 +msgid ":pep:`8` is the de-facto code style guide for Python." +msgstr "" + +#: ../../writing/style.rst:421 +msgid "" +"Conforming your Python code to PEP 8 is generally a good idea and helps make" +" code more consistent when working on projects with other developers. There " +"is a command-line program, `pep8 `_, that" +" can check your code for conformance. Install it by running the following " +"command in your Terminal:" +msgstr "" + +#: ../../writing/style.rst:433 +msgid "" +"Then run it on a file or series of files to get a report of any violations." +msgstr "" + +#: ../../writing/style.rst:448 +msgid "Conventions" +msgstr "" + +#: ../../writing/style.rst:450 +msgid "" +"Here are some conventions you should follow to make your code easier to " +"read." +msgstr "" + +#: ../../writing/style.rst:453 +msgid "Check if variable equals a constant" +msgstr "" + +#: ../../writing/style.rst:455 +msgid "" +"You don't need to explicitly compare a value to True, or None, or 0 - you " +"can just add it to the if statement. See `Truth Value Testing " +"`_ for a " +"list of what is considered false." +msgstr "" + +#: ../../writing/style.rst:460 ../../writing/style.rst:492 +#: ../../writing/style.rst:524 ../../writing/style.rst:544 +#: ../../writing/style.rst:583 ../../writing/style.rst:618 +msgid "**Bad**:" +msgstr "" + +#: ../../writing/style.rst:470 ../../writing/style.rst:502 +#: ../../writing/style.rst:535 ../../writing/style.rst:553 +#: ../../writing/style.rst:592 ../../writing/style.rst:629 +msgid "**Good**:" +msgstr "" + +#: ../../writing/style.rst:487 +msgid "Access a Dictionary Element" +msgstr "" + +#: ../../writing/style.rst:489 +msgid "" +"Don't use the :py:meth:`dict.has_key` method. Instead, use ``x in d`` " +"syntax, or pass a default argument to :py:meth:`dict.get`." +msgstr "" + +#: ../../writing/style.rst:516 +msgid "Short Ways to Manipulate Lists" +msgstr "" + +#: ../../writing/style.rst:518 +msgid "" +"`List comprehensions `_ provide a powerful, concise way to work with lists. " +"Also, the :py:func:`map` and :py:func:`filter` functions can perform " +"operations on lists using a different, more concise syntax." +msgstr "" + +#: ../../writing/style.rst:562 +msgid "Use :py:func:`enumerate` keep a count of your place in the list." +msgstr "" + +#: ../../writing/style.rst:574 +msgid "" +"The :py:func:`enumerate` function has better readability than handling a " +"counter manually. Moreover, it is better optimized for iterators." +msgstr "" + +#: ../../writing/style.rst:578 +msgid "Read From a File" +msgstr "" + +#: ../../writing/style.rst:580 +msgid "" +"Use the ``with open`` syntax to read from files. This will automatically " +"close files for you." +msgstr "" + +#: ../../writing/style.rst:600 +msgid "" +"The ``with`` statement is better because it will ensure you always close the" +" file, even if an exception is raised inside the ``with`` block." +msgstr "" + +#: ../../writing/style.rst:604 +msgid "Line Continuations" +msgstr "" + +#: ../../writing/style.rst:606 +msgid "" +"When a logical line of code is longer than the accepted limit, you need to " +"split it over multiple physical lines. The Python interpreter will join " +"consecutive lines if the last character of the line is a backslash. This is " +"helpful in some cases, but should usually be avoided because of its " +"fragility: a white space added to the end of the line, after the backslash, " +"will break the code and may have unexpected results." +msgstr "" + +#: ../../writing/style.rst:613 +msgid "" +"A better solution is to use parentheses around your elements. Left with an " +"unclosed parenthesis on an end-of-line the Python interpreter will join the " +"next line until the parentheses are closed. The same behavior holds for " +"curly and square braces." +msgstr "" + +#: ../../writing/style.rst:642 +msgid "" +"However, more often than not having to split long logical line is a sign " +"that you are trying to do too many things at the same time, which may hinder" +" readability." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.mo b/docs/locale/ko/LC_MESSAGES/writing/tests.mo new file mode 100644 index 0000000000000000000000000000000000000000..4653064039a41be169a4818fb692c3e4f0dbb742 GIT binary patch literal 352 zcmYL^!A`?442FlqsYlKna^MCoZQ(Elm=@M-R7%>Z>yY3U*3bo&q)Icy9)#E9Sx5nC zmMrU+Kij{*PmaGvK8}2z`aBzikBh(ZTNB@eK`*U&lN$$F4Uf|H%4m$bz1tey>{KmL z6h>hjl(I9{0q+}C!~L%5p)wc+%c6prmBRTkNQILaB~g40aST@xN)numJp-luP{Zbb zEWX|jDnfbPHKN+-+7--e!9!96-wWr%~sf6y1R8X Yhw*_Myu3;aRBueJbc50OMY&+~10+6UD*ylh literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.po b/docs/locale/ko/LC_MESSAGES/writing/tests.po new file mode 100644 index 000000000..46b449160 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/writing/tests.po @@ -0,0 +1,334 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-11-30 22:28\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../writing/tests.rst:2 +msgid "Testing Your Code" +msgstr "" + +#: ../../writing/tests.rst:4 +msgid "Testing your code is very important." +msgstr "" + +#: ../../writing/tests.rst:6 +msgid "" +"Getting used to writing the testing code and the running code in parallel is" +" now considered a good habit. Used wisely, this method helps you define more" +" precisely your code's intent and have a more decoupled architecture." +msgstr "" + +#: ../../writing/tests.rst:10 +msgid "Some general rules of testing:" +msgstr "" + +#: ../../writing/tests.rst:12 +msgid "" +"A testing unit should focus on one tiny bit of functionality and prove it " +"correct." +msgstr "" + +#: ../../writing/tests.rst:15 +msgid "" +"Each test unit must be fully independent. Each of them must be able to run " +"alone, and also within the test suite, regardless of the order they are " +"called. The implication of this rule is that each test must be loaded with a" +" fresh dataset and may have to do some cleanup afterwards. This is usually " +"handled by :meth:`setUp()` and :meth:`tearDown()` methods." +msgstr "" + +#: ../../writing/tests.rst:21 +msgid "" +"Try hard to make tests that run fast. If one single test needs more than a " +"few millisecond to run, development will be slowed down or the tests will " +"not be run as often as desirable. In some cases, tests can't be fast because" +" they need a complex data structure to work on, and this data structure must" +" be loaded every time the test runs. Keep these heavier tests in a separate " +"test suite that is run by some scheduled task, and run all other tests as " +"often as needed." +msgstr "" + +#: ../../writing/tests.rst:29 +msgid "" +"Learn your tools and learn how to run a single test or a test case. Then, " +"when developing a function inside a module, run this function's tests very " +"often, ideally automatically when you save the code." +msgstr "" + +#: ../../writing/tests.rst:33 +msgid "" +"Always run the full test suite before a coding session, and run it again " +"after. This will give you more confidence that you did not break anything in" +" the rest of the code." +msgstr "" + +#: ../../writing/tests.rst:37 +msgid "" +"It is a good idea to implement a hook that runs all tests before pushing " +"code to a shared repository." +msgstr "" + +#: ../../writing/tests.rst:40 +msgid "" +"If you are in the middle of a development session and have to interrupt your" +" work, it is a good idea to write a broken unit test about what you want to " +"develop next. When coming back to work, you will have a pointer to where you" +" were and get back on track faster." +msgstr "" + +#: ../../writing/tests.rst:45 +msgid "" +"The first step when you are debugging your code is to write a new test " +"pinpointing the bug. While it is not always possible to do, those bug " +"catching tests are among the most valuable pieces of code in your project." +msgstr "" + +#: ../../writing/tests.rst:49 +msgid "" +"Use long and descriptive names for testing functions. The style guide here " +"is slightly different than that of running code, where short names are often" +" preferred. The reason is testing functions are never called explicitly. " +"``square()`` or even ``sqr()`` is ok in running code, but in testing code " +"you would have names such as ``test_square_of_number_2()``, " +"``test_square_negative_number()``. These function names are displayed when a" +" test fails, and should be as descriptive as possible." +msgstr "" + +#: ../../writing/tests.rst:57 +msgid "" +"When something goes wrong or has to be changed, and if your code has a good " +"set of tests, you or other maintainers will rely largely on the testing " +"suite to fix the problem or modify a given behavior. Therefore the testing " +"code will be read as much as or even more than the running code. A unit test" +" whose purpose is unclear is not very helpful is this case." +msgstr "" + +#: ../../writing/tests.rst:64 +msgid "" +"Another use of the testing code is as an introduction to new developers. " +"When someone will have to work on the code base, running and reading the " +"related testing code is often the best they can do. They will or should " +"discover the hot spots, where most difficulties arise, and the corner cases." +" If they have to add some functionality, the first step should be to add a " +"test and, by this means, ensure the new functionality is not already a " +"working path that has not been plugged into the interface." +msgstr "" + +#: ../../writing/tests.rst:73 +msgid "The Basics" +msgstr "" + +#: ../../writing/tests.rst:77 +msgid "Unittest" +msgstr "" + +#: ../../writing/tests.rst:79 +msgid "" +":mod:`unittest` is the batteries-included test module in the Python standard" +" library. Its API will be familiar to anyone who has used any of the " +"JUnit/nUnit/CppUnit series of tools." +msgstr "" + +#: ../../writing/tests.rst:83 +msgid "" +"Creating test cases is accomplished by subclassing " +":class:`unittest.TestCase`." +msgstr "" + +#: ../../writing/tests.rst:96 +msgid "" +"As of Python 2.7 unittest also includes its own test discovery mechanisms." +msgstr "" + +#: ../../writing/tests.rst:98 +msgid "" +"`unittest in the standard library documentation " +"`_" +msgstr "" + +#: ../../writing/tests.rst:102 +msgid "Doctest" +msgstr "" + +#: ../../writing/tests.rst:104 +msgid "" +"The :mod:`doctest` module searches for pieces of text that look like " +"interactive Python sessions in docstrings, and then executes those sessions " +"to verify that they work exactly as shown." +msgstr "" + +#: ../../writing/tests.rst:108 +msgid "" +"Doctests have a different use case than proper unit tests: they are usually " +"less detailed and don't catch special cases or obscure regression bugs. They" +" are useful as an expressive documentation of the main use cases of a module" +" and its components. However, doctests should run automatically each time " +"the full test suite runs." +msgstr "" + +#: ../../writing/tests.rst:114 +msgid "A simple doctest in a function:" +msgstr "" + +#: ../../writing/tests.rst:133 +msgid "" +"When running this module from the command line as in ``python module.py``, " +"the doctests will run and complain if anything is not behaving as described " +"in the docstrings." +msgstr "" + +#: ../../writing/tests.rst:138 +msgid "Tools" +msgstr "" + +#: ../../writing/tests.rst:142 +msgid "py.test" +msgstr "" + +#: ../../writing/tests.rst:144 +msgid "" +"py.test is a no-boilerplate alternative to Python's standard unittest " +"module." +msgstr "" + +#: ../../writing/tests.rst:150 +msgid "" +"Despite being a fully-featured and extensible test tool, it boasts a simple " +"syntax. Creating a test suite is as easy as writing a module with a couple " +"of functions:" +msgstr "" + +#: ../../writing/tests.rst:163 +msgid "and then running the `py.test` command" +msgstr "" + +#: ../../writing/tests.rst:185 +msgid "" +"is far less work than would be required for the equivalent functionality " +"with the unittest module!" +msgstr "" + +#: ../../writing/tests.rst:188 +msgid "`py.test `_" +msgstr "" + +#: ../../writing/tests.rst:192 +msgid "Nose" +msgstr "" + +#: ../../writing/tests.rst:194 +msgid "nose extends unittest to make testing easier." +msgstr "" + +#: ../../writing/tests.rst:201 +msgid "" +"nose provides automatic test discovery to save you the hassle of manually " +"creating test suites. It also provides numerous plugins for features such as" +" xUnit-compatible test output, coverage reporting, and test selection." +msgstr "" + +#: ../../writing/tests.rst:205 +msgid "`nose `_" +msgstr "" + +#: ../../writing/tests.rst:209 +msgid "tox" +msgstr "" + +#: ../../writing/tests.rst:211 +msgid "" +"tox is a tool for automating test environment management and testing against" +" multiple interpreter configurations" +msgstr "" + +#: ../../writing/tests.rst:218 +msgid "" +"tox allows you to configure complicated multi-parameter test matrices via a " +"simple ini-style configuration file." +msgstr "" + +#: ../../writing/tests.rst:221 +msgid "`tox `_" +msgstr "" + +#: ../../writing/tests.rst:224 +msgid "Unittest2" +msgstr "" + +#: ../../writing/tests.rst:226 +msgid "" +"unittest2 is a backport of Python 2.7's unittest module which has an " +"improved API and better assertions over the one available in previous " +"versions of Python." +msgstr "" + +#: ../../writing/tests.rst:229 +msgid "If you're using Python 2.6 or below, you can install it with pip" +msgstr "" + +#: ../../writing/tests.rst:235 +msgid "" +"You may want to import the module under the name unittest to make porting " +"code to newer versions of the module easier in the future" +msgstr "" + +#: ../../writing/tests.rst:245 +msgid "" +"This way if you ever switch to a newer Python version and no longer need the" +" unittest2 module, you can simply change the import in your test module " +"without the need to change any other code." +msgstr "" + +#: ../../writing/tests.rst:249 +msgid "`unittest2 `_" +msgstr "" + +#: ../../writing/tests.rst:253 +msgid "mock" +msgstr "" + +#: ../../writing/tests.rst:255 +msgid "" +":mod:`unittest.mock` is a library for testing in Python. As of Python 3.3, " +"it is available in the `standard library " +"`_." +msgstr "" + +#: ../../writing/tests.rst:259 +msgid "For older versions of Python:" +msgstr "" + +#: ../../writing/tests.rst:265 +msgid "" +"It allows you to replace parts of your system under test with mock objects " +"and make assertions about how they have been used." +msgstr "" + +#: ../../writing/tests.rst:268 +msgid "For example, you can monkey-patch a method:" +msgstr "" + +#: ../../writing/tests.rst:279 +msgid "" +"To mock classes or objects in a module under test, use the ``patch`` " +"decorator. In the example below, an external search system is replaced with " +"a mock that always returns the same result (but only for the duration of the" +" test)." +msgstr "" + +#: ../../writing/tests.rst:298 +msgid "" +"Mock has many other ways you can configure it and control its behavior." +msgstr "" + +#: ../../writing/tests.rst:300 +msgid "`mock `_" +msgstr "" From b8684737faca1bdac9b344b1b45287a0049dce6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=95=88=EC=98=81=EC=84=A0?= Date: Wed, 3 Dec 2014 12:37:42 +0900 Subject: [PATCH 004/117] modified: structure.po --- docs/locale/ko/LC_MESSAGES/writing/structure.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 726bcf144..c421f136a 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -13,7 +13,7 @@ msgstr "" #: ../../writing/structure.rst:2 msgid "Structuring Your Project" -msgstr "" +msgstr "프로젝트 구성하기" #: ../../writing/structure.rst:4 msgid "" From 02331f764a493329f068cf43696aca4add43588a Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 12:44:48 +0900 Subject: [PATCH 005/117] modified: structure.po --- docs/locale/ko/LC_MESSAGES/writing/structure.po | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index c421f136a..034566711 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -23,6 +23,7 @@ msgid "" "means making clean code whose logic and dependencies are clear as well as " "how the files and folders are organized in the filesystem." msgstr "" +"test" #: ../../writing/structure.rst:11 msgid "" From c1b1cb3da62ee645e9403b6cca57a69e52d0f0ce Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 14:04:47 +0900 Subject: [PATCH 006/117] modified: locale/ko/LC_MESSAGES/index.po --- docs/locale/ko/LC_MESSAGES/index.po | 30 +++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index f34e5e3fe..d54e23251 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -17,7 +17,7 @@ msgstr "파이썬을 여행하는 히치하이커를 위한 안내서" #: ../../index.rst:9 msgid "Welcome to The Hitchhiker's Guide to Python." -msgstr "" +msgstr "파이썬을 여행하는 히치하이커를 위한 안내서에 오신 것을 환영합니다." #: ../../index.rst:11 msgid "" @@ -25,6 +25,8 @@ msgid "" "to help, `fork us on GitHub `_!" msgstr "" +"**이 가이드는 현재 많은 변화가 진행 중입니다.** 도와주고 싶으시다면," +" `fork us on GitHub `_!" #: ../../index.rst:14 msgid "" @@ -32,61 +34,65 @@ msgid "" "developers a best-practice handbook to the installation, configuration, and " "usage of Python on a daily basis." msgstr "" +"이 *자부심 강한* 가이드는 파이썬 초보자와 전문 개발자 모두에게 " +"매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는 우수 사례 안내서입니다." #: ../../contents.rst.inc:2 msgid "Getting Started" -msgstr "" +msgstr "시작하기" #: ../../contents.rst.inc:4 msgid "This part of the guide focuses on setting up your Python environment." -msgstr "" +msgstr "이 파트의 주제는 파이썬 환경설정입니다." #: ../../contents.rst.inc:11 msgid "Properly Install Python" -msgstr "" +msgstr "적절한 파이썬 설치" #: ../../contents.rst.inc:23 msgid "Writing Great Code" -msgstr "" +msgstr "최고의 코드 작성하기" #: ../../contents.rst.inc:25 msgid "" "This part of the guide focuses on best practices for writing Python code." -msgstr "" +msgstr "이 파트는 파이썬 코드 작성의 모범 사례를 다룹니다." #: ../../contents.rst.inc:41 msgid "Scenario Guide" -msgstr "" +msgstr "시나리오 안내" #: ../../contents.rst.inc:43 msgid "" "This part of the guide focuses on tool and module advice based on different " "scenarios." -msgstr "" +msgstr "이 파트는 다양한 시나리에오 따른 툴과 모듈에 대한 조언을 다룹니다" #: ../../contents.rst.inc:66 msgid "Shipping Great Code" -msgstr "" +msgstr "최고의 코드를 진수하기" #: ../../contents.rst.inc:68 msgid "This part of the guide focuses on deploying your Python code." -msgstr "" +msgstr "이 파트는 파이썬 코드 배포를 다룹니다" #: ../../contents.rst.inc:78 msgid "Development Environment" -msgstr "" +msgstr 개발 환경" #: ../../contents.rst.inc:90 msgid "Additional Notes" -msgstr "" +msgstr "참고" #: ../../contents.rst.inc:92 msgid "" "This part of the guide, which is mostly prose, begins with some background " "information about Python, then focuses on next steps." msgstr "" +"대부분 산문체로 쓰여진 이 부분은 파이썬에 대한 배경 지식부터 시작하여 그 다음 단계까지 다룹니다." #: ../../contents.rst.inc:109 msgid "" "Contribution notes and legal information are here (for those interested)." msgstr "" +"(관심있으신 분들을 위한) 공헌자를 위한 알림과 법적 정보는 여기에 있습니다." \ No newline at end of file From 5ebf617f6a5e28ca5f10a1f00c79ba20bbe59a43 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 14:36:55 +0900 Subject: [PATCH 007/117] modified: locale/ko/LC_MESSAGES/starting/installation.po --- .../ko/LC_MESSAGES/starting/installation.po | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.po b/docs/locale/ko/LC_MESSAGES/starting/installation.po index 075cf5d84..d4cc483fe 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/installation.po +++ b/docs/locale/ko/LC_MESSAGES/starting/installation.po @@ -5,7 +5,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -13,12 +13,12 @@ msgstr "" #: ../../starting/installation.rst:2 msgid "Properly Installing Python" -msgstr "" +msgstr "올바른 파이썬 설치" #: ../../starting/installation.rst:4 msgid "" "There's a good chance that you already have Python on your operating system." -msgstr "" +msgstr "운좋게도 이미 파이썬이 당신의 운영체제에 설치되어 있을 수도 있다." #: ../../starting/installation.rst:6 msgid "" @@ -29,24 +29,29 @@ msgid "" "Setuptools, Pip, and Virtualenv — they make it much easier for you to use " "other third-party Python libraries." msgstr "" +"만일 그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다." +"그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서 아래에 " +"설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다." +"특히 Setuptools, Pip, Virtualenv는 반드시 설치해야 한다." +"이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." #: ../../starting/installation.rst:14 msgid "Installation Guides" -msgstr "" +msgstr "설치 가이드" #: ../../starting/installation.rst:17 msgid "" "for development purposes, as well as setuptools, pip, and virtualenv setup." -msgstr "" +msgstr "개발을 위한 설치 뿐만 아니라 setuptools, pip, and virtualenv의 설치도 다룬다." #: ../../starting/installation.rst:19 msgid ":ref:`Mac OS X `." -msgstr "" +msgstr ":ref:`Mac OS X `." #: ../../starting/installation.rst:20 msgid ":ref:`Microsoft Windows`." -msgstr "" +msgstr ":ref:`Microsoft Windows`." #: ../../starting/installation.rst:21 msgid ":ref:`Ubuntu Linux `." -msgstr "" +msgstr ":ref:`Ubuntu Linux `." From c39bae037de13255a6e67cd89b3e48f92595238e Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 14:49:05 +0900 Subject: [PATCH 008/117] modified: locale/ko/LC_MESSAGES/_themes/README.po modified: locale/ko/LC_MESSAGES/dev/env.po modified: locale/ko/LC_MESSAGES/dev/virtualenvs.po modified: locale/ko/LC_MESSAGES/index.mo modified: locale/ko/LC_MESSAGES/index.po modified: locale/ko/LC_MESSAGES/intro/community.po modified: locale/ko/LC_MESSAGES/intro/documentation.po modified: locale/ko/LC_MESSAGES/intro/duction.po modified: locale/ko/LC_MESSAGES/intro/learning.po modified: locale/ko/LC_MESSAGES/intro/news.po modified: locale/ko/LC_MESSAGES/notes/contribute.po modified: locale/ko/LC_MESSAGES/notes/license.po modified: locale/ko/LC_MESSAGES/notes/styleguide.po modified: locale/ko/LC_MESSAGES/scenarios/admin.po modified: locale/ko/LC_MESSAGES/scenarios/ci.po modified: locale/ko/LC_MESSAGES/scenarios/cli.po modified: locale/ko/LC_MESSAGES/scenarios/client.po modified: locale/ko/LC_MESSAGES/scenarios/crypto.po modified: locale/ko/LC_MESSAGES/scenarios/db.po modified: locale/ko/LC_MESSAGES/scenarios/gui.po modified: locale/ko/LC_MESSAGES/scenarios/imaging.po modified: locale/ko/LC_MESSAGES/scenarios/network.po modified: locale/ko/LC_MESSAGES/scenarios/scientific.po modified: locale/ko/LC_MESSAGES/scenarios/scrape.po modified: locale/ko/LC_MESSAGES/scenarios/speed.po modified: locale/ko/LC_MESSAGES/scenarios/web.po modified: locale/ko/LC_MESSAGES/scenarios/xml.po modified: locale/ko/LC_MESSAGES/shipping/freezing.po modified: locale/ko/LC_MESSAGES/shipping/packaging.po modified: locale/ko/LC_MESSAGES/starting/install/linux.po modified: locale/ko/LC_MESSAGES/starting/install/osx.po modified: locale/ko/LC_MESSAGES/starting/install/win.po modified: locale/ko/LC_MESSAGES/starting/installation.mo modified: locale/ko/LC_MESSAGES/starting/installation.po modified: locale/ko/LC_MESSAGES/starting/pip-virtualenv.po modified: locale/ko/LC_MESSAGES/starting/which-python.po modified: locale/ko/LC_MESSAGES/writing/documentation.po modified: locale/ko/LC_MESSAGES/writing/gotchas.po modified: locale/ko/LC_MESSAGES/writing/license.po modified: locale/ko/LC_MESSAGES/writing/reading.po modified: locale/ko/LC_MESSAGES/writing/structure.mo modified: locale/ko/LC_MESSAGES/writing/structure.po modified: locale/ko/LC_MESSAGES/writing/style.po modified: locale/ko/LC_MESSAGES/writing/tests.po --- docs/locale/ko/LC_MESSAGES/_themes/README.po | 22 +- docs/locale/ko/LC_MESSAGES/dev/env.po | 162 +++++++-------- docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 110 +++++----- docs/locale/ko/LC_MESSAGES/index.mo | Bin 471 -> 2861 bytes docs/locale/ko/LC_MESSAGES/index.po | 50 +++-- docs/locale/ko/LC_MESSAGES/intro/community.po | 76 ++++--- .../ko/LC_MESSAGES/intro/documentation.po | 22 +- docs/locale/ko/LC_MESSAGES/intro/duction.po | 46 ++--- docs/locale/ko/LC_MESSAGES/intro/learning.po | 164 +++++++-------- docs/locale/ko/LC_MESSAGES/intro/news.po | 32 +-- .../locale/ko/LC_MESSAGES/notes/contribute.po | 16 +- docs/locale/ko/LC_MESSAGES/notes/license.po | 4 +- .../locale/ko/LC_MESSAGES/notes/styleguide.po | 78 +++---- docs/locale/ko/LC_MESSAGES/scenarios/admin.po | 105 +++++----- docs/locale/ko/LC_MESSAGES/scenarios/ci.po | 40 ++-- docs/locale/ko/LC_MESSAGES/scenarios/cli.po | 36 ++-- .../locale/ko/LC_MESSAGES/scenarios/client.po | 32 +-- .../locale/ko/LC_MESSAGES/scenarios/crypto.po | 16 +- docs/locale/ko/LC_MESSAGES/scenarios/db.po | 26 +-- docs/locale/ko/LC_MESSAGES/scenarios/gui.po | 72 +++---- .../ko/LC_MESSAGES/scenarios/imaging.po | 20 +- .../ko/LC_MESSAGES/scenarios/network.po | 22 +- .../ko/LC_MESSAGES/scenarios/scientific.po | 64 +++--- .../locale/ko/LC_MESSAGES/scenarios/scrape.po | 32 +-- docs/locale/ko/LC_MESSAGES/scenarios/speed.po | 56 ++--- docs/locale/ko/LC_MESSAGES/scenarios/web.po | 162 ++++++++------- docs/locale/ko/LC_MESSAGES/scenarios/xml.po | 26 +-- .../ko/LC_MESSAGES/shipping/freezing.po | 136 ++++++------ .../ko/LC_MESSAGES/shipping/packaging.po | 92 +++++---- .../ko/LC_MESSAGES/starting/install/linux.po | 28 +-- .../ko/LC_MESSAGES/starting/install/osx.po | 44 ++-- .../ko/LC_MESSAGES/starting/install/win.po | 34 +-- .../ko/LC_MESSAGES/starting/installation.mo | Bin 352 -> 2032 bytes .../ko/LC_MESSAGES/starting/installation.po | 30 +-- .../ko/LC_MESSAGES/starting/pip-virtualenv.po | 42 ++-- .../ko/LC_MESSAGES/starting/which-python.po | 108 +++++----- .../ko/LC_MESSAGES/writing/documentation.po | 94 +++++---- docs/locale/ko/LC_MESSAGES/writing/gotchas.po | 50 ++--- docs/locale/ko/LC_MESSAGES/writing/license.po | 42 ++-- docs/locale/ko/LC_MESSAGES/writing/reading.po | 31 +-- .../ko/LC_MESSAGES/writing/structure.mo | Bin 352 -> 797 bytes .../ko/LC_MESSAGES/writing/structure.po | 169 ++++++++------- docs/locale/ko/LC_MESSAGES/writing/style.po | 194 +++++++++--------- docs/locale/ko/LC_MESSAGES/writing/tests.po | 110 +++++----- 44 files changed, 1405 insertions(+), 1290 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/_themes/README.po b/docs/locale/ko/LC_MESSAGES/_themes/README.po index a8c68719b..5107dddcf 100644 --- a/docs/locale/ko/LC_MESSAGES/_themes/README.po +++ b/docs/locale/ko/LC_MESSAGES/_themes/README.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../_themes/README.rst:2 +#: ..\..\_themes\README.rst:2 msgid "krTheme Sphinx Style" msgstr "" -#: ../../_themes/README.rst:4 +#: ..\..\_themes\README.rst:4 msgid "" "This repository contains sphinx styles Kenneth Reitz uses in most of his " "projects. It is a derivative of Mitsuhiko's themes for Flask and Flask " @@ -23,25 +23,33 @@ msgid "" "this guide:" msgstr "" -#: ../../_themes/README.rst:9 +#: ..\..\_themes\README.rst:9 msgid "" "put this folder as _themes into your docs folder. Alternatively you can " "also use git submodules to check out the contents there." msgstr "" -#: ../../_themes/README.rst:12 +#: ..\..\_themes\README.rst:12 msgid "add this to your :file:`conf.py`: ::" msgstr "" -#: ../../_themes/README.rst:18 +#: ..\..\_themes\README.rst:18 msgid "The following themes exist:" msgstr "" -#: ../../_themes/README.rst:21 +#: ..\..\_themes\README.rst:21 msgid "the standard flask documentation theme for large projects" msgstr "" -#: ../../_themes/README.rst:24 +#: ..\..\_themes\README.rst:24 msgid "" "small one-page theme. Intended to be used by very small addon libraries." msgstr "" + +#: ..\..\_themes\README.rst:21 +msgid "**kr**" +msgstr "" + +#: ..\..\_themes\README.rst:24 +msgid "**kr_small**" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.po b/docs/locale/ko/LC_MESSAGES/dev/env.po index 3510a75e2..38c6c2dce 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/env.po +++ b/docs/locale/ko/LC_MESSAGES/dev/env.po @@ -11,25 +11,25 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../dev/env.rst:2 +#: ..\..\dev\env.rst:2 msgid "Your Development Environment" msgstr "" -#: ../../dev/env.rst:6 +#: ..\..\dev\env.rst:6 msgid "Text Editors" msgstr "" -#: ../../dev/env.rst:8 +#: ..\..\dev\env.rst:8 msgid "" "Just about anything that can edit plain text will work for writing Python " "code, however, using a more powerful editor may make your life a bit easier." msgstr "" -#: ../../dev/env.rst:13 +#: ..\..\dev\env.rst:13 msgid "Vim" msgstr "" -#: ../../dev/env.rst:15 +#: ..\..\dev\env.rst:15 msgid "" "Vim is a text editor which uses keyboard shortcuts for editing instead of " "menus or icons. There are a couple of plugins and settings for the Vim " @@ -39,7 +39,7 @@ msgid "" ":file:`.vimrc` and add the following lines::" msgstr "" -#: ../../dev/env.rst:30 +#: ..\..\dev\env.rst:30 msgid "" "With these settings, newlines are inserted after 79 characters and " "indentation is set to 4 spaces per tab. If you also use Vim for other " @@ -47,13 +47,13 @@ msgid "" " settings for Python source files." msgstr "" -#: ../../dev/env.rst:35 +#: ..\..\dev\env.rst:35 msgid "" "There is also a handy syntax plugin called syntax_ featuring some " "improvements over the syntax file included in Vim 6.1." msgstr "" -#: ../../dev/env.rst:38 +#: ..\..\dev\env.rst:38 msgid "" "These plugins supply you with a basic environment for developing in Python. " "To get the most out of Vim, you should continually check your code for " @@ -62,7 +62,7 @@ msgid "" " some very handy plugins to do these checks from within the editor." msgstr "" -#: ../../dev/env.rst:44 +#: ..\..\dev\env.rst:44 msgid "" "For PEP8 checking, install the vim-pep8_ plugin, and for pyflakes you can " "install vim-pyflakes_. Now you can map the functions ``Pep8()`` or " @@ -73,7 +73,7 @@ msgid "" ":file:`.vimrc`::" msgstr "" -#: ../../dev/env.rst:54 +#: ..\..\dev\env.rst:54 msgid "" "If you are already using syntastic_, you can set it to run Pyflakes on write" " and show errors and warnings in the quickfix window. An example " @@ -81,89 +81,89 @@ msgid "" " statusbar would be::" msgstr "" -#: ../../dev/env.rst:66 +#: ..\..\dev\env.rst:66 msgid "Python-mode" msgstr "" -#: ../../dev/env.rst:68 +#: ..\..\dev\env.rst:68 msgid "" "Python-mode_ is a complex solution for working with Python code in Vim. It " "has:" msgstr "" -#: ../../dev/env.rst:71 +#: ..\..\dev\env.rst:71 msgid "" "Asynchronous Python code checking (``pylint``, ``pyflakes``, ``pep8``, " "``mccabe``) in any combination" msgstr "" -#: ../../dev/env.rst:72 +#: ..\..\dev\env.rst:72 msgid "Code refactoring and autocompletion with Rope" msgstr "" -#: ../../dev/env.rst:73 +#: ..\..\dev\env.rst:73 msgid "Fast Python folding" msgstr "" -#: ../../dev/env.rst:74 +#: ..\..\dev\env.rst:74 msgid "Virtualenv support" msgstr "" -#: ../../dev/env.rst:75 +#: ..\..\dev\env.rst:75 msgid "Search through Python documentation and run Python code" msgstr "" -#: ../../dev/env.rst:76 +#: ..\..\dev\env.rst:76 msgid "Auto PEP8_ error fixes" msgstr "" -#: ../../dev/env.rst:78 +#: ..\..\dev\env.rst:78 msgid "And more." msgstr "" -#: ../../dev/env.rst:81 +#: ..\..\dev\env.rst:81 msgid "SuperTab" msgstr "" -#: ../../dev/env.rst:83 +#: ..\..\dev\env.rst:83 msgid "" "SuperTab_ is a small Vim plugin that makes code completion more convenient " "by using ```` key or any other customized keys." msgstr "" -#: ../../dev/env.rst:97 +#: ..\..\dev\env.rst:97 msgid "Emacs" msgstr "" -#: ../../dev/env.rst:99 +#: ..\..\dev\env.rst:99 msgid "" "Emacs is another powerful text editor. It is fully programmable (lisp), but " "it can be some work to wire up correctly. A good start if you're already an " "Emacs user is `Python Programming in Emacs`_ at EmacsWiki." msgstr "" -#: ../../dev/env.rst:103 +#: ..\..\dev\env.rst:103 msgid "Emacs itself comes with a Python mode." msgstr "" -#: ../../dev/env.rst:104 +#: ..\..\dev\env.rst:104 msgid "" "Python ships with an alternate version: `python-mode.el " "`_" msgstr "" -#: ../../dev/env.rst:106 +#: ..\..\dev\env.rst:106 msgid "" "Fabián Ezequiel Gallina's `python.el " "`_ provides nice functionality and " "behavior out of the box" msgstr "" -#: ../../dev/env.rst:112 +#: ..\..\dev\env.rst:112 msgid "TextMate" msgstr "" -#: ../../dev/env.rst:114 +#: ..\..\dev\env.rst:114 msgid "" "`TextMate `_ brings Apple's approach to operating " "systems into the world of text editors. By bridging UNIX underpinnings and " @@ -171,18 +171,18 @@ msgid "" "scripters and novice users alike." msgstr "" -#: ../../dev/env.rst:120 +#: ..\..\dev\env.rst:120 msgid "Sublime Text" msgstr "" -#: ../../dev/env.rst:122 +#: ..\..\dev\env.rst:122 msgid "" "`Sublime Text `_ is a sophisticated text editor" " for code, markup and prose. You'll love the slick user interface, " "extraordinary features and amazing performance." msgstr "" -#: ../../dev/env.rst:126 +#: ..\..\dev\env.rst:126 msgid "" "Sublime Text has excellent support for editing Python code and uses Python " "for its plugin API. It also has a diverse variety of plugins, `some of which" @@ -190,18 +190,18 @@ msgid "" " checking and code \"linting\"." msgstr "" -#: ../../dev/env.rst:131 +#: ..\..\dev\env.rst:131 msgid "Atom" msgstr "" -#: ../../dev/env.rst:133 +#: ..\..\dev\env.rst:133 msgid "" "`Atom `_ is a hackable text editor for the 21st century, " "built on atom-shell, and based on everything we love about our favorite " "editors." msgstr "" -#: ../../dev/env.rst:136 +#: ..\..\dev\env.rst:136 msgid "" "Atom is web native (HTML, CSS, JS), focusing on modular design and easy " "plugin development. It comes with native package control and plethora of " @@ -210,15 +210,15 @@ msgid "" "`_." msgstr "" -#: ../../dev/env.rst:143 +#: ..\..\dev\env.rst:143 msgid "IDEs" msgstr "" -#: ../../dev/env.rst:146 +#: ..\..\dev\env.rst:146 msgid "PyCharm / IntelliJ IDEA" msgstr "" -#: ../../dev/env.rst:148 +#: ..\..\dev\env.rst:148 msgid "" "`PyCharm `_ is developed by JetBrains, " "also known for IntelliJ IDEA. Both share the same code base and most of " @@ -228,32 +228,32 @@ msgid "" "Edition(Apache 2.0 License) with less features." msgstr "" -#: ../../dev/env.rst:156 +#: ..\..\dev\env.rst:156 msgid "Eclipse" msgstr "" -#: ../../dev/env.rst:158 +#: ..\..\dev\env.rst:158 msgid "" "The most popular Eclipse plugin for Python development is Aptana's `PyDev " "`_." msgstr "" -#: ../../dev/env.rst:163 +#: ..\..\dev\env.rst:163 msgid "Komodo IDE" msgstr "" -#: ../../dev/env.rst:165 +#: ..\..\dev\env.rst:165 msgid "" "`Komodo IDE `_ is developed by " "ActiveState and is a commercial IDE for Windows, Mac, and Linux. `KomodoEdit" " `_ is the open source alternative." msgstr "" -#: ../../dev/env.rst:172 +#: ..\..\dev\env.rst:172 msgid "Spyder" msgstr "" -#: ../../dev/env.rst:174 +#: ..\..\dev\env.rst:174 msgid "" "`Spyder `_ is an IDE specifically " "geared toward working with scientific Python libraries (namely `Scipy " @@ -261,34 +261,34 @@ msgid "" "`_ and `rope `_." msgstr "" -#: ../../dev/env.rst:179 +#: ..\..\dev\env.rst:179 msgid "" "Spyder is open-source (free), offers code completion, syntax highlighting, a" " class and function browser, and object inspection." msgstr "" -#: ../../dev/env.rst:184 +#: ..\..\dev\env.rst:184 msgid "WingIDE" msgstr "" -#: ../../dev/env.rst:186 +#: ..\..\dev\env.rst:186 msgid "" "`WingIDE `_ is a Python specific IDE. It runs on " "Linux, Windows and Mac (as an X11 application, which frustrates some Mac " "users)." msgstr "" -#: ../../dev/env.rst:189 +#: ..\..\dev\env.rst:189 msgid "" "WingIDE offers code completion, syntax highlighting, source browser, " "graphical debugger and support for version control systems." msgstr "" -#: ../../dev/env.rst:194 +#: ..\..\dev\env.rst:194 msgid "NINJA-IDE" msgstr "" -#: ../../dev/env.rst:196 +#: ..\..\dev\env.rst:196 msgid "" "`NINJA-IDE `_ (from the recursive acronym: " "\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially " @@ -297,18 +297,18 @@ msgid "" "downloaded from the website." msgstr "" -#: ../../dev/env.rst:201 +#: ..\..\dev\env.rst:201 msgid "" "NINJA-IDE is open-source software (GPLv3 licence) and is developed in Python" " and Qt. The source files can be downloaded from `GitHub `_." msgstr "" -#: ../../dev/env.rst:206 +#: ..\..\dev\env.rst:206 msgid "Eric (The Eric Python IDE)" msgstr "" -#: ../../dev/env.rst:208 +#: ..\..\dev\env.rst:208 msgid "" "`Eric `_ is a full featured Python IDE" " offering sourcecode autocompletion, syntax highlighting, support for " @@ -319,15 +319,15 @@ msgid "" "years of active development." msgstr "" -#: ../../dev/env.rst:218 +#: ..\..\dev\env.rst:218 msgid "Interpreter Tools" msgstr "" -#: ../../dev/env.rst:222 +#: ..\..\dev\env.rst:222 msgid "Virtual Environments" msgstr "" -#: ../../dev/env.rst:224 +#: ..\..\dev\env.rst:224 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -336,28 +336,28 @@ msgid "" "directory clean and manageable." msgstr "" -#: ../../dev/env.rst:229 +#: ..\..\dev\env.rst:229 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" -#: ../../dev/env.rst:232 +#: ..\..\dev\env.rst:232 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" -#: ../../dev/env.rst:235 +#: ..\..\dev\env.rst:235 msgid "Other Tools" msgstr "" -#: ../../dev/env.rst:238 +#: ..\..\dev\env.rst:238 msgid "IDLE" msgstr "" -#: ../../dev/env.rst:240 +#: ..\..\dev\env.rst:240 msgid "" ":ref:`IDLE ` is an integrated development environment that is " "part of Python standard library. It is completely written in Python and uses" @@ -366,95 +366,95 @@ msgid "" "snippets and experiment with different features in Python." msgstr "" -#: ../../dev/env.rst:246 +#: ..\..\dev\env.rst:246 msgid "It provides the following features:" msgstr "" -#: ../../dev/env.rst:248 +#: ..\..\dev\env.rst:248 msgid "Python Shell Window (interpreter)" msgstr "" -#: ../../dev/env.rst:249 +#: ..\..\dev\env.rst:249 msgid "Multi window text editor that colorizes Python code" msgstr "" -#: ../../dev/env.rst:250 +#: ..\..\dev\env.rst:250 msgid "Minimal debugging facility" msgstr "" -#: ../../dev/env.rst:254 +#: ..\..\dev\env.rst:254 msgid "IPython" msgstr "" -#: ../../dev/env.rst:256 +#: ..\..\dev\env.rst:256 msgid "" "`IPython `_ provides a rich toolkit to help you make " "the most out of using Python interactively. Its main components are:" msgstr "" -#: ../../dev/env.rst:259 +#: ..\..\dev\env.rst:259 msgid "Powerful Python shells (terminal- and Qt-based)." msgstr "" -#: ../../dev/env.rst:260 +#: ..\..\dev\env.rst:260 msgid "" "A web-based notebook with the same core features but support for rich media," " text, code, mathematical expressions and inline plots." msgstr "" -#: ../../dev/env.rst:262 +#: ..\..\dev\env.rst:262 msgid "Support for interactive data visualization and use of GUI toolkits." msgstr "" -#: ../../dev/env.rst:263 +#: ..\..\dev\env.rst:263 msgid "Flexible, embeddable interpreters to load into your own projects." msgstr "" -#: ../../dev/env.rst:264 +#: ..\..\dev\env.rst:264 msgid "Tools for high level and interactive parallel computing." msgstr "" -#: ../../dev/env.rst:273 +#: ..\..\dev\env.rst:273 msgid "BPython" msgstr "" -#: ../../dev/env.rst:275 +#: ..\..\dev\env.rst:275 msgid "" "`bpython `_ is an alternative interface to " "the Python interpreter for Unix-like operating systems. It has the following" " features:" msgstr "" -#: ../../dev/env.rst:278 +#: ..\..\dev\env.rst:278 msgid "In-line syntax highlighting." msgstr "" -#: ../../dev/env.rst:279 +#: ..\..\dev\env.rst:279 msgid "Readline-like autocomplete with suggestions displayed as you type." msgstr "" -#: ../../dev/env.rst:280 +#: ..\..\dev\env.rst:280 msgid "Expected parameter list for any Python function." msgstr "" -#: ../../dev/env.rst:281 +#: ..\..\dev\env.rst:281 msgid "" "\"Rewind\" function to pop the last line of code from memory and re-" "evaluate." msgstr "" -#: ../../dev/env.rst:282 +#: ..\..\dev\env.rst:282 msgid "Send entered code off to a pastebin." msgstr "" -#: ../../dev/env.rst:283 +#: ..\..\dev\env.rst:283 msgid "Save entered code to a file." msgstr "" -#: ../../dev/env.rst:284 +#: ..\..\dev\env.rst:284 msgid "Auto-indentation." msgstr "" -#: ../../dev/env.rst:285 +#: ..\..\dev\env.rst:285 msgid "Python 3 support." msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po index 57a5e56b8..92073ab34 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po +++ b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../dev/virtualenvs.rst:2 +#: ..\..\dev\virtualenvs.rst:2 msgid "Virtual Environments" msgstr "" -#: ../../dev/virtualenvs.rst:4 +#: ..\..\dev\virtualenvs.rst:4 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -24,17 +24,17 @@ msgid "" "directory clean and manageable." msgstr "" -#: ../../dev/virtualenvs.rst:9 +#: ..\..\dev\virtualenvs.rst:9 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" -#: ../../dev/virtualenvs.rst:13 +#: ..\..\dev\virtualenvs.rst:13 msgid "virtualenv" msgstr "" -#: ../../dev/virtualenvs.rst:15 +#: ..\..\dev\virtualenvs.rst:15 msgid "" "`virtualenv `_ is a tool to create " "isolated Python environments. virtualenv creates a folder which contains all" @@ -42,19 +42,19 @@ msgid "" "need." msgstr "" -#: ../../dev/virtualenvs.rst:19 +#: ..\..\dev\virtualenvs.rst:19 msgid "Install virtualenv via pip:" msgstr "" -#: ../../dev/virtualenvs.rst:26 ../../dev/virtualenvs.rst:145 +#: ..\..\dev\virtualenvs.rst:26 ..\..\dev\virtualenvs.rst:145 msgid "Basic Usage" msgstr "" -#: ../../dev/virtualenvs.rst:28 +#: ..\..\dev\virtualenvs.rst:28 msgid "Create a virtual environment for a project:" msgstr "" -#: ../../dev/virtualenvs.rst:35 +#: ..\..\dev\virtualenvs.rst:35 msgid "" "``virtualenv venv`` will create a folder in the current directory which will" " contain the Python executable files, and a copy of the ``pip`` library " @@ -63,25 +63,25 @@ msgid "" "name will place the files in the current directory instead." msgstr "" -#: ../../dev/virtualenvs.rst:40 +#: ..\..\dev\virtualenvs.rst:40 msgid "" "This creates a copy of Python in whichever directory you ran the command in," " placing it in a folder named :file:`venv`." msgstr "" -#: ../../dev/virtualenvs.rst:43 +#: ..\..\dev\virtualenvs.rst:43 msgid "You can also use a Python interpreter of your choice." msgstr "" -#: ../../dev/virtualenvs.rst:49 +#: ..\..\dev\virtualenvs.rst:49 msgid "This will use the Python interpreter in :file:`/usr/bin/python2.7`" msgstr "" -#: ../../dev/virtualenvs.rst:51 +#: ..\..\dev\virtualenvs.rst:51 msgid "To begin using the virtual environment, it needs to be activated:" msgstr "" -#: ../../dev/virtualenvs.rst:57 +#: ..\..\dev\virtualenvs.rst:57 msgid "" "The name of the current virtual environment will now appear on the left of " "the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to let you " @@ -90,40 +90,40 @@ msgid "" "installation." msgstr "" -#: ../../dev/virtualenvs.rst:62 +#: ..\..\dev\virtualenvs.rst:62 msgid "Install packages as usual, for example:" msgstr "" -#: ../../dev/virtualenvs.rst:68 +#: ..\..\dev\virtualenvs.rst:68 msgid "" "If you are done working in the virtual environment for the moment, you can " "deactivate it:" msgstr "" -#: ../../dev/virtualenvs.rst:75 +#: ..\..\dev\virtualenvs.rst:75 msgid "" "This puts you back to the system's default Python interpreter with all its " "installed libraries." msgstr "" -#: ../../dev/virtualenvs.rst:78 +#: ..\..\dev\virtualenvs.rst:78 msgid "" "To delete a virtual environment, just delete its folder. (In this case, it " "would be ``rm -rf venv``.)" msgstr "" -#: ../../dev/virtualenvs.rst:81 +#: ..\..\dev\virtualenvs.rst:81 msgid "" "After a while, though, you might end up with a lot of virtual environments " "littered across your system, and its possible you'll forget their names or " "where they were placed." msgstr "" -#: ../../dev/virtualenvs.rst:86 +#: ..\..\dev\virtualenvs.rst:86 msgid "Other Notes" msgstr "" -#: ../../dev/virtualenvs.rst:88 +#: ..\..\dev\virtualenvs.rst:88 msgid "" "Running ``virtualenv`` with the option :option:`--no-site-packages` will not" " include the packages that are installed globally. This can be useful for " @@ -131,13 +131,13 @@ msgid "" "is the default behavior for ``virtualenv`` 1.7 and later.]" msgstr "" -#: ../../dev/virtualenvs.rst:93 +#: ..\..\dev\virtualenvs.rst:93 msgid "" "In order to keep your environment consistent, it's a good idea to \"freeze\"" " the current state of the environment packages. To do this, run" msgstr "" -#: ../../dev/virtualenvs.rst:100 +#: ..\..\dev\virtualenvs.rst:100 msgid "" "This will create a :file:`requirements.txt` file, which contains a simple " "list of all the packages in the current environment, and their respective " @@ -146,23 +146,23 @@ msgid "" "same versions:" msgstr "" -#: ../../dev/virtualenvs.rst:110 +#: ..\..\dev\virtualenvs.rst:110 msgid "" "This can help ensure consistency across installations, across deployments, " "and across developers." msgstr "" -#: ../../dev/virtualenvs.rst:113 +#: ..\..\dev\virtualenvs.rst:113 msgid "" "Lastly, remember to exclude the virtual environment folder from source " "control by adding it to the ignore list." msgstr "" -#: ../../dev/virtualenvs.rst:117 +#: ..\..\dev\virtualenvs.rst:117 msgid "virtualenvwrapper" msgstr "" -#: ../../dev/virtualenvs.rst:119 +#: ..\..\dev\virtualenvs.rst:119 msgid "" "`virtualenvwrapper " "`_ provides a" @@ -170,98 +170,114 @@ msgid "" "pleasant. It also places all your virtual environments in one place." msgstr "" -#: ../../dev/virtualenvs.rst:123 ../../dev/virtualenvs.rst:135 +#: ..\..\dev\virtualenvs.rst:123 ..\..\dev\virtualenvs.rst:135 msgid "To install (make sure **virtualenv** is already installed):" msgstr "" -#: ../../dev/virtualenvs.rst:131 +#: ..\..\dev\virtualenvs.rst:131 msgid "" "(`Full virtualenvwrapper install instructions " "`_.)" msgstr "" -#: ../../dev/virtualenvs.rst:133 +#: ..\..\dev\virtualenvs.rst:133 msgid "" "For Windows, you can use the `virtualenvwrapper-powershell " "`_ clone." msgstr "" -#: ../../dev/virtualenvs.rst:147 +#: ..\..\dev\virtualenvs.rst:147 msgid "Create a virtual environment:" msgstr "" -#: ../../dev/virtualenvs.rst:153 +#: ..\..\dev\virtualenvs.rst:153 msgid "This creates the :file:`venv` folder inside :file:`~/Envs`." msgstr "" -#: ../../dev/virtualenvs.rst:155 +#: ..\..\dev\virtualenvs.rst:155 msgid "Work on a virtual environment:" msgstr "" -#: ../../dev/virtualenvs.rst:161 +#: ..\..\dev\virtualenvs.rst:161 msgid "" "**virtualenvwrapper** provides tab-completion on environment names. It " "really helps when you have a lot of environments and have trouble " "remembering their names." msgstr "" -#: ../../dev/virtualenvs.rst:165 +#: ..\..\dev\virtualenvs.rst:165 msgid "" "``workon`` also deactivates whatever environment you are currently in, so " "you can quickly switch between environments." msgstr "" -#: ../../dev/virtualenvs.rst:168 +#: ..\..\dev\virtualenvs.rst:168 msgid "Deactivating is still the same:" msgstr "" -#: ../../dev/virtualenvs.rst:174 +#: ..\..\dev\virtualenvs.rst:174 msgid "To delete:" msgstr "" -#: ../../dev/virtualenvs.rst:181 +#: ..\..\dev\virtualenvs.rst:181 msgid "Other useful commands" msgstr "" -#: ../../dev/virtualenvs.rst:184 +#: ..\..\dev\virtualenvs.rst:184 msgid "List all of the environments." msgstr "" -#: ../../dev/virtualenvs.rst:187 +#: ..\..\dev\virtualenvs.rst:187 msgid "" "Navigate into the directory of the currently activated virtual environment, " "so you can browse its :file:`site-packages`, for example." msgstr "" -#: ../../dev/virtualenvs.rst:191 +#: ..\..\dev\virtualenvs.rst:191 msgid "Like the above, but directly into :file:`site-packages` directory." msgstr "" -#: ../../dev/virtualenvs.rst:194 +#: ..\..\dev\virtualenvs.rst:194 msgid "Shows contents of :file:`site-packages` directory." msgstr "" -#: ../../dev/virtualenvs.rst:196 +#: ..\..\dev\virtualenvs.rst:196 msgid "" "`Full list of virtualenvwrapper commands " "`_." msgstr "" -#: ../../dev/virtualenvs.rst:199 +#: ..\..\dev\virtualenvs.rst:199 msgid "autoenv" msgstr "" -#: ../../dev/virtualenvs.rst:200 +#: ..\..\dev\virtualenvs.rst:200 msgid "" "When you ``cd`` into a directory containing a :file:`.env`, `autoenv " "`_ automagically activates the " "environment." msgstr "" -#: ../../dev/virtualenvs.rst:203 +#: ..\..\dev\virtualenvs.rst:203 msgid "Install it on Mac OS X using ``brew``:" msgstr "" -#: ../../dev/virtualenvs.rst:209 +#: ..\..\dev\virtualenvs.rst:209 msgid "And on Linux:" msgstr "" + +#: ..\..\dev\virtualenvs.rst:184 +msgid "``lsvirtualenv``" +msgstr "" + +#: ..\..\dev\virtualenvs.rst:188 +msgid "``cdvirtualenv``" +msgstr "" + +#: ..\..\dev\virtualenvs.rst:191 +msgid "``cdsitepackages``" +msgstr "" + +#: ..\..\dev\virtualenvs.rst:194 +msgid "``lssitepackages``" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index 82eedd62723c7399503be3c83e7632b026912740..25567d4f4117bc4297120cf77595378191522712 100644 GIT binary patch literal 2861 zcmb_cTW=Fb6yCPaM#E)8+aPHZxhx4e*iWBx4&AM?I3V3_Ur}T!TqbRX&U~t zJ+Et;2@C@3fV05Oz=yzhfh#~Y#~(lfdO)@B<~KC$SKv`#CvfYVn)Wg93t%ho8t^ON zZ@|mI577K9@FDPh;Fh=WRbL;9n-0ZXGs*}*BCc&SOC$!#wW7?XI5P$Y$%qJZfKikU zumn#fQ4pxFC+g~>LGJF1Qo`(KBsi)QsRlaN$L)S{9pV;sn&OBXrna~cDJR(27&ArO z4F@7T+1Sr4i;1|+Oz~}FYEZpEA3Eu|&1g zswvEd9ux*gJ!LDuP#lLqVb1$iGl7ZB3J+hV28wX2&y2Zt^-_uHI!25U?_2E+r45Q2 zCNu~ej_Cv{W2c~xs!}~G$?4+}*MTEgphm#xl@T0L9-OyfB?PK)$Hr0iJe{H}mEePF zAyQ_)=xV3xrkmQZoYf3}o*4w^319RikGcuyAN6g38Z4^VM$NuHB+C-yR8#Rxks9cH z+>FH4DNAxk9WfZ}um&g=gEMpUEUb9dGD1|_})b=P#a*aZwB zSPBDt&Js9b{*nBzB%-+L&bs&_`Cqe$(7U4gX#@)i4N~QVR_tyHGzFULPO=oYh2G=D z%&7jU8*}s!4^rKU<01W!Ito~(A4ar;)Y8=ak>1>_?`fizmS9UOYV?zAz*L>9C1*O? zPwG9#^~3FS%%XPAM2>=Hjw9#ZCFmi5Zn&ZQSMT&YsGY&x_)ZIi^ut7@4;9S z8C5Tp16X0jT%=eJF(VnI?)GDyr`kI^sI9yEV8RS=J9eP1r>m!TmAw7fYaZ?BZ* z^CU+WWo|`|)853aoKBO>rOTPzZYs?` zDo>5dnKAFqO7$km%&2!4)2)yenD}SQ-#t}QBIAKYI@~Sm6qleb5y>W zEzLdAz(vlCmor%uYFI7v!`O++qoa^aUM-MJ&&uVjs`D;oy}JdOoyC^J-lYXiKFVQk zIh`f>WKzkihPs!Q!`W)TwJtt~sR9JX6W;~Qv#iS0F2Brfprd-rbWT&&)hn)xN*1`7 z!DRJMxmlZYVHm7Y4!0md+AA!fGzY4f*TF2RE zE|=RO9lDk1D}UazRE-XSOi`5)Vqak{YRL+79pPnbSPh0@_E~uNR(Pwr+Qy)a@0SubhIlIVw3&F6T4P92=v^ z8%RlxYB`u1Q&I3Hi{70jDi1IC2?U3UVHG%UbjUBiRg^cDlx*wSXm|=&k#Eo~!YMho zpd64B2x|cmBE_~+p-yQnN43r%jQk>R2*)%^%ju#Tt`cT+q0-|ewW*wj;Uo7;^Xby^ vD5^IM63}X`)iHa)i25fhJ1a->RGRxvv4om3d$F8(ux8s+XQXO)^?>{Xxr^f? delta 83 zcmZ20cAeSwo)F7a1|VPpVi_RT0dau9210>pMIhT2h%Ffz7~-MqnLswfWI0v^M#arR Otk#T^*K^r2G5`RNzzMtn diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index d54e23251..f051dab42 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -11,88 +11,86 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../index.rst:7 +#: ..\..\index.rst:7 msgid "The Hitchhiker's Guide to Python!" msgstr "파이썬을 여행하는 히치하이커를 위한 안내서" -#: ../../index.rst:9 +#: ..\..\index.rst:9 msgid "Welcome to The Hitchhiker's Guide to Python." msgstr "파이썬을 여행하는 히치하이커를 위한 안내서에 오신 것을 환영합니다." -#: ../../index.rst:11 +#: ..\..\index.rst:11 msgid "" "**This guide is currently under heavy active development.** If you'd like " "to help, `fork us on GitHub `_!" msgstr "" -"**이 가이드는 현재 많은 변화가 진행 중입니다.** 도와주고 싶으시다면," -" `fork us on GitHub `_!" +"**이 가이드는 현재 많은 변화가 진행 중입니다.** 도와주고 싶으시다면, `fork us on GitHub " +"`_!" -#: ../../index.rst:14 +#: ..\..\index.rst:14 msgid "" "This *opinionated* guide exists to provide both novice and expert Python " "developers a best-practice handbook to the installation, configuration, and " "usage of Python on a daily basis." msgstr "" -"이 *자부심 강한* 가이드는 파이썬 초보자와 전문 개발자 모두에게 " -"매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는 우수 사례 안내서입니다." +"이 *자부심 강한* 가이드는 파이썬 초보자와 전문 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는 우수 사례 " +"안내서입니다." -#: ../../contents.rst.inc:2 +#: ..\..\contents.rst.inc:2 msgid "Getting Started" msgstr "시작하기" -#: ../../contents.rst.inc:4 +#: ..\..\contents.rst.inc:4 msgid "This part of the guide focuses on setting up your Python environment." msgstr "이 파트의 주제는 파이썬 환경설정입니다." -#: ../../contents.rst.inc:11 +#: ..\..\contents.rst.inc:11 msgid "Properly Install Python" msgstr "적절한 파이썬 설치" -#: ../../contents.rst.inc:23 +#: ..\..\contents.rst.inc:23 msgid "Writing Great Code" msgstr "최고의 코드 작성하기" -#: ../../contents.rst.inc:25 +#: ..\..\contents.rst.inc:25 msgid "" "This part of the guide focuses on best practices for writing Python code." msgstr "이 파트는 파이썬 코드 작성의 모범 사례를 다룹니다." -#: ../../contents.rst.inc:41 +#: ..\..\contents.rst.inc:41 msgid "Scenario Guide" msgstr "시나리오 안내" -#: ../../contents.rst.inc:43 +#: ..\..\contents.rst.inc:43 msgid "" "This part of the guide focuses on tool and module advice based on different " "scenarios." msgstr "이 파트는 다양한 시나리에오 따른 툴과 모듈에 대한 조언을 다룹니다" -#: ../../contents.rst.inc:66 +#: ..\..\contents.rst.inc:66 msgid "Shipping Great Code" msgstr "최고의 코드를 진수하기" -#: ../../contents.rst.inc:68 +#: ..\..\contents.rst.inc:68 msgid "This part of the guide focuses on deploying your Python code." msgstr "이 파트는 파이썬 코드 배포를 다룹니다" -#: ../../contents.rst.inc:78 +#: ..\..\contents.rst.inc:78 msgid "Development Environment" -msgstr 개발 환경" +msgstr "발 환경" -#: ../../contents.rst.inc:90 +#: ..\..\contents.rst.inc:90 msgid "Additional Notes" msgstr "참고" -#: ../../contents.rst.inc:92 +#: ..\..\contents.rst.inc:92 msgid "" "This part of the guide, which is mostly prose, begins with some background " "information about Python, then focuses on next steps." -msgstr "" -"대부분 산문체로 쓰여진 이 부분은 파이썬에 대한 배경 지식부터 시작하여 그 다음 단계까지 다룹니다." +msgstr "대부분 산문체로 쓰여진 이 부분은 파이썬에 대한 배경 지식부터 시작하여 그 다음 단계까지 다룹니다." -#: ../../contents.rst.inc:109 +#: ..\..\contents.rst.inc:109 msgid "" "Contribution notes and legal information are here (for those interested)." -msgstr "" -"(관심있으신 분들을 위한) 공헌자를 위한 알림과 법적 정보는 여기에 있습니다." \ No newline at end of file +msgstr "(관심있으신 분들을 위한) 공헌자를 위한 알림과 법적 정보는 여기에 있습니다." diff --git a/docs/locale/ko/LC_MESSAGES/intro/community.po b/docs/locale/ko/LC_MESSAGES/intro/community.po index 0006b9a9b..46a4c819d 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/community.po +++ b/docs/locale/ko/LC_MESSAGES/intro/community.po @@ -11,130 +11,154 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../intro/community.rst:4 +#: ..\..\intro\community.rst:4 msgid "The Community" msgstr "" -#: ../../intro/community.rst:7 +#: ..\..\intro\community.rst:7 msgid "BDFL" msgstr "" -#: ../../intro/community.rst:9 +#: ..\..\intro\community.rst:9 msgid "" "Guido van Rossum, the creator of Python, is often referred to as the BDFL — " "the Benevolent Dictator For Life." msgstr "" -#: ../../intro/community.rst:15 +#: ..\..\intro\community.rst:15 msgid "Python Software Foundation" msgstr "" -#: ../../intro/community.rst:17 +#: ..\..\intro\community.rst:17 msgid "" "The mission of the Python Software Foundation is to promote, protect, and " "advance the Python programming language, and to support and facilitate the " "growth of a diverse and international community of Python programmers." msgstr "" -#: ../../intro/community.rst:21 +#: ..\..\intro\community.rst:21 msgid "`Learn More about the PSF `_." msgstr "" -#: ../../intro/community.rst:25 +#: ..\..\intro\community.rst:25 msgid "PEPs" msgstr "" -#: ../../intro/community.rst:27 +#: ..\..\intro\community.rst:27 msgid "" "PEPs are *Python Enhancement Proposals*. They describe changes to Python " "itself, or the standards around it." msgstr "" -#: ../../intro/community.rst:30 +#: ..\..\intro\community.rst:30 msgid "There are three different types of PEPs (as defined by :pep:`1`):" msgstr "" -#: ../../intro/community.rst:33 +#: ..\..\intro\community.rst:33 msgid "Describes a new feature or implementation." msgstr "" -#: ../../intro/community.rst:36 +#: ..\..\intro\community.rst:36 msgid "" "Describes a design issue, general guidelines, or information to the " "community." msgstr "" -#: ../../intro/community.rst:40 +#: ..\..\intro\community.rst:40 msgid "Describes a process related to Python." msgstr "" -#: ../../intro/community.rst:44 +#: ..\..\intro\community.rst:44 msgid "Notable PEPs" msgstr "" -#: ../../intro/community.rst:46 +#: ..\..\intro\community.rst:46 msgid "There are a few PEPs that could be considered required reading:" msgstr "" -#: ../../intro/community.rst:49 +#: ..\..\intro\community.rst:49 msgid "Read this. All of it. Follow it." msgstr "" -#: ../../intro/community.rst:52 +#: ..\..\intro\community.rst:52 msgid "" "A list of 19 statements that briefly explain the philosophy behind Python." msgstr "" -#: ../../intro/community.rst:55 +#: ..\..\intro\community.rst:55 msgid "" "Gives guidelines for semantics and conventions associated with Python " "docstrings." msgstr "" -#: ../../intro/community.rst:58 +#: ..\..\intro\community.rst:58 msgid "" "You can read more at `The PEP Index `_." msgstr "" -#: ../../intro/community.rst:61 +#: ..\..\intro\community.rst:61 msgid "Submitting a PEP" msgstr "" -#: ../../intro/community.rst:63 +#: ..\..\intro\community.rst:63 msgid "" "PEPs are peer-reviewed and accepted/rejected after much discussion. Anyone " "can write and submit a PEP for review." msgstr "" -#: ../../intro/community.rst:66 +#: ..\..\intro\community.rst:66 msgid "Here's an overview of the PEP acceptance workflow:" msgstr "" -#: ../../intro/community.rst:72 +#: ..\..\intro\community.rst:72 msgid "Python Conferences" msgstr "" -#: ../../intro/community.rst:74 +#: ..\..\intro\community.rst:74 msgid "" "The major events for the Python community are developer conferences. The two" " most notable conferences are PyCon, which is held in the US, and its " "European sibling, EuroPython." msgstr "" -#: ../../intro/community.rst:78 +#: ..\..\intro\community.rst:78 msgid "" "A comprehensive list of conferences is maintained at `pycon.org " "`_." msgstr "" -#: ../../intro/community.rst:82 +#: ..\..\intro\community.rst:82 msgid "Python User Groups" msgstr "" -#: ../../intro/community.rst:84 +#: ..\..\intro\community.rst:84 msgid "" "User Groups are where a bunch of Python developers meet to present or talk " "about Python topics of interest. A list of local user groups is maintained " "at the `Python Software Foundation Wiki " "`_." msgstr "" + +#: ..\..\intro\community.rst:33 +msgid "**Standards**" +msgstr "" + +#: ..\..\intro\community.rst:37 +msgid "**Informational**" +msgstr "" + +#: ..\..\intro\community.rst:41 +msgid "**Process**" +msgstr "" + +#: ..\..\intro\community.rst:49 +msgid ":pep:`8`: The Python Style Guide." +msgstr "" + +#: ..\..\intro\community.rst:52 +msgid ":pep:`20`: The Zen of Python." +msgstr "" + +#: ..\..\intro\community.rst:56 +msgid ":pep:`257`: Docstring Conventions." +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.po b/docs/locale/ko/LC_MESSAGES/intro/documentation.po index dfc19b59b..2497f5710 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/intro/documentation.po @@ -11,47 +11,47 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../intro/documentation.rst:2 +#: ..\..\intro\documentation.rst:2 msgid "Documentation" msgstr "" -#: ../../intro/documentation.rst:5 +#: ..\..\intro\documentation.rst:5 msgid "Official Documentation" msgstr "" -#: ../../intro/documentation.rst:7 +#: ..\..\intro\documentation.rst:7 msgid "" "The official Python Language and Library documentation can be found here:" msgstr "" -#: ../../intro/documentation.rst:9 +#: ..\..\intro\documentation.rst:9 msgid "`Python 2.x `_" msgstr "" -#: ../../intro/documentation.rst:10 +#: ..\..\intro\documentation.rst:10 msgid "`Python 3.x `_" msgstr "" -#: ../../intro/documentation.rst:14 +#: ..\..\intro\documentation.rst:14 msgid "Read the Docs" msgstr "" -#: ../../intro/documentation.rst:16 +#: ..\..\intro\documentation.rst:16 msgid "" "Read the Docs is a popular community project that hosts documentation for " "open source software. It holds documentation for many Python modules, both " "popular and exotic." msgstr "" -#: ../../intro/documentation.rst:20 +#: ..\..\intro\documentation.rst:20 msgid "`Read the Docs `_" msgstr "" -#: ../../intro/documentation.rst:24 +#: ..\..\intro\documentation.rst:24 msgid "pydoc" msgstr "" -#: ../../intro/documentation.rst:26 +#: ..\..\intro\documentation.rst:26 msgid "" ":program:`pydoc` is a utlity that is installed when you install Python. It " "allows you to quickly retrieve and search for documentation from your shell." @@ -59,7 +59,7 @@ msgid "" "pulling up documentation would be as simple as" msgstr "" -#: ../../intro/documentation.rst:35 +#: ..\..\intro\documentation.rst:35 msgid "" "The above command is essentially equivalent to opening the Python REPL and " "running" diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.po b/docs/locale/ko/LC_MESSAGES/intro/duction.po index 6eeb9a963..135038e7d 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/duction.po +++ b/docs/locale/ko/LC_MESSAGES/intro/duction.po @@ -11,38 +11,38 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../intro/duction.rst:2 +#: ..\..\intro\duction.rst:2 msgid "Introduction" msgstr "" -#: ../../intro/duction.rst:4 +#: ..\..\intro\duction.rst:4 msgid "From the `official Python website `_:" msgstr "" -#: ../../intro/duction.rst:6 +#: ..\..\intro\duction.rst:6 msgid "" "Python is a general-purpose, high-level programming language similar to Tcl," " Perl, Ruby, Scheme, or Java. Some of its main key features include:" msgstr "" -#: ../../intro/duction.rst:10 +#: ..\..\intro\duction.rst:10 msgid "**very clear, readable syntax**" msgstr "" -#: ../../intro/duction.rst:12 +#: ..\..\intro\duction.rst:12 msgid "" "Python's philosophy focuses on readability, from code blocks delineated with" " significant whitespace to intuitive keywords in place of inscrutable " "punctuation." msgstr "" -#: ../../intro/duction.rst:16 +#: ..\..\intro\duction.rst:16 msgid "" "**extensive standard libraries and third party modules for virtually any " "task**" msgstr "" -#: ../../intro/duction.rst:19 +#: ..\..\intro\duction.rst:19 msgid "" "Python is sometimes described with the words \"batteries included\" because " "of its extensive `standard library `_, " @@ -50,7 +50,7 @@ msgid "" "object serialization, and much more." msgstr "" -#: ../../intro/duction.rst:25 +#: ..\..\intro\duction.rst:25 msgid "" "Additionally, the `Python Package Index `_ is " "available for users to submit their packages for widespread use, similar to " @@ -60,11 +60,11 @@ msgid "" "`_ set of math routines." msgstr "" -#: ../../intro/duction.rst:33 +#: ..\..\intro\duction.rst:33 msgid "**integration with other systems**" msgstr "" -#: ../../intro/duction.rst:35 +#: ..\..\intro\duction.rst:35 msgid "" "Python can integrate with `Java libraries `_, " "enabling it to be used with the rich Java environment that corporate " @@ -72,22 +72,22 @@ msgid "" "`_ when speed is of the essence." msgstr "" -#: ../../intro/duction.rst:41 +#: ..\..\intro\duction.rst:41 msgid "**ubiquity on computers**" msgstr "" -#: ../../intro/duction.rst:43 +#: ..\..\intro\duction.rst:43 msgid "" "Python is available on Windows, \\*nix, and Mac. It runs wherever the Java " "virtual machine runs, and the reference implementation CPython can help " "bring Python to wherever there is a working C compiler." msgstr "" -#: ../../intro/duction.rst:47 +#: ..\..\intro\duction.rst:47 msgid "**friendly community**" msgstr "" -#: ../../intro/duction.rst:49 +#: ..\..\intro\duction.rst:49 msgid "" "Python has a vibrant and large :ref:`community ` which " "maintains wikis, conferences, countless repositories, mailing lists, IRC " @@ -95,44 +95,44 @@ msgid "" "write this guide!" msgstr "" -#: ../../intro/duction.rst:58 +#: ..\..\intro\duction.rst:58 msgid "About This Guide" msgstr "" -#: ../../intro/duction.rst:61 +#: ..\..\intro\duction.rst:61 msgid "Purpose" msgstr "" -#: ../../intro/duction.rst:63 +#: ..\..\intro\duction.rst:63 msgid "" "The Hitchhiker's Guide to Python exists to provide both novice and expert " "Python developers a best-practice handbook to the installation, " "configuration, and usage of Python on a daily basis." msgstr "" -#: ../../intro/duction.rst:69 +#: ..\..\intro\duction.rst:69 msgid "By the Community" msgstr "" -#: ../../intro/duction.rst:71 +#: ..\..\intro\duction.rst:71 msgid "" "This guide is architected and maintained by `Kenneth Reitz " "`_ in an open fashion. This is a community-" "driven effort that serves one purpose: to serve the community." msgstr "" -#: ../../intro/duction.rst:76 +#: ..\..\intro\duction.rst:76 msgid "For the Community" msgstr "" -#: ../../intro/duction.rst:78 +#: ..\..\intro\duction.rst:78 msgid "" "All contributions to the Guide are welcome, from Pythonistas of all levels. " "If you think there's a gap in what the Guide covers, fork the Guide on " "GitHub and submit a pull request." msgstr "" -#: ../../intro/duction.rst:82 +#: ..\..\intro\duction.rst:82 msgid "" "Contributions are welcome from everyone, whether they're an old hand or a " "first-time Pythonista, and the authors to the Guide will gladly help if you " @@ -140,7 +140,7 @@ msgid "" " contribution." msgstr "" -#: ../../intro/duction.rst:87 +#: ..\..\intro\duction.rst:87 msgid "" "To get started working on The Hitchhiker's Guide, see the " ":doc:`/notes/contribute` page." diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.po b/docs/locale/ko/LC_MESSAGES/intro/learning.po index 9acc40428..ef64bb0f2 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/learning.po +++ b/docs/locale/ko/LC_MESSAGES/intro/learning.po @@ -11,34 +11,34 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../intro/learning.rst:2 +#: ..\..\intro\learning.rst:2 msgid "Learning Python" msgstr "" -#: ../../intro/learning.rst:5 +#: ..\..\intro\learning.rst:5 msgid "Beginner" msgstr "" -#: ../../intro/learning.rst:8 +#: ..\..\intro\learning.rst:8 msgid "The Python Tutorial" msgstr "" -#: ../../intro/learning.rst:10 +#: ..\..\intro\learning.rst:10 msgid "" "This is the official tutorial. It covers all the basics, and offers a tour " "of the language and the standard library. Recommended for those who need a " "quickstart guide to the language." msgstr "" -#: ../../intro/learning.rst:14 +#: ..\..\intro\learning.rst:14 msgid "`The Python Tutorial `_" msgstr "" -#: ../../intro/learning.rst:18 +#: ..\..\intro\learning.rst:18 msgid "Learn Python Interactive Tutorial" msgstr "" -#: ../../intro/learning.rst:20 +#: ..\..\intro\learning.rst:20 msgid "" "Learnpython.org is an easy non-intimidating way to get introduced to Python." " The website takes the same approach used on the popular `Try Ruby " @@ -47,25 +47,25 @@ msgid "" " to install Python locally." msgstr "" -#: ../../intro/learning.rst:25 +#: ..\..\intro\learning.rst:25 msgid "`Learn Python `_" msgstr "" -#: ../../intro/learning.rst:28 +#: ..\..\intro\learning.rst:28 msgid "" "If you want a more traditional book, *Python For You and Me* is an excellent" " resource for learning all aspects of the language." msgstr "" -#: ../../intro/learning.rst:31 +#: ..\..\intro\learning.rst:31 msgid "`Python for You and Me `_" msgstr "" -#: ../../intro/learning.rst:35 +#: ..\..\intro\learning.rst:35 msgid "Invent Your Own Computer Games with Python" msgstr "" -#: ../../intro/learning.rst:37 +#: ..\..\intro\learning.rst:37 msgid "" "This beginner's book is for those with no programming experience at all. " "Each chapter has the source code to a small game, using these example " @@ -73,75 +73,75 @@ msgid "" "what programs \"look like\"." msgstr "" -#: ../../intro/learning.rst:42 +#: ..\..\intro\learning.rst:42 msgid "" "`Invent Your Own Computer Games with Python `_" msgstr "" -#: ../../intro/learning.rst:46 +#: ..\..\intro\learning.rst:46 msgid "Hacking Secret Ciphers with Python" msgstr "" -#: ../../intro/learning.rst:48 +#: ..\..\intro\learning.rst:48 msgid "" "This book teaches Python programming and basic cryptography for absolute " "beginners. The chapters provide the source code for various ciphers, as well" " as programs that can break them." msgstr "" -#: ../../intro/learning.rst:52 +#: ..\..\intro\learning.rst:52 msgid "" "`Hacking Secret Ciphers with Python `_" msgstr "" -#: ../../intro/learning.rst:55 +#: ..\..\intro\learning.rst:55 msgid "Learn Python the Hard Way" msgstr "" -#: ../../intro/learning.rst:57 +#: ..\..\intro\learning.rst:57 msgid "" "This is an excellent beginner programmer's guide to Python. It covers " "\"hello world\" from the console to the web." msgstr "" -#: ../../intro/learning.rst:60 +#: ..\..\intro\learning.rst:60 msgid "`Learn Python the Hard Way `_" msgstr "" -#: ../../intro/learning.rst:64 +#: ..\..\intro\learning.rst:64 msgid "Crash into Python" msgstr "" -#: ../../intro/learning.rst:66 +#: ..\..\intro\learning.rst:66 msgid "" "Also known as *Python for Programmers with 3 Hours*, this guide gives " "experienced developers from other languages a crash course on Python." msgstr "" -#: ../../intro/learning.rst:69 +#: ..\..\intro\learning.rst:69 msgid "`Crash into Python `_" msgstr "" -#: ../../intro/learning.rst:73 +#: ..\..\intro\learning.rst:73 msgid "Dive Into Python 3" msgstr "" -#: ../../intro/learning.rst:75 +#: ..\..\intro\learning.rst:75 msgid "" "Dive Into Python 3 is a good book for those ready to jump in to Python 3. " "It's a good read if you are moving from Python 2 to 3 or if you already have" " some experience programming in another language." msgstr "" -#: ../../intro/learning.rst:79 +#: ..\..\intro\learning.rst:79 msgid "`Dive Into Python 3 `_" msgstr "" -#: ../../intro/learning.rst:82 +#: ..\..\intro\learning.rst:82 msgid "Think Python: How to Think Like a Computer Scientist" msgstr "" -#: ../../intro/learning.rst:84 +#: ..\..\intro\learning.rst:84 msgid "" "Think Python attempts to give an introduction to basic concepts in computer " "science through the use of the Python language. The focus was to create a " @@ -149,13 +149,13 @@ msgid "" "devoted to the subject of debugging." msgstr "" -#: ../../intro/learning.rst:89 +#: ..\..\intro\learning.rst:89 msgid "" "While exploring the various features available in the Python language the " "author weaves in various design patterns and best practices." msgstr "" -#: ../../intro/learning.rst:92 +#: ..\..\intro\learning.rst:92 msgid "" "The book also includes several case studies which have the reader explore " "the topics discussed in the book in greater detail by applying those topics " @@ -163,15 +163,15 @@ msgid "" "Analysis." msgstr "" -#: ../../intro/learning.rst:97 +#: ..\..\intro\learning.rst:97 msgid "`Think Python `_" msgstr "" -#: ../../intro/learning.rst:101 +#: ..\..\intro\learning.rst:101 msgid "Python Koans" msgstr "" -#: ../../intro/learning.rst:103 +#: ..\..\intro\learning.rst:103 msgid "" "Python Koans is a port of Edgecase's Ruby Koans. It uses a test-driven " "approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive tutorial" @@ -179,83 +179,83 @@ msgid "" "in a test script, this provides sequential steps to learning Python." msgstr "" -#: ../../intro/learning.rst:108 +#: ..\..\intro\learning.rst:108 msgid "" "For those used to languages and figuring out puzzles on their own, this can " "be a fun, attractive option. For those new to Python and programming, having" " an additional resource or reference will be helpful." msgstr "" -#: ../../intro/learning.rst:112 +#: ..\..\intro\learning.rst:112 msgid "`Python Koans `_" msgstr "" -#: ../../intro/learning.rst:114 +#: ..\..\intro\learning.rst:114 msgid "" "More information about test driven development can be found at these " "resources:" msgstr "" -#: ../../intro/learning.rst:116 +#: ..\..\intro\learning.rst:116 msgid "" "`Test Driven Development `_" msgstr "" -#: ../../intro/learning.rst:119 +#: ..\..\intro\learning.rst:119 msgid "A Byte of Python" msgstr "" -#: ../../intro/learning.rst:121 +#: ..\..\intro\learning.rst:121 msgid "" "A free introductory book that teaches Python at the beginner level, it " "assumes no previous programming experience." msgstr "" -#: ../../intro/learning.rst:124 +#: ..\..\intro\learning.rst:124 msgid "" "`A Byte of Python for Python 2.x " "`_ `A Byte of Python " "for Python 3.x `_" msgstr "" -#: ../../intro/learning.rst:129 +#: ..\..\intro\learning.rst:129 msgid "Advanced" msgstr "" -#: ../../intro/learning.rst:132 +#: ..\..\intro\learning.rst:132 msgid "Pro Python" msgstr "" -#: ../../intro/learning.rst:134 +#: ..\..\intro\learning.rst:134 msgid "" "This book is for intermediate to advanced Python programmers who are looking" " to understand how and why Python works the way it does and how they can " "take their code to the next level." msgstr "" -#: ../../intro/learning.rst:137 +#: ..\..\intro\learning.rst:137 msgid "`Pro Python `_" msgstr "" -#: ../../intro/learning.rst:141 +#: ..\..\intro\learning.rst:141 msgid "Expert Python Programming" msgstr "" -#: ../../intro/learning.rst:142 +#: ..\..\intro\learning.rst:142 msgid "" "Expert Python Programming deals with best practices in programming Python " "and is focused on the more advanced crowd." msgstr "" -#: ../../intro/learning.rst:145 +#: ..\..\intro\learning.rst:145 msgid "" "It starts with topics like decorators (with caching, proxy, and context " "manager case-studies), method resolution order, using super() and meta-" "programming, and general :pep:`8` best practices." msgstr "" -#: ../../intro/learning.rst:149 +#: ..\..\intro\learning.rst:149 msgid "" "It has a detailed, multi-chapter case study on writing and releasing a " "package and eventually an application, including a chapter on using " @@ -264,17 +264,17 @@ msgid "" "optimization/profiling." msgstr "" -#: ../../intro/learning.rst:154 +#: ..\..\intro\learning.rst:154 msgid "" "`Expert Python Programming `_" msgstr "" -#: ../../intro/learning.rst:158 +#: ..\..\intro\learning.rst:158 msgid "A Guide to Python's Magic Methods" msgstr "" -#: ../../intro/learning.rst:160 +#: ..\..\intro\learning.rst:160 msgid "" "This is a collection of blog posts by Rafe Kettler which explain 'magic " "methods' in Python. Magic methods are surrounded by double underscores " @@ -282,45 +282,45 @@ msgid "" "magical ways." msgstr "" -#: ../../intro/learning.rst:164 +#: ..\..\intro\learning.rst:164 msgid "" "`A Guide to Python's Magic Methods " "`_" msgstr "" -#: ../../intro/learning.rst:168 +#: ..\..\intro\learning.rst:168 msgid "For Engineers and Scientists" msgstr "" -#: ../../intro/learning.rst:171 +#: ..\..\intro\learning.rst:171 msgid "A Primer on Scientific Programming with Python" msgstr "" -#: ../../intro/learning.rst:173 +#: ..\..\intro\learning.rst:173 msgid "" "A Primer on Scientific Programming with Python, written by Hans Petter " "Langtangen, mainly covers Python's usage in scientific field. In the book, " "examples are chosen from mathematics and the natural sciences." msgstr "" -#: ../../intro/learning.rst:177 +#: ..\..\intro\learning.rst:177 msgid "" "`A Primer on Scientific Programming with Python " "`_" msgstr "" -#: ../../intro/learning.rst:180 +#: ..\..\intro\learning.rst:180 msgid "Numerical Methods in Engineering with Python" msgstr "" -#: ../../intro/learning.rst:182 +#: ..\..\intro\learning.rst:182 msgid "" "Numerical Methods in Engineering with Python, written by Jaan Kiusalaas, " "attempts to emphasis on numerical methods and how to implement them in " "Python." msgstr "" -#: ../../intro/learning.rst:185 +#: ..\..\intro\learning.rst:185 msgid "" "`Numerical Methods in Engineering with Python " "`_" msgstr "" -#: ../../intro/learning.rst:188 +#: ..\..\intro\learning.rst:188 msgid "Miscellaneous topics" msgstr "" -#: ../../intro/learning.rst:191 +#: ..\..\intro\learning.rst:191 msgid "Problem Solving with Algorithms and Data Structures" msgstr "" -#: ../../intro/learning.rst:193 +#: ..\..\intro\learning.rst:193 msgid "" "Problem Solving with Algorithms and Data Structures covers a range of data " "structures and algorithms. All concepts are illustrated with Python code " "along with interactive samples that can be run directly in the browser." msgstr "" -#: ../../intro/learning.rst:197 +#: ..\..\intro\learning.rst:197 msgid "" "`Problem Solving with Algorithms and Data Structures " "`_" msgstr "" -#: ../../intro/learning.rst:201 +#: ..\..\intro\learning.rst:201 msgid "Programming Collective Intelligence" msgstr "" -#: ../../intro/learning.rst:203 +#: ..\..\intro\learning.rst:203 msgid "" "Programming Collective Intelligence introduces a wide array of basic machine" " learning and data mining methods. The exposition is not very mathematically" @@ -361,85 +361,85 @@ msgid "" " how to implement the algorithms in Python." msgstr "" -#: ../../intro/learning.rst:207 +#: ..\..\intro\learning.rst:207 msgid "" "`Programming Collective Intelligence " "`_" msgstr "" -#: ../../intro/learning.rst:210 +#: ..\..\intro\learning.rst:210 msgid "References" msgstr "" -#: ../../intro/learning.rst:213 +#: ..\..\intro\learning.rst:213 msgid "Python in a Nutshell" msgstr "" -#: ../../intro/learning.rst:215 +#: ..\..\intro\learning.rst:215 msgid "" "Python in a Nutshell, written by Alex Martelli, covers most cross-platform " "Python's usage, from its syntax to built-in libraries to advanced topics " "such as writing C extensions." msgstr "" -#: ../../intro/learning.rst:219 +#: ..\..\intro\learning.rst:219 msgid "" "`Python in a Nutshell `_" msgstr "" -#: ../../intro/learning.rst:222 +#: ..\..\intro\learning.rst:222 msgid "The Python Language Reference" msgstr "" -#: ../../intro/learning.rst:224 +#: ..\..\intro\learning.rst:224 msgid "" "This is Python's reference manual, it covers the syntax and the core " "semantics of the language." msgstr "" -#: ../../intro/learning.rst:227 +#: ..\..\intro\learning.rst:227 msgid "" "`The Python Language Reference " "`_" msgstr "" -#: ../../intro/learning.rst:230 +#: ..\..\intro\learning.rst:230 msgid "Python Pocket Reference" msgstr "" -#: ../../intro/learning.rst:232 +#: ..\..\intro\learning.rst:232 msgid "" "Python Pocket Reference, written by Mark Lutz, is an easy to use reference " "to the core language, with descriptions of commonly used modules and " "toolkits. It covers Python 3 and 2.6 versions." msgstr "" -#: ../../intro/learning.rst:236 +#: ..\..\intro\learning.rst:236 msgid "" "`Python Pocket Reference " "`_" msgstr "" -#: ../../intro/learning.rst:239 +#: ..\..\intro\learning.rst:239 msgid "Python Cookbook" msgstr "" -#: ../../intro/learning.rst:241 +#: ..\..\intro\learning.rst:241 msgid "" "Python Cookbook, written by David Beazley and Brian K. Jones, is packed with" " practical recipes. This book covers the core python language as well as " "tasks common to a wide variety of application domains." msgstr "" -#: ../../intro/learning.rst:245 +#: ..\..\intro\learning.rst:245 msgid "`Python Cookbook `_" msgstr "" -#: ../../intro/learning.rst:248 +#: ..\..\intro\learning.rst:248 msgid "Writing Idiomatic Python" msgstr "" -#: ../../intro/learning.rst:250 +#: ..\..\intro\learning.rst:250 msgid "" "\"Writing Idiomatic Python\", written by Jeff Knupp, contains the most " "common and important Python idioms in a format that maximizes identification" @@ -449,13 +449,13 @@ msgid "" "the \"Harmful\" way to write it and the \"Idiomatic\" way." msgstr "" -#: ../../intro/learning.rst:257 +#: ..\..\intro\learning.rst:257 msgid "" "`For Python 2.7.3+ `_" msgstr "" -#: ../../intro/learning.rst:259 +#: ..\..\intro\learning.rst:259 msgid "" "`For Python 3.3+ `_" diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.po b/docs/locale/ko/LC_MESSAGES/intro/news.po index c119cbc6d..4ebf99413 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/news.po +++ b/docs/locale/ko/LC_MESSAGES/intro/news.po @@ -11,75 +11,75 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../intro/news.rst:2 +#: ..\..\intro\news.rst:2 msgid "News" msgstr "" -#: ../../intro/news.rst:5 +#: ..\..\intro\news.rst:5 msgid "Planet Python" msgstr "" -#: ../../intro/news.rst:7 +#: ..\..\intro\news.rst:7 msgid "" "This is an aggregate of Python news from a growing number of developers." msgstr "" -#: ../../intro/news.rst:9 +#: ..\..\intro\news.rst:9 msgid "`Planet Python `_" msgstr "" -#: ../../intro/news.rst:12 +#: ..\..\intro\news.rst:12 msgid "/r/python" msgstr "" -#: ../../intro/news.rst:14 +#: ..\..\intro\news.rst:14 msgid "" "/r/python is the Reddit Python community where users contribute and vote on " "Python-related news." msgstr "" -#: ../../intro/news.rst:17 +#: ..\..\intro\news.rst:17 msgid "`/r/python `_" msgstr "" -#: ../../intro/news.rst:20 +#: ..\..\intro\news.rst:20 msgid "Pycoder's Weekly" msgstr "" -#: ../../intro/news.rst:22 +#: ..\..\intro\news.rst:22 msgid "" "Pycoder's Weekly is a free weekly Python newsletter for Python developers by" " Python developers (Projects, Articles, News, and Jobs)." msgstr "" -#: ../../intro/news.rst:25 +#: ..\..\intro\news.rst:25 msgid "`Pycoder's Weekly `_" msgstr "" -#: ../../intro/news.rst:28 +#: ..\..\intro\news.rst:28 msgid "Python Weekly" msgstr "" -#: ../../intro/news.rst:30 +#: ..\..\intro\news.rst:30 msgid "" "Python Weekly is a free weekly newsletter featuring curated news, articles, " "new releases, jobs, etc. related to Python." msgstr "" -#: ../../intro/news.rst:33 +#: ..\..\intro\news.rst:33 msgid "`Python Weekly `_" msgstr "" -#: ../../intro/news.rst:36 +#: ..\..\intro\news.rst:36 msgid "Python News" msgstr "" -#: ../../intro/news.rst:38 +#: ..\..\intro\news.rst:38 msgid "" "News section in the official Python web site (www.python.org). It briefly " "highlights the news from Python community." msgstr "" -#: ../../intro/news.rst:41 +#: ..\..\intro\news.rst:41 msgid "`Python News `_" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/notes/contribute.po b/docs/locale/ko/LC_MESSAGES/notes/contribute.po index 238d1b7e8..08851db52 100644 --- a/docs/locale/ko/LC_MESSAGES/notes/contribute.po +++ b/docs/locale/ko/LC_MESSAGES/notes/contribute.po @@ -11,16 +11,16 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../notes/contribute.rst:2 +#: ..\..\notes\contribute.rst:2 msgid "Contribute" msgstr "" -#: ../../notes/contribute.rst:4 +#: ..\..\notes\contribute.rst:4 msgid "" "Python-guide is under active development, and contributors are welcome." msgstr "" -#: ../../notes/contribute.rst:6 +#: ..\..\notes\contribute.rst:6 msgid "" "If you have a feature request, suggestion, or bug report, please open a new " "issue on GitHub_. To submit patches, please send a pull request on GitHub_. " @@ -29,24 +29,24 @@ msgid "" "guide/contributors>`_." msgstr "" -#: ../../notes/contribute.rst:12 +#: ..\..\notes\contribute.rst:12 msgid "Style Guide" msgstr "" -#: ../../notes/contribute.rst:14 +#: ..\..\notes\contribute.rst:14 msgid "For all contributions, please follow the :ref:`guide-style-guide`." msgstr "" -#: ../../notes/contribute.rst:19 +#: ..\..\notes\contribute.rst:19 msgid "Todo List" msgstr "" -#: ../../notes/contribute.rst:21 +#: ..\..\notes\contribute.rst:21 msgid "" "If you'd like to contribute, there's plenty to do. Here's a short todo_ " "list." msgstr "" -#: ../../../TODO.rst:1 +#: ..\..\..\TODO.rst:1 msgid "Establish \"use this\" vs \"alternatives are....\" recommendations" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/notes/license.po b/docs/locale/ko/LC_MESSAGES/notes/license.po index 79f151cfe..e5e5ceb4d 100644 --- a/docs/locale/ko/LC_MESSAGES/notes/license.po +++ b/docs/locale/ko/LC_MESSAGES/notes/license.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../notes/license.rst:3 +#: ..\..\notes\license.rst:3 msgid "License" msgstr "" -#: ../../notes/license.rst:5 +#: ..\..\notes\license.rst:5 msgid "" "The Guide is licensed under the `Creative Commons Attribution-NonCommercial-" "ShareAlike 3.0 Unported license `." msgstr "" -#: ../../notes/styleguide.rst:26 +#: ..\..\notes\styleguide.rst:26 msgid "" "Avoid including too much information on subjects that don't directly relate " "to Python development." msgstr "" -#: ../../notes/styleguide.rst:28 +#: ..\..\notes\styleguide.rst:28 msgid "" "Prefer to link to other sources if the information is already out there. Be " "sure to describe what and why you are linking." msgstr "" -#: ../../notes/styleguide.rst:30 +#: ..\..\notes\styleguide.rst:30 msgid "" "`Cite `_ " "references where needed." msgstr "" -#: ../../notes/styleguide.rst:32 +#: ..\..\notes\styleguide.rst:32 msgid "" "If a subject isn't directly relevant to Python, but useful in conjunction " "with Python (e.g., Git, GitHub, Databases), reference by linking to useful " "resources, and describe why it's useful to Python." msgstr "" -#: ../../notes/styleguide.rst:35 +#: ..\..\notes\styleguide.rst:35 msgid "When in doubt, ask." msgstr "" -#: ../../notes/styleguide.rst:38 +#: ..\..\notes\styleguide.rst:38 msgid "Headings" msgstr "" -#: ../../notes/styleguide.rst:40 +#: ..\..\notes\styleguide.rst:40 msgid "Use the following styles for headings." msgstr "" -#: ../../notes/styleguide.rst:42 +#: ..\..\notes\styleguide.rst:42 msgid "Chapter title:" msgstr "" -#: ../../notes/styleguide.rst:50 +#: ..\..\notes\styleguide.rst:50 msgid "Page title:" msgstr "" -#: ../../notes/styleguide.rst:58 +#: ..\..\notes\styleguide.rst:58 msgid "Section headings:" msgstr "" -#: ../../notes/styleguide.rst:65 +#: ..\..\notes\styleguide.rst:65 msgid "Sub section headings:" msgstr "" -#: ../../notes/styleguide.rst:73 +#: ..\..\notes\styleguide.rst:73 msgid "Prose" msgstr "" -#: ../../notes/styleguide.rst:75 +#: ..\..\notes\styleguide.rst:75 msgid "" "Wrap text lines at 78 characters. Where necessary, lines may exceed 78 " "characters, especially if wrapping would make the source text more difficult" " to read." msgstr "" -#: ../../notes/styleguide.rst:81 +#: ..\..\notes\styleguide.rst:81 msgid "Code Examples" msgstr "" -#: ../../notes/styleguide.rst:83 +#: ..\..\notes\styleguide.rst:83 msgid "" "Wrap all code examples at 70 characters to avoid horizontal scrollbars." msgstr "" -#: ../../notes/styleguide.rst:85 +#: ..\..\notes\styleguide.rst:85 msgid "Command line examples:" msgstr "" -#: ../../notes/styleguide.rst:94 +#: ..\..\notes\styleguide.rst:94 msgid "Be sure to include the ``$`` prefix before each line." msgstr "" -#: ../../notes/styleguide.rst:96 +#: ..\..\notes\styleguide.rst:96 msgid "Python interpreter examples:" msgstr "" -#: ../../notes/styleguide.rst:106 +#: ..\..\notes\styleguide.rst:106 msgid "Python examples:" msgstr "" -#: ../../notes/styleguide.rst:118 +#: ..\..\notes\styleguide.rst:118 msgid "Externally Linking" msgstr "" -#: ../../notes/styleguide.rst:120 +#: ..\..\notes\styleguide.rst:120 msgid "Prefer labels for well known subjects (ex: proper nouns) when linking:" msgstr "" -#: ../../notes/styleguide.rst:128 +#: ..\..\notes\styleguide.rst:128 msgid "" "Prefer to use descriptive labels with inline links instead of leaving bare " "links:" msgstr "" -#: ../../notes/styleguide.rst:135 +#: ..\..\notes\styleguide.rst:135 msgid "" "Avoid using labels such as \"click here\", \"this\", etc. preferring " "descriptive labels (SEO worthy) instead." msgstr "" -#: ../../notes/styleguide.rst:139 +#: ..\..\notes\styleguide.rst:139 msgid "Linking to Sections in The Guide" msgstr "" -#: ../../notes/styleguide.rst:141 +#: ..\..\notes\styleguide.rst:141 msgid "" "To cross-reference other parts of this documentation, use the `:ref: " "`_ keyword and labels." msgstr "" -#: ../../notes/styleguide.rst:145 +#: ..\..\notes\styleguide.rst:145 msgid "" "To make reference labels more clear and unique, always add a ``-ref`` " "suffix:" msgstr "" -#: ../../notes/styleguide.rst:155 +#: ..\..\notes\styleguide.rst:155 msgid "Notes and Warnings" msgstr "" -#: ../../notes/styleguide.rst:157 +#: ..\..\notes\styleguide.rst:157 msgid "" "Make use of the appropriate `admonitions directives " "`_ when making notes." msgstr "" -#: ../../notes/styleguide.rst:160 +#: ..\..\notes\styleguide.rst:160 msgid "Notes:" msgstr "" -#: ../../notes/styleguide.rst:169 +#: ..\..\notes\styleguide.rst:169 msgid "Warnings:" msgstr "" -#: ../../notes/styleguide.rst:176 +#: ..\..\notes\styleguide.rst:176 msgid "TODOs" msgstr "" -#: ../../notes/styleguide.rst:178 +#: ..\..\notes\styleguide.rst:178 msgid "" "Please mark any incomplete areas of The Guide with a `todo directive " "`_. To " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po index 108e086a6..9ee8cfa9e 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/admin.rst:2 +#: ..\..\scenarios\admin.rst:2 msgid "Systems Administration" msgstr "" -#: ../../scenarios/admin.rst:5 +#: ..\..\scenarios\admin.rst:5 msgid "Fabric" msgstr "" -#: ../../scenarios/admin.rst:7 +#: ..\..\scenarios\admin.rst:7 msgid "" "`Fabric `_ is a library for simplifying system " "administration tasks. While Chef and Puppet tend to focus on managing " @@ -27,11 +27,11 @@ msgid "" "tasks such as deployment." msgstr "" -#: ../../scenarios/admin.rst:12 +#: ..\..\scenarios\admin.rst:12 msgid "Install Fabric:" msgstr "" -#: ../../scenarios/admin.rst:18 +#: ..\..\scenarios\admin.rst:18 msgid "" "The following code will create two tasks that we can use: ``memory_usage`` " "and ``deploy``. The former will output the memory usage on each machine. The" @@ -40,31 +40,31 @@ msgid "" "server." msgstr "" -#: ../../scenarios/admin.rst:41 +#: ..\..\scenarios\admin.rst:41 msgid "" "With the previous code saved in a file named :file:`fabfile.py`, we can " "check memory usage with:" msgstr "" -#: ../../scenarios/admin.rst:61 +#: ..\..\scenarios\admin.rst:61 msgid "and we can deploy with:" msgstr "" -#: ../../scenarios/admin.rst:67 +#: ..\..\scenarios\admin.rst:67 msgid "" "Additional features include parallel execution, interaction with remote " "programs, and host grouping." msgstr "" -#: ../../scenarios/admin.rst:70 +#: ..\..\scenarios\admin.rst:70 msgid "`Fabric Documentation `_" msgstr "" -#: ../../scenarios/admin.rst:73 +#: ..\..\scenarios\admin.rst:73 msgid "Salt" msgstr "" -#: ../../scenarios/admin.rst:75 +#: ..\..\scenarios\admin.rst:75 msgid "" "`Salt `_ is an open source infrastructure management " "tool. It supports remote command execution from a central point (master " @@ -72,25 +72,25 @@ msgid "" "be used to configure multiple servers using simple template files." msgstr "" -#: ../../scenarios/admin.rst:80 +#: ..\..\scenarios\admin.rst:80 msgid "" "Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" -#: ../../scenarios/admin.rst:86 +#: ..\..\scenarios\admin.rst:86 msgid "" "After configuring a master server and any number of minion hosts, we can run" " arbitrary shell commands or use pre-built modules of complex commands on " "our minions." msgstr "" -#: ../../scenarios/admin.rst:89 +#: ..\..\scenarios\admin.rst:89 msgid "" "The following command lists all available minion hosts, using the ping " "module." msgstr "" -#: ../../scenarios/admin.rst:95 +#: ..\..\scenarios\admin.rst:95 msgid "" "The host filtering is accomplished by matching the minion id, or using the " "grains system. The `grains " @@ -99,62 +99,62 @@ msgid "" "architecture to provide a host taxonomy for the Salt modules." msgstr "" -#: ../../scenarios/admin.rst:100 +#: ..\..\scenarios\admin.rst:100 msgid "" "The following command lists all available minions running CentOS using the " "grains system:" msgstr "" -#: ../../scenarios/admin.rst:106 +#: ..\..\scenarios\admin.rst:106 msgid "" "Salt also provides a state system. States can be used to configure the " "minion hosts." msgstr "" -#: ../../scenarios/admin.rst:108 +#: ..\..\scenarios\admin.rst:108 msgid "" "For example, when a minion host is ordered to read the following state file," " it will install and start the Apache server:" msgstr "" -#: ../../scenarios/admin.rst:122 +#: ..\..\scenarios\admin.rst:122 msgid "" "State files can be written using YAML, the Jinja2 template system or pure " "Python." msgstr "" -#: ../../scenarios/admin.rst:124 +#: ..\..\scenarios\admin.rst:124 msgid "`Salt Documentation `_" msgstr "" -#: ../../scenarios/admin.rst:128 +#: ..\..\scenarios\admin.rst:128 msgid "Psutil" msgstr "" -#: ../../scenarios/admin.rst:130 +#: ..\..\scenarios\admin.rst:130 msgid "" "`Psutil `_ is an interface to different " "system information (e.g. CPU, memory, disks, network, users and processes)." msgstr "" -#: ../../scenarios/admin.rst:133 +#: ..\..\scenarios\admin.rst:133 msgid "" "Here is an example to be aware of some server overload. If any of the tests " "(net, CPU) fail, it will send an email." msgstr "" -#: ../../scenarios/admin.rst:179 +#: ..\..\scenarios\admin.rst:179 msgid "" "A full terminal application like a widely extended top which is based on " "psutil and with the ability of a client-server monitoring is `glance " "`_." msgstr "" -#: ../../scenarios/admin.rst:184 +#: ..\..\scenarios\admin.rst:184 msgid "Ansible" msgstr "" -#: ../../scenarios/admin.rst:186 +#: ..\..\scenarios\admin.rst:186 msgid "" "`Ansible `_ is an open source system automation tool. " "The biggest advantage over Puppet or Chef is it does not require an agent on" @@ -163,31 +163,31 @@ msgid "" "templating." msgstr "" -#: ../../scenarios/admin.rst:191 +#: ..\..\scenarios\admin.rst:191 msgid "" "Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" -#: ../../scenarios/admin.rst:197 +#: ..\..\scenarios\admin.rst:197 msgid "" "Ansible requires an inventory file that describes the hosts to which it has " "access. Below is an example of a host and playbook that will ping all the " "hosts in the inventory file." msgstr "" -#: ../../scenarios/admin.rst:201 +#: ..\..\scenarios\admin.rst:201 msgid "Here is an example inventory file: :file:`hosts.yml`" msgstr "" -#: ../../scenarios/admin.rst:209 +#: ..\..\scenarios\admin.rst:209 msgid "Here is an example playbook: :file:`ping.yml`" msgstr "" -#: ../../scenarios/admin.rst:221 +#: ..\..\scenarios\admin.rst:221 msgid "To run the playbook:" msgstr "" -#: ../../scenarios/admin.rst:227 +#: ..\..\scenarios\admin.rst:227 msgid "" "The Ansible playbook will ping all of the servers in the :file:`hosts.yml` " "file. You can also select groups of servers using Ansible. For more " @@ -195,24 +195,24 @@ msgid "" "`_." msgstr "" -#: ../../scenarios/admin.rst:233 +#: ..\..\scenarios\admin.rst:233 msgid "Chef" msgstr "" -#: ../../scenarios/admin.rst:235 +#: ..\..\scenarios\admin.rst:235 msgid "Write about Chef" msgstr "" -#: ../../scenarios/admin.rst:237 +#: ..\..\scenarios\admin.rst:237 msgid "" "`Chef Documentation `_" msgstr "" -#: ../../scenarios/admin.rst:241 +#: ..\..\scenarios\admin.rst:241 msgid "Puppet" msgstr "" -#: ../../scenarios/admin.rst:243 +#: ..\..\scenarios\admin.rst:243 msgid "" "`Puppet `_ is an IT Automation and configuration " "management software from Puppet Labs that allows System Administrators to " @@ -220,7 +220,7 @@ msgid "" "way to manage their fleet of physical and virtual machines." msgstr "" -#: ../../scenarios/admin.rst:248 +#: ..\..\scenarios\admin.rst:248 msgid "" "Puppet is available both as an Open Source and an Enterprise variant. " "Modules are small,shareable units of code written to automate or define the " @@ -229,14 +229,14 @@ msgid "" "Enterprise Puppet." msgstr "" -#: ../../scenarios/admin.rst:253 +#: ..\..\scenarios\admin.rst:253 msgid "" "Puppet Agents are installed on nodes whose state needs to be monitored or " "changed. A desginated server known as the Puppet Master is responsible for " "orchastrating the agent nodes." msgstr "" -#: ../../scenarios/admin.rst:257 +#: ..\..\scenarios\admin.rst:257 msgid "" "Agent nodes send basic facts about the system such as to the operating " "system, kernel, architecture, ip address, hostname etc. to the Puppet " @@ -246,21 +246,21 @@ msgid "" "a report back to the Puppet Master." msgstr "" -#: ../../scenarios/admin.rst:263 +#: ..\..\scenarios\admin.rst:263 msgid "" "Facter is an interesting tool that ships with Puppet that pulls basic facts " "about the System. These facts can be referenced as a variable while writing " "your Puppet modules." msgstr "" -#: ../../scenarios/admin.rst:276 +#: ..\..\scenarios\admin.rst:276 msgid "" "Writing Modules in Puppet is pretty straight forward. Puppet Manifests " "together form Puppet Modules. Puppet manifest end with an extension of " "``.pp``. Here is an example of 'Hello World' in Puppet." msgstr "" -#: ../../scenarios/admin.rst:288 +#: ..\..\scenarios\admin.rst:288 msgid "" "Here is another example with system based logic. Note how the " "operatingsystem fact is being used as a variable prepended with the ``$`` " @@ -268,7 +268,7 @@ msgid "" "be referenced by ``$hostname``" msgstr "" -#: ../../scenarios/admin.rst:301 +#: ..\..\scenarios\admin.rst:301 msgid "" "There are several resource types for Puppet but the package-file-service " "paradigm is all you need for undertaking majority of the configuration " @@ -277,28 +277,33 @@ msgid "" " everytime the sshd configuration file is changed." msgstr "" -#: ../../scenarios/admin.rst:331 +#: ..\..\scenarios\admin.rst:331 msgid "" "For more information checkout `Puppet Labs Documentation " "`_" msgstr "" -#: ../../scenarios/admin.rst:334 +#: ..\..\scenarios\admin.rst:334 msgid "Blueprint" msgstr "" -#: ../../scenarios/admin.rst:336 +#: ..\..\scenarios\admin.rst:336 msgid "Write about Blueprint" msgstr "" -#: ../../scenarios/admin.rst:339 +#: ..\..\scenarios\admin.rst:339 msgid "Buildout" msgstr "" -#: ../../scenarios/admin.rst:341 +#: ..\..\scenarios\admin.rst:341 msgid "Write about Buildout" msgstr "" -#: ../../scenarios/admin.rst:343 +#: ..\..\scenarios\admin.rst:343 msgid "`Buildout Website `_" msgstr "" + +#: ..\..\scenarios\admin.rst:0 ..\..\scenarios\admin.rst:0 +#: ..\..\scenarios\admin.rst:0 +msgid "Todo" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po index 4301ebe05..4c9b9a9ea 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po @@ -11,22 +11,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/ci.rst:2 +#: ..\..\scenarios\ci.rst:2 msgid "Continuous Integration" msgstr "" -#: ../../scenarios/ci.rst:6 +#: ..\..\scenarios\ci.rst:6 msgid "Why?" msgstr "" -#: ../../scenarios/ci.rst:8 +#: ..\..\scenarios\ci.rst:8 msgid "" "Martin Fowler, who first wrote about `Continuous Integration " "`_ (short: CI) " "together with Kent Beck, describes the CI as follows:" msgstr "" -#: ../../scenarios/ci.rst:11 +#: ..\..\scenarios\ci.rst:11 msgid "" "Continuous Integration is a software development practice where members of a" " team integrate their work frequently, usually each person integrates at " @@ -37,31 +37,31 @@ msgid "" "cohesive software more rapidly." msgstr "" -#: ../../scenarios/ci.rst:20 +#: ..\..\scenarios\ci.rst:20 msgid "Jenkins" msgstr "" -#: ../../scenarios/ci.rst:22 +#: ..\..\scenarios\ci.rst:22 msgid "" "`Jenkins CI `_ is an extensible continuous " "integration engine. Use it." msgstr "" -#: ../../scenarios/ci.rst:28 +#: ..\..\scenarios\ci.rst:28 msgid "Buildbot" msgstr "" -#: ../../scenarios/ci.rst:30 +#: ..\..\scenarios\ci.rst:30 msgid "" "`Buildbot `_ is a Python system to " "automate the compile/test cycle to validate code changes." msgstr "" -#: ../../scenarios/ci.rst:35 +#: ..\..\scenarios\ci.rst:35 msgid "Mule" msgstr "" -#: ../../scenarios/ci.rst:37 +#: ..\..\scenarios\ci.rst:37 msgid "" "`Mule " "`_ " @@ -73,11 +73,11 @@ msgid "" "that happens." msgstr "" -#: ../../scenarios/ci.rst:47 +#: ..\..\scenarios\ci.rst:47 msgid "Tox" msgstr "" -#: ../../scenarios/ci.rst:49 +#: ..\..\scenarios\ci.rst:49 msgid "" "`tox `_ is an automation tool " "providing packaging, testing and deployment of Python software right from " @@ -85,29 +85,29 @@ msgid "" "command line tool which provides the following features:" msgstr "" -#: ../../scenarios/ci.rst:54 +#: ..\..\scenarios\ci.rst:54 msgid "" "Checking that packages install correctly with different Python versions and " "interpreters" msgstr "" -#: ../../scenarios/ci.rst:56 +#: ..\..\scenarios\ci.rst:56 msgid "" "Running tests in each of the environments, configuring your test tool of " "choice" msgstr "" -#: ../../scenarios/ci.rst:58 +#: ..\..\scenarios\ci.rst:58 msgid "" "Acting as a front-end to Continuous Integration servers, reducing " "boilerplate and merging CI and shell-based testing." msgstr "" -#: ../../scenarios/ci.rst:63 +#: ..\..\scenarios\ci.rst:63 msgid "Travis-CI" msgstr "" -#: ../../scenarios/ci.rst:65 +#: ..\..\scenarios\ci.rst:65 msgid "" "`Travis-CI `_ is a distributed CI server which " "builds tests for open source projects for free. It provides multiple workers" @@ -117,13 +117,13 @@ msgid "" "ci is a great and easy way to get started with Continuous Integration." msgstr "" -#: ../../scenarios/ci.rst:72 +#: ..\..\scenarios\ci.rst:72 msgid "" "In order to get started, add a :file:`.travis.yml` file to your repository " "with this example content::" msgstr "" -#: ../../scenarios/ci.rst:88 +#: ..\..\scenarios\ci.rst:88 msgid "" "This will get your project tested on all the listed Python versions by " "running the given script, and will only build the master branch. There are a" @@ -132,7 +132,7 @@ msgid "" "explain all of these options, and are very thorough." msgstr "" -#: ../../scenarios/ci.rst:94 +#: ..\..\scenarios\ci.rst:94 msgid "" "In order to activate testing for your project, go to `the travis-ci site " "`_ and login with your GitHub account. Then activate" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po index ca055059c..21f048d93 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/cli.rst:2 +#: ..\..\scenarios\cli.rst:2 msgid "Command-line Applications" msgstr "" -#: ../../scenarios/cli.rst:4 +#: ..\..\scenarios\cli.rst:4 msgid "" "Command-line applications, also referred to as `Console Applications " "`_, are computer programs " @@ -26,42 +26,42 @@ msgid "" "flags or switches." msgstr "" -#: ../../scenarios/cli.rst:12 +#: ..\..\scenarios\cli.rst:12 msgid "Some popular command-line applications include:" msgstr "" -#: ../../scenarios/cli.rst:14 +#: ..\..\scenarios\cli.rst:14 msgid "" "`Grep `_ - A plain-text data search " "utility" msgstr "" -#: ../../scenarios/cli.rst:15 +#: ..\..\scenarios\cli.rst:15 msgid "" "`curl `_ - A tool for data transfer with URL syntax" msgstr "" -#: ../../scenarios/cli.rst:16 +#: ..\..\scenarios\cli.rst:16 msgid "" "`httpie `_ - A command line HTTP " "client, a user-friendly cURL replacement" msgstr "" -#: ../../scenarios/cli.rst:18 +#: ..\..\scenarios\cli.rst:18 msgid "`git `_ - A distributed version control system" msgstr "" -#: ../../scenarios/cli.rst:19 +#: ..\..\scenarios\cli.rst:19 msgid "" "`mercurial `_ - A distributed version control" " system primarily written in Python" msgstr "" -#: ../../scenarios/cli.rst:23 +#: ..\..\scenarios\cli.rst:23 msgid "Clint" msgstr "" -#: ../../scenarios/cli.rst:25 +#: ..\..\scenarios\cli.rst:25 msgid "" "`clint `_ is a Python module which is " "filled with very useful tools for developing command-line applications. It " @@ -69,11 +69,11 @@ msgid "" "column printer, iterator based progress bars and implicit argument handling." msgstr "" -#: ../../scenarios/cli.rst:31 +#: ..\..\scenarios\cli.rst:31 msgid "Click" msgstr "" -#: ../../scenarios/cli.rst:33 +#: ..\..\scenarios\cli.rst:33 msgid "" "`click `_ is an upcoming Python package for " "creating command-line interfaces in a composable way with as little code as " @@ -81,22 +81,22 @@ msgid "" "but comes with good defaults out of the box." msgstr "" -#: ../../scenarios/cli.rst:39 +#: ..\..\scenarios\cli.rst:39 msgid "docopt" msgstr "" -#: ../../scenarios/cli.rst:41 +#: ..\..\scenarios\cli.rst:41 msgid "" "`docopt `_ is a lightweight, highly Pythonic package " "that allows creating command-line interfaces easily and intuitively, by " "parsing POSIX-style usage instructions." msgstr "" -#: ../../scenarios/cli.rst:46 +#: ..\..\scenarios\cli.rst:46 msgid "Plac" msgstr "" -#: ../../scenarios/cli.rst:48 +#: ..\..\scenarios\cli.rst:48 msgid "" "`Plac `_ is a simple wrapper over the " "Python standard library `argparse " @@ -108,11 +108,11 @@ msgid "" "command-line interface because it is quick and simple." msgstr "" -#: ../../scenarios/cli.rst:57 +#: ..\..\scenarios\cli.rst:57 msgid "Cliff" msgstr "" -#: ../../scenarios/cli.rst:59 +#: ..\..\scenarios\cli.rst:59 msgid "" "`Cliff `_ is a framework for " "building command-line programs. It uses setuptools entry points to provide " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.po b/docs/locale/ko/LC_MESSAGES/scenarios/client.po index 05a96105b..a1b427594 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/client.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/client.po @@ -11,26 +11,26 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/client.rst:2 +#: ..\..\scenarios\client.rst:2 msgid "Network Applications" msgstr "" -#: ../../scenarios/client.rst:7 +#: ..\..\scenarios\client.rst:7 msgid "HTTP" msgstr "" -#: ../../scenarios/client.rst:9 +#: ..\..\scenarios\client.rst:9 msgid "" "The Hypertext Transfer Protocol (HTTP) is an application protocol for " "distributed, collaborative, hypermedia information systems. HTTP is the " "foundation of data communication for the World Wide Web." msgstr "" -#: ../../scenarios/client.rst:14 +#: ..\..\scenarios\client.rst:14 msgid "Requests" msgstr "" -#: ../../scenarios/client.rst:16 +#: ..\..\scenarios\client.rst:16 msgid "" "Python’s standard urllib2 module provides most of the HTTP capabilities you " "need, but the API is thoroughly broken. It was built for a different time — " @@ -38,7 +38,7 @@ msgid "" "overrides) to perform the simplest of tasks." msgstr "" -#: ../../scenarios/client.rst:21 +#: ..\..\scenarios\client.rst:21 msgid "" "Requests takes all of the work out of Python HTTP — making your integration " "with web services seamless. There’s no need to manually add query strings to" @@ -47,28 +47,28 @@ msgid "" "Requests." msgstr "" -#: ../../scenarios/client.rst:27 +#: ..\..\scenarios\client.rst:27 msgid "" "`Documentation `_" msgstr "" -#: ../../scenarios/client.rst:28 +#: ..\..\scenarios\client.rst:28 msgid "`PyPi `_" msgstr "" -#: ../../scenarios/client.rst:29 +#: ..\..\scenarios\client.rst:29 msgid "`GitHub `_" msgstr "" -#: ../../scenarios/client.rst:33 +#: ..\..\scenarios\client.rst:33 msgid "Distributed Systems" msgstr "" -#: ../../scenarios/client.rst:37 +#: ..\..\scenarios\client.rst:37 msgid "ZeroMQ" msgstr "" -#: ../../scenarios/client.rst:39 +#: ..\..\scenarios\client.rst:39 msgid "" "ØMQ (also spelled ZeroMQ, 0MQ or ZMQ) is a high-performance asynchronous " "messaging library aimed at use in scalable distributed or concurrent " @@ -77,11 +77,11 @@ msgid "" "library is designed to have a familiar socket-style API." msgstr "" -#: ../../scenarios/client.rst:46 +#: ..\..\scenarios\client.rst:46 msgid "RabbitMQ" msgstr "" -#: ../../scenarios/client.rst:48 +#: ..\..\scenarios\client.rst:48 msgid "" "RabbitMQ is an open source message broker software that implements the " "Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written in " @@ -90,10 +90,10 @@ msgid "" "the broker are available for all major programming languages." msgstr "" -#: ../../scenarios/client.rst:53 +#: ..\..\scenarios\client.rst:53 msgid "`Homepage `_" msgstr "" -#: ../../scenarios/client.rst:54 +#: ..\..\scenarios\client.rst:54 msgid "`GitHub Organization `_" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po index e71a9d8a0..548f6c2e5 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po @@ -11,41 +11,41 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/crypto.rst:2 ../../scenarios/crypto.rst:5 +#: ..\..\scenarios\crypto.rst:2 ..\..\scenarios\crypto.rst:5 msgid "Cryptography" msgstr "" -#: ../../scenarios/crypto.rst:7 +#: ..\..\scenarios\crypto.rst:7 msgid "" "`Cryptography `_ is an actively " "developed library that provides cryptographic recipes and primitives. It " "supports Python 2.6-2.7, Python 3.2+ and PyPy." msgstr "" -#: ../../scenarios/crypto.rst:12 +#: ..\..\scenarios\crypto.rst:12 msgid "" "Cryptography is divided into two layers of recipes and hazardous materials " "(hazmat). The recipes layer provides simple API for proper symmetric " "encryption and the hazmat layer provides low-level cryptographic primitives." msgstr "" -#: ../../scenarios/crypto.rst:19 ../../scenarios/crypto.rst:49 +#: ..\..\scenarios\crypto.rst:19 ..\..\scenarios\crypto.rst:49 msgid "Installation" msgstr "" -#: ../../scenarios/crypto.rst:26 ../../scenarios/crypto.rst:56 +#: ..\..\scenarios\crypto.rst:26 ..\..\scenarios\crypto.rst:56 msgid "Example" msgstr "" -#: ../../scenarios/crypto.rst:28 +#: ..\..\scenarios\crypto.rst:28 msgid "Example code using high level symmetric encryption recipe:" msgstr "" -#: ../../scenarios/crypto.rst:42 +#: ..\..\scenarios\crypto.rst:42 msgid "PyCrypto" msgstr "" -#: ../../scenarios/crypto.rst:44 +#: ..\..\scenarios\crypto.rst:44 msgid "" "`PyCrypto `_ is another library, " "which provides secure hash functions and various encryption algorithms. It " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.po b/docs/locale/ko/LC_MESSAGES/scenarios/db.po index 514a10058..e0b7ffbac 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/db.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/db.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/db.rst:2 +#: ..\..\scenarios\db.rst:2 msgid "Databases" msgstr "" -#: ../../scenarios/db.rst:5 +#: ..\..\scenarios\db.rst:5 msgid "DB-API" msgstr "" -#: ../../scenarios/db.rst:7 +#: ..\..\scenarios\db.rst:7 msgid "" "The Python Database API (DB-API) defines a standard interface for Python " "database access modules. It's documented in :pep:`249`. Nearly all Python " @@ -27,7 +27,7 @@ msgid "" "this interface." msgstr "" -#: ../../scenarios/db.rst:12 +#: ..\..\scenarios\db.rst:12 msgid "" "Tutorials that explain how to work with modules that conform to this " "interface can be found `here " @@ -37,47 +37,47 @@ msgid "" "/DB-API.html>`__." msgstr "" -#: ../../scenarios/db.rst:17 +#: ..\..\scenarios\db.rst:17 msgid "SQLAlchemy" msgstr "" -#: ../../scenarios/db.rst:19 +#: ..\..\scenarios\db.rst:19 msgid "" "`SQLAlchemy `_ is a commonly used database " "toolkit. Unlike many database libraries it not only provides an ORM layer " "but also a generalized API for writing database-agnostic code without SQL." msgstr "" -#: ../../scenarios/db.rst:28 +#: ..\..\scenarios\db.rst:28 msgid "Django ORM" msgstr "" -#: ../../scenarios/db.rst:30 +#: ..\..\scenarios\db.rst:30 msgid "" "The Django ORM is the interface used by `Django " "`_ to provide database access." msgstr "" -#: ../../scenarios/db.rst:33 +#: ..\..\scenarios\db.rst:33 msgid "" "It's based on the idea of `models `_, an abstraction that makes it easier to manipulate data" " in Python." msgstr "" -#: ../../scenarios/db.rst:36 +#: ..\..\scenarios\db.rst:36 msgid "The basics:" msgstr "" -#: ../../scenarios/db.rst:38 +#: ..\..\scenarios\db.rst:38 msgid "Each model is a Python class that subclasses django.db.models.Model." msgstr "" -#: ../../scenarios/db.rst:39 +#: ..\..\scenarios\db.rst:39 msgid "Each attribute of the model represents a database field." msgstr "" -#: ../../scenarios/db.rst:40 +#: ..\..\scenarios\db.rst:40 msgid "" "Django gives you an automatically-generated database-access API; see `Making" " queries `__." diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po index dea371bc4..08b2b4bf0 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po @@ -11,47 +11,47 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/gui.rst:2 +#: ..\..\scenarios\gui.rst:2 msgid "GUI Applications" msgstr "" -#: ../../scenarios/gui.rst:4 +#: ..\..\scenarios\gui.rst:4 msgid "Alphabetical list of GUI Applications." msgstr "" -#: ../../scenarios/gui.rst:7 +#: ..\..\scenarios\gui.rst:7 msgid "Camelot" msgstr "" -#: ../../scenarios/gui.rst:8 +#: ..\..\scenarios\gui.rst:8 msgid "" "`Camelot `_ provides components for building " "applications on top of Python, SQLAlchemy and Qt. It is inspired by the " "Django admin interface." msgstr "" -#: ../../scenarios/gui.rst:12 +#: ..\..\scenarios\gui.rst:12 msgid "" "The main resource for information is the website: http://www.python-" "camelot.com and the mailing list https://groups.google.com/forum/#!forum" "/project-camelot" msgstr "" -#: ../../scenarios/gui.rst:17 +#: ..\..\scenarios\gui.rst:17 msgid "Cocoa" msgstr "" -#: ../../scenarios/gui.rst:18 +#: ..\..\scenarios\gui.rst:18 msgid "" "The Cocoa framework is only available on OS X. Don't pick this if you're " "writing a cross-platform application!" msgstr "" -#: ../../scenarios/gui.rst:21 +#: ..\..\scenarios\gui.rst:21 msgid "GTk" msgstr "" -#: ../../scenarios/gui.rst:22 +#: ..\..\scenarios\gui.rst:22 msgid "" "PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ library " "itself, it is currently licensed under the GNU LGPL. It is worth noting that" @@ -60,11 +60,11 @@ msgid "" "existing applications be ported from PyGTK to PyGObject." msgstr "" -#: ../../scenarios/gui.rst:29 +#: ..\..\scenarios\gui.rst:29 msgid "Kivy" msgstr "" -#: ../../scenarios/gui.rst:30 +#: ..\..\scenarios\gui.rst:30 msgid "" "`Kivy `_ is a Python library for development of multi-touch" " enabled media rich applications. The aim is to allow for quick and easy " @@ -72,68 +72,68 @@ msgid "" "and deployable." msgstr "" -#: ../../scenarios/gui.rst:35 +#: ..\..\scenarios\gui.rst:35 msgid "" "Kivy is written in Python, based on OpenGL and supports different input " "devices such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, " "Apple's products and so on." msgstr "" -#: ../../scenarios/gui.rst:38 +#: ..\..\scenarios\gui.rst:38 msgid "" "Kivy is actively being developed by a community and free to use. It operates" " on all major platforms (Linux, OSX, Windows, Android)." msgstr "" -#: ../../scenarios/gui.rst:41 +#: ..\..\scenarios\gui.rst:41 msgid "The main resource for information is the website: http://kivy.org" msgstr "" -#: ../../scenarios/gui.rst:44 +#: ..\..\scenarios\gui.rst:44 msgid "PyObjC" msgstr "" -#: ../../scenarios/gui.rst:45 +#: ..\..\scenarios\gui.rst:45 msgid "" "Only available on OS X. Don't pick this if you're writing a cross-platform " "application." msgstr "" -#: ../../scenarios/gui.rst:48 +#: ..\..\scenarios\gui.rst:48 msgid "PySide" msgstr "" -#: ../../scenarios/gui.rst:49 +#: ..\..\scenarios\gui.rst:49 msgid "PySide is a Python binding of the cross-platform GUI toolkit Qt." msgstr "" -#: ../../scenarios/gui.rst:51 +#: ..\..\scenarios\gui.rst:51 msgid "http://developer.qt.nokia.com/wiki/PySideDownloads/" msgstr "" -#: ../../scenarios/gui.rst:54 +#: ..\..\scenarios\gui.rst:54 msgid "PyQt" msgstr "" -#: ../../scenarios/gui.rst:55 +#: ..\..\scenarios\gui.rst:55 msgid "" "If your software does not fully comply with the GPL you will need a " "commercial license!" msgstr "" -#: ../../scenarios/gui.rst:57 +#: ..\..\scenarios\gui.rst:57 msgid "PyQt provides Python bindings for the Qt Framework (see below)." msgstr "" -#: ../../scenarios/gui.rst:59 +#: ..\..\scenarios\gui.rst:59 msgid "http://www.riverbankcomputing.co.uk/software/pyqt/download" msgstr "" -#: ../../scenarios/gui.rst:62 +#: ..\..\scenarios\gui.rst:62 msgid "PyjamasDesktop (pyjs Desktop)" msgstr "" -#: ../../scenarios/gui.rst:63 +#: ..\..\scenarios\gui.rst:63 msgid "" "PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget " "set for desktop and a cross-platform framework. (After release v0.6 " @@ -142,57 +142,57 @@ msgid "" "desktop application." msgstr "" -#: ../../scenarios/gui.rst:68 +#: ..\..\scenarios\gui.rst:68 msgid "" "`Python Wiki for PyjamasDesktop " "`_." msgstr "" -#: ../../scenarios/gui.rst:70 +#: ..\..\scenarios\gui.rst:70 msgid "The main website; `pyjs Desktop `_." msgstr "" -#: ../../scenarios/gui.rst:73 +#: ..\..\scenarios\gui.rst:73 msgid "Qt" msgstr "" -#: ../../scenarios/gui.rst:74 +#: ..\..\scenarios\gui.rst:74 msgid "" "`Qt `_ is a cross-platform application framework " "that is widely used for developing software with a GUI but can also be used " "for non-GUI applications." msgstr "" -#: ../../scenarios/gui.rst:79 +#: ..\..\scenarios\gui.rst:79 msgid "Tk" msgstr "" -#: ../../scenarios/gui.rst:80 +#: ..\..\scenarios\gui.rst:80 msgid "" "Tkinter is a thin object-oriented layer on top of Tcl/Tk. **It has the " "advantage of being included with the Python standard library, making it the " "most convenient and compatible toolkit to program with.**" msgstr "" -#: ../../scenarios/gui.rst:84 +#: ..\..\scenarios\gui.rst:84 msgid "" "Both Tk and Tkinter are available on most Unix platforms, as well as on " "Windows and Macintosh systems. Starting with the 8.0 release, Tk offers " "native look and feel on all platforms." msgstr "" -#: ../../scenarios/gui.rst:88 +#: ..\..\scenarios\gui.rst:88 msgid "" "There's a good multi-language Tk tutorial with Python examples at `TkDocs " "`_. There's more information " "available on the `Python Wiki `_." msgstr "" -#: ../../scenarios/gui.rst:93 +#: ..\..\scenarios\gui.rst:93 msgid "wxPython" msgstr "" -#: ../../scenarios/gui.rst:94 +#: ..\..\scenarios\gui.rst:94 msgid "" "wxPython is a GUI toolkit for the Python programming language. It allows " "Python programmers to create programs with a robust, highly functional " @@ -201,7 +201,7 @@ msgid "" "platform GUI library, which is written in C++." msgstr "" -#: ../../scenarios/gui.rst:100 +#: ..\..\scenarios\gui.rst:100 msgid "" "**Install (Stable) wxPython** *go to " "http://www.wxpython.org/download.php#stable and download the appropriate " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po index 26c11c833..a94545ce3 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po @@ -11,37 +11,37 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/imaging.rst:3 +#: ..\..\scenarios\imaging.rst:3 msgid "Image Manipulation" msgstr "" -#: ../../scenarios/imaging.rst:6 +#: ..\..\scenarios\imaging.rst:6 msgid "Add introduction about image manipulation and its Python libraries." msgstr "" -#: ../../scenarios/imaging.rst:9 +#: ..\..\scenarios\imaging.rst:9 msgid "Python Imaging Library" msgstr "" -#: ../../scenarios/imaging.rst:11 +#: ..\..\scenarios\imaging.rst:11 msgid "" "The `Python Imaging Library `_, or " "PIL for short, is *the* library for image manipulation in Python. " "Unfortunately, its development has stagnated, with its last release in 2009." msgstr "" -#: ../../scenarios/imaging.rst:15 +#: ..\..\scenarios\imaging.rst:15 msgid "" "Luckily for you, there's an actively-developed fork of PIL called `Pillow " "`_ - it's easier to install, runs on all " "operating systems, and supports Python 3." msgstr "" -#: ../../scenarios/imaging.rst:19 +#: ..\..\scenarios\imaging.rst:19 msgid "Installation" msgstr "" -#: ../../scenarios/imaging.rst:21 +#: ..\..\scenarios\imaging.rst:21 msgid "" "Before installing Pillow, you'll have to install Pillow's prerequisites. " "Find the instructions for your platform `here " @@ -49,6 +49,10 @@ msgid "" "instructions>`_." msgstr "" -#: ../../scenarios/imaging.rst:24 +#: ..\..\scenarios\imaging.rst:24 msgid "After that, it's straightforward:" msgstr "" + +#: ..\..\scenarios\imaging.rst:0 +msgid "Todo" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.po b/docs/locale/ko/LC_MESSAGES/scenarios/network.po index 8ad46c422..5fc2d499b 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/network.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/network.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/network.rst:2 +#: ..\..\scenarios\network.rst:2 msgid "Networking" msgstr "" -#: ../../scenarios/network.rst:5 +#: ..\..\scenarios\network.rst:5 msgid "Twisted" msgstr "" -#: ../../scenarios/network.rst:7 +#: ..\..\scenarios\network.rst:7 msgid "" "`Twisted `_ is an event-driven networking " "engine. It can be used to build applications around many different " @@ -28,11 +28,11 @@ msgid "" "`_." msgstr "" -#: ../../scenarios/network.rst:13 +#: ..\..\scenarios\network.rst:13 msgid "PyZMQ" msgstr "" -#: ../../scenarios/network.rst:15 +#: ..\..\scenarios\network.rst:15 msgid "" "`PyZMQ `_ is the Python binding for `ZeroMQ" " `_, which is a high-performance asynchronous " @@ -40,36 +40,36 @@ msgid "" "message queuing without a message broker. The basic patterns for this are:" msgstr "" -#: ../../scenarios/network.rst:20 +#: ..\..\scenarios\network.rst:20 msgid "" "request-reply: connects a set of clients to a set of services. This is a " "remote procedure call and task distribution pattern." msgstr "" -#: ../../scenarios/network.rst:22 +#: ..\..\scenarios\network.rst:22 msgid "" "publish-subscribe: connects a set of publishers to a set of subscribers. " "This is a data distribution pattern." msgstr "" -#: ../../scenarios/network.rst:24 +#: ..\..\scenarios\network.rst:24 msgid "" "push-pull (or pipeline): connects nodes in a fan-out / fan-in pattern that " "can have multiple steps, and loops. This is a parallel task distribution and" " collection pattern." msgstr "" -#: ../../scenarios/network.rst:28 +#: ..\..\scenarios\network.rst:28 msgid "" "For a quick start, read the `ZeroMQ guide " "`_." msgstr "" -#: ../../scenarios/network.rst:31 +#: ..\..\scenarios\network.rst:31 msgid "gevent" msgstr "" -#: ../../scenarios/network.rst:33 +#: ..\..\scenarios\network.rst:33 msgid "" "`gevent `_ is a coroutine-based Python networking " "library that uses greenlets to provide a high-level synchronous API on top " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po index c11799a64..83fe3c570 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po @@ -11,22 +11,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/scientific.rst:3 +#: ..\..\scenarios\scientific.rst:3 msgid "Scientific Applications" msgstr "" -#: ../../scenarios/scientific.rst:6 +#: ..\..\scenarios\scientific.rst:6 msgid "Context" msgstr "" -#: ../../scenarios/scientific.rst:8 +#: ..\..\scenarios\scientific.rst:8 msgid "" "Python is frequently used for high-performance scientific applications. It " "is widely used in academia and scientific projects because it is easy to " "write and performs well." msgstr "" -#: ../../scenarios/scientific.rst:12 +#: ..\..\scenarios\scientific.rst:12 msgid "" "Due to its high performance nature, scientific computing in Python often " "utilizes external libraries, typically written in faster languages (like C, " @@ -37,15 +37,15 @@ msgid "" "Lecture Notes `_" msgstr "" -#: ../../scenarios/scientific.rst:22 +#: ..\..\scenarios\scientific.rst:22 msgid "Tools" msgstr "" -#: ../../scenarios/scientific.rst:25 +#: ..\..\scenarios\scientific.rst:25 msgid "IPython" msgstr "" -#: ../../scenarios/scientific.rst:27 +#: ..\..\scenarios\scientific.rst:27 msgid "" "`IPython `_ is an enhanced version of Python " "interpreter, which provides features of great interest to scientists. The " @@ -57,15 +57,15 @@ msgid "" "shared and exported in various file formats." msgstr "" -#: ../../scenarios/scientific.rst:38 +#: ..\..\scenarios\scientific.rst:38 msgid "Libraries" msgstr "" -#: ../../scenarios/scientific.rst:41 +#: ..\..\scenarios\scientific.rst:41 msgid "NumPy" msgstr "" -#: ../../scenarios/scientific.rst:43 +#: ..\..\scenarios\scientific.rst:43 msgid "" "`NumPy `_ is a low level library written in C (and " "FORTRAN) for high level mathematical functions. NumPy cleverly overcomes the" @@ -75,23 +75,23 @@ msgid "" "quickly." msgstr "" -#: ../../scenarios/scientific.rst:49 +#: ..\..\scenarios\scientific.rst:49 msgid "" "NumPy is part of the SciPy project, and is released as a separate library so" " people who only need the basic requirements can use it without installing " "the rest of SciPy." msgstr "" -#: ../../scenarios/scientific.rst:53 +#: ..\..\scenarios\scientific.rst:53 msgid "" "NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." msgstr "" -#: ../../scenarios/scientific.rst:56 +#: ..\..\scenarios\scientific.rst:56 msgid "Numba" msgstr "" -#: ../../scenarios/scientific.rst:58 +#: ..\..\scenarios\scientific.rst:58 msgid "" "`Numba `_ is an Numpy aware Python compiler (just-" "in-time (JIT) specializing compiler) which compiles annotated Python (and " @@ -100,11 +100,11 @@ msgid "" "which can be natively executed at runtime." msgstr "" -#: ../../scenarios/scientific.rst:65 +#: ..\..\scenarios\scientific.rst:65 msgid "SciPy" msgstr "" -#: ../../scenarios/scientific.rst:67 +#: ..\..\scenarios\scientific.rst:67 msgid "" "`SciPy `_ is a library that uses NumPy for more " "mathematical functions. SciPy uses NumPy arrays as the basic data structure," @@ -113,11 +113,11 @@ msgid "" "differential equation solving and signal processing." msgstr "" -#: ../../scenarios/scientific.rst:74 +#: ..\..\scenarios\scientific.rst:74 msgid "Matplotlib" msgstr "" -#: ../../scenarios/scientific.rst:76 +#: ..\..\scenarios\scientific.rst:76 msgid "" "`Matplotlib `_ is a flexible plotting " "library for creating interactive 2D and 3D plots that can also be saved as " @@ -128,11 +128,11 @@ msgid "" "`_." msgstr "" -#: ../../scenarios/scientific.rst:85 +#: ..\..\scenarios\scientific.rst:85 msgid "Pandas" msgstr "" -#: ../../scenarios/scientific.rst:87 +#: ..\..\scenarios\scientific.rst:87 msgid "" "`Pandas `_ is data manipulation library based on " "Numpy which provides many useful functions for accessing, indexing, merging " @@ -142,11 +142,11 @@ msgid "" " data." msgstr "" -#: ../../scenarios/scientific.rst:95 +#: ..\..\scenarios\scientific.rst:95 msgid "Rpy2" msgstr "" -#: ../../scenarios/scientific.rst:97 +#: ..\..\scenarios\scientific.rst:97 msgid "" "`Rpy2 `_ is a Python binding for the R" " statistical package allowing the execution of R functions from Python and " @@ -155,11 +155,11 @@ msgid "" " bindings." msgstr "" -#: ../../scenarios/scientific.rst:103 +#: ..\..\scenarios\scientific.rst:103 msgid "PsychoPy" msgstr "" -#: ../../scenarios/scientific.rst:105 +#: ..\..\scenarios\scientific.rst:105 msgid "" "`PsychoPy `_ is a library for cognitive scientists" " allowing the creation of cognitive psychology and neuroscience experiments." @@ -167,11 +167,11 @@ msgid "" "design and data collection." msgstr "" -#: ../../scenarios/scientific.rst:112 +#: ..\..\scenarios\scientific.rst:112 msgid "Resources" msgstr "" -#: ../../scenarios/scientific.rst:114 +#: ..\..\scenarios\scientific.rst:114 msgid "" "Installation of scientific Python packages can be troublesome, as many of " "these packages are implemented as Python C extensions which need to be " @@ -180,11 +180,11 @@ msgid "" "scientific Python packages." msgstr "" -#: ../../scenarios/scientific.rst:121 +#: ..\..\scenarios\scientific.rst:121 msgid "Unofficial Windows Binaries for Python Extension Packages" msgstr "" -#: ../../scenarios/scientific.rst:123 +#: ..\..\scenarios\scientific.rst:123 msgid "" "Many people who do scientific computing are on Windows, yet many of the " "scientific computing packages are notoriously difficult to build and install" @@ -195,11 +195,11 @@ msgid "" "If you're on Windows, you may want to check it out." msgstr "" -#: ../../scenarios/scientific.rst:131 +#: ..\..\scenarios\scientific.rst:131 msgid "Anaconda" msgstr "" -#: ../../scenarios/scientific.rst:133 +#: ..\..\scenarios\scientific.rst:133 msgid "" "`Continuum Analytics `_ offers the `Anaconda Python " "Distribution `_ which includes " @@ -209,11 +209,11 @@ msgid "" "available for academics and researchers." msgstr "" -#: ../../scenarios/scientific.rst:141 +#: ..\..\scenarios\scientific.rst:141 msgid "Canopy" msgstr "" -#: ../../scenarios/scientific.rst:143 +#: ..\..\scenarios\scientific.rst:143 msgid "" "`Canopy `_ is another scientific" " Python distribution, produced by `Enthought `_." diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po index 7a72cf258..5b65fea00 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/scrape.rst:2 +#: ..\..\scenarios\scrape.rst:2 msgid "HTML Scraping" msgstr "" -#: ../../scenarios/scrape.rst:5 +#: ..\..\scenarios\scrape.rst:5 msgid "Web Scraping" msgstr "" -#: ../../scenarios/scrape.rst:7 +#: ..\..\scenarios\scrape.rst:7 msgid "" "Web sites are written using HTML, which means that each web page is a " "structured document. Sometimes it would be great to obtain some data from " @@ -27,7 +27,7 @@ msgid "" "provide their data in comfortable formats such as ``csv`` or ``json``." msgstr "" -#: ../../scenarios/scrape.rst:12 +#: ..\..\scenarios\scrape.rst:12 msgid "" "This is where web scraping comes in. Web scraping is the practice of using a" " computer program to sift through a web page and gather the data that you " @@ -35,11 +35,11 @@ msgid "" "structure of the data." msgstr "" -#: ../../scenarios/scrape.rst:18 +#: ..\..\scenarios\scrape.rst:18 msgid "lxml and Requests" msgstr "" -#: ../../scenarios/scrape.rst:20 +#: ..\..\scenarios\scrape.rst:20 msgid "" "`lxml `_ is a pretty extensive library written for parsing " "XML and HTML documents very quickly, even handling messed up tags in the " @@ -49,31 +49,31 @@ msgid "" "both using ``pip install lxml`` and ``pip install requests``." msgstr "" -#: ../../scenarios/scrape.rst:27 +#: ..\..\scenarios\scrape.rst:27 msgid "Let's start with the imports:" msgstr "" -#: ../../scenarios/scrape.rst:34 +#: ..\..\scenarios\scrape.rst:34 msgid "" "Next we will use ``requests.get`` to retrieve the web page with our data, " "parse it using the ``html`` module and save the results in ``tree``:" msgstr "" -#: ../../scenarios/scrape.rst:42 +#: ..\..\scenarios\scrape.rst:42 msgid "" "``tree`` now contains the whole HTML file in a nice tree structure which we " "can go over two different ways: XPath and CSSSelect. In this example, we " "will focus on the former." msgstr "" -#: ../../scenarios/scrape.rst:46 +#: ..\..\scenarios\scrape.rst:46 msgid "" "XPath is a way of locating information in structured documents such as HTML " "or XML documents. A good introduction to XPath is on `W3Schools " "`_ ." msgstr "" -#: ../../scenarios/scrape.rst:50 +#: ..\..\scenarios\scrape.rst:50 msgid "" "There are also various tools for obtaining the XPath of elements such as " "FireBug for Firefox or the Chrome Inspector. If you're using Chrome, you can" @@ -81,24 +81,24 @@ msgid "" " click again and choose 'Copy XPath'." msgstr "" -#: ../../scenarios/scrape.rst:55 +#: ..\..\scenarios\scrape.rst:55 msgid "" "After a quick analysis, we see that in our page the data is contained in two" " elements - one is a div with title 'buyer-name' and the other is a span " "with class 'item-price':" msgstr "" -#: ../../scenarios/scrape.rst:64 +#: ..\..\scenarios\scrape.rst:64 msgid "" "Knowing this we can create the correct XPath query and use the lxml " "``xpath`` function like this:" msgstr "" -#: ../../scenarios/scrape.rst:74 +#: ..\..\scenarios\scrape.rst:74 msgid "Let's see what we got exactly:" msgstr "" -#: ../../scenarios/scrape.rst:94 +#: ..\..\scenarios\scrape.rst:94 msgid "" "Congratulations! We have successfully scraped all the data we wanted from a " "web page using lxml and Requests. We have it stored in memory as two lists. " @@ -106,7 +106,7 @@ msgid "" "Python or we can save it to a file and share it with the world." msgstr "" -#: ../../scenarios/scrape.rst:99 +#: ..\..\scenarios\scrape.rst:99 msgid "" "Some more cool ideas to think about are modifying this script to iterate " "through the rest of the pages of this example dataset, or rewriting this " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po index 1dcfbe2a8..20ea9a865 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po @@ -11,32 +11,32 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/speed.rst:2 +#: ..\..\scenarios\speed.rst:2 msgid "Speed" msgstr "" -#: ../../scenarios/speed.rst:4 +#: ..\..\scenarios\speed.rst:4 msgid "" "CPython, the most commonly used implementation of Python, is slow for CPU " "bound tasks. `PyPy`_ is fast." msgstr "" -#: ../../scenarios/speed.rst:7 +#: ..\..\scenarios\speed.rst:7 msgid "" "Using a slightly modified version of `David Beazleys`_ CPU bound test code " "(added loop for multiple tests), you can see the difference between CPython " "and PyPy's processing." msgstr "" -#: ../../scenarios/speed.rst:37 +#: ..\..\scenarios\speed.rst:37 msgid "Context" msgstr "" -#: ../../scenarios/speed.rst:41 ../../scenarios/speed.rst:59 +#: ..\..\scenarios\speed.rst:41 ..\..\scenarios\speed.rst:59 msgid "The GIL" msgstr "" -#: ../../scenarios/speed.rst:43 +#: ..\..\scenarios\speed.rst:43 msgid "" "`The GIL`_ (Global Interpreter Lock) is how Python allows multiple threads " "to operate at the same time. Python's memory management isn't entirely " @@ -44,7 +44,7 @@ msgid "" " the same Python code at once." msgstr "" -#: ../../scenarios/speed.rst:48 +#: ..\..\scenarios\speed.rst:48 msgid "" "David Beazley has a great `guide`_ on how the GIL operates. He also covers " "the `new GIL`_ in Python 3.2. His results show that maximizing performance " @@ -53,21 +53,21 @@ msgid "" "application bottlenecks are." msgstr "" -#: ../../scenarios/speed.rst:55 ../../scenarios/speed.rst:65 +#: ..\..\scenarios\speed.rst:55 ..\..\scenarios\speed.rst:65 msgid "C Extensions" msgstr "" -#: ../../scenarios/speed.rst:61 +#: ..\..\scenarios\speed.rst:61 msgid "" "`Special care`_ must be taken when writing C extensions to make sure you " "register your threads with the interpreter." msgstr "" -#: ../../scenarios/speed.rst:69 +#: ..\..\scenarios\speed.rst:69 msgid "Cython" msgstr "" -#: ../../scenarios/speed.rst:71 +#: ..\..\scenarios\speed.rst:71 msgid "" "`Cython `_ implements a superset of the Python language " "with which you are able to write C and C++ modules for Python. Cython also " @@ -75,24 +75,24 @@ msgid "" "you to take advantage of Python's strong typing of variables and operations." msgstr "" -#: ../../scenarios/speed.rst:76 +#: ..\..\scenarios\speed.rst:76 msgid "Here's an example of strong typing with Cython:" msgstr "" -#: ../../scenarios/speed.rst:103 +#: ..\..\scenarios\speed.rst:103 msgid "" "This implementation of an algorithm to find prime numbers has some " "additional keywords compared to the next one, which is implemented in pure " "Python:" msgstr "" -#: ../../scenarios/speed.rst:128 +#: ..\..\scenarios\speed.rst:128 msgid "" "Notice that in the Cython version you declare integers and integer arrays to" " be compiled into C types while also creating a Python list:" msgstr "" -#: ../../scenarios/speed.rst:151 +#: ..\..\scenarios\speed.rst:151 msgid "" "What is the difference? In the upper Cython version you can see the " "declaration of the variable types and the integer array in a similar way as " @@ -102,15 +102,15 @@ msgid "" "saved in :file:`*.py` files, Cython code is saved in :file:`*.pyx` files." msgstr "" -#: ../../scenarios/speed.rst:158 +#: ..\..\scenarios\speed.rst:158 msgid "What's the difference in speed? Let's try it!" msgstr "" -#: ../../scenarios/speed.rst:184 +#: ..\..\scenarios\speed.rst:184 msgid "These lines both need a remark:" msgstr "" -#: ../../scenarios/speed.rst:192 +#: ..\..\scenarios\speed.rst:192 msgid "" "The `pyximport` module allows you to import :file:`*.pyx` files (e.g., " ":file:`primesCy.pyx`) with the Cython-compiled version of the `primes` " @@ -123,36 +123,40 @@ msgid "" "(dual core AMD E-450 1.6 GHz), the measured values are:" msgstr "" -#: ../../scenarios/speed.rst:209 +#: ..\..\scenarios\speed.rst:209 msgid "" "And here the output of an embedded `ARM beaglebone " "`_ machine:" msgstr "" -#: ../../scenarios/speed.rst:219 +#: ..\..\scenarios\speed.rst:219 msgid "Pyrex" msgstr "" -#: ../../scenarios/speed.rst:223 +#: ..\..\scenarios\speed.rst:223 msgid "Shedskin?" msgstr "" -#: ../../scenarios/speed.rst:226 +#: ..\..\scenarios\speed.rst:226 msgid "Numba" msgstr "" -#: ../../scenarios/speed.rst:227 +#: ..\..\scenarios\speed.rst:227 msgid "Write about Numba and the autojit compiler for NumPy" msgstr "" -#: ../../scenarios/speed.rst:230 ../../scenarios/speed.rst:234 +#: ..\..\scenarios\speed.rst:230 ..\..\scenarios\speed.rst:234 msgid "Threading" msgstr "" -#: ../../scenarios/speed.rst:238 +#: ..\..\scenarios\speed.rst:238 msgid "Spawning Processes" msgstr "" -#: ../../scenarios/speed.rst:242 +#: ..\..\scenarios\speed.rst:242 msgid "Multiprocessing" msgstr "" + +#: ..\..\scenarios\speed.rst:0 +msgid "Todo" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.po b/docs/locale/ko/LC_MESSAGES/scenarios/web.po index f7f127173..bbdd50f93 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/web.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/web.po @@ -11,25 +11,25 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/web.rst:3 +#: ..\..\scenarios\web.rst:3 msgid "Web Applications" msgstr "" -#: ../../scenarios/web.rst:5 +#: ..\..\scenarios\web.rst:5 msgid "" "As a powerful scripting language adapted to both fast prototyping and bigger" " projects, Python is widely used in Web applications development." msgstr "" -#: ../../scenarios/web.rst:10 +#: ..\..\scenarios\web.rst:10 msgid "Context" msgstr "" -#: ../../scenarios/web.rst:14 +#: ..\..\scenarios\web.rst:14 msgid "WSGI" msgstr "" -#: ../../scenarios/web.rst:16 +#: ..\..\scenarios\web.rst:16 msgid "" "The Web Server Gateway Interface (or \"WSGI\" for short) is a standard " "interface between web servers and Python web application frameworks. By " @@ -39,11 +39,11 @@ msgid "" "WSGI is documented in :pep:`3333`." msgstr "" -#: ../../scenarios/web.rst:25 +#: ..\..\scenarios\web.rst:25 msgid "Frameworks" msgstr "" -#: ../../scenarios/web.rst:27 +#: ..\..\scenarios\web.rst:27 msgid "" "Broadly speaking, a web framework consists of a set of libraries and a main " "handler within which you can build custom code to implement a web " @@ -51,33 +51,33 @@ msgid "" "patterns and utilities to accomplish at least the following:" msgstr "" -#: ../../scenarios/web.rst:33 +#: ..\..\scenarios\web.rst:33 msgid "" "Matches an incoming HTTP request to a particular piece of Python code to be " "invoked" msgstr "" -#: ../../scenarios/web.rst:37 +#: ..\..\scenarios\web.rst:37 msgid "Encapsulate the information received from or sent to a user's browser" msgstr "" -#: ../../scenarios/web.rst:40 +#: ..\..\scenarios\web.rst:40 msgid "" "Allows for separating Python code implementing an application's logic from " "the HTML (or other) output that it produces" msgstr "" -#: ../../scenarios/web.rst:44 +#: ..\..\scenarios\web.rst:44 msgid "" "Runs an HTTP server on development machines to enable rapid development; " "often automatically reloads server-side code when files are updated" msgstr "" -#: ../../scenarios/web.rst:49 +#: ..\..\scenarios\web.rst:49 msgid "Django" msgstr "" -#: ../../scenarios/web.rst:51 +#: ..\..\scenarios\web.rst:51 msgid "" "`Django `_ is a \"batteries included\" web " "application framework. By providing many utilities and patterns out of the " @@ -86,24 +86,24 @@ msgid "" " it." msgstr "" -#: ../../scenarios/web.rst:57 +#: ..\..\scenarios\web.rst:57 msgid "" "Django has a large and active community, and many pre-built `re-usable " "modules `_ that can be incorporated into a new " "project as-is, or customized to fit your needs." msgstr "" -#: ../../scenarios/web.rst:61 +#: ..\..\scenarios\web.rst:61 msgid "" "There are annual Django conferences `in the United States " "`_ and `in Europe `_." msgstr "" -#: ../../scenarios/web.rst:66 +#: ..\..\scenarios\web.rst:66 msgid "Flask" msgstr "" -#: ../../scenarios/web.rst:68 +#: ..\..\scenarios\web.rst:68 msgid "" "`Flask `_ is a \"microframework\" for Python. " "Rather than aiming to provide everything you could possibly need, Flask " @@ -115,17 +115,17 @@ msgid "" "`_ may already exist to suit your needs." msgstr "" -#: ../../scenarios/web.rst:77 +#: ..\..\scenarios\web.rst:77 msgid "" "**Support** for flask can best be found in its mailing list. Just shoot an " "email to flask@librelist.com and reply to the confirmation email." msgstr "" -#: ../../scenarios/web.rst:82 +#: ..\..\scenarios\web.rst:82 msgid "Werkzeug" msgstr "" -#: ../../scenarios/web.rst:84 +#: ..\..\scenarios\web.rst:84 msgid "" "`Werkzeug `_ is not actually a real framework, " "but rather a very powerful set of tools for building web applications. It " @@ -134,17 +134,17 @@ msgid "" "for their application that is not commonly found in other web frameworks." msgstr "" -#: ../../scenarios/web.rst:90 +#: ..\..\scenarios\web.rst:90 msgid "" "Support can be found on its `mailing list " "`_." msgstr "" -#: ../../scenarios/web.rst:94 +#: ..\..\scenarios\web.rst:94 msgid "Tornado" msgstr "" -#: ../../scenarios/web.rst:95 +#: ..\..\scenarios\web.rst:95 msgid "" "`Tornado `_ is a scalable, non-blocking web " "server and web application framework with a relative simple usage. Tornado " @@ -152,17 +152,17 @@ msgid "" "`friendfeed `_ , a real time chat and blog system." msgstr "" -#: ../../scenarios/web.rst:99 +#: ..\..\scenarios\web.rst:99 msgid "" "In the Jinja2 template engine example it is used to serve the rendered " "pages." msgstr "" -#: ../../scenarios/web.rst:103 +#: ..\..\scenarios\web.rst:103 msgid "Pyramid" msgstr "" -#: ../../scenarios/web.rst:105 +#: ..\..\scenarios\web.rst:105 msgid "" "`Pyramid `_ lies somewhere between a big " "framework like Django and the microframeworks: It comes with a lot of " @@ -176,21 +176,21 @@ msgid "" "running web application in the browser." msgstr "" -#: ../../scenarios/web.rst:115 +#: ..\..\scenarios\web.rst:115 msgid "" "**Support** can also be found in the `documentation " "`__." msgstr "" -#: ../../scenarios/web.rst:120 +#: ..\..\scenarios\web.rst:120 msgid "Web Servers" msgstr "" -#: ../../scenarios/web.rst:125 +#: ..\..\scenarios\web.rst:125 msgid "Nginx" msgstr "" -#: ../../scenarios/web.rst:127 +#: ..\..\scenarios\web.rst:127 msgid "" "`Nginx `_ (pronounced \"engine-x\") is a web server and " "reverse-proxy for HTTP, SMTP and other protocols. It is known for its high " @@ -200,21 +200,21 @@ msgid "" "high-load websites, Nginx is gradually becoming quite popular." msgstr "" -#: ../../scenarios/web.rst:138 +#: ..\..\scenarios\web.rst:138 msgid "WSGI Servers" msgstr "" -#: ../../scenarios/web.rst:140 +#: ..\..\scenarios\web.rst:140 msgid "" "Stand-alone WSGI servers typically use less resources than traditional web " "servers and provide top performance [3]_." msgstr "" -#: ../../scenarios/web.rst:146 +#: ..\..\scenarios\web.rst:146 msgid "Gunicorn" msgstr "" -#: ../../scenarios/web.rst:148 +#: ..\..\scenarios\web.rst:148 msgid "" "`Gunicorn `_ (Green Unicorn) is a WSGI server used to " "serve Python applications. It is a Python interpretation of the Ruby " @@ -226,11 +226,11 @@ msgid "" "`_." msgstr "" -#: ../../scenarios/web.rst:160 +#: ..\..\scenarios\web.rst:160 msgid "uWSGI" msgstr "" -#: ../../scenarios/web.rst:162 +#: ..\..\scenarios\web.rst:162 msgid "" "`uWSGI `_ is a full stack for building " "hosting services. In addition to process management, process monitoring, " @@ -245,33 +245,33 @@ msgid "" "magic variables `_." msgstr "" -#: ../../scenarios/web.rst:180 +#: ..\..\scenarios\web.rst:180 msgid "Server Best Practices" msgstr "" -#: ../../scenarios/web.rst:182 +#: ..\..\scenarios\web.rst:182 msgid "" "The majority of self hosted Python applications today are hosted with a WSGI" " server such as :ref:`Gunicorn `, either directly or behind a " "lightweight web server such as :ref:`nginx `." msgstr "" -#: ../../scenarios/web.rst:186 +#: ..\..\scenarios\web.rst:186 msgid "" "The WSGI servers serve the Python applications while the web server handles " "tasks better suited for it such as static file serving, request routing, " "DDoS protection, and basic authentication." msgstr "" -#: ../../scenarios/web.rst:191 +#: ..\..\scenarios\web.rst:191 msgid "Hosting" msgstr "" -#: ../../scenarios/web.rst:194 +#: ..\..\scenarios\web.rst:194 msgid "Platform-as-a-Service" msgstr "" -#: ../../scenarios/web.rst:196 +#: ..\..\scenarios\web.rst:196 msgid "" "Platform-as-a-Service (PaaS) is a type of cloud computing infrastructure " "which abstracts and manages infrastructure, routing, and scaling of web " @@ -280,32 +280,32 @@ msgid "" "details." msgstr "" -#: ../../scenarios/web.rst:202 +#: ..\..\scenarios\web.rst:202 msgid "" "Most PaaS services offer a command-line interface that developers can use to" " set up and interrogate configuration, and to deploy new releases of an " "application to the service." msgstr "" -#: ../../scenarios/web.rst:206 +#: ..\..\scenarios\web.rst:206 msgid "" "PaaS services and their partners offer add-on functionality which is well " "integrated into the platform, such as database hosting, email services, " "logging, scheduled and background tasks, billing and payment, etc." msgstr "" -#: ../../scenarios/web.rst:212 +#: ..\..\scenarios\web.rst:212 msgid "Heroku" msgstr "" -#: ../../scenarios/web.rst:214 +#: ..\..\scenarios\web.rst:214 msgid "" "`Heroku `_'s `Cedar stack " "`_ offers first class support " "for Python 2.7 applications." msgstr "" -#: ../../scenarios/web.rst:218 +#: ..\..\scenarios\web.rst:218 msgid "" "Heroku allows you to run as many Python web applications as you like, 24/7 " "and free of charge. Heroku is best described as a horizontal scaling " @@ -313,7 +313,7 @@ msgid "" "run on more than one Dyno (abstracted servers) at a time." msgstr "" -#: ../../scenarios/web.rst:223 +#: ..\..\scenarios\web.rst:223 msgid "" "Heroku maintains `articles " "`_ on using Python with " @@ -322,11 +322,11 @@ msgid "" " to set up your first application." msgstr "" -#: ../../scenarios/web.rst:230 +#: ..\..\scenarios\web.rst:230 msgid "DotCloud" msgstr "" -#: ../../scenarios/web.rst:232 +#: ..\..\scenarios\web.rst:232 msgid "" "`DotCloud `_ supports WSGI applications and " "background/worker tasks natively on their platform. Web applications run " @@ -334,31 +334,31 @@ msgid "" "ref>`, and allow custom configuration of both for advanced users." msgstr "" -#: ../../scenarios/web.rst:237 +#: ..\..\scenarios\web.rst:237 msgid "" "DotCloud uses a custom command-line API client which can work with " "applications managed in git repositories or any other version control " "system." msgstr "" -#: ../../scenarios/web.rst:241 +#: ..\..\scenarios\web.rst:241 msgid "" "DotCloud has a free plan with limited database size, and without extra " "services (caching…)." msgstr "" -#: ../../scenarios/web.rst:244 +#: ..\..\scenarios\web.rst:244 msgid "" "See the `DotCloud documentation on Python " "`_ for more information and help " "getting started." msgstr "" -#: ../../scenarios/web.rst:250 +#: ..\..\scenarios\web.rst:250 msgid "Gondor" msgstr "" -#: ../../scenarios/web.rst:252 +#: ..\..\scenarios\web.rst:252 msgid "" "`Gondor `_ is a PaaS specialized for deploying Django " "and Pinax applications. Gondor recommends Django version 1.6 and supports " @@ -367,17 +367,17 @@ msgid "" "specific configuration information." msgstr "" -#: ../../scenarios/web.rst:257 +#: ..\..\scenarios\web.rst:257 msgid "" "Gondor has a guide on deploying `Django projects " "`_." msgstr "" -#: ../../scenarios/web.rst:261 +#: ..\..\scenarios\web.rst:261 msgid "Templating" msgstr "" -#: ../../scenarios/web.rst:263 +#: ..\..\scenarios\web.rst:263 msgid "" "Most WSGI applications are responding to HTTP requests to serve content in " "HTML or other markup languages. Instead of generating directly textual " @@ -389,19 +389,19 @@ msgid "" "application." msgstr "" -#: ../../scenarios/web.rst:273 +#: ..\..\scenarios\web.rst:273 msgid "" "As template files are sometimes written by designers or front-end " "developers, it can be difficult to handle increasing complexity." msgstr "" -#: ../../scenarios/web.rst:277 +#: ..\..\scenarios\web.rst:277 msgid "" "Some general good practices apply to the part of the application passing " "dynamic content to the template engine, and to the templates themselves." msgstr "" -#: ../../scenarios/web.rst:281 +#: ..\..\scenarios\web.rst:281 msgid "" "Template files should be passed only the dynamic content that is needed for " "rendering the template. Avoid the temptation to pass additional content " @@ -409,7 +409,7 @@ msgid "" " to remove a likely unused variable later." msgstr "" -#: ../../scenarios/web.rst:287 +#: ..\..\scenarios\web.rst:287 msgid "" "Many template engines allow for complex statements or assignments in the " "template itself, and many allow some Python code to be evaluated in the " @@ -417,18 +417,18 @@ msgid "" " and often make it harder to find bugs." msgstr "" -#: ../../scenarios/web.rst:293 +#: ..\..\scenarios\web.rst:293 msgid "" "It is often necessary to mix JavaScript templates with HTML templates. A " "sane approach to this design is to isolate the parts where the HTML template" " passes some variable content to the JavaScript code." msgstr "" -#: ../../scenarios/web.rst:301 +#: ..\..\scenarios\web.rst:301 msgid "Jinja2" msgstr "" -#: ../../scenarios/web.rst:302 +#: ..\..\scenarios\web.rst:302 msgid "" "`Jinja2 `_ is a template engine which is similar to" " the Django template system with some extra features. It is a text-based " @@ -438,48 +438,64 @@ msgid "" "Jinja2 is released under the BSD license." msgstr "" -#: ../../scenarios/web.rst:309 +#: ..\..\scenarios\web.rst:309 msgid "Here some important html tags in Jinja2:" msgstr "" -#: ../../scenarios/web.rst:330 +#: ..\..\scenarios\web.rst:330 msgid "" "The next listings is an example of a web site in combination with the " "tornado web server. Tornado is not very complicate to use." msgstr "" -#: ../../scenarios/web.rst:371 +#: ..\..\scenarios\web.rst:371 msgid "" "The :file:`base.html` file can be used as base for all site pages which are " "for example implemented in the content block." msgstr "" -#: ../../scenarios/web.rst:396 +#: ..\..\scenarios\web.rst:396 msgid "" "The next listing is our site page (:file:`site.html`) loaded in the Python " "app which extends :file:`base.html`. The content block is automatically set " "into the corresponding block in the :file:`base.html` page." msgstr "" -#: ../../scenarios/web.rst:419 +#: ..\..\scenarios\web.rst:419 msgid "References" msgstr "" -#: ../../scenarios/web.rst:420 +#: ..\..\scenarios\web.rst:420 msgid "" "`The mod_python project is now officially dead " "`_" msgstr "" -#: ../../scenarios/web.rst:421 +#: ..\..\scenarios\web.rst:421 msgid "" "`mod_wsgi vs mod_python " "`_" msgstr "" -#: ../../scenarios/web.rst:422 +#: ..\..\scenarios\web.rst:422 msgid "" "`Benchmark of Python WSGI Servers `_" msgstr "" + +#: ..\..\scenarios\web.rst:34 +msgid "URL Routing" +msgstr "" + +#: ..\..\scenarios\web.rst:37 +msgid "Request and Response Objects" +msgstr "" + +#: ..\..\scenarios\web.rst:41 +msgid "Template Engine" +msgstr "" + +#: ..\..\scenarios\web.rst:46 +msgid "Development Web Server" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.po b/docs/locale/ko/LC_MESSAGES/scenarios/xml.po index 783757b7b..05eb8f633 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/xml.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/xml.po @@ -11,60 +11,60 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../scenarios/xml.rst:2 +#: ..\..\scenarios\xml.rst:2 msgid "XML parsing" msgstr "" -#: ../../scenarios/xml.rst:5 +#: ..\..\scenarios\xml.rst:5 msgid "untangle" msgstr "" -#: ../../scenarios/xml.rst:7 +#: ..\..\scenarios\xml.rst:7 msgid "" "`untangle `_ is a simple library which " "takes an XML document and returns a Python object which mirrors the nodes " "and attributes in its structure." msgstr "" -#: ../../scenarios/xml.rst:11 +#: ..\..\scenarios\xml.rst:11 msgid "For example, an XML file like this:" msgstr "" -#: ../../scenarios/xml.rst:20 +#: ..\..\scenarios\xml.rst:20 msgid "can be loaded like this:" msgstr "" -#: ../../scenarios/xml.rst:27 +#: ..\..\scenarios\xml.rst:27 msgid "and then you can get the child elements name like this:" msgstr "" -#: ../../scenarios/xml.rst:33 +#: ..\..\scenarios\xml.rst:33 msgid "untangle also supports loading XML from a string or an URL." msgstr "" -#: ../../scenarios/xml.rst:36 +#: ..\..\scenarios\xml.rst:36 msgid "xmltodict" msgstr "" -#: ../../scenarios/xml.rst:38 +#: ..\..\scenarios\xml.rst:38 msgid "" "`xmltodict `_ is another simple " "library that aims at making XML feel like working with JSON." msgstr "" -#: ../../scenarios/xml.rst:41 +#: ..\..\scenarios\xml.rst:41 msgid "An XML file like this:" msgstr "" -#: ../../scenarios/xml.rst:55 +#: ..\..\scenarios\xml.rst:55 msgid "can be loaded into a Python dict like this:" msgstr "" -#: ../../scenarios/xml.rst:64 +#: ..\..\scenarios\xml.rst:64 msgid "and then you can access elements, attributes and values like this:" msgstr "" -#: ../../scenarios/xml.rst:73 +#: ..\..\scenarios\xml.rst:73 msgid "" "xmltodict also lets you roundtrip back to XML with the unparse function, has" " a streaming mode suitable for handling files that don't fit in memory and " diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po index 3a9ccb4ed..c2509370a 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po @@ -11,145 +11,145 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../shipping/freezing.rst:2 +#: ..\..\shipping\freezing.rst:2 msgid "Freezing Your Code" msgstr "" -#: ../../shipping/freezing.rst:4 +#: ..\..\shipping\freezing.rst:4 msgid "" "An alternative to shipping your code is freezing it — shipping it as an " "executable with a bundled Python interpreter." msgstr "" -#: ../../shipping/freezing.rst:7 +#: ..\..\shipping\freezing.rst:7 msgid "Many applications you use every day do this:" msgstr "" -#: ../../shipping/freezing.rst:9 +#: ..\..\shipping\freezing.rst:9 msgid "Dropbox" msgstr "" -#: ../../shipping/freezing.rst:10 +#: ..\..\shipping\freezing.rst:10 msgid "BitTorrent" msgstr "" -#: ../../shipping/freezing.rst:11 +#: ..\..\shipping\freezing.rst:11 msgid "..." msgstr "" -#: ../../shipping/freezing.rst:13 +#: ..\..\shipping\freezing.rst:13 msgid "Fill in \"Freezing Your Code\" stub" msgstr "" -#: ../../shipping/freezing.rst:18 +#: ..\..\shipping\freezing.rst:18 msgid "Comparison" msgstr "" -#: ../../shipping/freezing.rst:20 +#: ..\..\shipping\freezing.rst:20 msgid "Solutions and platforms/features supported:" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ..\..\shipping\freezing.rst:23 msgid "Solution" msgstr "" -#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:43 +#: ..\..\shipping\freezing.rst:23 ..\..\shipping\freezing.rst:43 msgid "Windows" msgstr "" -#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:103 +#: ..\..\shipping\freezing.rst:23 ..\..\shipping\freezing.rst:103 msgid "Linux" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ..\..\shipping\freezing.rst:23 msgid "OS X" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ..\..\shipping\freezing.rst:23 msgid "Python 3" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ..\..\shipping\freezing.rst:23 msgid "License" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ..\..\shipping\freezing.rst:23 msgid "One-file mode" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ..\..\shipping\freezing.rst:23 msgid "Zipfile import" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ..\..\shipping\freezing.rst:23 msgid "Eggs" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ..\..\shipping\freezing.rst:23 msgid "pkg_resources support" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:46 -#: ../../shipping/freezing.rst:107 +#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:46 +#: ..\..\shipping\freezing.rst:107 msgid "bbFreeze" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:25 +#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:25 +#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:25 +#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:26 +#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:26 +#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:27 +#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:27 +#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:28 +#: ..\..\shipping\freezing.rst:28 ..\..\shipping\freezing.rst:28 +#: ..\..\shipping\freezing.rst:28 ..\..\shipping\freezing.rst:28 +#: ..\..\shipping\freezing.rst:28 ..\..\shipping\freezing.rst:29 +#: ..\..\shipping\freezing.rst:29 ..\..\shipping\freezing.rst:29 +#: ..\..\shipping\freezing.rst:29 ..\..\shipping\freezing.rst:29 msgid "yes" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:25 +#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:26 +#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:26 +#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:27 +#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:28 +#: ..\..\shipping\freezing.rst:28 ..\..\shipping\freezing.rst:29 +#: ..\..\shipping\freezing.rst:29 ..\..\shipping\freezing.rst:29 msgid "no" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:29 +#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:26 +#: ..\..\shipping\freezing.rst:29 msgid "MIT" msgstr "" -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:53 +#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:53 msgid "py2exe" msgstr "" -#: ../../shipping/freezing.rst:27 +#: ..\..\shipping\freezing.rst:27 msgid "pyInstaller" msgstr "" -#: ../../shipping/freezing.rst:27 +#: ..\..\shipping\freezing.rst:27 msgid "GPL" msgstr "" -#: ../../shipping/freezing.rst:28 +#: ..\..\shipping\freezing.rst:28 msgid "cx_Freeze" msgstr "" -#: ../../shipping/freezing.rst:28 +#: ..\..\shipping\freezing.rst:28 msgid "PSF" msgstr "" -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:96 +#: ..\..\shipping\freezing.rst:29 ..\..\shipping\freezing.rst:96 msgid "py2app" msgstr "" -#: ../../shipping/freezing.rst:33 +#: ..\..\shipping\freezing.rst:33 msgid "" "Freezing Python code on Linux into a Windows executable was only once " "supported in PyInstaller `and later dropped. " @@ -157,54 +157,54 @@ msgid "" "on-linux-into-a-windows-executable#comment11890276_2951046>`_." msgstr "" -#: ../../shipping/freezing.rst:38 +#: ..\..\shipping\freezing.rst:38 msgid "" "All solutions need MS Visual C++ dll to be installed on target machine, " "except py2app. Only Pyinstaller makes self-executable exe that bundles the " "dll when passing :option:`--onefile` to :file:`Configure.py`." msgstr "" -#: ../../shipping/freezing.rst:48 +#: ..\..\shipping\freezing.rst:48 msgid "" "Prerequisite is to install :ref:`Python, Setuptools and pywin32 dependency " "on Windows `." msgstr "" -#: ../../shipping/freezing.rst:50 +#: ..\..\shipping\freezing.rst:50 msgid "Write steps for most basic .exe" msgstr "" -#: ../../shipping/freezing.rst:55 +#: ..\..\shipping\freezing.rst:55 msgid "Prerequisite is to install :ref:`Python on Windows `." msgstr "" -#: ../../shipping/freezing.rst:57 +#: ..\..\shipping\freezing.rst:57 msgid "" "Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" msgstr "" -#: ../../shipping/freezing.rst:59 +#: ..\..\shipping\freezing.rst:59 msgid "" "Write :file:`setup.py` (`List of configuration options " "`_)::" msgstr "" -#: ../../shipping/freezing.rst:70 +#: ..\..\shipping\freezing.rst:70 msgid "" "(Optionally) `include icon `_" msgstr "" -#: ../../shipping/freezing.rst:72 +#: ..\..\shipping\freezing.rst:72 msgid "" "(Optionally) `one-file mode `_" msgstr "" -#: ../../shipping/freezing.rst:74 +#: ..\..\shipping\freezing.rst:74 msgid "Generate :file:`.exe` into :file:`dist` directory:" msgstr "" -#: ../../shipping/freezing.rst:80 +#: ..\..\shipping\freezing.rst:80 msgid "" "Provide the Microsoft Visual C runtime DLL. Two options: `globally install " "dll on target machine `_." msgstr "" -#: ../../shipping/freezing.rst:83 ../../shipping/freezing.rst:99 -#: ../../shipping/freezing.rst:110 +#: ..\..\shipping\freezing.rst:83 ..\..\shipping\freezing.rst:99 +#: ..\..\shipping\freezing.rst:110 msgid "PyInstaller" msgstr "" -#: ../../shipping/freezing.rst:85 +#: ..\..\shipping\freezing.rst:85 msgid "" "Prerequisite is to have installed :ref:`Python, Setuptools and pywin32 " "dependency on Windows `." msgstr "" -#: ../../shipping/freezing.rst:87 +#: ..\..\shipping\freezing.rst:87 msgid "" "`Most basic tutorial `_" msgstr "" -#: ../../shipping/freezing.rst:88 +#: ..\..\shipping\freezing.rst:88 msgid "" "`Manual " "`_" msgstr "" -#: ../../shipping/freezing.rst:92 +#: ..\..\shipping\freezing.rst:92 msgid "OS X" msgstr "" + +#: ..\..\shipping\freezing.rst:0 ..\..\shipping\freezing.rst:0 +msgid "Todo" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/shipping/packaging.po b/docs/locale/ko/LC_MESSAGES/shipping/packaging.po index 6f4ba618b..dd9f10992 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/packaging.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/packaging.po @@ -11,53 +11,53 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../shipping/packaging.rst:2 +#: ..\..\shipping\packaging.rst:2 msgid "Packaging Your Code" msgstr "" -#: ../../shipping/packaging.rst:4 +#: ..\..\shipping\packaging.rst:4 msgid "Packaging your code is important." msgstr "" -#: ../../shipping/packaging.rst:6 +#: ..\..\shipping\packaging.rst:6 msgid "" "You'll need to package your code first before sharing it with other " "developers." msgstr "" -#: ../../shipping/packaging.rst:8 +#: ..\..\shipping\packaging.rst:8 msgid "" "The `Python Packaging Guide `_ provides an extensive guide on creating " "and maintaining Python packages." msgstr "" -#: ../../shipping/packaging.rst:11 +#: ..\..\shipping\packaging.rst:11 msgid "For Python Developers" msgstr "" -#: ../../shipping/packaging.rst:13 +#: ..\..\shipping\packaging.rst:13 msgid "" "If you're writing an open source Python module, `PyPI " "`_, more properly known as *The Cheeseshop*, is the " "place to host it." msgstr "" -#: ../../shipping/packaging.rst:19 +#: ..\..\shipping\packaging.rst:19 msgid "Pip vs. easy_install" msgstr "" -#: ../../shipping/packaging.rst:21 +#: ..\..\shipping\packaging.rst:21 msgid "" "Use `pip `_. More details `here " "`_" msgstr "" -#: ../../shipping/packaging.rst:25 +#: ..\..\shipping\packaging.rst:25 msgid "Personal PyPI" msgstr "" -#: ../../shipping/packaging.rst:27 +#: ..\..\shipping\packaging.rst:27 msgid "" "If you want to install packages from a source different from PyPI, (say, if " "your packages are *proprietary*), you can do it by hosting a simple http " @@ -65,32 +65,32 @@ msgid "" "be installed." msgstr "" -#: ../../shipping/packaging.rst:31 +#: ..\..\shipping\packaging.rst:31 msgid "**Showing an example is always beneficial**" msgstr "" -#: ../../shipping/packaging.rst:33 +#: ..\..\shipping\packaging.rst:33 msgid "" "Say if you are after installing a package called :file:`MyPackage.tar.gz`, " "and assuming this is your directory structure:" msgstr "" -#: ../../shipping/packaging.rst:39 +#: ..\..\shipping\packaging.rst:39 msgid "MyPackage.tar.gz" msgstr "" -#: ../../shipping/packaging.rst:41 +#: ..\..\shipping\packaging.rst:41 msgid "Go to your command prompt and type:" msgstr "" -#: ../../shipping/packaging.rst:48 +#: ..\..\shipping\packaging.rst:48 msgid "" "This runs a simple http server running on port 9000 and will list all " "packages (like **MyPackage**). Now you can install **MyPackage** using any " "Python package installer. Using Pip, you would do it like:" msgstr "" -#: ../../shipping/packaging.rst:56 +#: ..\..\shipping\packaging.rst:56 msgid "" "Having a folder with the same name as the package name is **crucial** here. " "I got fooled by that, one time. But if you feel that creating a folder " @@ -98,11 +98,11 @@ msgid "" "is *redundant*, you can still install MyPackage using:" msgstr "" -#: ../../shipping/packaging.rst:66 +#: ..\..\shipping\packaging.rst:66 msgid "pypiserver" msgstr "" -#: ../../shipping/packaging.rst:68 +#: ..\..\shipping\packaging.rst:68 msgid "" "`Pypiserver `_ is a minimal PyPI " "compatible server. It can be used to serve a set of packages to easy_install" @@ -111,118 +111,126 @@ msgid "" "found on PyPI." msgstr "" -#: ../../shipping/packaging.rst:75 +#: ..\..\shipping\packaging.rst:75 msgid "S3-Hosted PyPi" msgstr "" -#: ../../shipping/packaging.rst:77 +#: ..\..\shipping\packaging.rst:77 msgid "" "One simple option for a personal PyPi server is to use Amazon S3. A " "prerequisite for this is that you have an Amazon AWS account with an S3 " "bucket." msgstr "" -#: ../../shipping/packaging.rst:79 +#: ..\..\shipping\packaging.rst:79 msgid "**Install all your requirements from PyPi or another source**" msgstr "" -#: ../../shipping/packaging.rst:80 +#: ..\..\shipping\packaging.rst:80 msgid "**Install pip2pi**" msgstr "" -#: ../../shipping/packaging.rst:82 +#: ..\..\shipping\packaging.rst:82 msgid ":code:`pip install git+https://github.com/wolever/pip2pi.git`" msgstr "" -#: ../../shipping/packaging.rst:84 +#: ..\..\shipping\packaging.rst:84 msgid "**Follow pip2pi README for pip2tgz and dir2pi commands**" msgstr "" -#: ../../shipping/packaging.rst:86 +#: ..\..\shipping\packaging.rst:86 msgid "" ":code:`pip2tgz packages/ YourPackage` (or :code:`pip2tgz packages/ -r " "requirements.txt`)" msgstr "" -#: ../../shipping/packaging.rst:87 +#: ..\..\shipping\packaging.rst:87 msgid ":code:`dir2pi packages/`" msgstr "" -#: ../../shipping/packaging.rst:89 +#: ..\..\shipping\packaging.rst:89 msgid "**Upload the new files**" msgstr "" -#: ../../shipping/packaging.rst:91 +#: ..\..\shipping\packaging.rst:91 msgid "" "Use a client like Cyberduck to sync the entire :file:`packages` folder to " "your s3 bucket" msgstr "" -#: ../../shipping/packaging.rst:92 +#: ..\..\shipping\packaging.rst:92 msgid "" "Make sure you upload :code:`packages/simple/index.html` as well as all new " "files and directories" msgstr "" -#: ../../shipping/packaging.rst:94 +#: ..\..\shipping\packaging.rst:94 msgid "**Fix new file permissions**" msgstr "" -#: ../../shipping/packaging.rst:96 +#: ..\..\shipping\packaging.rst:96 msgid "" "By default, when you upload new files to the S3 bucket, they will have the " "wrong permissions set." msgstr "" -#: ../../shipping/packaging.rst:97 +#: ..\..\shipping\packaging.rst:97 msgid "" "Use the Amazon web console to set the READ permission of the files to " "EVERYONE." msgstr "" -#: ../../shipping/packaging.rst:98 +#: ..\..\shipping\packaging.rst:98 msgid "" "If you get HTTP 403 when trying to install a package, make sure you've set " "the permissions correctly." msgstr "" -#: ../../shipping/packaging.rst:100 +#: ..\..\shipping\packaging.rst:100 msgid "**All done**" msgstr "" -#: ../../shipping/packaging.rst:102 +#: ..\..\shipping\packaging.rst:102 msgid "" "You can now install your package with :code:`pip install --index-" "url=http://your-s3-bucket/packages/simple/ YourPackage`" msgstr "" -#: ../../shipping/packaging.rst:105 +#: ..\..\shipping\packaging.rst:105 msgid "For Linux Distributions" msgstr "" -#: ../../shipping/packaging.rst:107 +#: ..\..\shipping\packaging.rst:107 msgid "`Fedora `_" msgstr "" -#: ../../shipping/packaging.rst:108 +#: ..\..\shipping\packaging.rst:108 msgid "" "`Debian and Ubuntu `_" msgstr "" -#: ../../shipping/packaging.rst:109 +#: ..\..\shipping\packaging.rst:109 msgid "" "`Arch `_" msgstr "" -#: ../../shipping/packaging.rst:112 +#: ..\..\shipping\packaging.rst:112 msgid "Useful Tools" msgstr "" -#: ../../shipping/packaging.rst:114 +#: ..\..\shipping\packaging.rst:114 msgid "`fpm `_" msgstr "" -#: ../../shipping/packaging.rst:115 +#: ..\..\shipping\packaging.rst:115 msgid "`alien `_" msgstr "" + +#: ..\..\shipping\packaging.rst:39 +msgid "archive" +msgstr "" + +#: ..\..\shipping\packaging.rst:39 +msgid "MyPackage" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po index 4a22d5a0b..f17d04332 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -11,17 +11,17 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../starting/install/linux.rst:4 +#: ..\..\starting\install\linux.rst:4 msgid "Installing Python on Linux" msgstr "" -#: ../../starting/install/linux.rst:6 +#: ..\..\starting\install\linux.rst:6 msgid "" "The latest versions of Ubuntu and Fedora **come with Python 2.7 out of the " "box**." msgstr "" -#: ../../starting/install/linux.rst:8 +#: ..\..\starting\install\linux.rst:8 msgid "" "The latest versions of Redhat Enterprise (RHEL) and CentOS come with Python " "2.6. Some older versions of RHEL and CentOS come with Python 2.4 which is " @@ -32,7 +32,7 @@ msgid "" "system's Python 2.4 installation." msgstr "" -#: ../../starting/install/linux.rst:18 +#: ..\..\starting\install\linux.rst:18 msgid "" "You do not need to install or configure anything else to use Python. Having " "said that, I would strongly recommend that you install the tools and " @@ -42,11 +42,11 @@ msgid "" "Python libraries." msgstr "" -#: ../../starting/install/linux.rst:25 +#: ..\..\starting\install\linux.rst:25 msgid "Setuptools & Pip" msgstr "" -#: ../../starting/install/linux.rst:27 +#: ..\..\starting\install\linux.rst:27 msgid "" "The most crucial third-party Python software of all is Setuptools, which " "extends the packaging and installation facilities provided by the distutils " @@ -56,29 +56,29 @@ msgid "" " your own Python software with very little work." msgstr "" -#: ../../starting/install/linux.rst:34 +#: ..\..\starting\install\linux.rst:34 msgid "" "To obtain the latest version of Setuptools for Linux, refer to the " "documentation available here: `unix-setuptools " "`_" msgstr "" -#: ../../starting/install/linux.rst:37 +#: ..\..\starting\install\linux.rst:37 msgid "" "The new ``easy_install`` command you have available is considered by many to" " be deprecated, so we will install its replacement: **pip**. Pip allows for " "uninstallation of packages, and is actively maintained, unlike easy_install." msgstr "" -#: ../../starting/install/linux.rst:41 +#: ..\..\starting\install\linux.rst:41 msgid "To install pip, simply open a command prompt and run" msgstr "" -#: ../../starting/install/linux.rst:49 +#: ..\..\starting\install\linux.rst:49 msgid "Virtual Environments" msgstr "" -#: ../../starting/install/linux.rst:51 +#: ..\..\starting\install\linux.rst:51 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -87,20 +87,20 @@ msgid "" "directory clean and manageable." msgstr "" -#: ../../starting/install/linux.rst:56 +#: ..\..\starting\install\linux.rst:56 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" -#: ../../starting/install/linux.rst:59 +#: ..\..\starting\install\linux.rst:59 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" -#: ../../starting/install/linux.rst:64 +#: ..\..\starting\install\linux.rst:64 msgid "" "This page is a remixed version of `another guide " "`_, which is" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po index 63556a174..1b86f4df3 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po @@ -11,17 +11,17 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../starting/install/osx.rst:4 +#: ..\..\starting\install\osx.rst:4 msgid "Installing Python on Mac OS X" msgstr "" -#: ../../starting/install/osx.rst:6 +#: ..\..\starting\install\osx.rst:6 msgid "" "The latest version of Mac OS X, Mavericks, **comes with Python 2.7 out of " "the box**." msgstr "" -#: ../../starting/install/osx.rst:8 +#: ..\..\starting\install\osx.rst:8 msgid "" "You do not need to install or configure anything else to use Python. Having " "said that, I would strongly recommend that you install the tools and " @@ -31,7 +31,7 @@ msgid "" "Python libraries." msgstr "" -#: ../../starting/install/osx.rst:14 +#: ..\..\starting\install\osx.rst:14 msgid "" "The version of Python that ships with OS X is great for learning. Yet, it's " "not good for development. The version shipped with OS X may be out of date " @@ -39,15 +39,15 @@ msgid "" "/mac-osx/>`_, which is considered the stable production version." msgstr "" -#: ../../starting/install/osx.rst:20 +#: ..\..\starting\install\osx.rst:20 msgid "Doing it Right" msgstr "" -#: ../../starting/install/osx.rst:22 +#: ..\..\starting\install\osx.rst:22 msgid "Let's install a real version of Python." msgstr "" -#: ../../starting/install/osx.rst:24 +#: ..\..\starting\install\osx.rst:24 msgid "" "Before installing Python, you'll need to install GCC. GCC can be obtained by" " downloading `XCode `_, the smaller " @@ -56,26 +56,26 @@ msgid "" "`_ package." msgstr "" -#: ../../starting/install/osx.rst:31 +#: ..\..\starting\install\osx.rst:31 msgid "" "If you already have XCode installed, do not install OSX-GCC-Installer. In " "combination, the software can cause issues that are difficult to diagnose." msgstr "" -#: ../../starting/install/osx.rst:35 +#: ..\..\starting\install\osx.rst:35 msgid "" "While OS X comes with a large number of UNIX utilities, those familiar with " "Linux systems will notice one key component missing: a decent package " "manager. `Homebrew `_ fills this void." msgstr "" -#: ../../starting/install/osx.rst:39 +#: ..\..\starting\install\osx.rst:39 msgid "" "To `install Homebrew " "`_, simply run" msgstr "" -#: ../../starting/install/osx.rst:46 +#: ..\..\starting\install\osx.rst:46 msgid "" "The script will explain what changes it will make and prompt you before the " "installation begins. Once you've installed Homebrew, insert the Homebrew " @@ -84,23 +84,23 @@ msgid "" "file" msgstr "" -#: ../../starting/install/osx.rst:56 +#: ..\..\starting\install\osx.rst:56 msgid "Now, we can install Python 2.7:" msgstr "" -#: ../../starting/install/osx.rst:62 +#: ..\..\starting\install\osx.rst:62 msgid "This will take a minute or two." msgstr "" -#: ../../starting/install/osx.rst:66 +#: ..\..\starting\install\osx.rst:66 msgid "Setuptools & Pip" msgstr "" -#: ../../starting/install/osx.rst:68 +#: ..\..\starting\install\osx.rst:68 msgid "Homebrew installs Setuptools and ``pip`` for you." msgstr "" -#: ../../starting/install/osx.rst:70 +#: ..\..\starting\install\osx.rst:70 msgid "" "Setuptools enables you to download and install any compliant Python software" " over a network (usually the Internet) with a single command " @@ -108,7 +108,7 @@ msgid "" "capability to your own Python software with very little work." msgstr "" -#: ../../starting/install/osx.rst:75 +#: ..\..\starting\install\osx.rst:75 msgid "" "``pip`` is a tool for easily installing and managing Python packages, that " "is recommended over ``easy_install``. It is superior to ``easy_install`` in " @@ -116,11 +116,11 @@ msgid "" "install>`_, and is actively maintained." msgstr "" -#: ../../starting/install/osx.rst:81 +#: ..\..\starting\install\osx.rst:81 msgid "Virtual Environments" msgstr "" -#: ../../starting/install/osx.rst:83 +#: ..\..\starting\install\osx.rst:83 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -129,20 +129,20 @@ msgid "" "directory clean and manageable." msgstr "" -#: ../../starting/install/osx.rst:88 +#: ..\..\starting\install\osx.rst:88 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" -#: ../../starting/install/osx.rst:91 +#: ..\..\starting\install\osx.rst:91 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" -#: ../../starting/install/osx.rst:96 +#: ..\..\starting\install\osx.rst:96 msgid "" "This page is a remixed version of `another guide " "`_, which is" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.po b/docs/locale/ko/LC_MESSAGES/starting/install/win.po index f34657194..e8c042a0b 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/win.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/win.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../starting/install/win.rst:4 +#: ..\..\starting\install\win.rst:4 msgid "Installing Python on Windows" msgstr "" -#: ../../starting/install/win.rst:6 +#: ..\..\starting\install\win.rst:6 msgid "" "First, download the `latest version " "`_ of Python 2.7 from " @@ -24,14 +24,14 @@ msgid "" "of the `Python.org web site `_ ." msgstr "" -#: ../../starting/install/win.rst:11 +#: ..\..\starting\install\win.rst:11 msgid "" "The Windows version is provided as an MSI package. To install it manually, " "just double-click the file. The MSI package format allows Windows " "administrators to automate installation with their standard tools." msgstr "" -#: ../../starting/install/win.rst:15 +#: ..\..\starting\install\win.rst:15 msgid "" "By design, Python installs to a directory with the version number embedded, " "e.g. Python version 2.7 will install at :file:`C:\\\\Python27\\\\`, so that " @@ -42,7 +42,7 @@ msgid "" "which copy of Python is run." msgstr "" -#: ../../starting/install/win.rst:23 +#: ..\..\starting\install\win.rst:23 msgid "" "Typing the full path name for a Python interpreter each time quickly gets " "tedious, so add the directories for your default Python version to the " @@ -50,11 +50,11 @@ msgid "" ":file:`C:\\\\Python27\\\\`, add this to your :envvar:`PATH`:" msgstr "" -#: ../../starting/install/win.rst:32 +#: ..\..\starting\install\win.rst:32 msgid "You can do this easily by running the following in ``powershell``:" msgstr "" -#: ../../starting/install/win.rst:38 +#: ..\..\starting\install\win.rst:38 msgid "" "The second (:file:`Scripts`) directory receives command files when certain " "packages are installed, so it is a very useful addition. You do not need to " @@ -65,11 +65,11 @@ msgid "" "much easier for you to use other third-party Python libraries." msgstr "" -#: ../../starting/install/win.rst:47 +#: ..\..\starting\install\win.rst:47 msgid "Setuptools + Pip" msgstr "" -#: ../../starting/install/win.rst:49 +#: ..\..\starting\install\win.rst:49 msgid "" "The most crucial third-party Python software of all is Setuptools, which " "extends the packaging and installation facilities provided by the distutils " @@ -79,14 +79,14 @@ msgid "" " your own Python software with very little work." msgstr "" -#: ../../starting/install/win.rst:56 +#: ..\..\starting\install\win.rst:56 msgid "" "To obtain the latest version of Setuptools for Windows, run the Python " "script available here: `ez_setup.py " "`_" msgstr "" -#: ../../starting/install/win.rst:60 +#: ..\..\starting\install\win.rst:60 msgid "" "You'll now have a new command available to you: **easy_install**. It is " "considered by many to be deprecated, so we will install its replacement: " @@ -94,17 +94,17 @@ msgid "" "maintained, unlike easy_install." msgstr "" -#: ../../starting/install/win.rst:65 +#: ..\..\starting\install\win.rst:65 msgid "" "To install pip, run the Python script available here: `get-pip.py " "`_" msgstr "" -#: ../../starting/install/win.rst:70 +#: ..\..\starting\install\win.rst:70 msgid "Virtual Environments" msgstr "" -#: ../../starting/install/win.rst:72 +#: ..\..\starting\install\win.rst:72 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -113,20 +113,20 @@ msgid "" "directory clean and manageable." msgstr "" -#: ../../starting/install/win.rst:77 +#: ..\..\starting\install\win.rst:77 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" -#: ../../starting/install/win.rst:80 +#: ..\..\starting\install\win.rst:80 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" -#: ../../starting/install/win.rst:85 +#: ..\..\starting\install\win.rst:85 msgid "" "This page is a remixed version of `another guide " "`_, which is" diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.mo b/docs/locale/ko/LC_MESSAGES/starting/installation.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..79444988671df3d250b7d80f4e1290ae3087d12c 100644 GIT binary patch literal 2032 zcmcgsL2nyH6kebeA_s&(;(!o(2P7oOnk3~=nNl^hp^ZqIsC5fPLh599Vh^lmRx`VH zeGA2fs1CGJV`>#A7;r&FMwnoMD@8&=9DCspaDW4ncYNl`o3R~7AjAzz-RYZco73$K_i>XnXc~U5`8o_If`=Y4!%8G;ixb)mg%%d0< z7>_TF(E_tIMf0nm#3YnN488y^BH)zz5D6F(gOK0}zRI$(q(FEn$}ye=8YpV2Vhqdp zOz;$(A_bFDgdsqVM3XQNMG*%+s7MN)4N4%XC-Qm92L+aP#1rKVpa>L__zHMd?RC^3P>0R%p(yKTmjai1QNJK zAyF2JPr*Eg5Dzjh4u~8$p>kF=35uko_KY}7qd2q*Ct;a|lUC<>CZm`Hlo#N)wauRz zD6j;1@-_t)K|c0!K#5{hT56+m=$XJmiS01yyN13r(!19<&So%rs~t|-uAOBmLMqY8 zVRGE5lR-rK4B7`-A$;(1gnMWy4#L_)0_@x`L5>tgBLl%rN`k>e8Z*3-ifBIN7^i$% zK#xNlR|H`!L!qd`t`!t%5SXa;ITDT>DU2Pl`IOQ87WE=`-gnPasc;f$2<@G*qlBr{ zRBC$S3=M^h+(ngTzWZ{VRc=P4VPbhH;~q!lW`OPq645lwOijPwPEWgsreJ0!J#!dq z+%vSm4Dzt#!rbf`cX7!*F$<@b(u?!Yy|Hw9ZeoF`$jwN?RX`#k({Mq=JbRYn<(o>l~Xu-LW9+ah1X=dlb*|Y)rD$%}|n0!@}(8ljmkn&cTs|g<}Cr37I`Q zu{ggtH*Rq{H8pWu@Cfa5Go=uPNAyzkd>9bMUo_*9=+8^%GOxIY$8|>BDwXaW_k_8| zX*j&XqKVP}{{MO{BwudmtzGE-&`lceCzWP$rvv>BeAdw)wDeXP^yQYmb*Epg^}21) z^>V-3fuzz(zG#6iH}&0`NqyT+F4ye7Q8kD9)dsGzzO|WL-2{E}Jw#3oIC@hw1^kVo&X897&K1{w7xH=0&UqpWXU2TVb)Z7Px*b$p=9 z2v;p9+cldlHf59lfzCL(A#;}Jm|HnN#i!??>F^M zyx{r#(V``hdAkGI44&0v~M+BGAjf+~if9bMhUmMsQyBZFmKLmQjP?e6}T%XK`9 z7W6Cae^a`D9Q_Zw#{HcQsCpxT~FF|n=tog0)?;8#= diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.po b/docs/locale/ko/LC_MESSAGES/starting/installation.po index d4cc483fe..e6d023277 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/installation.po +++ b/docs/locale/ko/LC_MESSAGES/starting/installation.po @@ -11,16 +11,16 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../starting/installation.rst:2 +#: ..\..\starting\installation.rst:2 msgid "Properly Installing Python" msgstr "올바른 파이썬 설치" -#: ../../starting/installation.rst:4 +#: ..\..\starting\installation.rst:4 msgid "" "There's a good chance that you already have Python on your operating system." msgstr "운좋게도 이미 파이썬이 당신의 운영체제에 설치되어 있을 수도 있다." -#: ../../starting/installation.rst:6 +#: ..\..\starting\installation.rst:6 msgid "" "If so, you do not need to install or configure anything else to use Python. " "Having said that, I would strongly recommend that you install the tools and " @@ -29,29 +29,33 @@ msgid "" "Setuptools, Pip, and Virtualenv — they make it much easier for you to use " "other third-party Python libraries." msgstr "" -"만일 그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다." -"그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서 아래에 " -"설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다." -"특히 Setuptools, Pip, Virtualenv는 반드시 설치해야 한다." -"이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." +"만일 그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에" +"이 가이드에서 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다.특히 Setuptools, Pip, Virtualenv는 " +"반드시 설치해야 한다.이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." -#: ../../starting/installation.rst:14 +#: ..\..\starting\installation.rst:14 msgid "Installation Guides" msgstr "설치 가이드" -#: ../../starting/installation.rst:17 +#: ..\..\starting\installation.rst:17 msgid "" "for development purposes, as well as setuptools, pip, and virtualenv setup." msgstr "개발을 위한 설치 뿐만 아니라 setuptools, pip, and virtualenv의 설치도 다룬다." -#: ../../starting/installation.rst:19 +#: ..\..\starting\installation.rst:19 msgid ":ref:`Mac OS X `." msgstr ":ref:`Mac OS X `." -#: ../../starting/installation.rst:20 +#: ..\..\starting\installation.rst:20 msgid ":ref:`Microsoft Windows`." msgstr ":ref:`Microsoft Windows`." -#: ../../starting/installation.rst:21 +#: ..\..\starting\installation.rst:21 msgid ":ref:`Ubuntu Linux `." msgstr ":ref:`Ubuntu Linux `." + +#: ..\..\starting\installation.rst:17 +msgid "" +"These guides go over the proper installation of :ref:`Python 2.7 `" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po index 45efe3908..d2fee9bda 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po +++ b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po @@ -11,22 +11,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../starting/pip-virtualenv.rst:4 +#: ..\..\starting\pip-virtualenv.rst:4 msgid "Further Configuration of Pip and Virtualenv" msgstr "" -#: ../../starting/pip-virtualenv.rst:7 +#: ..\..\starting\pip-virtualenv.rst:7 msgid "Requiring an active virtual environment for ``pip``" msgstr "" -#: ../../starting/pip-virtualenv.rst:9 +#: ..\..\starting\pip-virtualenv.rst:9 msgid "" "By now it should be clear that using virtual envirtonments is a great way to" " keep your development environment clean and keeping different projects' " "requirements separate." msgstr "" -#: ../../starting/pip-virtualenv.rst:13 +#: ..\..\starting\pip-virtualenv.rst:13 msgid "" "When you start working on many different projects, it can be hard to " "remember to activate the related virtual environment when you come back to a" @@ -36,14 +36,14 @@ msgid "" "global package list." msgstr "" -#: ../../starting/pip-virtualenv.rst:19 +#: ..\..\starting\pip-virtualenv.rst:19 msgid "" "In order to make sure that you install packages to your active virtual " "environment when you use ``pip install``, consider adding the following two " "lines to your :file:`~/.bashrc` file:" msgstr "" -#: ../../starting/pip-virtualenv.rst:27 +#: ..\..\starting\pip-virtualenv.rst:27 msgid "" "After saving this change and sourcing the :file:`~/.bashrc` file with " "``source ~/.bashrc``, pip will no longer let you install packages if you are" @@ -52,46 +52,46 @@ msgid "" "environment is needed to install packages." msgstr "" -#: ../../starting/pip-virtualenv.rst:37 +#: ..\..\starting\pip-virtualenv.rst:37 msgid "" "You can also do this configuration by editing your :file:`pip.conf` or " ":file:`pip.ini` file. :file:`pip.conf` is used by Unix and Mac OS X " "operating systems and it can be found at:" msgstr "" -#: ../../starting/pip-virtualenv.rst:45 +#: ..\..\starting\pip-virtualenv.rst:45 msgid "" "Similarly, the :file:`pip.ini` file is used by Windows operating systems and" " it can be found at:" msgstr "" -#: ../../starting/pip-virtualenv.rst:52 +#: ..\..\starting\pip-virtualenv.rst:52 msgid "" "If you don't have a :file:`pip.conf` or :file:`pip.ini` file at these " "locations, you can create a new file with the correct name for your " "operating system." msgstr "" -#: ../../starting/pip-virtualenv.rst:55 +#: ..\..\starting\pip-virtualenv.rst:55 msgid "" "If you already have a configuration file, just add the following line under " "the ``[global]`` settings to require an active virtual environment:" msgstr "" -#: ../../starting/pip-virtualenv.rst:62 +#: ..\..\starting\pip-virtualenv.rst:62 msgid "" "If you did not have a configuration file, you will need to create a new one " "and add the following lines to this new file:" msgstr "" -#: ../../starting/pip-virtualenv.rst:71 +#: ..\..\starting\pip-virtualenv.rst:71 msgid "" "You will of course need to install some packages globally (usually ones that" " you use across different projects consistenly) and this can be accomplished" " by adding the following to your :file:`~/.bashrc` file:" msgstr "" -#: ../../starting/pip-virtualenv.rst:81 +#: ..\..\starting\pip-virtualenv.rst:81 msgid "" "After saving the changes and sourcing your :file:`~/.bashrc` file you can " "now install packages globally by running ``gpip install``. You can change " @@ -100,11 +100,11 @@ msgid "" "pip." msgstr "" -#: ../../starting/pip-virtualenv.rst:87 +#: ..\..\starting\pip-virtualenv.rst:87 msgid "Caching packages for future use" msgstr "" -#: ../../starting/pip-virtualenv.rst:89 +#: ..\..\starting\pip-virtualenv.rst:89 msgid "" "Every developer has preferred libraries and when you are working on a lot of" " different projects, you are bound to have some overlap between the " @@ -112,7 +112,7 @@ msgid "" "library in a lot of different projects." msgstr "" -#: ../../starting/pip-virtualenv.rst:94 +#: ..\..\starting\pip-virtualenv.rst:94 msgid "" "It is surely unnecessary to re-download the same packages/libraries each " "time you start working on a new project (and in a new virtual environmen as " @@ -120,20 +120,20 @@ msgid "" " reuse already installed packages." msgstr "" -#: ../../starting/pip-virtualenv.rst:99 +#: ..\..\starting\pip-virtualenv.rst:99 msgid "" "On UNIX systems, you can add the following line to your :file:`.bashrc` or " ":file:`.bash_profile` file." msgstr "" -#: ../../starting/pip-virtualenv.rst:106 +#: ..\..\starting\pip-virtualenv.rst:106 msgid "" "You can set the path to anywhere you like (as long as you have write " "access). After adding this line, ``source`` your :file:`.bashrc` (or " ":file:`.bash_profile`) file and you will be all set." msgstr "" -#: ../../starting/pip-virtualenv.rst:110 +#: ..\..\starting\pip-virtualenv.rst:110 msgid "" "Another way of doing the same configuration is via the :file:`pip.conf` or " ":file:`pip.ini` files, depending on your system. If you are on Windows, you " @@ -141,13 +141,13 @@ msgid "" "settings:" msgstr "" -#: ../../starting/pip-virtualenv.rst:118 +#: ..\..\starting\pip-virtualenv.rst:118 msgid "" "Similarly, on UNIX systems you should simply add the following line to your " ":file:`pip.conf` file under ``[global]`` settings:" msgstr "" -#: ../../starting/pip-virtualenv.rst:125 +#: ..\..\starting\pip-virtualenv.rst:125 msgid "" "Even though you can use any path you like to store your cache, it is " "recommended that you create a new folder *in* the folder where your " diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.po b/docs/locale/ko/LC_MESSAGES/starting/which-python.po index 320f25e79..f1bc85d27 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/which-python.po +++ b/docs/locale/ko/LC_MESSAGES/starting/which-python.po @@ -11,102 +11,102 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../starting/which-python.rst:2 +#: ..\..\starting\which-python.rst:2 msgid "Picking an Interpreter" msgstr "" -#: ../../starting/which-python.rst:7 +#: ..\..\starting\which-python.rst:7 msgid "The State of Python (2 vs 3)" msgstr "" -#: ../../starting/which-python.rst:9 +#: ..\..\starting\which-python.rst:9 msgid "" "When choosing a Python interpreter, one looming question is always present: " "\"Should I choose Python 2 or Python 3\"? The answer is not as obvious as " "one might think." msgstr "" -#: ../../starting/which-python.rst:14 +#: ..\..\starting\which-python.rst:14 msgid "The basic gist of the state of things is as follows:" msgstr "" -#: ../../starting/which-python.rst:16 +#: ..\..\starting\which-python.rst:16 msgid "Python 2.7 has been the standard for a *long* time." msgstr "" -#: ../../starting/which-python.rst:17 +#: ..\..\starting\which-python.rst:17 msgid "" "Python 3 introduced major changes to the language, which many developers are" " unhappy with." msgstr "" -#: ../../starting/which-python.rst:18 +#: ..\..\starting\which-python.rst:18 msgid "Python 2.7 will receive necessary security updates for a few years." msgstr "" -#: ../../starting/which-python.rst:19 +#: ..\..\starting\which-python.rst:19 msgid "Python 3 is continually evolving, like Python 2 did in years past." msgstr "" -#: ../../starting/which-python.rst:21 +#: ..\..\starting\which-python.rst:21 msgid "So, you can now see why this is not such an easy decision." msgstr "" -#: ../../starting/which-python.rst:25 +#: ..\..\starting\which-python.rst:25 msgid "Recommendations" msgstr "" -#: ../../starting/which-python.rst:27 +#: ..\..\starting\which-python.rst:27 msgid "I'll be blunt:" msgstr "" -#: ../../starting/which-python.rst:30 +#: ..\..\starting\which-python.rst:30 msgid "**Use Python 3 if...**" msgstr "" -#: ../../starting/which-python.rst:32 +#: ..\..\starting\which-python.rst:32 msgid "You don't care." msgstr "" -#: ../../starting/which-python.rst:33 +#: ..\..\starting\which-python.rst:33 msgid "You love Python 3." msgstr "" -#: ../../starting/which-python.rst:34 +#: ..\..\starting\which-python.rst:34 msgid "You are indifferent towards 2 vs 3." msgstr "" -#: ../../starting/which-python.rst:35 +#: ..\..\starting\which-python.rst:35 msgid "You don't know which one to use." msgstr "" -#: ../../starting/which-python.rst:36 +#: ..\..\starting\which-python.rst:36 msgid "You embrace change." msgstr "" -#: ../../starting/which-python.rst:38 +#: ..\..\starting\which-python.rst:38 msgid "**Use Python 2 if...**" msgstr "" -#: ../../starting/which-python.rst:40 +#: ..\..\starting\which-python.rst:40 msgid "You love Python 2 and are saddened by the future being Python 3." msgstr "" -#: ../../starting/which-python.rst:41 +#: ..\..\starting\which-python.rst:41 msgid "" "The stability requirements of your software would be improved by a language " "and runtime that never changes." msgstr "" -#: ../../starting/which-python.rst:42 +#: ..\..\starting\which-python.rst:42 msgid "Software that you depend on requires it." msgstr "" -#: ../../starting/which-python.rst:46 +#: ..\..\starting\which-python.rst:46 msgid "So.... 3?" msgstr "" -#: ../../starting/which-python.rst:48 +#: ..\..\starting\which-python.rst:48 msgid "" "If you're choosing a Python interpreter to use, and aren't opinionated, then" " I recommend you use the newest Python 3.x, since every version brings new " @@ -114,24 +114,24 @@ msgid "" "progress." msgstr "" -#: ../../starting/which-python.rst:52 +#: ..\..\starting\which-python.rst:52 msgid "" "Given such, only use Python 2 if you have a strong reason to, such as a " "Python 2 exclusive library which has no adequate Python 3 ready alternative," " or you (like me) absolutely love and are inspired by Python 2." msgstr "" -#: ../../starting/which-python.rst:56 +#: ..\..\starting\which-python.rst:56 msgid "" "Check out `Can I Use Python 3? `_ to see if any" " software you're depending on will block your adoption of Python 3." msgstr "" -#: ../../starting/which-python.rst:59 +#: ..\..\starting\which-python.rst:59 msgid "`Further Reading `_" msgstr "" -#: ../../starting/which-python.rst:61 +#: ..\..\starting\which-python.rst:61 msgid "" "It is possible to `write code that works on Python 2.6, 2.7, and 3.3 " "`_. This " @@ -140,22 +140,22 @@ msgid "" "about." msgstr "" -#: ../../starting/which-python.rst:68 +#: ..\..\starting\which-python.rst:68 msgid "Implementations" msgstr "" -#: ../../starting/which-python.rst:70 +#: ..\..\starting\which-python.rst:70 msgid "" "When people speak of *Python* they often mean not just the language but also" " the CPython implementation. *Python* is actually a specification for a " "language that can be implemented in many different ways." msgstr "" -#: ../../starting/which-python.rst:75 +#: ..\..\starting\which-python.rst:75 msgid "CPython" msgstr "" -#: ../../starting/which-python.rst:77 +#: ..\..\starting\which-python.rst:77 msgid "" "`CPython `_ is the reference implementation of " "Python, written in C. It compiles Python code to intermediate bytecode which" @@ -163,24 +163,24 @@ msgid "" "level of compatibility with Python packages and C extension modules." msgstr "" -#: ../../starting/which-python.rst:82 +#: ..\..\starting\which-python.rst:82 msgid "" "If you are writing open-source Python code and want to reach the widest " "possible audience, targeting CPython is best. To use packages which rely on " "C extensions to function, CPython is your only implementation option." msgstr "" -#: ../../starting/which-python.rst:86 +#: ..\..\starting\which-python.rst:86 msgid "" "All versions of the Python language are implemented in C because CPython is " "the reference implementation." msgstr "" -#: ../../starting/which-python.rst:90 +#: ..\..\starting\which-python.rst:90 msgid "PyPy" msgstr "" -#: ../../starting/which-python.rst:92 +#: ..\..\starting\which-python.rst:92 msgid "" "`PyPy `_ is a Python interpreter implemented in a " "restricted statically-typed subset of the Python language called RPython. " @@ -188,30 +188,30 @@ msgid "" "ends (C, CLI, JVM)." msgstr "" -#: ../../starting/which-python.rst:96 +#: ..\..\starting\which-python.rst:96 msgid "" "PyPy aims for maximum compatibility with the reference CPython " "implementation while improving performance." msgstr "" -#: ../../starting/which-python.rst:99 +#: ..\..\starting\which-python.rst:99 msgid "" "If you are looking to increase performance of your Python code, it's worth " "giving PyPy a try. On a suite of benchmarks, it's currently `over 5 times " "faster than CPython `_." msgstr "" -#: ../../starting/which-python.rst:103 +#: ..\..\starting\which-python.rst:103 msgid "" "PyPy supports Python 2.7. PyPy3 [#pypy_ver]_, released in beta, targets " "Python 3." msgstr "" -#: ../../starting/which-python.rst:106 +#: ..\..\starting\which-python.rst:106 msgid "Jython" msgstr "" -#: ../../starting/which-python.rst:108 +#: ..\..\starting\which-python.rst:108 msgid "" "`Jython `_ is a Python implementation that compiles " "Python code to Java bytecode which is then executed by the JVM (Java Virtual" @@ -219,43 +219,43 @@ msgid "" "Python module." msgstr "" -#: ../../starting/which-python.rst:113 +#: ..\..\starting\which-python.rst:113 msgid "" "If you need to interface with an existing Java codebase or have other " "reasons to need to write Python code for the JVM, Jython is the best choice." msgstr "" -#: ../../starting/which-python.rst:116 +#: ..\..\starting\which-python.rst:116 msgid "Jython currently supports up to Python 2.5. [#jython_ver]_" msgstr "" -#: ../../starting/which-python.rst:119 +#: ..\..\starting\which-python.rst:119 msgid "IronPython" msgstr "" -#: ../../starting/which-python.rst:121 +#: ..\..\starting\which-python.rst:121 msgid "" "`IronPython `_ is an implementation of Python for " "the .NET framework. It can use both Python and .NET framework libraries, and" " can also expose Python code to other languages in the .NET framework." msgstr "" -#: ../../starting/which-python.rst:125 +#: ..\..\starting\which-python.rst:125 msgid "" "`Python Tools for Visual Studio `_ integrates " "IronPython directly into the Visual Studio development environment, making " "it an ideal choice for Windows developers." msgstr "" -#: ../../starting/which-python.rst:129 +#: ..\..\starting\which-python.rst:129 msgid "IronPython supports Python 2.7. [#iron_ver]_" msgstr "" -#: ../../starting/which-python.rst:132 +#: ..\..\starting\which-python.rst:132 msgid "PythonNet" msgstr "" -#: ../../starting/which-python.rst:134 +#: ..\..\starting\which-python.rst:134 msgid "" "`Python for .NET `_ is a package which provides" " near seamless integration of a natively installed Python installation with " @@ -264,30 +264,30 @@ msgid "" " competing with." msgstr "" -#: ../../starting/which-python.rst:140 +#: ..\..\starting\which-python.rst:140 msgid "" "In conjunction with Mono, PythonNet enables native Python installations on " "non-Windows operating systems, such as OS X and Linux, to operate within the" " .NET framework. It can be run in addition to IronPython without conflict." msgstr "" -#: ../../starting/which-python.rst:145 +#: ..\..\starting\which-python.rst:145 msgid "PythonNet supports from Python 2.3 up to Python 2.7. [#pythonnet_ver]_" msgstr "" -#: ../../starting/which-python.rst:147 +#: ..\..\starting\which-python.rst:147 msgid "http://pypy.org/compat.html" msgstr "" -#: ../../starting/which-python.rst:149 +#: ..\..\starting\which-python.rst:149 msgid "" "http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" msgstr "" -#: ../../starting/which-python.rst:151 +#: ..\..\starting\which-python.rst:151 msgid "http://ironpython.codeplex.com/releases/view/81726" msgstr "" -#: ../../starting/which-python.rst:153 +#: ..\..\starting\which-python.rst:153 msgid "http://pythonnet.github.io/readme.html" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.po b/docs/locale/ko/LC_MESSAGES/writing/documentation.po index 64768641c..4508e4e8c 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/writing/documentation.po @@ -11,22 +11,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../writing/documentation.rst:2 +#: ..\..\writing\documentation.rst:2 msgid "Documentation" msgstr "" -#: ../../writing/documentation.rst:4 +#: ..\..\writing\documentation.rst:4 msgid "" "Readability is a primary focus for Python developers, in both project and " "code documentation. Following some simple best practices can save both you " "and others a lot of time." msgstr "" -#: ../../writing/documentation.rst:9 +#: ..\..\writing\documentation.rst:9 msgid "Project Documentation" msgstr "" -#: ../../writing/documentation.rst:11 +#: ..\..\writing\documentation.rst:11 msgid "" "A :file:`README` file at the root directory should give general information " "to both users and maintainers of a project. It should be raw text or written" @@ -37,7 +37,7 @@ msgid "" " information. This file is the main entry point for readers of the code." msgstr "" -#: ../../writing/documentation.rst:19 +#: ..\..\writing\documentation.rst:19 msgid "" "An :file:`INSTALL` file is less necessary with Python. The installation " "instructions are often reduced to one command, such as ``pip install " @@ -45,65 +45,65 @@ msgid "" "file." msgstr "" -#: ../../writing/documentation.rst:24 +#: ..\..\writing\documentation.rst:24 msgid "" "A :file:`LICENSE` file should *always* be present and specify the license " "under which the software is made available to the public." msgstr "" -#: ../../writing/documentation.rst:27 +#: ..\..\writing\documentation.rst:27 msgid "" "A :file:`TODO` file or a ``TODO`` section in :file:`README` should list the " "planned development for the code." msgstr "" -#: ../../writing/documentation.rst:30 +#: ..\..\writing\documentation.rst:30 msgid "" "A :file:`CHANGELOG` file or section in :file:`README` should compile a short" " overview of the changes in the code base for the latest versions." msgstr "" -#: ../../writing/documentation.rst:34 +#: ..\..\writing\documentation.rst:34 msgid "Project Publication" msgstr "" -#: ../../writing/documentation.rst:36 +#: ..\..\writing\documentation.rst:36 msgid "" "Depending on the project, your documentation might include some or all of " "the following components:" msgstr "" -#: ../../writing/documentation.rst:39 +#: ..\..\writing\documentation.rst:39 msgid "" "An *introduction* should show a very short overview of what can be done with" " the product, using one or two extremely simplified use cases. This is the " "thirty-second pitch for your project." msgstr "" -#: ../../writing/documentation.rst:43 +#: ..\..\writing\documentation.rst:43 msgid "" "A *tutorial* should show some primary use cases in more detail. The reader " "will follow a step-by-step procedure to set-up a working prototype." msgstr "" -#: ../../writing/documentation.rst:46 +#: ..\..\writing\documentation.rst:46 msgid "" "An *API reference* is typically generated from the code (see " ":ref:`docstrings `). It will list all publicly available " "interfaces, parameters, and return values." msgstr "" -#: ../../writing/documentation.rst:50 +#: ..\..\writing\documentation.rst:50 msgid "" "*Developer documentation* is intended for potential contributors. This can " "include code convention and general design strategy of the project." msgstr "" -#: ../../writing/documentation.rst:56 +#: ..\..\writing\documentation.rst:56 msgid "Sphinx" msgstr "" -#: ../../writing/documentation.rst:58 +#: ..\..\writing\documentation.rst:58 msgid "" "Sphinx_ is far and away the most popular Python documentation tool. **Use " "it.** It converts :ref:`restructuredtext-ref` markup language into a range " @@ -111,62 +111,62 @@ msgid "" " pages, and plain text." msgstr "" -#: ../../writing/documentation.rst:63 +#: ..\..\writing\documentation.rst:63 msgid "" "There is also **great**, **free** hosting for your Sphinx_ docs: `Read The " "Docs`_. Use it. You can configure it with commit hooks to your source " "repository so that rebuilding your documentation will happen automatically." msgstr "" -#: ../../writing/documentation.rst:70 +#: ..\..\writing\documentation.rst:70 msgid "" "Sphinx is famous for its API generation, but it also works well for general " "project documentation. This Guide is built with Sphinx_ and is hosted on " "`Read The Docs`_" msgstr "" -#: ../../writing/documentation.rst:80 +#: ..\..\writing\documentation.rst:80 msgid "reStructuredText" msgstr "" -#: ../../writing/documentation.rst:82 +#: ..\..\writing\documentation.rst:82 msgid "" "Most Python documentation is written with reStructuredText_. It's like " "Markdown with all the optional extensions built in." msgstr "" -#: ../../writing/documentation.rst:85 +#: ..\..\writing\documentation.rst:85 msgid "" "The `reStructuredText Primer`_ and the `reStructuredText Quick Reference`_ " "should help you familiarize yourself with its syntax." msgstr "" -#: ../../writing/documentation.rst:94 +#: ..\..\writing\documentation.rst:94 msgid "Code Documentation Advice" msgstr "" -#: ../../writing/documentation.rst:96 +#: ..\..\writing\documentation.rst:96 msgid "" "Comments clarify the code and they are added with purpose of making the code" " easier to understand. In Python, comments begin with a hash (number sign) " "(``#``)." msgstr "" -#: ../../writing/documentation.rst:102 +#: ..\..\writing\documentation.rst:102 msgid "In Python, *docstrings* describe modules, classes, and functions:" msgstr "" -#: ../../writing/documentation.rst:110 +#: ..\..\writing\documentation.rst:110 msgid "" "In general, follow the comment section of :pep:`8#comments` (the \"Python " "Style Guide\")." msgstr "" -#: ../../writing/documentation.rst:113 +#: ..\..\writing\documentation.rst:113 msgid "Commenting Sections of Code" msgstr "" -#: ../../writing/documentation.rst:115 +#: ..\..\writing\documentation.rst:115 msgid "" "*Do not use triple-quote strings to comment code*. This is not a good " "practice, because line-oriented command-line tools such as grep will not be " @@ -176,55 +176,75 @@ msgid "" "comment/uncomment toggle." msgstr "" -#: ../../writing/documentation.rst:123 +#: ..\..\writing\documentation.rst:123 msgid "Docstrings and Magic" msgstr "" -#: ../../writing/documentation.rst:125 +#: ..\..\writing\documentation.rst:125 msgid "" "Some tools use docstrings to embed more-than-documentation behavior, such as" " unit test logic. Those can be nice, but you won't ever go wrong with " "vanilla \"here's what this does.\"" msgstr "" -#: ../../writing/documentation.rst:130 +#: ..\..\writing\documentation.rst:130 msgid "Docstrings versus Block comments" msgstr "" -#: ../../writing/documentation.rst:132 +#: ..\..\writing\documentation.rst:132 msgid "" "These aren't interchangeable. For a function or class, the leading comment " "block is a programmer's note. The docstring describes the *operation* of the" " function or class:" msgstr "" -#: ../../writing/documentation.rst:147 +#: ..\..\writing\documentation.rst:147 msgid "Other Tools" msgstr "" -#: ../../writing/documentation.rst:149 +#: ..\..\writing\documentation.rst:149 msgid "You might see these in the wild. Use :ref:`sphinx-ref`." msgstr "" -#: ../../writing/documentation.rst:152 +#: ..\..\writing\documentation.rst:152 msgid "" "Pycco is a \"literate-programming-style documentation generator\" and is a " "port of the node.js Docco_. It makes code into a side-by-side HTML code and " "documentation." msgstr "" -#: ../../writing/documentation.rst:160 +#: ..\..\writing\documentation.rst:160 msgid "" "Ronn builds unix manuals. It converts human readable textfiles to roff for " "terminal display, and also to HTML for the web." msgstr "" -#: ../../writing/documentation.rst:166 +#: ..\..\writing\documentation.rst:166 msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." msgstr "" -#: ../../writing/documentation.rst:171 +#: ..\..\writing\documentation.rst:171 msgid "" "MkDocs is a fast and simple static site generator that's geared towards " "building project documentation with Markdown." msgstr "" + +#: ..\..\writing\documentation.rst:143 +msgid "Further reading on docstrings: :pep:`257`" +msgstr "" + +#: ..\..\writing\documentation.rst:154 +msgid "Pycco_" +msgstr "" + +#: ..\..\writing\documentation.rst:161 +msgid "Ronn_" +msgstr "" + +#: ..\..\writing\documentation.rst:166 +msgid "Epydoc_" +msgstr "" + +#: ..\..\writing\documentation.rst:172 +msgid "MkDocs_" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/gotchas.po b/docs/locale/ko/LC_MESSAGES/writing/gotchas.po index 5d29906d4..a1ff2159f 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/gotchas.po +++ b/docs/locale/ko/LC_MESSAGES/writing/gotchas.po @@ -11,18 +11,18 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../writing/gotchas.rst:2 +#: ..\..\writing\gotchas.rst:2 msgid "Common Gotchas" msgstr "" -#: ../../writing/gotchas.rst:4 +#: ..\..\writing\gotchas.rst:4 msgid "" "For the most part, Python aims to be a clean and consistent language that " "avoids surprises. However, there are a few cases that can be confusing to " "newcomers." msgstr "" -#: ../../writing/gotchas.rst:8 +#: ..\..\writing\gotchas.rst:8 msgid "" "Some of these cases are intentional but can be potentially surprising. Some " "could arguably be considered language warts. In general though, what follows" @@ -31,41 +31,41 @@ msgid "" "cause for the surprise." msgstr "" -#: ../../writing/gotchas.rst:17 +#: ..\..\writing\gotchas.rst:17 msgid "Mutable Default Arguments" msgstr "" -#: ../../writing/gotchas.rst:19 +#: ..\..\writing\gotchas.rst:19 msgid "" "Seemingly the *most* common surprise new Python programmers encounter is " "Python's treatment of mutable default arguments in function definitions." msgstr "" -#: ../../writing/gotchas.rst:23 ../../writing/gotchas.rst:94 +#: ..\..\writing\gotchas.rst:23 ..\..\writing\gotchas.rst:94 msgid "What You Wrote" msgstr "" -#: ../../writing/gotchas.rst:32 ../../writing/gotchas.rst:102 +#: ..\..\writing\gotchas.rst:32 ..\..\writing\gotchas.rst:102 msgid "What You Might Have Expected to Happen" msgstr "" -#: ../../writing/gotchas.rst:42 +#: ..\..\writing\gotchas.rst:42 msgid "" "A new list is created each time the function is called if a second argument " "isn't provided, so that the output is::" msgstr "" -#: ../../writing/gotchas.rst:49 ../../writing/gotchas.rst:119 +#: ..\..\writing\gotchas.rst:49 ..\..\writing\gotchas.rst:119 msgid "What Does Happen" msgstr "" -#: ../../writing/gotchas.rst:56 +#: ..\..\writing\gotchas.rst:56 msgid "" "A new list is created *once* when the function is defined, and the same list" " is used in each successive call." msgstr "" -#: ../../writing/gotchas.rst:59 +#: ..\..\writing\gotchas.rst:59 msgid "" "Python's default arguments are evaluated *once* when the function is " "defined, not each time the function is called (like it is in say, Ruby). " @@ -74,64 +74,64 @@ msgid "" "well." msgstr "" -#: ../../writing/gotchas.rst:65 ../../writing/gotchas.rst:157 +#: ..\..\writing\gotchas.rst:65 ..\..\writing\gotchas.rst:157 msgid "What You Should Do Instead" msgstr "" -#: ../../writing/gotchas.rst:67 +#: ..\..\writing\gotchas.rst:67 msgid "" "Create a new object each time the function is called, by using a default arg" " to signal that no argument was provided (:py:data:`None` is often a good " "choice)." msgstr "" -#: ../../writing/gotchas.rst:80 ../../writing/gotchas.rst:180 +#: ..\..\writing\gotchas.rst:80 ..\..\writing\gotchas.rst:180 msgid "When the Gotcha Isn't a Gotcha" msgstr "" -#: ../../writing/gotchas.rst:82 +#: ..\..\writing\gotchas.rst:82 msgid "" "Sometimes you can specifically \"exploit\" (read: use as intended) this " "behavior to maintain state between calls of a function. This is often done " "when writing a caching function." msgstr "" -#: ../../writing/gotchas.rst:88 +#: ..\..\writing\gotchas.rst:88 msgid "Late Binding Closures" msgstr "" -#: ../../writing/gotchas.rst:90 +#: ..\..\writing\gotchas.rst:90 msgid "" "Another common source of confusion is the way Python binds its variables in " "closures (or in the surrounding global scope)." msgstr "" -#: ../../writing/gotchas.rst:109 +#: ..\..\writing\gotchas.rst:109 msgid "" "A list containing five functions that each have their own closed-over ``i`` " "variable that multiplies their argument, producing::" msgstr "" -#: ../../writing/gotchas.rst:129 +#: ..\..\writing\gotchas.rst:129 msgid "" "Five functions are created; instead all of them just multiply ``x`` by 4." msgstr "" -#: ../../writing/gotchas.rst:131 +#: ..\..\writing\gotchas.rst:131 msgid "" "Python's closures are *late binding*. This means that the values of " "variables used in closures are looked up at the time the inner function is " "called." msgstr "" -#: ../../writing/gotchas.rst:135 +#: ..\..\writing\gotchas.rst:135 msgid "" "Here, whenever *any* of the returned functions are called, the value of " "``i`` is looked up in the surrounding scope at call time. By then, the loop " "has completed and ``i`` is left with its final value of 4." msgstr "" -#: ../../writing/gotchas.rst:139 +#: ..\..\writing\gotchas.rst:139 msgid "" "What's particularly nasty about this gotcha is the seemingly prevalent " "misinformation that this has something to do with :ref:`lambdas " @@ -140,7 +140,7 @@ msgid "" "just using an ordinary ``def``:" msgstr "" -#: ../../writing/gotchas.rst:159 +#: ..\..\writing\gotchas.rst:159 msgid "" "The most general solution is arguably a bit of a hack. Due to Python's " "aforementioned behavior concerning evaluating default arguments to functions" @@ -148,11 +148,11 @@ msgid "" "to its arguments by using a default arg like so:" msgstr "" -#: ../../writing/gotchas.rst:169 +#: ..\..\writing\gotchas.rst:169 msgid "Alternatively, you can use the functools.partial function:" msgstr "" -#: ../../writing/gotchas.rst:182 +#: ..\..\writing\gotchas.rst:182 msgid "" "Sometimes you want your closures to behave this way. Late binding is good in" " lots of situations. Looping to create unique functions is unfortunately a " diff --git a/docs/locale/ko/LC_MESSAGES/writing/license.po b/docs/locale/ko/LC_MESSAGES/writing/license.po index 99788209b..1624f90ea 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/license.po +++ b/docs/locale/ko/LC_MESSAGES/writing/license.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../writing/license.rst:2 +#: ..\..\writing\license.rst:2 msgid "Choosing a License" msgstr "" -#: ../../writing/license.rst:4 +#: ..\..\writing\license.rst:4 msgid "" "Your source publication *needs* a license. In the US, if no license is " "specified, users have no legal right to download, modify, or distribute. " @@ -24,24 +24,24 @@ msgid "" "pointers:" msgstr "" -#: ../../writing/license.rst:10 +#: ..\..\writing\license.rst:10 msgid "" "Open source. There are plenty of `open source licenses " "`_ available to choose from." msgstr "" -#: ../../writing/license.rst:14 +#: ..\..\writing\license.rst:14 msgid "In general, these licenses tend to fall into one of two categories:" msgstr "" -#: ../../writing/license.rst:16 +#: ..\..\writing\license.rst:16 msgid "" "licenses that focus more on the user's freedom to do with the software as " "they please (these are the more permissive open source licenses such as the " "MIT, BSD, & Apache)." msgstr "" -#: ../../writing/license.rst:20 +#: ..\..\writing\license.rst:20 msgid "" "licenses that focus more on making sure that the code itself — including any" " changes made to it and distributed along with it — always remains free " @@ -49,70 +49,70 @@ msgid "" "LGPL)." msgstr "" -#: ../../writing/license.rst:25 +#: ..\..\writing\license.rst:25 msgid "" "The latter are less permissive in the sense that they don't permit someone " "to add code to the software and distribute it without also including the " "source code for their changes." msgstr "" -#: ../../writing/license.rst:29 +#: ..\..\writing\license.rst:29 msgid "" "To help you choose one for your project, there's a `license chooser " "`_, **use it**." msgstr "" -#: ../../writing/license.rst:32 +#: ..\..\writing\license.rst:32 msgid "**More Permissive**" msgstr "" -#: ../../writing/license.rst:34 +#: ..\..\writing\license.rst:34 msgid "" "PSFL (Python Software Foundation License) -- for contributing to Python " "itself" msgstr "" -#: ../../writing/license.rst:35 +#: ..\..\writing\license.rst:35 msgid "MIT / BSD / ISC" msgstr "" -#: ../../writing/license.rst:37 +#: ..\..\writing\license.rst:37 msgid "MIT (X11)" msgstr "" -#: ../../writing/license.rst:38 +#: ..\..\writing\license.rst:38 msgid "New BSD" msgstr "" -#: ../../writing/license.rst:39 +#: ..\..\writing\license.rst:39 msgid "ISC" msgstr "" -#: ../../writing/license.rst:41 +#: ..\..\writing\license.rst:41 msgid "Apache" msgstr "" -#: ../../writing/license.rst:43 +#: ..\..\writing\license.rst:43 msgid "**Less Permissive:**" msgstr "" -#: ../../writing/license.rst:45 +#: ..\..\writing\license.rst:45 msgid "LGPL" msgstr "" -#: ../../writing/license.rst:46 +#: ..\..\writing\license.rst:46 msgid "GPL" msgstr "" -#: ../../writing/license.rst:48 +#: ..\..\writing\license.rst:48 msgid "GPLv2" msgstr "" -#: ../../writing/license.rst:49 +#: ..\..\writing\license.rst:49 msgid "GPLv3" msgstr "" -#: ../../writing/license.rst:51 +#: ..\..\writing\license.rst:51 msgid "" "A good overview of licenses with explanations of what one can, cannot, and " "must do using a particular software can be found at `tl;drLegal " diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.po b/docs/locale/ko/LC_MESSAGES/writing/reading.po index 8932401ab..124e34125 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/reading.po +++ b/docs/locale/ko/LC_MESSAGES/writing/reading.po @@ -11,50 +11,50 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../writing/reading.rst:2 +#: ..\..\writing\reading.rst:2 msgid "Reading Great Code" msgstr "" -#: ../../writing/reading.rst:4 +#: ..\..\writing\reading.rst:4 msgid "" "One of the core tenants behind the design of Python is creating readable " "code. The motivation behind this design is simple: The number one thing that" " Python programmers do is read code." msgstr "" -#: ../../writing/reading.rst:8 +#: ..\..\writing\reading.rst:8 msgid "" "One of the secrets of becoming a great Python programmer is to read, " "understand, and comprehend excellent code." msgstr "" -#: ../../writing/reading.rst:11 +#: ..\..\writing\reading.rst:11 msgid "" "Excellent code typically follows the guidelines outlined in " ":ref:`code_style`, and does its best to express a clear and concise intent " "to the reader." msgstr "" -#: ../../writing/reading.rst:15 +#: ..\..\writing\reading.rst:15 msgid "" "Included below is a list of recommended Python projects for reading. Each " "one of these projects is a paragon of Python coding." msgstr "" -#: ../../writing/reading.rst:18 +#: ..\..\writing\reading.rst:18 msgid "" "`Howdoi `_ Howdoi is a code search tool, " "written in Python." msgstr "" -#: ../../writing/reading.rst:21 +#: ..\..\writing\reading.rst:21 msgid "" "`Flask `_ Flask is a microframework for " "Python based on Werkzeug and Jinja2. It's intended for getting started very " "quickly and was developed with best intentions in mind." msgstr "" -#: ../../writing/reading.rst:26 +#: ..\..\writing\reading.rst:26 msgid "" "`Werkzeug `_ Werkzeug started as " "simple collection of various utilities for WSGI applications and has become " @@ -65,19 +65,19 @@ msgid "" " addon modules." msgstr "" -#: ../../writing/reading.rst:34 +#: ..\..\writing\reading.rst:34 msgid "" "`Requests `_ Requests is an " "Apache2 Licensed HTTP library, written in Python, for human beings." msgstr "" -#: ../../writing/reading.rst:38 +#: ..\..\writing\reading.rst:38 msgid "" "`Tablib `_ Tablib is a format-" "agnostic tabular dataset library, written in Python." msgstr "" -#: ../../writing/reading.rst:41 +#: ..\..\writing\reading.rst:41 msgid "" "Embed and explain YouTube video showing python code reading: " "http://www.youtube.com/watch?v=Jc8M9-LoEuo This may require installing a " @@ -85,14 +85,19 @@ msgid "" "contrib/src/a09f29fc16970f34350ca36ac7f229e00b1b1674/youtube?at=default" msgstr "" -#: ../../writing/reading.rst:43 +#: ..\..\writing\reading.rst:43 msgid "" "Include code examples of exemplary code from each of the projects listed. " "Explain why it is excellent code. Use complex examples." msgstr "" -#: ../../writing/reading.rst:45 +#: ..\..\writing\reading.rst:45 msgid "" "Explain techniques to rapidly identify data structures, algorithms and " "determine what the code is doing." msgstr "" + +#: ..\..\writing\reading.rst:0 ..\..\writing\reading.rst:0 +#: ..\..\writing\reading.rst:0 +msgid "Todo" +msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..c61b0bb59ae2f80851bab3ee9f272b296346f92f 100644 GIT binary patch delta 502 zcmY*VJxc>Y5Z!#>53o`Y9Maf?6p~+HCm0A=h~;K??rwE&H|%Z_&L&MNYXcSrw6`z; zA^*YuAl5PY3*zjZjSG+2x!Za3-utRA_NJfv%{imfARH08v7vKOm9okjV?F8*2rIgu z5VN8t9a3#Xg0lizKDdzxBZn=RAmqpmgbYEVP+nQ%p|B&!`7MI5MoiHeWm3rO zB>r$PboK^CfC2hI(-=G`f*r)KYK$GYLNJIDf{hGbNp$5n_2rPpF*=?i^ox*LbK)UE z9tHVw#8E@LH3@42PLrhKB`!(i=Y|w;+9bG!fG+p#f0m*jALU2UB}q95lgxSqZBr$H z8%cJDXe1h;Xf1cuLI>PaC|buF9fz!kkSHDB&`@GEnW^4emvW=-$fv3TET0uVVBTSu te;G#+*D=!7lsFMHy delta 54 rcmbQs_JB#}o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kiYp9qX{Dby}t$L diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 034566711..bb38a6eb2 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -11,21 +11,20 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../writing/structure.rst:2 +#: ..\..\writing\structure.rst:2 msgid "Structuring Your Project" msgstr "프로젝트 구성하기" -#: ../../writing/structure.rst:4 +#: ..\..\writing\structure.rst:4 msgid "" "By \"structure\" we mean the decisions you make concerning how your project " "best meets its objective. We need to consider how to best leverage Python's " "features to create clean, effective code. In practical terms, \"structure\" " "means making clean code whose logic and dependencies are clear as well as " "how the files and folders are organized in the filesystem." -msgstr "" -"test" +msgstr "test" -#: ../../writing/structure.rst:11 +#: ..\..\writing\structure.rst:11 msgid "" "Which functions should go into which modules? How does data flow through the" " project? What features and functions can be grouped together and isolated? " @@ -33,7 +32,7 @@ msgid "" "what your finished product will look like." msgstr "" -#: ../../writing/structure.rst:16 +#: ..\..\writing\structure.rst:16 msgid "" "In this section we take a closer look at Python's module and import systems " "as they are the central elements to enforcing structure in your project. We " @@ -41,11 +40,11 @@ msgid "" " and tested reliably." msgstr "" -#: ../../writing/structure.rst:23 +#: ..\..\writing\structure.rst:23 msgid "Structure is Key" msgstr "" -#: ../../writing/structure.rst:25 +#: ..\..\writing\structure.rst:25 msgid "" "Thanks to the way imports and modules are handled in Python, it is " "relatively easy to structure a Python project. Easy, here, means that you do" @@ -54,13 +53,13 @@ msgid "" "the different parts of your project and their interactions." msgstr "" -#: ../../writing/structure.rst:32 +#: ..\..\writing\structure.rst:32 msgid "" "Easy structuring of a project means it is also easy to do it poorly. Some " "signs of a poorly structured project include:" msgstr "" -#: ../../writing/structure.rst:36 +#: ..\..\writing\structure.rst:36 msgid "" "Multiple and messy circular dependencies: if your classes Table and Chair in" " :file:`furn.py` need to import Carpenter from :file:`workers.py` to answer " @@ -71,7 +70,7 @@ msgid "" "inside methods or functions." msgstr "" -#: ../../writing/structure.rst:45 +#: ..\..\writing\structure.rst:45 msgid "" "Hidden coupling: each and every change in Table's implementation breaks 20 " "tests in unrelated test cases because it breaks Carpenter's code, which " @@ -79,7 +78,7 @@ msgid "" "many assumptions about Table in Carpenter's code or the reverse." msgstr "" -#: ../../writing/structure.rst:51 +#: ..\..\writing\structure.rst:51 msgid "" "Heavy usage of global state or context: instead of explicitly passing " "``(height, width, type, wood)`` to each other, Table and Carpenter rely on " @@ -90,7 +89,7 @@ msgid "" "with table dimensions." msgstr "" -#: ../../writing/structure.rst:60 +#: ..\..\writing\structure.rst:60 msgid "" "Spaghetti code: multiple pages of nested if clauses and for loops with a lot" " of copy-pasted procedural code and no proper segmentation are known as " @@ -99,7 +98,7 @@ msgid "" "the good news is that you might not see too much of it." msgstr "" -#: ../../writing/structure.rst:67 +#: ..\..\writing\structure.rst:67 msgid "" "Ravioli code is more likely in Python: it consists of hundreds of similar " "little pieces of logic, often classes or objects, without proper structure. " @@ -108,18 +107,18 @@ msgid "" "ravioli code." msgstr "" -#: ../../writing/structure.rst:75 +#: ..\..\writing\structure.rst:75 msgid "Modules" msgstr "" -#: ../../writing/structure.rst:77 +#: ..\..\writing\structure.rst:77 msgid "" "Python modules are one of the main abstraction layers available and probably" " the most natural one. Abstraction layers allow separating code into parts " "holding related data and functionality." msgstr "" -#: ../../writing/structure.rst:81 +#: ..\..\writing\structure.rst:81 msgid "" "For example, a layer of a project can handle interfacing with user actions, " "while another would handle low-level manipulation of data. The most natural " @@ -129,14 +128,14 @@ msgid "" " ``import`` and ``from ... import`` statements." msgstr "" -#: ../../writing/structure.rst:88 +#: ..\..\writing\structure.rst:88 msgid "" "As soon as you use `import` statements you use modules. These can be either " "built-in modules such as `os` and `sys`, third-party modules you have " "installed in your environment, or your project's internal modules." msgstr "" -#: ../../writing/structure.rst:92 +#: ..\..\writing\structure.rst:92 msgid "" "To keep in line with the style guide, keep module names short, lowercase, " "and be sure to avoid using special symbols like the dot (.) or question mark" @@ -144,7 +143,7 @@ msgid "" " this way will interfere with the way Python looks for modules." msgstr "" -#: ../../writing/structure.rst:97 +#: ..\..\writing\structure.rst:97 msgid "" "In the case of `my.spam.py` Python expects to find a :file:`spam.py` file in" " a folder named :file:`my` which is not the case. There is an `example " @@ -152,20 +151,20 @@ msgid "" "notation should be used in the Python docs." msgstr "" -#: ../../writing/structure.rst:102 +#: ..\..\writing\structure.rst:102 msgid "" "If you'd like you could name your module :file:`my_spam.py`, but even our " "friend the underscore should not be seen often in module names." msgstr "" -#: ../../writing/structure.rst:105 +#: ..\..\writing\structure.rst:105 msgid "" "Aside from some naming restrictions, nothing special is required for a " "Python file to be a module, but you need to understand the import mechanism " "in order to use this concept properly and avoid some issues." msgstr "" -#: ../../writing/structure.rst:109 +#: ..\..\writing\structure.rst:109 msgid "" "Concretely, the ``import modu`` statement will look for the proper file, " "which is :file:`modu.py` in the same directory as the caller if it exists. " @@ -174,7 +173,7 @@ msgid "" "found." msgstr "" -#: ../../writing/structure.rst:114 +#: ..\..\writing\structure.rst:114 msgid "" "Once :file:`modu.py` is found, the Python interpreter will execute the " "module in an isolated scope. Any top-level statement in :file:`modu.py` will" @@ -182,14 +181,14 @@ msgid "" " are stored in the module's dictionary." msgstr "" -#: ../../writing/structure.rst:119 +#: ..\..\writing\structure.rst:119 msgid "" "Then, the module's variables, functions, and classes will be available to " "the caller through the module's namespace, a central concept in programming " "that is particularly helpful and powerful in Python." msgstr "" -#: ../../writing/structure.rst:123 +#: ..\..\writing\structure.rst:123 msgid "" "In many languages, an ``include file`` directive is used by the preprocessor" " to take all code found in the file and 'copy' it into the caller's code. It" @@ -199,7 +198,7 @@ msgid "" "function with the same name." msgstr "" -#: ../../writing/structure.rst:129 +#: ..\..\writing\structure.rst:129 msgid "" "It is possible to simulate the more standard behavior by using a special " "syntax of the import statement: ``from modu import *``. This is generally " @@ -207,7 +206,7 @@ msgid "" "and makes dependencies less compartmentalized**." msgstr "" -#: ../../writing/structure.rst:134 +#: ..\..\writing\structure.rst:134 msgid "" "Using ``from modu import func`` is a way to pinpoint the function you want " "to import and put it in the global namespace. While much less harmful than " @@ -216,19 +215,19 @@ msgid "" " save a little typing." msgstr "" -#: ../../writing/structure.rst:139 +#: ..\..\writing\structure.rst:139 msgid "**Very bad**" msgstr "" -#: ../../writing/structure.rst:148 +#: ..\..\writing\structure.rst:148 msgid "**Better**" msgstr "" -#: ../../writing/structure.rst:156 ../../writing/structure.rst:443 +#: ..\..\writing\structure.rst:156 ..\..\writing\structure.rst:443 msgid "**Best**" msgstr "" -#: ../../writing/structure.rst:164 +#: ..\..\writing\structure.rst:164 msgid "" "As mentioned in the :ref:`code_style` section, readability is one of the " "main features of Python. Readability means to avoid useless boilerplate text" @@ -239,17 +238,17 @@ msgid "" "understandability in all but the simplest single file projects." msgstr "" -#: ../../writing/structure.rst:174 +#: ..\..\writing\structure.rst:174 msgid "Packages" msgstr "" -#: ../../writing/structure.rst:176 +#: ..\..\writing\structure.rst:176 msgid "" "Python provides a very straightforward packaging system, which is simply an " "extension of the module mechanism to a directory." msgstr "" -#: ../../writing/structure.rst:179 +#: ..\..\writing\structure.rst:179 msgid "" "Any directory with an :file:`__init__.py` file is considered a Python " "package. The different modules in the package are imported in a similar " @@ -258,7 +257,7 @@ msgid "" "definitions." msgstr "" -#: ../../writing/structure.rst:184 +#: ..\..\writing\structure.rst:184 msgid "" "A file :file:`modu.py` in the directory :file:`pack/` is imported with the " "statement ``import pack.modu``. This statement will look for an " @@ -269,7 +268,7 @@ msgid "" "pack.modu namespace." msgstr "" -#: ../../writing/structure.rst:190 +#: ..\..\writing\structure.rst:190 msgid "" "A commonly seen issue is to add too much code to :file:`__init__.py` files. " "When the project complexity grows, there may be sub-packages and sub-sub-" @@ -278,31 +277,31 @@ msgid "" "files met while traversing the tree." msgstr "" -#: ../../writing/structure.rst:196 +#: ..\..\writing\structure.rst:196 msgid "" "Leaving an :file:`__init__.py` file empty is considered normal and even a " "good practice, if the package's modules and sub-packages do not need to " "share any code." msgstr "" -#: ../../writing/structure.rst:199 +#: ..\..\writing\structure.rst:199 msgid "" "Lastly, a convenient syntax is available for importing deeply nested " "packages: ``import very.deep.module as mod``. This allows you to use `mod` " "in place of the verbose repetition of ``very.deep.module``." msgstr "" -#: ../../writing/structure.rst:204 +#: ..\..\writing\structure.rst:204 msgid "Object-oriented programming" msgstr "" -#: ../../writing/structure.rst:206 +#: ..\..\writing\structure.rst:206 msgid "" "Python is sometimes described as an object-oriented programming language. " "This can be somewhat misleading and needs to be clarified." msgstr "" -#: ../../writing/structure.rst:209 +#: ..\..\writing\structure.rst:209 msgid "" "In Python, everything is an object, and can be handled as such. This is what" " is meant when we say, for example, that functions are first-class objects. " @@ -312,7 +311,7 @@ msgid "" "oriented language." msgstr "" -#: ../../writing/structure.rst:216 +#: ..\..\writing\structure.rst:216 msgid "" "However, unlike Java, Python does not impose object-oriented programming as " "the main programming paradigm. It is perfectly viable for a Python project " @@ -321,7 +320,7 @@ msgid "" "oriented programming." msgstr "" -#: ../../writing/structure.rst:222 +#: ..\..\writing\structure.rst:222 msgid "" "Moreover, as seen in the modules_ section, the way Python handles modules " "and namespaces gives the developer a natural way to ensure the encapsulation" @@ -330,7 +329,7 @@ msgid "" " not use object-orientation, when it is not required by the business model." msgstr "" -#: ../../writing/structure.rst:229 +#: ..\..\writing\structure.rst:229 msgid "" "There are some reasons to avoid unnecessary object-orientation. Defining " "custom classes is useful when we want to glue together some state and some " @@ -338,7 +337,7 @@ msgid "" "functional programming, comes from the \"state\" part of the equation." msgstr "" -#: ../../writing/structure.rst:234 +#: ..\..\writing\structure.rst:234 msgid "" "In some architectures, typically web applications, multiple instances of " "Python processes are spawned to respond to external requests that can happen" @@ -354,13 +353,13 @@ msgid "" "process loaded the item, and then we have to mark as read a deleted object." msgstr "" -#: ../../writing/structure.rst:247 +#: ..\..\writing\structure.rst:247 msgid "" "This and other issues led to the idea that using stateless functions is a " "better programming paradigm." msgstr "" -#: ../../writing/structure.rst:250 +#: ..\..\writing\structure.rst:250 msgid "" "Another way to say the same thing is to suggest using functions and " "procedures with as few implicit contexts and side-effects as possible. A " @@ -371,41 +370,41 @@ msgid "" "persistence layer, it is said to have a side-effect." msgstr "" -#: ../../writing/structure.rst:257 +#: ..\..\writing\structure.rst:257 msgid "" "Carefully isolating functions with context and side-effects from functions " "with logic (called pure functions) allow the following benefits:" msgstr "" -#: ../../writing/structure.rst:260 +#: ..\..\writing\structure.rst:260 msgid "" "Pure functions are deterministic: given a fixed input, the output will " "always be the same." msgstr "" -#: ../../writing/structure.rst:263 +#: ..\..\writing\structure.rst:263 msgid "" "Pure functions are much easier to change or replace if they need to be " "refactored or optimized." msgstr "" -#: ../../writing/structure.rst:266 +#: ..\..\writing\structure.rst:266 msgid "" "Pure functions are easier to test with unit-tests: There is less need for " "complex context setup and data cleaning afterwards." msgstr "" -#: ../../writing/structure.rst:269 +#: ..\..\writing\structure.rst:269 msgid "Pure functions are easier to manipulate, decorate, and pass-around." msgstr "" -#: ../../writing/structure.rst:271 +#: ..\..\writing\structure.rst:271 msgid "" "In summary, pure functions, without any context or side-effects, are more " "efficient building blocks than classes and objects for some architectures." msgstr "" -#: ../../writing/structure.rst:274 +#: ..\..\writing\structure.rst:274 msgid "" "Obviously, object-orientation is useful and even necessary in many cases, " "for example when developing graphical desktop applications or games, where " @@ -413,11 +412,11 @@ msgid "" " relatively long life of their own in the computer's memory." msgstr "" -#: ../../writing/structure.rst:281 +#: ..\..\writing\structure.rst:281 msgid "Decorators" msgstr "" -#: ../../writing/structure.rst:283 +#: ..\..\writing\structure.rst:283 msgid "" "The Python language provides a simple yet powerful syntax called " "'decorators'. A decorator is a function or a class that wraps (or decorates)" @@ -427,7 +426,7 @@ msgid "" "@decorator syntax is clearer and thus preferred." msgstr "" -#: ../../writing/structure.rst:306 +#: ..\..\writing\structure.rst:306 msgid "" "This mechanism is useful for separating concerns and avoiding external un-" "related logic 'polluting' the core logic of the function or method. A good " @@ -438,11 +437,11 @@ msgid "" "logic." msgstr "" -#: ../../writing/structure.rst:315 +#: ..\..\writing\structure.rst:315 msgid "Dynamic typing" msgstr "" -#: ../../writing/structure.rst:317 +#: ..\..\writing\structure.rst:317 msgid "" "Python is said to be dynamically typed, which means that variables do not " "have a fixed type. In fact, in Python, variables are very different from " @@ -453,7 +452,7 @@ msgid "" "the value 'a string', then to a function." msgstr "" -#: ../../writing/structure.rst:325 +#: ..\..\writing\structure.rst:325 msgid "" "The dynamic typing of Python is often considered to be a weakness, and " "indeed it can lead to complexities and hard-to-debug code. Something named " @@ -462,36 +461,36 @@ msgid "" "completely unrelated object." msgstr "" -#: ../../writing/structure.rst:331 +#: ..\..\writing\structure.rst:331 msgid "Some guidelines help to avoid this issue:" msgstr "" -#: ../../writing/structure.rst:333 +#: ..\..\writing\structure.rst:333 msgid "Avoid using the same variable name for different things." msgstr "" -#: ../../writing/structure.rst:335 ../../writing/structure.rst:359 -#: ../../writing/structure.rst:423 +#: ..\..\writing\structure.rst:335 ..\..\writing\structure.rst:359 +#: ..\..\writing\structure.rst:423 msgid "**Bad**" msgstr "" -#: ../../writing/structure.rst:344 ../../writing/structure.rst:433 +#: ..\..\writing\structure.rst:344 ..\..\writing\structure.rst:433 msgid "**Good**" msgstr "" -#: ../../writing/structure.rst:353 +#: ..\..\writing\structure.rst:353 msgid "" "Using short functions or methods helps reduce the risk of using the same " "name for two unrelated things." msgstr "" -#: ../../writing/structure.rst:356 +#: ..\..\writing\structure.rst:356 msgid "" "It is better to use different names even for things that are related, when " "they have a different type:" msgstr "" -#: ../../writing/structure.rst:367 +#: ..\..\writing\structure.rst:367 msgid "" "There is no efficiency gain when reusing names: the assignments will have to" " create new objects anyway. However, when the complexity grows and each " @@ -499,7 +498,7 @@ msgid "" "loops, it becomes harder to ascertain what a given variable's type is." msgstr "" -#: ../../writing/structure.rst:373 +#: ..\..\writing\structure.rst:373 msgid "" "Some coding practices, like functional programming, recommend never " "reassigning a variable. In Java this is done with the `final` keyword. " @@ -509,15 +508,15 @@ msgid "" "mutable and immutable types." msgstr "" -#: ../../writing/structure.rst:380 +#: ..\..\writing\structure.rst:380 msgid "Mutable and immutable types" msgstr "" -#: ../../writing/structure.rst:382 +#: ..\..\writing\structure.rst:382 msgid "Python has two kinds of built-in or user-defined types." msgstr "" -#: ../../writing/structure.rst:384 +#: ..\..\writing\structure.rst:384 msgid "" "Mutable types are those that allow in-place modification of the content. " "Typical mutables are lists and dictionaries: All lists have mutating " @@ -525,34 +524,34 @@ msgid "" "modified in place. The same goes for dictionaries." msgstr "" -#: ../../writing/structure.rst:389 +#: ..\..\writing\structure.rst:389 msgid "" "Immutable types provide no method for changing their content. For instance, " "the variable x set to the integer 6 has no \"increment\" method. If you want" " to compute x + 1, you have to create another integer and give it a name." msgstr "" -#: ../../writing/structure.rst:403 +#: ..\..\writing\structure.rst:403 msgid "" "One consequence of this difference in behavior is that mutable types are not" " \"stable\", and therefore cannot be used as dictionary keys." msgstr "" -#: ../../writing/structure.rst:407 +#: ..\..\writing\structure.rst:407 msgid "" "Using properly mutable types for things that are mutable in nature and " "immutable types for things that are fixed in nature helps to clarify the " "intent of the code." msgstr "" -#: ../../writing/structure.rst:411 +#: ..\..\writing\structure.rst:411 msgid "" "For example, the immutable equivalent of a list is the tuple, created with " "``(1, 2)``. This tuple is a pair that cannot be changed in-place, and can be" " used as a key for a dictionary." msgstr "" -#: ../../writing/structure.rst:415 +#: ..\..\writing\structure.rst:415 msgid "" "One peculiarity of Python that can surprise beginners is that strings are " "immutable. This means that when constructing a string from its parts, it is " @@ -562,7 +561,7 @@ msgid "" "than constructing a list in a loop with calls to ``append()``." msgstr "" -#: ../../writing/structure.rst:451 +#: ..\..\writing\structure.rst:451 msgid "" "One final thing to mention about strings is that using ``join()`` is not " "always best. In the instances where you are creating a new string from a " @@ -571,7 +570,7 @@ msgid "" "existing string, using ``join()`` should be your preferred method." msgstr "" -#: ../../writing/structure.rst:467 +#: ..\..\writing\structure.rst:467 msgid "" "You can also use the :ref:`% ` formatting operator" " to concatenate a pre-determined number of strings besides " @@ -580,22 +579,22 @@ msgid "" ":py:meth:`str.format` method in the later versions." msgstr "" -#: ../../writing/structure.rst:484 +#: ..\..\writing\structure.rst:484 msgid "Vendorizing Dependencies" msgstr "" -#: ../../writing/structure.rst:488 +#: ..\..\writing\structure.rst:488 msgid "Runners" msgstr "" -#: ../../writing/structure.rst:492 +#: ..\..\writing\structure.rst:492 msgid "Further Reading" msgstr "" -#: ../../writing/structure.rst:494 +#: ..\..\writing\structure.rst:494 msgid "http://docs.python.org/2/library/" msgstr "" -#: ../../writing/structure.rst:495 +#: ..\..\writing\structure.rst:495 msgid "http://www.diveintopython.net/toc/index.html" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po index c9f08739d..f60e01dcf 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/style.po +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../writing/style.rst:4 +#: ..\..\writing\style.rst:4 msgid "Code Style" msgstr "" -#: ../../writing/style.rst:6 +#: ..\..\writing\style.rst:6 msgid "" "If you ask Python programmers what they like most in Python, they will often" " say its high readability. Indeed, a high level of readability is at the " @@ -23,13 +23,13 @@ msgid "" "that code is read much more often than it is written." msgstr "" -#: ../../writing/style.rst:11 +#: ..\..\writing\style.rst:11 msgid "" "One reason for Python code to be easily read and understood is its " "relatively complete set of Code Style guidelines and \"Pythonic\" idioms." msgstr "" -#: ../../writing/style.rst:14 +#: ..\..\writing\style.rst:14 msgid "" "Moreover, when a veteran Python developer (a Pythonista) points to portions " "of code and says they are not \"Pythonic\", it usually means that these " @@ -37,35 +37,35 @@ msgid "" "intent in what is considered the best (hear: most readable) way." msgstr "" -#: ../../writing/style.rst:19 +#: ..\..\writing\style.rst:19 msgid "" "On some border cases, no best way has been agreed upon on how to express an " "intent in Python code, but these cases are rare." msgstr "" -#: ../../writing/style.rst:23 +#: ..\..\writing\style.rst:23 msgid "General concepts" msgstr "" -#: ../../writing/style.rst:26 +#: ..\..\writing\style.rst:26 msgid "Explicit code" msgstr "" -#: ../../writing/style.rst:28 +#: ..\..\writing\style.rst:28 msgid "" "While any kind of black magic is possible with Python, the most explicit and" " straightforward manner is preferred." msgstr "" -#: ../../writing/style.rst:31 ../../writing/style.rst:58 +#: ..\..\writing\style.rst:31 ..\..\writing\style.rst:58 msgid "**Bad**" msgstr "" -#: ../../writing/style.rst:39 ../../writing/style.rst:69 +#: ..\..\writing\style.rst:39 ..\..\writing\style.rst:69 msgid "**Good**" msgstr "" -#: ../../writing/style.rst:46 +#: ..\..\writing\style.rst:46 msgid "" "In the good code above, x and y are explicitly received from the caller, and" " an explicit dictionary is returned. The developer using this function knows" @@ -73,26 +73,26 @@ msgid "" "case with the bad example." msgstr "" -#: ../../writing/style.rst:52 +#: ..\..\writing\style.rst:52 msgid "One statement per line" msgstr "" -#: ../../writing/style.rst:54 +#: ..\..\writing\style.rst:54 msgid "" "While some compound statements such as list comprehensions are allowed and " "appreciated for their brevity and their expressiveness, it is bad practice " "to have two disjoint statements on the same line of code." msgstr "" -#: ../../writing/style.rst:85 +#: ..\..\writing\style.rst:85 msgid "Function arguments" msgstr "" -#: ../../writing/style.rst:87 +#: ..\..\writing\style.rst:87 msgid "Arguments can be passed to functions in four different ways." msgstr "" -#: ../../writing/style.rst:89 +#: ..\..\writing\style.rst:89 msgid "" "1. **Positional arguments** are mandatory and have no default values. They " "are the simplest form of arguments and they can be used for the few function" @@ -102,7 +102,7 @@ msgid "" "functions require two arguments, and in which order." msgstr "" -#: ../../writing/style.rst:96 +#: ..\..\writing\style.rst:96 msgid "" "In those two cases, it is possible to use argument names when calling the " "functions and, doing so, it is possible to switch the order of arguments, " @@ -112,7 +112,7 @@ msgid "" "'World')`` and ``point(1, 2)``." msgstr "" -#: ../../writing/style.rst:102 +#: ..\..\writing\style.rst:102 msgid "" "2. **Keyword arguments** are not mandatory and have default values. They are" " often used for optional parameters sent to the function. When a function " @@ -123,7 +123,7 @@ msgid "" "optional, and evaluate to ``None`` when they are not passed another value." msgstr "" -#: ../../writing/style.rst:110 +#: ..\..\writing\style.rst:110 msgid "" "Calling a function with keyword arguments can be done in multiple ways in " "Python, for example it is possible to follow the order of arguments in the " @@ -136,7 +136,7 @@ msgid "" "cc='Cthulhu', bcc='God')``." msgstr "" -#: ../../writing/style.rst:119 +#: ..\..\writing\style.rst:119 msgid "" "As a side note, following `YAGNI " "`_ principle, it is " @@ -145,7 +145,7 @@ msgid "" "to add a new optional argument and its logic when needed." msgstr "" -#: ../../writing/style.rst:124 +#: ..\..\writing\style.rst:124 msgid "" "3. The **arbitrary argument list** is the third way to pass arguments to a " "function. If the function intention is better expressed by a signature with" @@ -157,7 +157,7 @@ msgid "" "``('God', 'Mom', 'Cthulhu')``." msgstr "" -#: ../../writing/style.rst:133 +#: ..\..\writing\style.rst:133 msgid "" "However, this construct has some drawbacks and should be used with caution. " "If a function receives a list of arguments of the same nature, it is often " @@ -170,7 +170,7 @@ msgid "" " be unpacked as other sequences." msgstr "" -#: ../../writing/style.rst:142 +#: ..\..\writing\style.rst:142 msgid "" "4. The **arbitrary keyword argument dictionary** is the last way to pass " "arguments to functions. If the function requires an undetermined series of " @@ -180,7 +180,7 @@ msgid "" "function signature." msgstr "" -#: ../../writing/style.rst:148 +#: ..\..\writing\style.rst:148 msgid "" "The same caution as in the case of *arbitrary argument list* is necessary, " "for similar reasons: these powerful techniques are to be used when there is " @@ -188,7 +188,7 @@ msgid "" "and clearer construct is sufficient to express the function's intention." msgstr "" -#: ../../writing/style.rst:153 +#: ..\..\writing\style.rst:153 msgid "" "It is up to the programmer writing the function to determine which arguments" " are positional arguments and which are optional keyword arguments, and to " @@ -197,42 +197,42 @@ msgid "" "write Python functions that are:" msgstr "" -#: ../../writing/style.rst:159 +#: ..\..\writing\style.rst:159 msgid "easy to read (the name and arguments need no explanations)" msgstr "" -#: ../../writing/style.rst:161 +#: ..\..\writing\style.rst:161 msgid "" "easy to change (adding a new keyword argument does not break other parts of " "the code)" msgstr "" -#: ../../writing/style.rst:165 +#: ..\..\writing\style.rst:165 msgid "Avoid the magical wand" msgstr "" -#: ../../writing/style.rst:167 +#: ..\..\writing\style.rst:167 msgid "" "A powerful tool for hackers, Python comes with a very rich set of hooks and " "tools allowing to do almost any kind of tricky tricks. For instance, it is " "possible to do each of the following:" msgstr "" -#: ../../writing/style.rst:171 +#: ..\..\writing\style.rst:171 msgid "change how objects are created and instantiated" msgstr "" -#: ../../writing/style.rst:173 +#: ..\..\writing\style.rst:173 msgid "change how the Python interpreter imports modules" msgstr "" -#: ../../writing/style.rst:175 +#: ..\..\writing\style.rst:175 msgid "" "it is even possible (and recommended if needed) to embed C routines in " "Python." msgstr "" -#: ../../writing/style.rst:177 +#: ..\..\writing\style.rst:177 msgid "" "However, all these options have many drawbacks and it is always better to " "use the most straightforward way to achieve your goal. The main drawback is " @@ -241,7 +241,7 @@ msgid "" "\"magic\" code." msgstr "" -#: ../../writing/style.rst:182 +#: ..\..\writing\style.rst:182 msgid "" "We consider that a Python developer should know about these nearly infinite " "possibilities, because it instills confidence that no impassable problem " @@ -249,17 +249,17 @@ msgid "" "use them is very important." msgstr "" -#: ../../writing/style.rst:187 +#: ..\..\writing\style.rst:187 msgid "" "Like a kung fu master, a Pythonista knows how to kill with a single finger, " "and never to actually do it." msgstr "" -#: ../../writing/style.rst:191 +#: ..\..\writing\style.rst:191 msgid "We are all consenting adults" msgstr "" -#: ../../writing/style.rst:193 +#: ..\..\writing\style.rst:193 msgid "" "As seen above, Python allows many tricks, and some of them are potentially " "dangerous. A good example is that any client code can override an object's " @@ -269,7 +269,7 @@ msgid "" "\"We are all consenting adults\"." msgstr "" -#: ../../writing/style.rst:200 +#: ..\..\writing\style.rst:200 msgid "" "This doesn't mean that, for example, no properties are considered private, " "and that no proper encapsulation is possible in Python. Rather, instead of " @@ -278,7 +278,7 @@ msgid "" "indicating that these elements should not be accessed directly." msgstr "" -#: ../../writing/style.rst:206 +#: ..\..\writing\style.rst:206 msgid "" "The main convention for private properties and implementation details is to " "prefix all \"internals\" with an underscore. If the client code breaks this " @@ -287,7 +287,7 @@ msgid "" "code." msgstr "" -#: ../../writing/style.rst:211 +#: ..\..\writing\style.rst:211 msgid "" "Using this convention generously is encouraged: any method or property that " "is not intended to be used by client code should be prefixed with an " @@ -297,11 +297,11 @@ msgid "" " operation." msgstr "" -#: ../../writing/style.rst:218 +#: ..\..\writing\style.rst:218 msgid "Returning values" msgstr "" -#: ../../writing/style.rst:220 +#: ..\..\writing\style.rst:220 msgid "" "When a function grows in complexity it is not uncommon to use multiple " "return statements inside the function's body. However, in order to keep a " @@ -309,7 +309,7 @@ msgid "" "returning meaningful values from many output points in the body." msgstr "" -#: ../../writing/style.rst:225 +#: ..\..\writing\style.rst:225 msgid "" "There are two main cases for returning values in a function: the result of " "the function return when it has been processed normally, and the error cases" @@ -317,7 +317,7 @@ msgid "" "to not be able to complete its computation or task." msgstr "" -#: ../../writing/style.rst:230 +#: ..\..\writing\style.rst:230 msgid "" "If you do not wish to raise exceptions for the second case, then returning a" " value, such as None or False, indicating that the function could not " @@ -329,7 +329,7 @@ msgid "" "necessary." msgstr "" -#: ../../writing/style.rst:237 +#: ..\..\writing\style.rst:237 msgid "" "However, when a function has multiple main exit points for its normal " "course, it becomes difficult to debug the returned result, so it may be " @@ -338,11 +338,11 @@ msgid "" " such a refactoring is needed." msgstr "" -#: ../../writing/style.rst:257 +#: ..\..\writing\style.rst:257 msgid "Idioms" msgstr "" -#: ../../writing/style.rst:259 +#: ..\..\writing\style.rst:259 msgid "" "A programming idiom, put simply, is a *way* to write code. The notion of " "programming idioms is discussed amply at `c2 " @@ -350,57 +350,57 @@ msgid "" "`_." msgstr "" -#: ../../writing/style.rst:262 +#: ..\..\writing\style.rst:262 msgid "Idiomatic Python code is often referred to as being *Pythonic*." msgstr "" -#: ../../writing/style.rst:264 +#: ..\..\writing\style.rst:264 msgid "" "Although there usually is one --- and preferably only one --- obvious way to" " do it; *the* way to write idiomatic Python code can be non-obvious to " "Python beginners. So, good idioms must be consciously acquired." msgstr "" -#: ../../writing/style.rst:268 +#: ..\..\writing\style.rst:268 msgid "Some common Python idioms follow:" msgstr "" -#: ../../writing/style.rst:273 +#: ..\..\writing\style.rst:273 msgid "Unpacking" msgstr "" -#: ../../writing/style.rst:275 +#: ..\..\writing\style.rst:275 msgid "" "If you know the length of a list or tuple, you can assign names to its " "elements with unpacking. For example, since ``enumerate()`` will provide a " "tuple of two elements for each item in list:" msgstr "" -#: ../../writing/style.rst:284 +#: ..\..\writing\style.rst:284 msgid "You can use this to swap variables as well:" msgstr "" -#: ../../writing/style.rst:290 +#: ..\..\writing\style.rst:290 msgid "Nested unpacking works too:" msgstr "" -#: ../../writing/style.rst:296 +#: ..\..\writing\style.rst:296 msgid "" "In Python 3, a new method of extended unpacking was introduced by " ":pep:`3132`:" msgstr "" -#: ../../writing/style.rst:307 +#: ..\..\writing\style.rst:307 msgid "Create an ignored variable" msgstr "" -#: ../../writing/style.rst:309 +#: ..\..\writing\style.rst:309 msgid "" "If you need to assign something (for instance, in :ref:`unpacking-ref`) but " "will not need that variable, use ``__``:" msgstr "" -#: ../../writing/style.rst:319 +#: ..\..\writing\style.rst:319 msgid "" "Many Python style guides recommend the use of a single underscore \"``_``\" " "for throwaway variables rather than the double underscore \"``__``\" " @@ -411,48 +411,48 @@ msgid "" " the risk of accidentally interfering with either of these other use cases." msgstr "" -#: ../../writing/style.rst:329 +#: ..\..\writing\style.rst:329 msgid "Create a length-N list of the same thing" msgstr "" -#: ../../writing/style.rst:331 +#: ..\..\writing\style.rst:331 msgid "Use the Python list ``*`` operator:" msgstr "" -#: ../../writing/style.rst:338 +#: ..\..\writing\style.rst:338 msgid "Create a length-N list of lists" msgstr "" -#: ../../writing/style.rst:340 +#: ..\..\writing\style.rst:340 msgid "" "Because lists are mutable, the ``*`` operator (as above) will create a list " "of N references to the `same` list, which is not likely what you want. " "Instead, use a list comprehension:" msgstr "" -#: ../../writing/style.rst:349 +#: ..\..\writing\style.rst:349 msgid "" "A common idiom for creating strings is to use :py:meth:`str.join` on an " "empty string." msgstr "" -#: ../../writing/style.rst:356 +#: ..\..\writing\style.rst:356 msgid "" "This will set the value of the variable *word* to 'spam'. This idiom can be " "applied to lists and tuples." msgstr "" -#: ../../writing/style.rst:358 +#: ..\..\writing\style.rst:358 msgid "" "Sometimes we need to search through a collection of things. Let's look at " "two options: lists and dictionaries." msgstr "" -#: ../../writing/style.rst:360 +#: ..\..\writing\style.rst:360 msgid "Take the following code for example:" msgstr "" -#: ../../writing/style.rst:373 +#: ..\..\writing\style.rst:373 msgid "" "Even though both functions look identical, because *lookup_dict* is " "utilizing the fact that dictionaries in Python are hashtables, the lookup " @@ -464,15 +464,15 @@ msgid "" "table>`_ page." msgstr "" -#: ../../writing/style.rst:382 +#: ..\..\writing\style.rst:382 msgid "Zen of Python" msgstr "" -#: ../../writing/style.rst:384 +#: ..\..\writing\style.rst:384 msgid "Also known as :pep:`20`, the guiding principles for Python's design." msgstr "" -#: ../../writing/style.rst:411 +#: ..\..\writing\style.rst:411 msgid "" "For some examples of good Python style, see `this Stack Overflow question " "`_ or `these " @@ -480,15 +480,15 @@ msgid "" "`_." msgstr "" -#: ../../writing/style.rst:417 +#: ..\..\writing\style.rst:417 msgid "PEP 8" msgstr "" -#: ../../writing/style.rst:419 +#: ..\..\writing\style.rst:419 msgid ":pep:`8` is the de-facto code style guide for Python." msgstr "" -#: ../../writing/style.rst:421 +#: ..\..\writing\style.rst:421 msgid "" "Conforming your Python code to PEP 8 is generally a good idea and helps make" " code more consistent when working on projects with other developers. There " @@ -497,26 +497,26 @@ msgid "" "command in your Terminal:" msgstr "" -#: ../../writing/style.rst:433 +#: ..\..\writing\style.rst:433 msgid "" "Then run it on a file or series of files to get a report of any violations." msgstr "" -#: ../../writing/style.rst:448 +#: ..\..\writing\style.rst:448 msgid "Conventions" msgstr "" -#: ../../writing/style.rst:450 +#: ..\..\writing\style.rst:450 msgid "" "Here are some conventions you should follow to make your code easier to " "read." msgstr "" -#: ../../writing/style.rst:453 +#: ..\..\writing\style.rst:453 msgid "Check if variable equals a constant" msgstr "" -#: ../../writing/style.rst:455 +#: ..\..\writing\style.rst:455 msgid "" "You don't need to explicitly compare a value to True, or None, or 0 - you " "can just add it to the if statement. See `Truth Value Testing " @@ -524,33 +524,33 @@ msgid "" "list of what is considered false." msgstr "" -#: ../../writing/style.rst:460 ../../writing/style.rst:492 -#: ../../writing/style.rst:524 ../../writing/style.rst:544 -#: ../../writing/style.rst:583 ../../writing/style.rst:618 +#: ..\..\writing\style.rst:460 ..\..\writing\style.rst:492 +#: ..\..\writing\style.rst:524 ..\..\writing\style.rst:544 +#: ..\..\writing\style.rst:583 ..\..\writing\style.rst:618 msgid "**Bad**:" msgstr "" -#: ../../writing/style.rst:470 ../../writing/style.rst:502 -#: ../../writing/style.rst:535 ../../writing/style.rst:553 -#: ../../writing/style.rst:592 ../../writing/style.rst:629 +#: ..\..\writing\style.rst:470 ..\..\writing\style.rst:502 +#: ..\..\writing\style.rst:535 ..\..\writing\style.rst:553 +#: ..\..\writing\style.rst:592 ..\..\writing\style.rst:629 msgid "**Good**:" msgstr "" -#: ../../writing/style.rst:487 +#: ..\..\writing\style.rst:487 msgid "Access a Dictionary Element" msgstr "" -#: ../../writing/style.rst:489 +#: ..\..\writing\style.rst:489 msgid "" "Don't use the :py:meth:`dict.has_key` method. Instead, use ``x in d`` " "syntax, or pass a default argument to :py:meth:`dict.get`." msgstr "" -#: ../../writing/style.rst:516 +#: ..\..\writing\style.rst:516 msgid "Short Ways to Manipulate Lists" msgstr "" -#: ../../writing/style.rst:518 +#: ..\..\writing\style.rst:518 msgid "" "`List comprehensions `_ provide a powerful, concise way to work with lists. " @@ -558,37 +558,37 @@ msgid "" "operations on lists using a different, more concise syntax." msgstr "" -#: ../../writing/style.rst:562 +#: ..\..\writing\style.rst:562 msgid "Use :py:func:`enumerate` keep a count of your place in the list." msgstr "" -#: ../../writing/style.rst:574 +#: ..\..\writing\style.rst:574 msgid "" "The :py:func:`enumerate` function has better readability than handling a " "counter manually. Moreover, it is better optimized for iterators." msgstr "" -#: ../../writing/style.rst:578 +#: ..\..\writing\style.rst:578 msgid "Read From a File" msgstr "" -#: ../../writing/style.rst:580 +#: ..\..\writing\style.rst:580 msgid "" "Use the ``with open`` syntax to read from files. This will automatically " "close files for you." msgstr "" -#: ../../writing/style.rst:600 +#: ..\..\writing\style.rst:600 msgid "" "The ``with`` statement is better because it will ensure you always close the" " file, even if an exception is raised inside the ``with`` block." msgstr "" -#: ../../writing/style.rst:604 +#: ..\..\writing\style.rst:604 msgid "Line Continuations" msgstr "" -#: ../../writing/style.rst:606 +#: ..\..\writing\style.rst:606 msgid "" "When a logical line of code is longer than the accepted limit, you need to " "split it over multiple physical lines. The Python interpreter will join " @@ -598,7 +598,7 @@ msgid "" "will break the code and may have unexpected results." msgstr "" -#: ../../writing/style.rst:613 +#: ..\..\writing\style.rst:613 msgid "" "A better solution is to use parentheses around your elements. Left with an " "unclosed parenthesis on an end-of-line the Python interpreter will join the " @@ -606,7 +606,7 @@ msgid "" "curly and square braces." msgstr "" -#: ../../writing/style.rst:642 +#: ..\..\writing\style.rst:642 msgid "" "However, more often than not having to split long logical line is a sign " "that you are trying to do too many things at the same time, which may hinder" diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.po b/docs/locale/ko/LC_MESSAGES/writing/tests.po index 46b449160..e89e7592e 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/tests.po +++ b/docs/locale/ko/LC_MESSAGES/writing/tests.po @@ -11,32 +11,32 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../writing/tests.rst:2 +#: ..\..\writing\tests.rst:2 msgid "Testing Your Code" msgstr "" -#: ../../writing/tests.rst:4 +#: ..\..\writing\tests.rst:4 msgid "Testing your code is very important." msgstr "" -#: ../../writing/tests.rst:6 +#: ..\..\writing\tests.rst:6 msgid "" "Getting used to writing the testing code and the running code in parallel is" " now considered a good habit. Used wisely, this method helps you define more" " precisely your code's intent and have a more decoupled architecture." msgstr "" -#: ../../writing/tests.rst:10 +#: ..\..\writing\tests.rst:10 msgid "Some general rules of testing:" msgstr "" -#: ../../writing/tests.rst:12 +#: ..\..\writing\tests.rst:12 msgid "" "A testing unit should focus on one tiny bit of functionality and prove it " "correct." msgstr "" -#: ../../writing/tests.rst:15 +#: ..\..\writing\tests.rst:15 msgid "" "Each test unit must be fully independent. Each of them must be able to run " "alone, and also within the test suite, regardless of the order they are " @@ -45,7 +45,7 @@ msgid "" "handled by :meth:`setUp()` and :meth:`tearDown()` methods." msgstr "" -#: ../../writing/tests.rst:21 +#: ..\..\writing\tests.rst:21 msgid "" "Try hard to make tests that run fast. If one single test needs more than a " "few millisecond to run, development will be slowed down or the tests will " @@ -56,27 +56,27 @@ msgid "" "often as needed." msgstr "" -#: ../../writing/tests.rst:29 +#: ..\..\writing\tests.rst:29 msgid "" "Learn your tools and learn how to run a single test or a test case. Then, " "when developing a function inside a module, run this function's tests very " "often, ideally automatically when you save the code." msgstr "" -#: ../../writing/tests.rst:33 +#: ..\..\writing\tests.rst:33 msgid "" "Always run the full test suite before a coding session, and run it again " "after. This will give you more confidence that you did not break anything in" " the rest of the code." msgstr "" -#: ../../writing/tests.rst:37 +#: ..\..\writing\tests.rst:37 msgid "" "It is a good idea to implement a hook that runs all tests before pushing " "code to a shared repository." msgstr "" -#: ../../writing/tests.rst:40 +#: ..\..\writing\tests.rst:40 msgid "" "If you are in the middle of a development session and have to interrupt your" " work, it is a good idea to write a broken unit test about what you want to " @@ -84,14 +84,14 @@ msgid "" " were and get back on track faster." msgstr "" -#: ../../writing/tests.rst:45 +#: ..\..\writing\tests.rst:45 msgid "" "The first step when you are debugging your code is to write a new test " "pinpointing the bug. While it is not always possible to do, those bug " "catching tests are among the most valuable pieces of code in your project." msgstr "" -#: ../../writing/tests.rst:49 +#: ..\..\writing\tests.rst:49 msgid "" "Use long and descriptive names for testing functions. The style guide here " "is slightly different than that of running code, where short names are often" @@ -102,7 +102,7 @@ msgid "" " test fails, and should be as descriptive as possible." msgstr "" -#: ../../writing/tests.rst:57 +#: ..\..\writing\tests.rst:57 msgid "" "When something goes wrong or has to be changed, and if your code has a good " "set of tests, you or other maintainers will rely largely on the testing " @@ -111,7 +111,7 @@ msgid "" " whose purpose is unclear is not very helpful is this case." msgstr "" -#: ../../writing/tests.rst:64 +#: ..\..\writing\tests.rst:64 msgid "" "Another use of the testing code is as an introduction to new developers. " "When someone will have to work on the code base, running and reading the " @@ -122,50 +122,50 @@ msgid "" "working path that has not been plugged into the interface." msgstr "" -#: ../../writing/tests.rst:73 +#: ..\..\writing\tests.rst:73 msgid "The Basics" msgstr "" -#: ../../writing/tests.rst:77 +#: ..\..\writing\tests.rst:77 msgid "Unittest" msgstr "" -#: ../../writing/tests.rst:79 +#: ..\..\writing\tests.rst:79 msgid "" ":mod:`unittest` is the batteries-included test module in the Python standard" " library. Its API will be familiar to anyone who has used any of the " "JUnit/nUnit/CppUnit series of tools." msgstr "" -#: ../../writing/tests.rst:83 +#: ..\..\writing\tests.rst:83 msgid "" "Creating test cases is accomplished by subclassing " ":class:`unittest.TestCase`." msgstr "" -#: ../../writing/tests.rst:96 +#: ..\..\writing\tests.rst:96 msgid "" "As of Python 2.7 unittest also includes its own test discovery mechanisms." msgstr "" -#: ../../writing/tests.rst:98 +#: ..\..\writing\tests.rst:98 msgid "" "`unittest in the standard library documentation " "`_" msgstr "" -#: ../../writing/tests.rst:102 +#: ..\..\writing\tests.rst:102 msgid "Doctest" msgstr "" -#: ../../writing/tests.rst:104 +#: ..\..\writing\tests.rst:104 msgid "" "The :mod:`doctest` module searches for pieces of text that look like " "interactive Python sessions in docstrings, and then executes those sessions " "to verify that they work exactly as shown." msgstr "" -#: ../../writing/tests.rst:108 +#: ..\..\writing\tests.rst:108 msgid "" "Doctests have a different use case than proper unit tests: they are usually " "less detailed and don't catch special cases or obscure regression bugs. They" @@ -174,149 +174,149 @@ msgid "" "the full test suite runs." msgstr "" -#: ../../writing/tests.rst:114 +#: ..\..\writing\tests.rst:114 msgid "A simple doctest in a function:" msgstr "" -#: ../../writing/tests.rst:133 +#: ..\..\writing\tests.rst:133 msgid "" "When running this module from the command line as in ``python module.py``, " "the doctests will run and complain if anything is not behaving as described " "in the docstrings." msgstr "" -#: ../../writing/tests.rst:138 +#: ..\..\writing\tests.rst:138 msgid "Tools" msgstr "" -#: ../../writing/tests.rst:142 +#: ..\..\writing\tests.rst:142 msgid "py.test" msgstr "" -#: ../../writing/tests.rst:144 +#: ..\..\writing\tests.rst:144 msgid "" "py.test is a no-boilerplate alternative to Python's standard unittest " "module." msgstr "" -#: ../../writing/tests.rst:150 +#: ..\..\writing\tests.rst:150 msgid "" "Despite being a fully-featured and extensible test tool, it boasts a simple " "syntax. Creating a test suite is as easy as writing a module with a couple " "of functions:" msgstr "" -#: ../../writing/tests.rst:163 +#: ..\..\writing\tests.rst:163 msgid "and then running the `py.test` command" msgstr "" -#: ../../writing/tests.rst:185 +#: ..\..\writing\tests.rst:185 msgid "" "is far less work than would be required for the equivalent functionality " "with the unittest module!" msgstr "" -#: ../../writing/tests.rst:188 +#: ..\..\writing\tests.rst:188 msgid "`py.test `_" msgstr "" -#: ../../writing/tests.rst:192 +#: ..\..\writing\tests.rst:192 msgid "Nose" msgstr "" -#: ../../writing/tests.rst:194 +#: ..\..\writing\tests.rst:194 msgid "nose extends unittest to make testing easier." msgstr "" -#: ../../writing/tests.rst:201 +#: ..\..\writing\tests.rst:201 msgid "" "nose provides automatic test discovery to save you the hassle of manually " "creating test suites. It also provides numerous plugins for features such as" " xUnit-compatible test output, coverage reporting, and test selection." msgstr "" -#: ../../writing/tests.rst:205 +#: ..\..\writing\tests.rst:205 msgid "`nose `_" msgstr "" -#: ../../writing/tests.rst:209 +#: ..\..\writing\tests.rst:209 msgid "tox" msgstr "" -#: ../../writing/tests.rst:211 +#: ..\..\writing\tests.rst:211 msgid "" "tox is a tool for automating test environment management and testing against" " multiple interpreter configurations" msgstr "" -#: ../../writing/tests.rst:218 +#: ..\..\writing\tests.rst:218 msgid "" "tox allows you to configure complicated multi-parameter test matrices via a " "simple ini-style configuration file." msgstr "" -#: ../../writing/tests.rst:221 +#: ..\..\writing\tests.rst:221 msgid "`tox `_" msgstr "" -#: ../../writing/tests.rst:224 +#: ..\..\writing\tests.rst:224 msgid "Unittest2" msgstr "" -#: ../../writing/tests.rst:226 +#: ..\..\writing\tests.rst:226 msgid "" "unittest2 is a backport of Python 2.7's unittest module which has an " "improved API and better assertions over the one available in previous " "versions of Python." msgstr "" -#: ../../writing/tests.rst:229 +#: ..\..\writing\tests.rst:229 msgid "If you're using Python 2.6 or below, you can install it with pip" msgstr "" -#: ../../writing/tests.rst:235 +#: ..\..\writing\tests.rst:235 msgid "" "You may want to import the module under the name unittest to make porting " "code to newer versions of the module easier in the future" msgstr "" -#: ../../writing/tests.rst:245 +#: ..\..\writing\tests.rst:245 msgid "" "This way if you ever switch to a newer Python version and no longer need the" " unittest2 module, you can simply change the import in your test module " "without the need to change any other code." msgstr "" -#: ../../writing/tests.rst:249 +#: ..\..\writing\tests.rst:249 msgid "`unittest2 `_" msgstr "" -#: ../../writing/tests.rst:253 +#: ..\..\writing\tests.rst:253 msgid "mock" msgstr "" -#: ../../writing/tests.rst:255 +#: ..\..\writing\tests.rst:255 msgid "" ":mod:`unittest.mock` is a library for testing in Python. As of Python 3.3, " "it is available in the `standard library " "`_." msgstr "" -#: ../../writing/tests.rst:259 +#: ..\..\writing\tests.rst:259 msgid "For older versions of Python:" msgstr "" -#: ../../writing/tests.rst:265 +#: ..\..\writing\tests.rst:265 msgid "" "It allows you to replace parts of your system under test with mock objects " "and make assertions about how they have been used." msgstr "" -#: ../../writing/tests.rst:268 +#: ..\..\writing\tests.rst:268 msgid "For example, you can monkey-patch a method:" msgstr "" -#: ../../writing/tests.rst:279 +#: ..\..\writing\tests.rst:279 msgid "" "To mock classes or objects in a module under test, use the ``patch`` " "decorator. In the example below, an external search system is replaced with " @@ -324,11 +324,11 @@ msgid "" " test)." msgstr "" -#: ../../writing/tests.rst:298 +#: ..\..\writing\tests.rst:298 msgid "" "Mock has many other ways you can configure it and control its behavior." msgstr "" -#: ../../writing/tests.rst:300 +#: ..\..\writing\tests.rst:300 msgid "`mock `_" msgstr "" From 053037a88d4bb4d97006d2a2b2c9007bf142b8ae Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 14:53:56 +0900 Subject: [PATCH 009/117] modified: locale/ko/LC_MESSAGES/index.po --- docs/locale/ko/LC_MESSAGES/index.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index f051dab42..7c6cbce07 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -78,7 +78,7 @@ msgstr "이 파트는 파이썬 코드 배포를 다룹니다" #: ..\..\contents.rst.inc:78 msgid "Development Environment" -msgstr "발 환경" +msgstr "개발 환경" #: ..\..\contents.rst.inc:90 msgid "Additional Notes" From 8895fa6b43d940d2d7b640b6c2c1b688bc902fb4 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 15:12:51 +0900 Subject: [PATCH 010/117] modified: locale/ko/LC_MESSAGES/starting/which-python.po --- .../ko/LC_MESSAGES/starting/which-python.po | 116 +++++++++++++----- 1 file changed, 84 insertions(+), 32 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.po b/docs/locale/ko/LC_MESSAGES/starting/which-python.po index f1bc85d27..7374cb139 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/which-python.po +++ b/docs/locale/ko/LC_MESSAGES/starting/which-python.po @@ -5,7 +5,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -13,11 +13,11 @@ msgstr "" #: ..\..\starting\which-python.rst:2 msgid "Picking an Interpreter" -msgstr "" +msgstr "인터프리터 고르기" #: ..\..\starting\which-python.rst:7 msgid "The State of Python (2 vs 3)" -msgstr "" +msgstr "파이썬 현황(2 vs 3)" #: ..\..\starting\which-python.rst:9 msgid "" @@ -25,86 +25,94 @@ msgid "" "\"Should I choose Python 2 or Python 3\"? The answer is not as obvious as " "one might think." msgstr "" +"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오른다." +"""파이썬2를 써야할까 아니면 파이썬3를 써야할까?""" +"답은 생각처럼 간단하지 않다." #: ..\..\starting\which-python.rst:14 msgid "The basic gist of the state of things is as follows:" msgstr "" +"이 문제의 기본적인 요지는 다음과 같다." #: ..\..\starting\which-python.rst:16 msgid "Python 2.7 has been the standard for a *long* time." msgstr "" +"1. 파이썬2.7이 *오랫동안* 표준이었다." #: ..\..\starting\which-python.rst:17 msgid "" "Python 3 introduced major changes to the language, which many developers are" " unhappy with." msgstr "" +"2. 파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." #: ..\..\starting\which-python.rst:18 msgid "Python 2.7 will receive necessary security updates for a few years." msgstr "" +"3. 파이썬2.7은 향후 몇년은 필수 보안 업데이트를 받을 것이다." #: ..\..\starting\which-python.rst:19 msgid "Python 3 is continually evolving, like Python 2 did in years past." msgstr "" +"4. 파이썬3는 파이썬2가 지난 몇년간 그랬던 것처럼 계속 진화하고 있다." #: ..\..\starting\which-python.rst:21 msgid "So, you can now see why this is not such an easy decision." -msgstr "" +msgstr "이제 왜 이 문제가 쉽지 않은지 알 수 있을 것이다." #: ..\..\starting\which-python.rst:25 msgid "Recommendations" -msgstr "" +msgstr "추천" #: ..\..\starting\which-python.rst:27 msgid "I'll be blunt:" -msgstr "" +msgstr "단도직입적으로 말하겠다." #: ..\..\starting\which-python.rst:30 msgid "**Use Python 3 if...**" -msgstr "" +msgstr "**이런 경우에는 파이썬3를...**" #: ..\..\starting\which-python.rst:32 msgid "You don't care." -msgstr "" +msgstr "아무렴 어때." #: ..\..\starting\which-python.rst:33 msgid "You love Python 3." -msgstr "" +msgstr "나는 파이썬3를 사랑해." #: ..\..\starting\which-python.rst:34 msgid "You are indifferent towards 2 vs 3." -msgstr "" +msgstr "2건 3건 상관없다." #: ..\..\starting\which-python.rst:35 msgid "You don't know which one to use." -msgstr "" +msgstr "어떤 것을 써야할지 모르겠다." #: ..\..\starting\which-python.rst:36 msgid "You embrace change." -msgstr "" +msgstr "변화를 받아들이겠다." #: ..\..\starting\which-python.rst:38 msgid "**Use Python 2 if...**" -msgstr "" +msgstr "**이런 경우에는 파이썬2를...**" #: ..\..\starting\which-python.rst:40 msgid "You love Python 2 and are saddened by the future being Python 3." -msgstr "" +msgstr "파이썬2를 사랑하고 파이썬3의 미래에 대해 비관적일 때." #: ..\..\starting\which-python.rst:41 msgid "" "The stability requirements of your software would be improved by a language " "and runtime that never changes." -msgstr "" +msgstr "절대 변하지 않는 언어와 런타임으로 소프트웨어의 안정성을 향상시키겠다." #: ..\..\starting\which-python.rst:42 msgid "Software that you depend on requires it." -msgstr "" +msgstr "사용하는 소프트웨어가 파이썬2를 사용한다면." #: ..\..\starting\which-python.rst:46 msgid "So.... 3?" -msgstr "" +msgstr "그러면.... 3?" #: ..\..\starting\which-python.rst:48 msgid "" @@ -113,6 +121,9 @@ msgid "" "and improved standard library modules, security and bug fixes. Progress is " "progress." msgstr "" +"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면," +"최신 버젼의 파이썬3.x 사용을 추천한다. 모든 버젼이 새롭고 향상된 표준 라이브러리 모듈과" +"보안, 그리고 버그 수정을 제공하고 있기 때문이다. 개선이 진행 중이다." #: ..\..\starting\which-python.rst:52 msgid "" @@ -120,16 +131,21 @@ msgid "" "Python 2 exclusive library which has no adequate Python 3 ready alternative," " or you (like me) absolutely love and are inspired by Python 2." msgstr "" +"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고 오로지 파이썬2에서만 돌아가는" +"라이브러리라든가 아니면 파이썬 2를 너무나도 사랑한다면(나처럼) 파이썬2를 사용할 수" +"밖에 없을 것이다." #: ..\..\starting\which-python.rst:56 msgid "" "Check out `Can I Use Python 3? `_ to see if any" " software you're depending on will block your adoption of Python 3." msgstr "" +" `Can I Use Python 3? `_ 에서 당신이 사용 중인" +"소프트웨어에서 파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 확인해보시라." #: ..\..\starting\which-python.rst:59 msgid "`Further Reading `_" -msgstr "" +msgstr "`더 읽을 거리 `_" #: ..\..\starting\which-python.rst:61 msgid "" @@ -139,10 +155,14 @@ msgid "" "writing; if you're a beginner there are far more important things to worry " "about." msgstr "" +"`파이썬2.6, 2.7, 3.3에서 모두 돌아가는 코드를 작성하는 것도 가능하다." +"`_ 이 가이드는" +"사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지" +"다루고 있다. 초보자라면 신경써야할 대단히 중요한 사항들도 있다." #: ..\..\starting\which-python.rst:68 msgid "Implementations" -msgstr "" +msgstr "구현" #: ..\..\starting\which-python.rst:70 msgid "" @@ -150,10 +170,12 @@ msgid "" " the CPython implementation. *Python* is actually a specification for a " "language that can be implemented in many different ways." msgstr "" +"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을" +"의미할 때가 많다. *파이썬* 은 실제로 다양한 방법으로 구현될 수 있는 언어를 위한 명세이다." #: ..\..\starting\which-python.rst:75 msgid "CPython" -msgstr "" +msgstr "CPython" #: ..\..\starting\which-python.rst:77 msgid "" @@ -162,6 +184,9 @@ msgid "" " is then interpreted by a virtual machine. CPython provides the highest " "level of compatibility with Python packages and C extension modules." msgstr "" +"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스다." +"파이썬 코드를 가상 머신에 의해 해석되는 중간 바이트코드로 컴파일한다. CPython은 파이썬" +"패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공한다." #: ..\..\starting\which-python.rst:82 msgid "" @@ -169,16 +194,18 @@ msgid "" "possible audience, targeting CPython is best. To use packages which rely on " "C extensions to function, CPython is your only implementation option." msgstr "" +"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고다." +"C언어 확장 기능을 쓰는 패키지를 사용하려면 CPython이 유일한 구현 방법이다." #: ..\..\starting\which-python.rst:86 msgid "" "All versions of the Python language are implemented in C because CPython is " "the reference implementation." -msgstr "" +msgstr "파이선 언어의 모든 버젼은 C언어로 구현된다. CPython이 파이썬 구현의 리퍼런스라 그렇다." #: ..\..\starting\which-python.rst:90 msgid "PyPy" -msgstr "" +msgstr "PyPy" #: ..\..\starting\which-python.rst:92 msgid "" @@ -187,12 +214,17 @@ msgid "" "The interpreter features a just-in-time compiler and supports multiple back-" "ends (C, CLI, JVM)." msgstr "" +"`PyPy `_ 는 RPython이라 불리는 파이썬 언어의 정적 타입으로만 " +"구현된 파이썬 인터프리터다. 이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 " +"백엔드(C, CLI, JVM)를 지원한다는 것이다." #: ..\..\starting\which-python.rst:96 msgid "" "PyPy aims for maximum compatibility with the reference CPython " "implementation while improving performance." msgstr "" +"PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 " +"유지하는 동시에 그 성능을 향상시키는 것이다." #: ..\..\starting\which-python.rst:99 msgid "" @@ -200,16 +232,18 @@ msgid "" "giving PyPy a try. On a suite of benchmarks, it's currently `over 5 times " "faster than CPython `_." msgstr "" +"만약 당신의 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 " +"가치가 있다. 벤치마크에서 PyPy는 CPython보다 `5배나 빨랐다 `_." #: ..\..\starting\which-python.rst:103 msgid "" "PyPy supports Python 2.7. PyPy3 [#pypy_ver]_, released in beta, targets " "Python 3." -msgstr "" +msgstr "PyPy는 파이썬2.7을 지원한다. 베타로 나온 PyPy3 [#pypy_ver]_,는 파이썬3를 지원한다." #: ..\..\starting\which-python.rst:106 msgid "Jython" -msgstr "" +msgstr "Jython" #: ..\..\starting\which-python.rst:108 msgid "" @@ -218,20 +252,25 @@ msgid "" " Machine). Additionally, it is able to import and use any Java class like a " "Python module." msgstr "" +"`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 " +"JVM(자바 가상 머신)에서 실행시키는 파이썬 구현이다. 뿐만 아니라 Jython은 " +"자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있다." #: ..\..\starting\which-python.rst:113 msgid "" "If you need to interface with an existing Java codebase or have other " "reasons to need to write Python code for the JVM, Jython is the best choice." msgstr "" +"자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면," +" Jython은 최고의 선택이 될 것이다." #: ..\..\starting\which-python.rst:116 msgid "Jython currently supports up to Python 2.5. [#jython_ver]_" -msgstr "" +msgstr "Jython은 현재 파이썬 2.5까지 지원한다. [#jython_ver]_" #: ..\..\starting\which-python.rst:119 msgid "IronPython" -msgstr "" +msgstr "IronPython" #: ..\..\starting\which-python.rst:121 msgid "" @@ -239,6 +278,9 @@ msgid "" "the .NET framework. It can use both Python and .NET framework libraries, and" " can also expose Python code to other languages in the .NET framework." msgstr "" +"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현이다." +" 파이썬과 닷넷 프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 " +"다른 언어로 바꿀 수 있다." #: ..\..\starting\which-python.rst:125 msgid "" @@ -246,14 +288,17 @@ msgid "" "IronPython directly into the Visual Studio development environment, making " "it an ideal choice for Windows developers." msgstr "" +"`Python Tools for Visual Studio `_ 는" +"IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있다. 이는 Windows " +"개발자들에게 좋은 선택이다." #: ..\..\starting\which-python.rst:129 msgid "IronPython supports Python 2.7. [#iron_ver]_" -msgstr "" +msgstr "IronPython은 파이썬 2.7을 지원한다. [#iron_ver]_" #: ..\..\starting\which-python.rst:132 msgid "PythonNet" -msgstr "" +msgstr "PythonNet" #: ..\..\starting\which-python.rst:134 msgid "" @@ -263,6 +308,9 @@ msgid "" "that taken by IronPython (see above), to which it is more complementary than" " competing with." msgstr "" +"`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 " +"닷넷 공통 언어 런타임(CLR)을 말끔하게 통합시켜주는 패키지이다. 이는 위의 " +"IronPython이 취한 방식을 역으로 접근한 것으로, 보다 상호 보완적이다." #: ..\..\starting\which-python.rst:140 msgid "" @@ -270,24 +318,28 @@ msgid "" "non-Windows operating systems, such as OS X and Linux, to operate within the" " .NET framework. It can be run in addition to IronPython without conflict." msgstr "" +"Mono와 함께 사용하면 PythonNet은 OS X와 리눅스처럼 비Windows 운영체제에 설치된 " +"순정 버젼의 파이썬을 닷넷 프레임워크 안에서 수행될 수 있도록 해준다. IronPython과 " +"같이 사용해도 충돌하지 않는다." #: ..\..\starting\which-python.rst:145 msgid "PythonNet supports from Python 2.3 up to Python 2.7. [#pythonnet_ver]_" -msgstr "" +msgstr "PythonNet은 파이썬 2.3부터 2.7버젼까지 지원한다. [#pythonnet_ver]_" #: ..\..\starting\which-python.rst:147 msgid "http://pypy.org/compat.html" -msgstr "" +msgstr "http://pypy.org/compat.html" #: ..\..\starting\which-python.rst:149 msgid "" "http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" msgstr "" +"http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" #: ..\..\starting\which-python.rst:151 msgid "http://ironpython.codeplex.com/releases/view/81726" -msgstr "" +msgstr "http://ironpython.codeplex.com/releases/view/81726" #: ..\..\starting\which-python.rst:153 msgid "http://pythonnet.github.io/readme.html" -msgstr "" +msgstr "http://pythonnet.github.io/readme.html" From b2dee7d8af623e1480ed83188f0869f1316a9c5a Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 15:14:36 +0900 Subject: [PATCH 011/117] modified: locale/ko/LC_MESSAGES/starting/which-python.po --- docs/locale/ko/LC_MESSAGES/index.mo | Bin 2861 -> 2864 bytes .../ko/LC_MESSAGES/starting/installation.mo | Bin 2032 -> 2031 bytes .../ko/LC_MESSAGES/starting/which-python.po | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index 25567d4f4117bc4297120cf77595378191522712..7cec027df76a25c941e269aad390e722a0f17ef1 100644 GIT binary patch delta 148 zcmZ20wn1#dnR;FZ28Jc<3=BL#dJ~YA0@C||v@npq1*8>#^gAGJ3#9ou7#NNMX CrwU~N delta 55 zcmaFQ|ABu(i|R#21_onR1_l8J1_oAk1_mi0Ee51xfwUozP5{#V8&`U Date: Wed, 3 Dec 2014 15:24:20 +0900 Subject: [PATCH 012/117] modified: locale/ko/LC_MESSAGES/starting/which-python.mo modified: locale/ko/LC_MESSAGES/starting/which-python.po --- .../ko/LC_MESSAGES/starting/which-python.mo | Bin 352 -> 12444 bytes .../ko/LC_MESSAGES/starting/which-python.po | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.mo b/docs/locale/ko/LC_MESSAGES/starting/which-python.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..4100168790c93209711fcd2cb871ce05c18f3b2b 100644 GIT binary patch literal 12444 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 N*Cg6M{||qx_&?4A03HAU delta 82 zcmbP}_<%|0o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#mI_-qNcP#+%!KSy6z1shji TM^7IIM;DhM*WlpEn Date: Wed, 3 Dec 2014 16:23:15 +0900 Subject: [PATCH 013/117] modified: locale/ko/LC_MESSAGES/starting/install/linux.po modified: locale/ko/LC_MESSAGES/starting/install/osx.po --- .../ko/LC_MESSAGES/starting/install/linux.po | 72 +++++++++++++------ .../ko/LC_MESSAGES/starting/install/osx.po | 62 +++++++++++++--- 2 files changed, 104 insertions(+), 30 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po index f17d04332..1a4524134 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -5,23 +5,23 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\starting\install\linux.rst:4 +#: ../../starting/install/linux.rst:4 msgid "Installing Python on Linux" -msgstr "" +msgstr "리눅스에 파이썬 설치하기" -#: ..\..\starting\install\linux.rst:6 +#: ../../starting/install/linux.rst:6 msgid "" "The latest versions of Ubuntu and Fedora **come with Python 2.7 out of the " "box**." -msgstr "" +msgstr "최신 버전의 우분투와 페도라는 **훌륭하게도 파이썬 2.7이 딸려온다**." -#: ..\..\starting\install\linux.rst:8 +#: ../../starting/install/linux.rst:8 msgid "" "The latest versions of Redhat Enterprise (RHEL) and CentOS come with Python " "2.6. Some older versions of RHEL and CentOS come with Python 2.4 which is " @@ -31,8 +31,15 @@ msgid "" "Python 2.6 package specifically designed to install side-by-side with the " "system's Python 2.4 installation." msgstr "" +"최신 버전의 레드햇 엔터프라이즈(RHEL)과 CentOS는 파이선 2.6이 딸려온다. 조금 " +"옛날 버전의 RHEL과 CentOS는 파이썬 2.4가 딸려온다. 하지만 이 버전의 파이썬은 " +"요즘의 파이썬 개발에는 적당하지 않다. 다행히 " +"`Extra Packages for Enterprise Linux`_ " +"라는게 있다. 이 패키지는 페도라의 패키지에 대응하는 훌륭한 추가 패키지를 포함하고 " +"있다. 이 저장소는 파이썬 2.4가 설치된 시스템에서도 돌아갈 수 있도록 특별히 " +"만들어진 파이썬 2.6 패키지를 포함하고 있다." -#: ..\..\starting\install\linux.rst:18 +#: ../../starting/install/linux.rst:18 msgid "" "You do not need to install or configure anything else to use Python. Having " "said that, I would strongly recommend that you install the tools and " @@ -41,12 +48,17 @@ msgid "" "Setuptools, as it makes it much easier for you to use other third-party " "Python libraries." msgstr "" +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다." +"그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서 아래에 " +"설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools" +"는 반드시 설치해야 한다. 이것들은 다른 파이썬 서드파티 라이브러리들을 " +"사용하기 편하게 해준다." -#: ..\..\starting\install\linux.rst:25 +#: ../../starting/install/linux.rst:25 msgid "Setuptools & Pip" -msgstr "" +msgstr "Setuptools & Pip" -#: ..\..\starting\install\linux.rst:27 +#: ../../starting/install/linux.rst:27 msgid "" "The most crucial third-party Python software of all is Setuptools, which " "extends the packaging and installation facilities provided by the distutils " @@ -55,30 +67,39 @@ msgid "" " command. It also enables you to add this network installation capability to" " your own Python software with very little work." msgstr "" +"Setuptools은 모든 파이썬 서드파티 소프트웨어 중 가장 중요하다. 표준 라이브러리인 " +"distutils의 패키징과 설치 기능을 더욱 편하게 해주기 때문이다. Setuptools을 파이썬 " +"시스템에 설치하면 어느 파이썬 소프트웨어 제품이라도 명령어 한 줄로 설치할 수 있다. " +"또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." -#: ..\..\starting\install\linux.rst:34 +#: ../../starting/install/linux.rst:34 msgid "" "To obtain the latest version of Setuptools for Linux, refer to the " "documentation available here: `unix-setuptools " "`_" msgstr "" +"리눅에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 된다. " +"`unix-setuptools `_" -#: ..\..\starting\install\linux.rst:37 +#: ../../starting/install/linux.rst:37 msgid "" "The new ``easy_install`` command you have available is considered by many to" " be deprecated, so we will install its replacement: **pip**. Pip allows for " "uninstallation of packages, and is actively maintained, unlike easy_install." msgstr "" +"이제 새로운 명령을 내릴 수 있게 되었다: **easy_install** 이다. 하지만 이 명령어를 " +"불편하게 생각하는 사람들도 많다. 그러니 이를 대체할 것을 설치해보자. **pip** 는 " +"패키지의 설치 제거도 가능케 하고, easy_install와 달리 현재 활발히 유지 보수되고 있다." -#: ..\..\starting\install\linux.rst:41 +#: ../../starting/install/linux.rst:41 msgid "To install pip, simply open a command prompt and run" -msgstr "" +msgstr "pip를 설치하려면 아래 파이썬 스크립트를 실행하면 된다." -#: ..\..\starting\install\linux.rst:49 +#: ../../starting/install/linux.rst:49 msgid "Virtual Environments" -msgstr "" +msgstr "Virtual Environments" -#: ..\..\starting\install\linux.rst:51 +#: ../../starting/install/linux.rst:51 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -86,23 +107,34 @@ msgid "" " Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" +"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 " +"간의 독립성을 유지시켜주는 툴이다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, " +"프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " +"관리할 수 있도록 해준다." -#: ..\..\starting\install\linux.rst:56 +#: ../../starting/install/linux.rst:56 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" +"예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 " +"유지보수 할 수 있도록 해준다." -#: ..\..\starting\install\linux.rst:59 +#: ../../starting/install/linux.rst:59 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" +"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 " +"`Virtual Environments `_ " +"에서 볼 수 있다." -#: ..\..\starting\install\linux.rst:64 +#: ../../starting/install/linux.rst:64 msgid "" "This page is a remixed version of `another guide " "`_, which is" " available under the same license." msgstr "" +"이 페이지는 `다른 가이드 `_ " +"를 재배열 버전이다. 라이선스는 동일하다." \ No newline at end of file diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po index 1b86f4df3..f5cd25654 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po @@ -5,7 +5,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -13,13 +13,13 @@ msgstr "" #: ..\..\starting\install\osx.rst:4 msgid "Installing Python on Mac OS X" -msgstr "" +msgstr "맥 OS X에 파이썬 설치하기" #: ..\..\starting\install\osx.rst:6 msgid "" "The latest version of Mac OS X, Mavericks, **comes with Python 2.7 out of " "the box**." -msgstr "" +msgstr "맥 OS X의 최신 버전인 요세미티에는 **훌륭하게도 파이썬 2.7이 딸려온다**." #: ..\..\starting\install\osx.rst:8 msgid "" @@ -30,6 +30,10 @@ msgid "" "Setuptools, as it makes it much easier for you to use other third-party " "Python libraries." msgstr "" +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다." +"그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서 아래에 " +"설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools는 반드시" +" 설치해야 한다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." #: ..\..\starting\install\osx.rst:14 msgid "" @@ -38,14 +42,17 @@ msgid "" "from the `official current Python release `_, which is considered the stable production version." msgstr "" +"OS X에 포함된 파이썬의 버젼은 배우기에는 최고다. 하지만 개발에는 좋지 않다. " +"OS X에 딸려온 버젼은 안정화된 `공식 릴리즈 된 파이썬" +" `_ 보다 구버전일 것이다." #: ..\..\starting\install\osx.rst:20 msgid "Doing it Right" -msgstr "" +msgstr "바로 시작하기" #: ..\..\starting\install\osx.rst:22 msgid "Let's install a real version of Python." -msgstr "" +msgstr "진짜 파이썬을 설치해보자!" #: ..\..\starting\install\osx.rst:24 msgid "" @@ -55,12 +62,20 @@ msgid "" " Apple account) or the even smaller `OSX-GCC-Installer " "`_ package." msgstr "" +"파이썬을 설치하기 전에 GCC를 설치해야 한다. GCC는 " +"`XCode `_ 를 설치하면서 얻을 수 있다. " +"더 작은 버전인 `Command Line Tools `_ " +"(애플 계정이 있어야 한다) 에서도 얻을 수 있고, 그보다도 더 작은 버젼인 " +"`OSX-GCC-Installer `_ " +"패키지에서도 얻을 수 있다." #: ..\..\starting\install\osx.rst:31 msgid "" "If you already have XCode installed, do not install OSX-GCC-Installer. In " "combination, the software can cause issues that are difficult to diagnose." msgstr "" +"이미 XCode를 설치했으면 OSX-GCC-Installer는 설치하면 안된다." +"두개를 모두 설치하면 원인을 밝히 어려운 문제를 일으킬 수 있다." #: ..\..\starting\install\osx.rst:35 msgid "" @@ -68,12 +83,18 @@ msgid "" "Linux systems will notice one key component missing: a decent package " "manager. `Homebrew `_ fills this void." msgstr "" +"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 한가지가 " +"빠져있다는 사실을 알아챌 것이다. 훌륭한 패키지 매니저가 없다는 것이다. 하지만 " +"`Homebrew `_ 가 그 빈자리를 채워준다." #: ..\..\starting\install\osx.rst:39 msgid "" "To `install Homebrew " "`_, simply run" msgstr "" +"`Homebrew를 설치하기 위해서는 " +"`_, 아래 코드를 " +"그냥 실행하기만 하면 된다." #: ..\..\starting\install\osx.rst:46 msgid "" @@ -83,22 +104,25 @@ msgid "" " this by adding the following line at the bottom of your :file:`~/.profile` " "file" msgstr "" +"이 스크립트는 설치가 시작되기 전에 설치로 인해 변경되는 것들과 명령어를 설명해준다. " +"Homebrew가 설치됐으면 Homebrew 디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣자. " +":file:`~/.profile` 파일의 마지막 줄에 다음과 같이 덧붙이면 된다." #: ..\..\starting\install\osx.rst:56 msgid "Now, we can install Python 2.7:" -msgstr "" +msgstr "이제 우리는 파이썬 2.7을 설치할 수 있다." #: ..\..\starting\install\osx.rst:62 msgid "This will take a minute or two." -msgstr "" +msgstr "1~2분 정도 걸릴 것이다." #: ..\..\starting\install\osx.rst:66 msgid "Setuptools & Pip" -msgstr "" +msgstr "Setuptools & Pip" #: ..\..\starting\install\osx.rst:68 msgid "Homebrew installs Setuptools and ``pip`` for you." -msgstr "" +msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해준다." #: ..\..\starting\install\osx.rst:70 msgid "" @@ -107,6 +131,9 @@ msgid "" "(``easy_install``). It also enables you to add this network installation " "capability to your own Python software with very little work." msgstr "" +"Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 " +"편리한 파이썬 소프트웨어를 다운로드받고 설치할 수 있도록 해준다. 또한 최소한의 " +"작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." #: ..\..\starting\install\osx.rst:75 msgid "" @@ -115,10 +142,14 @@ msgid "" "`several ways `_, and is actively maintained." msgstr "" +"``pip`` 는 파이썬 패키지를 손쉽게 설치하고 관리할 수 있게 해주는 툴이다. " +"``easy_install`` 로 설치할 것을 추천한다. ``easy_install`` 는 " +"`많은 면 `_ " +"에서 탁월하고, 또한 활발히 유지 보수되고 있다." #: ..\..\starting\install\osx.rst:81 msgid "Virtual Environments" -msgstr "" +msgstr "Virtual Environments" #: ..\..\starting\install\osx.rst:83 msgid "" @@ -128,12 +159,18 @@ msgid "" " Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" +"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 " +"간의 독립성을 유지시켜주는 툴이다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, " +"프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " +"관리할 수 있도록 해준다." #: ..\..\starting\install\osx.rst:88 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" +"예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 " +"유지보수 할 수 있도록 해준다." #: ..\..\starting\install\osx.rst:91 msgid "" @@ -141,6 +178,9 @@ msgid "" "`_ docs." msgstr "" +"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 " +"`Virtual Environments `_ " +"에서 볼 수 있다." #: ..\..\starting\install\osx.rst:96 msgid "" @@ -148,3 +188,5 @@ msgid "" "`_, which is" " available under the same license." msgstr "" +"이 페이지는 `다른 가이드 `_ " +"를 재배열 버전이다. 라이선스는 동일하다." \ No newline at end of file From 0b54975b68b9f0640e49d93b51dbbf1457b59693 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 16:30:10 +0900 Subject: [PATCH 014/117] modified: locale/ko/LC_MESSAGES/starting/install/win.po --- .../ko/LC_MESSAGES/starting/install/win.po | 90 ++++++++++++++----- 1 file changed, 68 insertions(+), 22 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.po b/docs/locale/ko/LC_MESSAGES/starting/install/win.po index e8c042a0b..790226f28 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/win.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/win.po @@ -5,17 +5,17 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\starting\install\win.rst:4 +#: ../../starting/install/win.rst:4 msgid "Installing Python on Windows" -msgstr "" +msgstr "Windows에 파이썬 설치하기" -#: ..\..\starting\install\win.rst:6 +#: ../../starting/install/win.rst:6 msgid "" "First, download the `latest version " "`_ of Python 2.7 from " @@ -23,15 +23,23 @@ msgid "" "to-date version then use the \"Windows Installer\" link from the home page " "of the `Python.org web site `_ ." msgstr "" +"우선 공식 웹사이트에서 파이썬 2.7의 `최신 버전 " +"`_ 을 다운로드 받아야 " +"한다. 확실한 최신 버전으로 파이썬을 설치하고자 한다면, `Python.org web " +"site `_ 홈페이지의 "Windows Installer" 링크에서 다운받으면 " +"된다." -#: ..\..\starting\install\win.rst:11 +#: ../../starting/install/win.rst:11 msgid "" "The Windows version is provided as an MSI package. To install it manually, " "just double-click the file. The MSI package format allows Windows " "administrators to automate installation with their standard tools." msgstr "" +"Windows버전은 MSI 패키지 형태로 제공된다. 수동으로 설치하고자 한다면, 그냥 파일을 " +"더블 클릭하면 된다. MSI 패키지 포맷은 Windows 관리자 계정 사용자로 하여금 Windows " +"표준 도구를 자동 설치할 수 있게 해준다." -#: ..\..\starting\install\win.rst:15 +#: ../../starting/install/win.rst:15 msgid "" "By design, Python installs to a directory with the version number embedded, " "e.g. Python version 2.7 will install at :file:`C:\\\\Python27\\\\`, so that " @@ -41,20 +49,28 @@ msgid "" ":envvar:`PATH` environment variable, so that you always have control over " "which copy of Python is run." msgstr "" +"파이썬이 설치되는 디렉토리는 버전 숫자를 포함하도록 디자인되어 있다. 예를 들어 " +"파이썬 2.7을 설치하면 :file:`C:\\Python27\\` 디렉토리에 설치되는 것이다. " +"덕분에 하나의 시스템에서 충돌 없어 여러 버전의 파이썬을 사용할 수 있다. 물론 오직 " +"하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있다. :envvar:`PATH` " +"환경 변수가 자동으로 변경되지도 않는다. 그러니 실해되는 파이썬의 버전을 늘 관리해야 한다." -#: ..\..\starting\install\win.rst:23 +#: ../../starting/install/win.rst:23 msgid "" "Typing the full path name for a Python interpreter each time quickly gets " "tedious, so add the directories for your default Python version to the " ":envvar:`PATH`. Assuming that your Python installation is in " ":file:`C:\\\\Python27\\\\`, add this to your :envvar:`PATH`:" msgstr "" +"파이썬 인터프리터의 전체 경로명을 매번 입력하는 일은 금새 싫증난다. 그러니 컴퓨터의 " +"기본 파이썬 버전이 있는 디렉토리에 envvar:`PATH` 를 추가하라. 파이썬이 " +":file:`C:\\Python27\\` 에 설치되었다면 아래와 같이 추가하라." -#: ..\..\starting\install\win.rst:32 +#: ../../starting/install/win.rst:32 msgid "You can do this easily by running the following in ``powershell``:" -msgstr "" +msgstr "``powershell`` 에서 간단하게 설할 수도 있다." -#: ..\..\starting\install\win.rst:38 +#: ../../starting/install/win.rst:38 msgid "" "The second (:file:`Scripts`) directory receives command files when certain " "packages are installed, so it is a very useful addition. You do not need to " @@ -64,12 +80,18 @@ msgid "" "use. In particular, you should always install Setuptools, as it makes it " "much easier for you to use other third-party Python libraries." msgstr "" +"두번째 스크립트는 패키지가 설치될 때마다 디렉토리에 PATH를 설정하는 명령어를 " +"실행시키기 때문에 아주 유용하다. 이제 파이썬을 사용하기 위해 달리 설치하거나 " +"설정해줘야만 하는 것은 없다. 그렇기 해도 실제로 사용할 파이썬 어플리케이션을 " +"만들기 전에 이 가이드에서 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 " +"추천한다. 특히 Setuptools는 반드시 설치해야 한다. " +"이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." -#: ..\..\starting\install\win.rst:47 +#: ../../starting/install/win.rst:47 msgid "Setuptools + Pip" -msgstr "" +msgstr "Setuptools + Pip" -#: ..\..\starting\install\win.rst:49 +#: ../../starting/install/win.rst:49 msgid "" "The most crucial third-party Python software of all is Setuptools, which " "extends the packaging and installation facilities provided by the distutils " @@ -78,33 +100,46 @@ msgid "" " command. It also enables you to add this network installation capability to" " your own Python software with very little work." msgstr "" +"Setuptools은 모든 파이썬 서드파티 소프트웨어 중 가장 중요하다. 표준 라이브러리인 " +"distutils의 패키징과 설치 기능을 더욱 편하게 해주기 때문이다. Setuptools을 " +"파이썬 시스템에 설치하면 어느 파이썬 소프트웨어 제품이라도 명령어 한 줄로 설치할 " +"수 있다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 " +"가능하게 한다." -#: ..\..\starting\install\win.rst:56 +#: ../../starting/install/win.rst:56 msgid "" "To obtain the latest version of Setuptools for Windows, run the Python " "script available here: `ez_setup.py " "`_" msgstr "" +"Windows에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 된다." +"`ez_setup.py `_" -#: ..\..\starting\install\win.rst:60 +#: ../../starting/install/win.rst:60 msgid "" "You'll now have a new command available to you: **easy_install**. It is " "considered by many to be deprecated, so we will install its replacement: " "**pip**. Pip allows for uninstallation of packages, and is actively " "maintained, unlike easy_install." msgstr "" +"이제 새로운 명령을 내릴 수 있게 되었다: **easy_install** 이다. 하지만 이 " +"명령어를 불편하게 생각하는 사람들도 많다. 그러니 이를 대체할 것을 설치해보자. " +"**pip** 는 패키지의 설치 제거도 가능케 하고, easy_install와 달리 현재 " +"활발히 유지 보수되고 있다." -#: ..\..\starting\install\win.rst:65 +#: ../../starting/install/win.rst:65 msgid "" "To install pip, run the Python script available here: `get-pip.py " "`_" msgstr "" +"pip를 설치하려면 아래 파이썬 스크립트를 실행하면 된다. " +"`get-pip.py `_" -#: ..\..\starting\install\win.rst:70 +#: ../../starting/install/win.rst:70 msgid "Virtual Environments" -msgstr "" +msgstr "Virtual Environments" -#: ..\..\starting\install\win.rst:72 +#: ../../starting/install/win.rst:72 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -112,23 +147,34 @@ msgid "" " Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" +"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 " +"프로젝트들 간의 독립성을 유지시켜주는 툴이다. 이는 \"프로젝트 X는 버전 " +"1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. " +"그리고 전역 패키지를 깨끗하게 관리할 수 있도록 해준다." -#: ..\..\starting\install\win.rst:77 +#: ../../starting/install/win.rst:77 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" +"예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 " +"프로젝트를 유지보수 할 수 있도록 해준다." -#: ..\..\starting\install\win.rst:80 +#: ../../starting/install/win.rst:80 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" +"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면" +" `Virtual Environments `_ " +"에서 볼 수 있다." -#: ..\..\starting\install\win.rst:85 +#: ../../starting/install/win.rst:85 msgid "" "This page is a remixed version of `another guide " "`_, which is" " available under the same license." msgstr "" +"이 페이지는 `다른 가이드 `_ " +"를 재배열한 버전이다. 라이선스는 동일하다." \ No newline at end of file From b5b54956dbe128a6ca1e39d918dc7e1911e98d86 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 17:39:34 +0900 Subject: [PATCH 015/117] modified: locale/ko/LC_MESSAGES/starting/installation.po modified: locale/ko/LC_MESSAGES/writing/structure.po --- .../ko/LC_MESSAGES/starting/installation.po | 2 +- .../ko/LC_MESSAGES/writing/structure.po | 215 +++++++++++------- 2 files changed, 129 insertions(+), 88 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.po b/docs/locale/ko/LC_MESSAGES/starting/installation.po index e6d023277..e6ae61893 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/installation.po +++ b/docs/locale/ko/LC_MESSAGES/starting/installation.po @@ -40,7 +40,7 @@ msgstr "설치 가이드" #: ..\..\starting\installation.rst:17 msgid "" "for development purposes, as well as setuptools, pip, and virtualenv setup." -msgstr "개발을 위한 설치 뿐만 아니라 setuptools, pip, and virtualenv의 설치도 다룬다." +msgstr "이 가이드는 파이썬 개발을 위한 설치 뿐만 아니라 setuptools, pip, and virtualenv의 설치도 다룬다." #: ..\..\starting\installation.rst:19 msgid ":ref:`Mac OS X `." diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index bb38a6eb2..69f074c27 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -5,46 +5,57 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\writing\structure.rst:2 +#: ../../writing/structure.rst:2 msgid "Structuring Your Project" msgstr "프로젝트 구성하기" -#: ..\..\writing\structure.rst:4 +#: ../../writing/structure.rst:4 msgid "" "By \"structure\" we mean the decisions you make concerning how your project " "best meets its objective. We need to consider how to best leverage Python's " "features to create clean, effective code. In practical terms, \"structure\" " "means making clean code whose logic and dependencies are clear as well as " "how the files and folders are organized in the filesystem." -msgstr "test" +msgstr "" +"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 " +"의사결정을 의미한다. 우리는 깔끔하고 효율적인 코드라는 파이썬의 특성을 극대화 할 수 " +"있는 방법을 고민할 필요가 있다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한 코드를 " +"만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제다." -#: ..\..\writing\structure.rst:11 +#: ../../writing/structure.rst:11 msgid "" "Which functions should go into which modules? How does data flow through the" " project? What features and functions can be grouped together and isolated? " "By answering questions like these you can begin to plan, in a broad sense, " "what your finished product will look like." msgstr "" +"어느 모듈에 어느 기능이 들어가야 할까? 프로젝트에서 데이터는 어덯게 흘러가야 할까? " +"어떤 특징과 기능이 통합되거나 분리되어야 할까? 이러한 질문에 답함으로써 프로젝트의 " +"계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있다." -#: ..\..\writing\structure.rst:16 +#: ../../writing/structure.rst:16 msgid "" "In this section we take a closer look at Python's module and import systems " "as they are the central elements to enforcing structure in your project. We " "then discuss various perspectives on how to build code which can be extended" " and tested reliably." msgstr "" +"이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것이다. 이 2가지가 " +"프로젝트를 위한 강력한 구조를 만들기 위한 핵심적인 요소이기 때문이다. 그런 다음, " +"확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 " +"관점에서 검토할 것이다." -#: ..\..\writing\structure.rst:23 +#: ../../writing/structure.rst:23 msgid "Structure is Key" -msgstr "" +msgstr "구성이 중요하다" -#: ..\..\writing\structure.rst:25 +#: ../../writing/structure.rst:25 msgid "" "Thanks to the way imports and modules are handled in Python, it is " "relatively easy to structure a Python project. Easy, here, means that you do" @@ -52,14 +63,19 @@ msgid "" "grasp. Therefore, you are left with the pure architectural task of crafting " "the different parts of your project and their interactions." msgstr "" +"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽다. " +"여기서 쉽다는 말은 제약이 많지 않고, 모듈을 불러오는 방식이 이해하기 쉽다는 뜻이다. " +"따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 하면 된다." -#: ..\..\writing\structure.rst:32 +#: ../../writing/structure.rst:32 msgid "" "Easy structuring of a project means it is also easy to do it poorly. Some " "signs of a poorly structured project include:" msgstr "" +"프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻이다. 프로젝트가 " +"엉망으로 구성되었다는 신호를 몇 가지 찾아보았다." -#: ..\..\writing\structure.rst:36 +#: ../../writing/structure.rst:36 msgid "" "Multiple and messy circular dependencies: if your classes Table and Chair in" " :file:`furn.py` need to import Carpenter from :file:`workers.py` to answer " @@ -69,16 +85,26 @@ msgid "" "you will have to resort to fragile hacks such as using import statements " "inside methods or functions." msgstr "" +"복잡한 순환 참조: ``책상.누가 만들었나()`` 같은 질문에 답하려면 :file:`가구.py` 의 " +"탁자와 의자가 :file:`작업자.py` 에서 목수를 불러와야 하는데, 반대로 ``목수.뭐하니()`` " +"같은 질문에 답하려면 목수가 책상과 의자를 불러와야만 하는 경우가 있다. 이것이 " +"순환 참조다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 " +"난도질스러운 방법에 의존하는 수 밖에 없다." -#: ..\..\writing\structure.rst:45 +#: ../../writing/structure.rst:45 msgid "" "Hidden coupling: each and every change in Table's implementation breaks 20 " "tests in unrelated test cases because it breaks Carpenter's code, which " "requires very careful surgery to adapt the change. This means you have too " "many assumptions about Table in Carpenter's code or the reverse." msgstr "" +"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 " +"안돌아가게 한다. 책상의 코드 변경이 목수의 코드를 무너뜨리기 때문이다. 이럴 " +"때 코드 변경을 하려면 아주 신중한 수술을 해야한다. 이 말인즉, 목수의 코드 안에 " +"있는 책상의 코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 " +"한다는 뜻이다." -#: ..\..\writing\structure.rst:51 +#: ../../writing/structure.rst:51 msgid "" "Heavy usage of global state or context: instead of explicitly passing " "``(height, width, type, wood)`` to each other, Table and Carpenter rely on " @@ -88,8 +114,13 @@ msgid "" "discover that remote template code is also modifying this context, messing " "with table dimensions." msgstr "" +"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 " +"정의하지 않는 경우다. 목수가 언제든 아무나 바꿀 수 있는 전역 변수를 사용하기 " +"시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생긴다. 어쩌다가 이런 " +"일이 벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 견본 코드가 " +"문맥을 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 것이다." -#: ..\..\writing\structure.rst:60 +#: ../../writing/structure.rst:60 msgid "" "Spaghetti code: multiple pages of nested if clauses and for loops with a lot" " of copy-pasted procedural code and no proper segmentation are known as " @@ -97,8 +128,13 @@ msgid "" "controversial features) make it very hard to maintain this kind of code. So " "the good news is that you might not see too much of it." msgstr "" +"스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 " +"for반복문이 어지럽게 반복되며, 적절하게 나눠지지도 않은 코드를 스파게티 " +"코드라고 한다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 " +"있기 때문에 이런 복잡하고 어지러운 코드는 유지 보수하기가 어렵다. " +"다행히 이런 난장판을 많이 볼 일은 없을 것이다." -#: ..\..\writing\structure.rst:67 +#: ../../writing/structure.rst:67 msgid "" "Ravioli code is more likely in Python: it consists of hundreds of similar " "little pieces of logic, often classes or objects, without proper structure. " @@ -106,19 +142,24 @@ msgid "" "Table, or even TableNew for your task at hand, you might be swimming in " "ravioli code." msgstr "" +"라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 " +"볼 수 있다. 구조화도 되어있지 않으면서 수 백개의 비슷한 로직이나 작은 클래스, " +"또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 한다. 식탁을 " +"써야하는지, 탁자를 써야하는지, 그도 아니면 새 책상이 필요한건지 도무지 " +"기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것이다." -#: ..\..\writing\structure.rst:75 +#: ../../writing/structure.rst:75 msgid "Modules" -msgstr "" +msgstr "모듈" -#: ..\..\writing\structure.rst:77 +#: ../../writing/structure.rst:77 msgid "" "Python modules are one of the main abstraction layers available and probably" " the most natural one. Abstraction layers allow separating code into parts " "holding related data and functionality." msgstr "" -#: ..\..\writing\structure.rst:81 +#: ../../writing/structure.rst:81 msgid "" "For example, a layer of a project can handle interfacing with user actions, " "while another would handle low-level manipulation of data. The most natural " @@ -128,14 +169,14 @@ msgid "" " ``import`` and ``from ... import`` statements." msgstr "" -#: ..\..\writing\structure.rst:88 +#: ../../writing/structure.rst:88 msgid "" "As soon as you use `import` statements you use modules. These can be either " "built-in modules such as `os` and `sys`, third-party modules you have " "installed in your environment, or your project's internal modules." msgstr "" -#: ..\..\writing\structure.rst:92 +#: ../../writing/structure.rst:92 msgid "" "To keep in line with the style guide, keep module names short, lowercase, " "and be sure to avoid using special symbols like the dot (.) or question mark" @@ -143,7 +184,7 @@ msgid "" " this way will interfere with the way Python looks for modules." msgstr "" -#: ..\..\writing\structure.rst:97 +#: ../../writing/structure.rst:97 msgid "" "In the case of `my.spam.py` Python expects to find a :file:`spam.py` file in" " a folder named :file:`my` which is not the case. There is an `example " @@ -151,20 +192,20 @@ msgid "" "notation should be used in the Python docs." msgstr "" -#: ..\..\writing\structure.rst:102 +#: ../../writing/structure.rst:102 msgid "" "If you'd like you could name your module :file:`my_spam.py`, but even our " "friend the underscore should not be seen often in module names." msgstr "" -#: ..\..\writing\structure.rst:105 +#: ../../writing/structure.rst:105 msgid "" "Aside from some naming restrictions, nothing special is required for a " "Python file to be a module, but you need to understand the import mechanism " "in order to use this concept properly and avoid some issues." msgstr "" -#: ..\..\writing\structure.rst:109 +#: ../../writing/structure.rst:109 msgid "" "Concretely, the ``import modu`` statement will look for the proper file, " "which is :file:`modu.py` in the same directory as the caller if it exists. " @@ -173,7 +214,7 @@ msgid "" "found." msgstr "" -#: ..\..\writing\structure.rst:114 +#: ../../writing/structure.rst:114 msgid "" "Once :file:`modu.py` is found, the Python interpreter will execute the " "module in an isolated scope. Any top-level statement in :file:`modu.py` will" @@ -181,14 +222,14 @@ msgid "" " are stored in the module's dictionary." msgstr "" -#: ..\..\writing\structure.rst:119 +#: ../../writing/structure.rst:119 msgid "" "Then, the module's variables, functions, and classes will be available to " "the caller through the module's namespace, a central concept in programming " "that is particularly helpful and powerful in Python." msgstr "" -#: ..\..\writing\structure.rst:123 +#: ../../writing/structure.rst:123 msgid "" "In many languages, an ``include file`` directive is used by the preprocessor" " to take all code found in the file and 'copy' it into the caller's code. It" @@ -198,7 +239,7 @@ msgid "" "function with the same name." msgstr "" -#: ..\..\writing\structure.rst:129 +#: ../../writing/structure.rst:129 msgid "" "It is possible to simulate the more standard behavior by using a special " "syntax of the import statement: ``from modu import *``. This is generally " @@ -206,7 +247,7 @@ msgid "" "and makes dependencies less compartmentalized**." msgstr "" -#: ..\..\writing\structure.rst:134 +#: ../../writing/structure.rst:134 msgid "" "Using ``from modu import func`` is a way to pinpoint the function you want " "to import and put it in the global namespace. While much less harmful than " @@ -215,19 +256,19 @@ msgid "" " save a little typing." msgstr "" -#: ..\..\writing\structure.rst:139 +#: ../../writing/structure.rst:139 msgid "**Very bad**" msgstr "" -#: ..\..\writing\structure.rst:148 +#: ../../writing/structure.rst:148 msgid "**Better**" msgstr "" -#: ..\..\writing\structure.rst:156 ..\..\writing\structure.rst:443 +#: ../../writing/structure.rst:156 ../../writing/structure.rst:443 msgid "**Best**" msgstr "" -#: ..\..\writing\structure.rst:164 +#: ../../writing/structure.rst:164 msgid "" "As mentioned in the :ref:`code_style` section, readability is one of the " "main features of Python. Readability means to avoid useless boilerplate text" @@ -238,17 +279,17 @@ msgid "" "understandability in all but the simplest single file projects." msgstr "" -#: ..\..\writing\structure.rst:174 +#: ../../writing/structure.rst:174 msgid "Packages" msgstr "" -#: ..\..\writing\structure.rst:176 +#: ../../writing/structure.rst:176 msgid "" "Python provides a very straightforward packaging system, which is simply an " "extension of the module mechanism to a directory." msgstr "" -#: ..\..\writing\structure.rst:179 +#: ../../writing/structure.rst:179 msgid "" "Any directory with an :file:`__init__.py` file is considered a Python " "package. The different modules in the package are imported in a similar " @@ -257,7 +298,7 @@ msgid "" "definitions." msgstr "" -#: ..\..\writing\structure.rst:184 +#: ../../writing/structure.rst:184 msgid "" "A file :file:`modu.py` in the directory :file:`pack/` is imported with the " "statement ``import pack.modu``. This statement will look for an " @@ -268,7 +309,7 @@ msgid "" "pack.modu namespace." msgstr "" -#: ..\..\writing\structure.rst:190 +#: ../../writing/structure.rst:190 msgid "" "A commonly seen issue is to add too much code to :file:`__init__.py` files. " "When the project complexity grows, there may be sub-packages and sub-sub-" @@ -277,31 +318,31 @@ msgid "" "files met while traversing the tree." msgstr "" -#: ..\..\writing\structure.rst:196 +#: ../../writing/structure.rst:196 msgid "" "Leaving an :file:`__init__.py` file empty is considered normal and even a " "good practice, if the package's modules and sub-packages do not need to " "share any code." msgstr "" -#: ..\..\writing\structure.rst:199 +#: ../../writing/structure.rst:199 msgid "" "Lastly, a convenient syntax is available for importing deeply nested " "packages: ``import very.deep.module as mod``. This allows you to use `mod` " "in place of the verbose repetition of ``very.deep.module``." msgstr "" -#: ..\..\writing\structure.rst:204 +#: ../../writing/structure.rst:204 msgid "Object-oriented programming" msgstr "" -#: ..\..\writing\structure.rst:206 +#: ../../writing/structure.rst:206 msgid "" "Python is sometimes described as an object-oriented programming language. " "This can be somewhat misleading and needs to be clarified." msgstr "" -#: ..\..\writing\structure.rst:209 +#: ../../writing/structure.rst:209 msgid "" "In Python, everything is an object, and can be handled as such. This is what" " is meant when we say, for example, that functions are first-class objects. " @@ -311,7 +352,7 @@ msgid "" "oriented language." msgstr "" -#: ..\..\writing\structure.rst:216 +#: ../../writing/structure.rst:216 msgid "" "However, unlike Java, Python does not impose object-oriented programming as " "the main programming paradigm. It is perfectly viable for a Python project " @@ -320,7 +361,7 @@ msgid "" "oriented programming." msgstr "" -#: ..\..\writing\structure.rst:222 +#: ../../writing/structure.rst:222 msgid "" "Moreover, as seen in the modules_ section, the way Python handles modules " "and namespaces gives the developer a natural way to ensure the encapsulation" @@ -329,7 +370,7 @@ msgid "" " not use object-orientation, when it is not required by the business model." msgstr "" -#: ..\..\writing\structure.rst:229 +#: ../../writing/structure.rst:229 msgid "" "There are some reasons to avoid unnecessary object-orientation. Defining " "custom classes is useful when we want to glue together some state and some " @@ -337,7 +378,7 @@ msgid "" "functional programming, comes from the \"state\" part of the equation." msgstr "" -#: ..\..\writing\structure.rst:234 +#: ../../writing/structure.rst:234 msgid "" "In some architectures, typically web applications, multiple instances of " "Python processes are spawned to respond to external requests that can happen" @@ -353,13 +394,13 @@ msgid "" "process loaded the item, and then we have to mark as read a deleted object." msgstr "" -#: ..\..\writing\structure.rst:247 +#: ../../writing/structure.rst:247 msgid "" "This and other issues led to the idea that using stateless functions is a " "better programming paradigm." msgstr "" -#: ..\..\writing\structure.rst:250 +#: ../../writing/structure.rst:250 msgid "" "Another way to say the same thing is to suggest using functions and " "procedures with as few implicit contexts and side-effects as possible. A " @@ -370,41 +411,41 @@ msgid "" "persistence layer, it is said to have a side-effect." msgstr "" -#: ..\..\writing\structure.rst:257 +#: ../../writing/structure.rst:257 msgid "" "Carefully isolating functions with context and side-effects from functions " "with logic (called pure functions) allow the following benefits:" msgstr "" -#: ..\..\writing\structure.rst:260 +#: ../../writing/structure.rst:260 msgid "" "Pure functions are deterministic: given a fixed input, the output will " "always be the same." msgstr "" -#: ..\..\writing\structure.rst:263 +#: ../../writing/structure.rst:263 msgid "" "Pure functions are much easier to change or replace if they need to be " "refactored or optimized." msgstr "" -#: ..\..\writing\structure.rst:266 +#: ../../writing/structure.rst:266 msgid "" "Pure functions are easier to test with unit-tests: There is less need for " "complex context setup and data cleaning afterwards." msgstr "" -#: ..\..\writing\structure.rst:269 +#: ../../writing/structure.rst:269 msgid "Pure functions are easier to manipulate, decorate, and pass-around." msgstr "" -#: ..\..\writing\structure.rst:271 +#: ../../writing/structure.rst:271 msgid "" "In summary, pure functions, without any context or side-effects, are more " "efficient building blocks than classes and objects for some architectures." msgstr "" -#: ..\..\writing\structure.rst:274 +#: ../../writing/structure.rst:274 msgid "" "Obviously, object-orientation is useful and even necessary in many cases, " "for example when developing graphical desktop applications or games, where " @@ -412,11 +453,11 @@ msgid "" " relatively long life of their own in the computer's memory." msgstr "" -#: ..\..\writing\structure.rst:281 +#: ../../writing/structure.rst:281 msgid "Decorators" msgstr "" -#: ..\..\writing\structure.rst:283 +#: ../../writing/structure.rst:283 msgid "" "The Python language provides a simple yet powerful syntax called " "'decorators'. A decorator is a function or a class that wraps (or decorates)" @@ -426,7 +467,7 @@ msgid "" "@decorator syntax is clearer and thus preferred." msgstr "" -#: ..\..\writing\structure.rst:306 +#: ../../writing/structure.rst:306 msgid "" "This mechanism is useful for separating concerns and avoiding external un-" "related logic 'polluting' the core logic of the function or method. A good " @@ -437,11 +478,11 @@ msgid "" "logic." msgstr "" -#: ..\..\writing\structure.rst:315 +#: ../../writing/structure.rst:315 msgid "Dynamic typing" msgstr "" -#: ..\..\writing\structure.rst:317 +#: ../../writing/structure.rst:317 msgid "" "Python is said to be dynamically typed, which means that variables do not " "have a fixed type. In fact, in Python, variables are very different from " @@ -452,7 +493,7 @@ msgid "" "the value 'a string', then to a function." msgstr "" -#: ..\..\writing\structure.rst:325 +#: ../../writing/structure.rst:325 msgid "" "The dynamic typing of Python is often considered to be a weakness, and " "indeed it can lead to complexities and hard-to-debug code. Something named " @@ -461,36 +502,36 @@ msgid "" "completely unrelated object." msgstr "" -#: ..\..\writing\structure.rst:331 +#: ../../writing/structure.rst:331 msgid "Some guidelines help to avoid this issue:" msgstr "" -#: ..\..\writing\structure.rst:333 +#: ../../writing/structure.rst:333 msgid "Avoid using the same variable name for different things." msgstr "" -#: ..\..\writing\structure.rst:335 ..\..\writing\structure.rst:359 -#: ..\..\writing\structure.rst:423 +#: ../../writing/structure.rst:335 ../../writing/structure.rst:359 +#: ../../writing/structure.rst:423 msgid "**Bad**" msgstr "" -#: ..\..\writing\structure.rst:344 ..\..\writing\structure.rst:433 +#: ../../writing/structure.rst:344 ../../writing/structure.rst:433 msgid "**Good**" msgstr "" -#: ..\..\writing\structure.rst:353 +#: ../../writing/structure.rst:353 msgid "" "Using short functions or methods helps reduce the risk of using the same " "name for two unrelated things." msgstr "" -#: ..\..\writing\structure.rst:356 +#: ../../writing/structure.rst:356 msgid "" "It is better to use different names even for things that are related, when " "they have a different type:" msgstr "" -#: ..\..\writing\structure.rst:367 +#: ../../writing/structure.rst:367 msgid "" "There is no efficiency gain when reusing names: the assignments will have to" " create new objects anyway. However, when the complexity grows and each " @@ -498,7 +539,7 @@ msgid "" "loops, it becomes harder to ascertain what a given variable's type is." msgstr "" -#: ..\..\writing\structure.rst:373 +#: ../../writing/structure.rst:373 msgid "" "Some coding practices, like functional programming, recommend never " "reassigning a variable. In Java this is done with the `final` keyword. " @@ -508,15 +549,15 @@ msgid "" "mutable and immutable types." msgstr "" -#: ..\..\writing\structure.rst:380 +#: ../../writing/structure.rst:380 msgid "Mutable and immutable types" msgstr "" -#: ..\..\writing\structure.rst:382 +#: ../../writing/structure.rst:382 msgid "Python has two kinds of built-in or user-defined types." msgstr "" -#: ..\..\writing\structure.rst:384 +#: ../../writing/structure.rst:384 msgid "" "Mutable types are those that allow in-place modification of the content. " "Typical mutables are lists and dictionaries: All lists have mutating " @@ -524,34 +565,34 @@ msgid "" "modified in place. The same goes for dictionaries." msgstr "" -#: ..\..\writing\structure.rst:389 +#: ../../writing/structure.rst:389 msgid "" "Immutable types provide no method for changing their content. For instance, " "the variable x set to the integer 6 has no \"increment\" method. If you want" " to compute x + 1, you have to create another integer and give it a name." msgstr "" -#: ..\..\writing\structure.rst:403 +#: ../../writing/structure.rst:403 msgid "" "One consequence of this difference in behavior is that mutable types are not" " \"stable\", and therefore cannot be used as dictionary keys." msgstr "" -#: ..\..\writing\structure.rst:407 +#: ../../writing/structure.rst:407 msgid "" "Using properly mutable types for things that are mutable in nature and " "immutable types for things that are fixed in nature helps to clarify the " "intent of the code." msgstr "" -#: ..\..\writing\structure.rst:411 +#: ../../writing/structure.rst:411 msgid "" "For example, the immutable equivalent of a list is the tuple, created with " "``(1, 2)``. This tuple is a pair that cannot be changed in-place, and can be" " used as a key for a dictionary." msgstr "" -#: ..\..\writing\structure.rst:415 +#: ../../writing/structure.rst:415 msgid "" "One peculiarity of Python that can surprise beginners is that strings are " "immutable. This means that when constructing a string from its parts, it is " @@ -561,7 +602,7 @@ msgid "" "than constructing a list in a loop with calls to ``append()``." msgstr "" -#: ..\..\writing\structure.rst:451 +#: ../../writing/structure.rst:451 msgid "" "One final thing to mention about strings is that using ``join()`` is not " "always best. In the instances where you are creating a new string from a " @@ -570,7 +611,7 @@ msgid "" "existing string, using ``join()`` should be your preferred method." msgstr "" -#: ..\..\writing\structure.rst:467 +#: ../../writing/structure.rst:467 msgid "" "You can also use the :ref:`% ` formatting operator" " to concatenate a pre-determined number of strings besides " @@ -579,22 +620,22 @@ msgid "" ":py:meth:`str.format` method in the later versions." msgstr "" -#: ..\..\writing\structure.rst:484 +#: ../../writing/structure.rst:484 msgid "Vendorizing Dependencies" msgstr "" -#: ..\..\writing\structure.rst:488 +#: ../../writing/structure.rst:488 msgid "Runners" msgstr "" -#: ..\..\writing\structure.rst:492 +#: ../../writing/structure.rst:492 msgid "Further Reading" msgstr "" -#: ..\..\writing\structure.rst:494 +#: ../../writing/structure.rst:494 msgid "http://docs.python.org/2/library/" msgstr "" -#: ..\..\writing\structure.rst:495 +#: ../../writing/structure.rst:495 msgid "http://www.diveintopython.net/toc/index.html" msgstr "" From 68370b2da7b5e74700e0f972e502978204f2ec72 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 17:47:11 +0900 Subject: [PATCH 016/117] modified: locale/ko/LC_MESSAGES/starting/install/linux.po --- .../ko/LC_MESSAGES/starting/install/linux.po | 84 +++++++++---------- 1 file changed, 38 insertions(+), 46 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po index 1a4524134..65d4dac0b 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -11,17 +11,17 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../starting/install/linux.rst:4 +#: ..\..\starting\install\linux.rst:4 msgid "Installing Python on Linux" msgstr "리눅스에 파이썬 설치하기" -#: ../../starting/install/linux.rst:6 +#: ..\..\starting\install\linux.rst:6 msgid "" "The latest versions of Ubuntu and Fedora **come with Python 2.7 out of the " "box**." msgstr "최신 버전의 우분투와 페도라는 **훌륭하게도 파이썬 2.7이 딸려온다**." -#: ../../starting/install/linux.rst:8 +#: ..\..\starting\install\linux.rst:8 msgid "" "The latest versions of Redhat Enterprise (RHEL) and CentOS come with Python " "2.6. Some older versions of RHEL and CentOS come with Python 2.4 which is " @@ -31,15 +31,13 @@ msgid "" "Python 2.6 package specifically designed to install side-by-side with the " "system's Python 2.4 installation." msgstr "" -"최신 버전의 레드햇 엔터프라이즈(RHEL)과 CentOS는 파이선 2.6이 딸려온다. 조금 " -"옛날 버전의 RHEL과 CentOS는 파이썬 2.4가 딸려온다. 하지만 이 버전의 파이썬은 " -"요즘의 파이썬 개발에는 적당하지 않다. 다행히 " -"`Extra Packages for Enterprise Linux`_ " -"라는게 있다. 이 패키지는 페도라의 패키지에 대응하는 훌륭한 추가 패키지를 포함하고 " -"있다. 이 저장소는 파이썬 2.4가 설치된 시스템에서도 돌아갈 수 있도록 특별히 " -"만들어진 파이썬 2.6 패키지를 포함하고 있다." +"최신 버전의 레드햇 엔터프라이즈(RHEL)과 CentOS는 파이선 2.6이 딸려온다. 조금 옛날 버전의 RHEL과 CentOS는 파이썬 " +"2.4가 딸려온다. 하지만 이 버전의 파이썬은 요즘의 파이썬 개발에는 적당하지 않다. 다행히 `Extra Packages for " +"Enterprise Linux`_ 라는게 있다. 이 패키지는 페도라의 " +"패키지에 대응하는 훌륭한 추가 패키지를 포함하고 있다. 이 저장소는 파이썬 2.4가 설치된 시스템에서도 돌아갈 수 있도록 특별히 만들어진" +" 파이썬 2.6 패키지를 포함하고 있다." -#: ../../starting/install/linux.rst:18 +#: ..\..\starting\install\linux.rst:18 msgid "" "You do not need to install or configure anything else to use Python. Having " "said that, I would strongly recommend that you install the tools and " @@ -48,17 +46,15 @@ msgid "" "Setuptools, as it makes it much easier for you to use other third-party " "Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다." -"그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서 아래에 " -"설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools" -"는 반드시 설치해야 한다. 이것들은 다른 파이썬 서드파티 라이브러리들을 " -"사용하기 편하게 해준다." +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서" +" 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools는 반드시 설치해야 한다. 이것들은 다른 파이썬 " +"서드파티 라이브러리들을 사용하기 편하게 해준다." -#: ../../starting/install/linux.rst:25 +#: ..\..\starting\install\linux.rst:25 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ../../starting/install/linux.rst:27 +#: ..\..\starting\install\linux.rst:27 msgid "" "The most crucial third-party Python software of all is Setuptools, which " "extends the packaging and installation facilities provided by the distutils " @@ -67,39 +63,38 @@ msgid "" " command. It also enables you to add this network installation capability to" " your own Python software with very little work." msgstr "" -"Setuptools은 모든 파이썬 서드파티 소프트웨어 중 가장 중요하다. 표준 라이브러리인 " -"distutils의 패키징과 설치 기능을 더욱 편하게 해주기 때문이다. Setuptools을 파이썬 " -"시스템에 설치하면 어느 파이썬 소프트웨어 제품이라도 명령어 한 줄로 설치할 수 있다. " -"또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." +"Setuptools은 모든 파이썬 서드파티 소프트웨어 중 가장 중요하다. 표준 라이브러리인 distutils의 패키징과 설치 기능을 더욱" +" 편하게 해주기 때문이다. Setuptools을 파이썬 시스템에 설치하면 어느 파이썬 소프트웨어 제품이라도 명령어 한 줄로 설치할 수 " +"있다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." -#: ../../starting/install/linux.rst:34 +#: ..\..\starting\install\linux.rst:34 msgid "" "To obtain the latest version of Setuptools for Linux, refer to the " "documentation available here: `unix-setuptools " "`_" msgstr "" -"리눅에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 된다. " -"`unix-setuptools `_" +"리눅에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 된다. `unix-setuptools " +"`_" -#: ../../starting/install/linux.rst:37 +#: ..\..\starting\install\linux.rst:37 msgid "" "The new ``easy_install`` command you have available is considered by many to" " be deprecated, so we will install its replacement: **pip**. Pip allows for " "uninstallation of packages, and is actively maintained, unlike easy_install." msgstr "" -"이제 새로운 명령을 내릴 수 있게 되었다: **easy_install** 이다. 하지만 이 명령어를 " -"불편하게 생각하는 사람들도 많다. 그러니 이를 대체할 것을 설치해보자. **pip** 는 " -"패키지의 설치 제거도 가능케 하고, easy_install와 달리 현재 활발히 유지 보수되고 있다." +"이제 새로운 명령을 내릴 수 있게 되었다: **easy_install** 이다. 하지만 이 명령어를 불편하게 생각하는 사람들도 많다. " +"그러니 이를 대체할 것을 설치해보자. **pip** 는 패키지의 설치 제거도 가능케 하고, easy_install와 달리 현재 활발히 " +"유지 보수되고 있다." -#: ../../starting/install/linux.rst:41 +#: ..\..\starting\install\linux.rst:41 msgid "To install pip, simply open a command prompt and run" msgstr "pip를 설치하려면 아래 파이썬 스크립트를 실행하면 된다." -#: ../../starting/install/linux.rst:49 +#: ..\..\starting\install\linux.rst:49 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/linux.rst:51 +#: ..\..\starting\install\linux.rst:51 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -107,34 +102,31 @@ msgid "" " Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 " -"간의 독립성을 유지시켜주는 툴이다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, " -"프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " +"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 툴이다. " +"이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " "관리할 수 있도록 해준다." -#: ../../starting/install/linux.rst:56 +#: ..\..\starting\install\linux.rst:56 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." -msgstr "" -"예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 " -"유지보수 할 수 있도록 해준다." +msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해준다." -#: ../../starting/install/linux.rst:59 +#: ..\..\starting\install\linux.rst:59 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" -"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 " -"`Virtual Environments `_ " -"에서 볼 수 있다." +"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 `Virtual Environments " +"`_ 에서 볼 수 있다." -#: ../../starting/install/linux.rst:64 +#: ..\..\starting\install\linux.rst:64 msgid "" "This page is a remixed version of `another guide " "`_, which is" " available under the same license." msgstr "" -"이 페이지는 `다른 가이드 `_ " -"를 재배열 버전이다. 라이선스는 동일하다." \ No newline at end of file +"이 페이지는 `다른 가이드 `_ 를 재배열 버전이다. 라이선스는 동일하다." From 0d663a4b6c58294cdaa411ea117ed027e16b6e0d Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 3 Dec 2014 22:00:16 +0900 Subject: [PATCH 017/117] modified: locale/ko/LC_MESSAGES/_themes/README.po modified: locale/ko/LC_MESSAGES/dev/env.po modified: locale/ko/LC_MESSAGES/dev/virtualenvs.po modified: locale/ko/LC_MESSAGES/index.po modified: locale/ko/LC_MESSAGES/intro/community.po modified: locale/ko/LC_MESSAGES/intro/documentation.po modified: locale/ko/LC_MESSAGES/intro/duction.po modified: locale/ko/LC_MESSAGES/intro/learning.po modified: locale/ko/LC_MESSAGES/intro/news.po modified: locale/ko/LC_MESSAGES/notes/contribute.po modified: locale/ko/LC_MESSAGES/notes/license.po modified: locale/ko/LC_MESSAGES/notes/styleguide.po modified: locale/ko/LC_MESSAGES/scenarios/admin.po modified: locale/ko/LC_MESSAGES/scenarios/ci.po modified: locale/ko/LC_MESSAGES/scenarios/cli.po modified: locale/ko/LC_MESSAGES/scenarios/client.po modified: locale/ko/LC_MESSAGES/scenarios/crypto.po modified: locale/ko/LC_MESSAGES/scenarios/db.po modified: locale/ko/LC_MESSAGES/scenarios/gui.po modified: locale/ko/LC_MESSAGES/scenarios/imaging.po modified: locale/ko/LC_MESSAGES/scenarios/network.po modified: locale/ko/LC_MESSAGES/scenarios/scientific.po modified: locale/ko/LC_MESSAGES/scenarios/scrape.po modified: locale/ko/LC_MESSAGES/scenarios/speed.po modified: locale/ko/LC_MESSAGES/scenarios/web.po modified: locale/ko/LC_MESSAGES/scenarios/xml.po modified: locale/ko/LC_MESSAGES/shipping/freezing.po modified: locale/ko/LC_MESSAGES/shipping/packaging.po modified: locale/ko/LC_MESSAGES/starting/install/linux.mo modified: locale/ko/LC_MESSAGES/starting/install/linux.po modified: locale/ko/LC_MESSAGES/starting/install/osx.mo modified: locale/ko/LC_MESSAGES/starting/install/osx.po modified: locale/ko/LC_MESSAGES/starting/install/win.mo modified: locale/ko/LC_MESSAGES/starting/install/win.po modified: locale/ko/LC_MESSAGES/starting/installation.mo modified: locale/ko/LC_MESSAGES/starting/installation.po modified: locale/ko/LC_MESSAGES/starting/pip-virtualenv.po modified: locale/ko/LC_MESSAGES/starting/which-python.po modified: locale/ko/LC_MESSAGES/writing/structure.mo --- docs/locale/ko/LC_MESSAGES/_themes/README.po | 18 +- docs/locale/ko/LC_MESSAGES/dev/env.po | 162 +++++++------- docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 102 ++++----- docs/locale/ko/LC_MESSAGES/index.po | 34 +-- docs/locale/ko/LC_MESSAGES/intro/community.po | 64 +++--- .../ko/LC_MESSAGES/intro/documentation.po | 22 +- docs/locale/ko/LC_MESSAGES/intro/duction.po | 46 ++-- docs/locale/ko/LC_MESSAGES/intro/learning.po | 164 +++++++------- docs/locale/ko/LC_MESSAGES/intro/news.po | 32 +-- .../locale/ko/LC_MESSAGES/notes/contribute.po | 16 +- docs/locale/ko/LC_MESSAGES/notes/license.po | 4 +- .../locale/ko/LC_MESSAGES/notes/styleguide.po | 78 +++---- docs/locale/ko/LC_MESSAGES/scenarios/admin.po | 104 ++++----- docs/locale/ko/LC_MESSAGES/scenarios/ci.po | 40 ++-- docs/locale/ko/LC_MESSAGES/scenarios/cli.po | 36 ++-- .../locale/ko/LC_MESSAGES/scenarios/client.po | 32 +-- .../locale/ko/LC_MESSAGES/scenarios/crypto.po | 16 +- docs/locale/ko/LC_MESSAGES/scenarios/db.po | 26 +-- docs/locale/ko/LC_MESSAGES/scenarios/gui.po | 72 +++---- .../ko/LC_MESSAGES/scenarios/imaging.po | 18 +- .../ko/LC_MESSAGES/scenarios/network.po | 22 +- .../ko/LC_MESSAGES/scenarios/scientific.po | 64 +++--- .../locale/ko/LC_MESSAGES/scenarios/scrape.po | 32 +-- docs/locale/ko/LC_MESSAGES/scenarios/speed.po | 54 ++--- docs/locale/ko/LC_MESSAGES/scenarios/web.po | 154 ++++++------- docs/locale/ko/LC_MESSAGES/scenarios/xml.po | 26 +-- .../ko/LC_MESSAGES/shipping/freezing.po | 134 ++++++------ .../ko/LC_MESSAGES/shipping/packaging.po | 88 ++++---- .../ko/LC_MESSAGES/starting/install/linux.mo | Bin 352 -> 6381 bytes .../ko/LC_MESSAGES/starting/install/linux.po | 28 +-- .../ko/LC_MESSAGES/starting/install/osx.mo | Bin 352 -> 8038 bytes .../ko/LC_MESSAGES/starting/install/osx.po | 119 +++++----- .../ko/LC_MESSAGES/starting/install/win.mo | Bin 352 -> 8469 bytes .../ko/LC_MESSAGES/starting/install/win.po | 2 +- .../ko/LC_MESSAGES/starting/installation.mo | Bin 2031 -> 2058 bytes .../ko/LC_MESSAGES/starting/installation.po | 22 +- .../ko/LC_MESSAGES/starting/pip-virtualenv.po | 42 ++-- .../ko/LC_MESSAGES/starting/which-python.po | 204 ++++++++---------- .../ko/LC_MESSAGES/writing/structure.mo | Bin 797 -> 8134 bytes 39 files changed, 1026 insertions(+), 1051 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/_themes/README.po b/docs/locale/ko/LC_MESSAGES/_themes/README.po index 5107dddcf..aa3a65a71 100644 --- a/docs/locale/ko/LC_MESSAGES/_themes/README.po +++ b/docs/locale/ko/LC_MESSAGES/_themes/README.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\_themes\README.rst:2 +#: ../../_themes/README.rst:2 msgid "krTheme Sphinx Style" msgstr "" -#: ..\..\_themes\README.rst:4 +#: ../../_themes/README.rst:4 msgid "" "This repository contains sphinx styles Kenneth Reitz uses in most of his " "projects. It is a derivative of Mitsuhiko's themes for Flask and Flask " @@ -23,33 +23,33 @@ msgid "" "this guide:" msgstr "" -#: ..\..\_themes\README.rst:9 +#: ../../_themes/README.rst:9 msgid "" "put this folder as _themes into your docs folder. Alternatively you can " "also use git submodules to check out the contents there." msgstr "" -#: ..\..\_themes\README.rst:12 +#: ../../_themes/README.rst:12 msgid "add this to your :file:`conf.py`: ::" msgstr "" -#: ..\..\_themes\README.rst:18 +#: ../../_themes/README.rst:18 msgid "The following themes exist:" msgstr "" -#: ..\..\_themes\README.rst:21 +#: ../../_themes/README.rst:21 msgid "the standard flask documentation theme for large projects" msgstr "" -#: ..\..\_themes\README.rst:24 +#: ../../_themes/README.rst:24 msgid "" "small one-page theme. Intended to be used by very small addon libraries." msgstr "" -#: ..\..\_themes\README.rst:21 +#: ../../_themes/README.rst:21 msgid "**kr**" msgstr "" -#: ..\..\_themes\README.rst:24 +#: ../../_themes/README.rst:24 msgid "**kr_small**" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.po b/docs/locale/ko/LC_MESSAGES/dev/env.po index 38c6c2dce..3510a75e2 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/env.po +++ b/docs/locale/ko/LC_MESSAGES/dev/env.po @@ -11,25 +11,25 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\dev\env.rst:2 +#: ../../dev/env.rst:2 msgid "Your Development Environment" msgstr "" -#: ..\..\dev\env.rst:6 +#: ../../dev/env.rst:6 msgid "Text Editors" msgstr "" -#: ..\..\dev\env.rst:8 +#: ../../dev/env.rst:8 msgid "" "Just about anything that can edit plain text will work for writing Python " "code, however, using a more powerful editor may make your life a bit easier." msgstr "" -#: ..\..\dev\env.rst:13 +#: ../../dev/env.rst:13 msgid "Vim" msgstr "" -#: ..\..\dev\env.rst:15 +#: ../../dev/env.rst:15 msgid "" "Vim is a text editor which uses keyboard shortcuts for editing instead of " "menus or icons. There are a couple of plugins and settings for the Vim " @@ -39,7 +39,7 @@ msgid "" ":file:`.vimrc` and add the following lines::" msgstr "" -#: ..\..\dev\env.rst:30 +#: ../../dev/env.rst:30 msgid "" "With these settings, newlines are inserted after 79 characters and " "indentation is set to 4 spaces per tab. If you also use Vim for other " @@ -47,13 +47,13 @@ msgid "" " settings for Python source files." msgstr "" -#: ..\..\dev\env.rst:35 +#: ../../dev/env.rst:35 msgid "" "There is also a handy syntax plugin called syntax_ featuring some " "improvements over the syntax file included in Vim 6.1." msgstr "" -#: ..\..\dev\env.rst:38 +#: ../../dev/env.rst:38 msgid "" "These plugins supply you with a basic environment for developing in Python. " "To get the most out of Vim, you should continually check your code for " @@ -62,7 +62,7 @@ msgid "" " some very handy plugins to do these checks from within the editor." msgstr "" -#: ..\..\dev\env.rst:44 +#: ../../dev/env.rst:44 msgid "" "For PEP8 checking, install the vim-pep8_ plugin, and for pyflakes you can " "install vim-pyflakes_. Now you can map the functions ``Pep8()`` or " @@ -73,7 +73,7 @@ msgid "" ":file:`.vimrc`::" msgstr "" -#: ..\..\dev\env.rst:54 +#: ../../dev/env.rst:54 msgid "" "If you are already using syntastic_, you can set it to run Pyflakes on write" " and show errors and warnings in the quickfix window. An example " @@ -81,89 +81,89 @@ msgid "" " statusbar would be::" msgstr "" -#: ..\..\dev\env.rst:66 +#: ../../dev/env.rst:66 msgid "Python-mode" msgstr "" -#: ..\..\dev\env.rst:68 +#: ../../dev/env.rst:68 msgid "" "Python-mode_ is a complex solution for working with Python code in Vim. It " "has:" msgstr "" -#: ..\..\dev\env.rst:71 +#: ../../dev/env.rst:71 msgid "" "Asynchronous Python code checking (``pylint``, ``pyflakes``, ``pep8``, " "``mccabe``) in any combination" msgstr "" -#: ..\..\dev\env.rst:72 +#: ../../dev/env.rst:72 msgid "Code refactoring and autocompletion with Rope" msgstr "" -#: ..\..\dev\env.rst:73 +#: ../../dev/env.rst:73 msgid "Fast Python folding" msgstr "" -#: ..\..\dev\env.rst:74 +#: ../../dev/env.rst:74 msgid "Virtualenv support" msgstr "" -#: ..\..\dev\env.rst:75 +#: ../../dev/env.rst:75 msgid "Search through Python documentation and run Python code" msgstr "" -#: ..\..\dev\env.rst:76 +#: ../../dev/env.rst:76 msgid "Auto PEP8_ error fixes" msgstr "" -#: ..\..\dev\env.rst:78 +#: ../../dev/env.rst:78 msgid "And more." msgstr "" -#: ..\..\dev\env.rst:81 +#: ../../dev/env.rst:81 msgid "SuperTab" msgstr "" -#: ..\..\dev\env.rst:83 +#: ../../dev/env.rst:83 msgid "" "SuperTab_ is a small Vim plugin that makes code completion more convenient " "by using ```` key or any other customized keys." msgstr "" -#: ..\..\dev\env.rst:97 +#: ../../dev/env.rst:97 msgid "Emacs" msgstr "" -#: ..\..\dev\env.rst:99 +#: ../../dev/env.rst:99 msgid "" "Emacs is another powerful text editor. It is fully programmable (lisp), but " "it can be some work to wire up correctly. A good start if you're already an " "Emacs user is `Python Programming in Emacs`_ at EmacsWiki." msgstr "" -#: ..\..\dev\env.rst:103 +#: ../../dev/env.rst:103 msgid "Emacs itself comes with a Python mode." msgstr "" -#: ..\..\dev\env.rst:104 +#: ../../dev/env.rst:104 msgid "" "Python ships with an alternate version: `python-mode.el " "`_" msgstr "" -#: ..\..\dev\env.rst:106 +#: ../../dev/env.rst:106 msgid "" "Fabián Ezequiel Gallina's `python.el " "`_ provides nice functionality and " "behavior out of the box" msgstr "" -#: ..\..\dev\env.rst:112 +#: ../../dev/env.rst:112 msgid "TextMate" msgstr "" -#: ..\..\dev\env.rst:114 +#: ../../dev/env.rst:114 msgid "" "`TextMate `_ brings Apple's approach to operating " "systems into the world of text editors. By bridging UNIX underpinnings and " @@ -171,18 +171,18 @@ msgid "" "scripters and novice users alike." msgstr "" -#: ..\..\dev\env.rst:120 +#: ../../dev/env.rst:120 msgid "Sublime Text" msgstr "" -#: ..\..\dev\env.rst:122 +#: ../../dev/env.rst:122 msgid "" "`Sublime Text `_ is a sophisticated text editor" " for code, markup and prose. You'll love the slick user interface, " "extraordinary features and amazing performance." msgstr "" -#: ..\..\dev\env.rst:126 +#: ../../dev/env.rst:126 msgid "" "Sublime Text has excellent support for editing Python code and uses Python " "for its plugin API. It also has a diverse variety of plugins, `some of which" @@ -190,18 +190,18 @@ msgid "" " checking and code \"linting\"." msgstr "" -#: ..\..\dev\env.rst:131 +#: ../../dev/env.rst:131 msgid "Atom" msgstr "" -#: ..\..\dev\env.rst:133 +#: ../../dev/env.rst:133 msgid "" "`Atom `_ is a hackable text editor for the 21st century, " "built on atom-shell, and based on everything we love about our favorite " "editors." msgstr "" -#: ..\..\dev\env.rst:136 +#: ../../dev/env.rst:136 msgid "" "Atom is web native (HTML, CSS, JS), focusing on modular design and easy " "plugin development. It comes with native package control and plethora of " @@ -210,15 +210,15 @@ msgid "" "`_." msgstr "" -#: ..\..\dev\env.rst:143 +#: ../../dev/env.rst:143 msgid "IDEs" msgstr "" -#: ..\..\dev\env.rst:146 +#: ../../dev/env.rst:146 msgid "PyCharm / IntelliJ IDEA" msgstr "" -#: ..\..\dev\env.rst:148 +#: ../../dev/env.rst:148 msgid "" "`PyCharm `_ is developed by JetBrains, " "also known for IntelliJ IDEA. Both share the same code base and most of " @@ -228,32 +228,32 @@ msgid "" "Edition(Apache 2.0 License) with less features." msgstr "" -#: ..\..\dev\env.rst:156 +#: ../../dev/env.rst:156 msgid "Eclipse" msgstr "" -#: ..\..\dev\env.rst:158 +#: ../../dev/env.rst:158 msgid "" "The most popular Eclipse plugin for Python development is Aptana's `PyDev " "`_." msgstr "" -#: ..\..\dev\env.rst:163 +#: ../../dev/env.rst:163 msgid "Komodo IDE" msgstr "" -#: ..\..\dev\env.rst:165 +#: ../../dev/env.rst:165 msgid "" "`Komodo IDE `_ is developed by " "ActiveState and is a commercial IDE for Windows, Mac, and Linux. `KomodoEdit" " `_ is the open source alternative." msgstr "" -#: ..\..\dev\env.rst:172 +#: ../../dev/env.rst:172 msgid "Spyder" msgstr "" -#: ..\..\dev\env.rst:174 +#: ../../dev/env.rst:174 msgid "" "`Spyder `_ is an IDE specifically " "geared toward working with scientific Python libraries (namely `Scipy " @@ -261,34 +261,34 @@ msgid "" "`_ and `rope `_." msgstr "" -#: ..\..\dev\env.rst:179 +#: ../../dev/env.rst:179 msgid "" "Spyder is open-source (free), offers code completion, syntax highlighting, a" " class and function browser, and object inspection." msgstr "" -#: ..\..\dev\env.rst:184 +#: ../../dev/env.rst:184 msgid "WingIDE" msgstr "" -#: ..\..\dev\env.rst:186 +#: ../../dev/env.rst:186 msgid "" "`WingIDE `_ is a Python specific IDE. It runs on " "Linux, Windows and Mac (as an X11 application, which frustrates some Mac " "users)." msgstr "" -#: ..\..\dev\env.rst:189 +#: ../../dev/env.rst:189 msgid "" "WingIDE offers code completion, syntax highlighting, source browser, " "graphical debugger and support for version control systems." msgstr "" -#: ..\..\dev\env.rst:194 +#: ../../dev/env.rst:194 msgid "NINJA-IDE" msgstr "" -#: ..\..\dev\env.rst:196 +#: ../../dev/env.rst:196 msgid "" "`NINJA-IDE `_ (from the recursive acronym: " "\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially " @@ -297,18 +297,18 @@ msgid "" "downloaded from the website." msgstr "" -#: ..\..\dev\env.rst:201 +#: ../../dev/env.rst:201 msgid "" "NINJA-IDE is open-source software (GPLv3 licence) and is developed in Python" " and Qt. The source files can be downloaded from `GitHub `_." msgstr "" -#: ..\..\dev\env.rst:206 +#: ../../dev/env.rst:206 msgid "Eric (The Eric Python IDE)" msgstr "" -#: ..\..\dev\env.rst:208 +#: ../../dev/env.rst:208 msgid "" "`Eric `_ is a full featured Python IDE" " offering sourcecode autocompletion, syntax highlighting, support for " @@ -319,15 +319,15 @@ msgid "" "years of active development." msgstr "" -#: ..\..\dev\env.rst:218 +#: ../../dev/env.rst:218 msgid "Interpreter Tools" msgstr "" -#: ..\..\dev\env.rst:222 +#: ../../dev/env.rst:222 msgid "Virtual Environments" msgstr "" -#: ..\..\dev\env.rst:224 +#: ../../dev/env.rst:224 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -336,28 +336,28 @@ msgid "" "directory clean and manageable." msgstr "" -#: ..\..\dev\env.rst:229 +#: ../../dev/env.rst:229 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" -#: ..\..\dev\env.rst:232 +#: ../../dev/env.rst:232 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" -#: ..\..\dev\env.rst:235 +#: ../../dev/env.rst:235 msgid "Other Tools" msgstr "" -#: ..\..\dev\env.rst:238 +#: ../../dev/env.rst:238 msgid "IDLE" msgstr "" -#: ..\..\dev\env.rst:240 +#: ../../dev/env.rst:240 msgid "" ":ref:`IDLE ` is an integrated development environment that is " "part of Python standard library. It is completely written in Python and uses" @@ -366,95 +366,95 @@ msgid "" "snippets and experiment with different features in Python." msgstr "" -#: ..\..\dev\env.rst:246 +#: ../../dev/env.rst:246 msgid "It provides the following features:" msgstr "" -#: ..\..\dev\env.rst:248 +#: ../../dev/env.rst:248 msgid "Python Shell Window (interpreter)" msgstr "" -#: ..\..\dev\env.rst:249 +#: ../../dev/env.rst:249 msgid "Multi window text editor that colorizes Python code" msgstr "" -#: ..\..\dev\env.rst:250 +#: ../../dev/env.rst:250 msgid "Minimal debugging facility" msgstr "" -#: ..\..\dev\env.rst:254 +#: ../../dev/env.rst:254 msgid "IPython" msgstr "" -#: ..\..\dev\env.rst:256 +#: ../../dev/env.rst:256 msgid "" "`IPython `_ provides a rich toolkit to help you make " "the most out of using Python interactively. Its main components are:" msgstr "" -#: ..\..\dev\env.rst:259 +#: ../../dev/env.rst:259 msgid "Powerful Python shells (terminal- and Qt-based)." msgstr "" -#: ..\..\dev\env.rst:260 +#: ../../dev/env.rst:260 msgid "" "A web-based notebook with the same core features but support for rich media," " text, code, mathematical expressions and inline plots." msgstr "" -#: ..\..\dev\env.rst:262 +#: ../../dev/env.rst:262 msgid "Support for interactive data visualization and use of GUI toolkits." msgstr "" -#: ..\..\dev\env.rst:263 +#: ../../dev/env.rst:263 msgid "Flexible, embeddable interpreters to load into your own projects." msgstr "" -#: ..\..\dev\env.rst:264 +#: ../../dev/env.rst:264 msgid "Tools for high level and interactive parallel computing." msgstr "" -#: ..\..\dev\env.rst:273 +#: ../../dev/env.rst:273 msgid "BPython" msgstr "" -#: ..\..\dev\env.rst:275 +#: ../../dev/env.rst:275 msgid "" "`bpython `_ is an alternative interface to " "the Python interpreter for Unix-like operating systems. It has the following" " features:" msgstr "" -#: ..\..\dev\env.rst:278 +#: ../../dev/env.rst:278 msgid "In-line syntax highlighting." msgstr "" -#: ..\..\dev\env.rst:279 +#: ../../dev/env.rst:279 msgid "Readline-like autocomplete with suggestions displayed as you type." msgstr "" -#: ..\..\dev\env.rst:280 +#: ../../dev/env.rst:280 msgid "Expected parameter list for any Python function." msgstr "" -#: ..\..\dev\env.rst:281 +#: ../../dev/env.rst:281 msgid "" "\"Rewind\" function to pop the last line of code from memory and re-" "evaluate." msgstr "" -#: ..\..\dev\env.rst:282 +#: ../../dev/env.rst:282 msgid "Send entered code off to a pastebin." msgstr "" -#: ..\..\dev\env.rst:283 +#: ../../dev/env.rst:283 msgid "Save entered code to a file." msgstr "" -#: ..\..\dev\env.rst:284 +#: ../../dev/env.rst:284 msgid "Auto-indentation." msgstr "" -#: ..\..\dev\env.rst:285 +#: ../../dev/env.rst:285 msgid "Python 3 support." msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po index 92073ab34..a4f1daef7 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po +++ b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\dev\virtualenvs.rst:2 +#: ../../dev/virtualenvs.rst:2 msgid "Virtual Environments" msgstr "" -#: ..\..\dev\virtualenvs.rst:4 +#: ../../dev/virtualenvs.rst:4 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -24,17 +24,17 @@ msgid "" "directory clean and manageable." msgstr "" -#: ..\..\dev\virtualenvs.rst:9 +#: ../../dev/virtualenvs.rst:9 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "" -#: ..\..\dev\virtualenvs.rst:13 +#: ../../dev/virtualenvs.rst:13 msgid "virtualenv" msgstr "" -#: ..\..\dev\virtualenvs.rst:15 +#: ../../dev/virtualenvs.rst:15 msgid "" "`virtualenv `_ is a tool to create " "isolated Python environments. virtualenv creates a folder which contains all" @@ -42,19 +42,19 @@ msgid "" "need." msgstr "" -#: ..\..\dev\virtualenvs.rst:19 +#: ../../dev/virtualenvs.rst:19 msgid "Install virtualenv via pip:" msgstr "" -#: ..\..\dev\virtualenvs.rst:26 ..\..\dev\virtualenvs.rst:145 +#: ../../dev/virtualenvs.rst:26 ../../dev/virtualenvs.rst:145 msgid "Basic Usage" msgstr "" -#: ..\..\dev\virtualenvs.rst:28 +#: ../../dev/virtualenvs.rst:28 msgid "Create a virtual environment for a project:" msgstr "" -#: ..\..\dev\virtualenvs.rst:35 +#: ../../dev/virtualenvs.rst:35 msgid "" "``virtualenv venv`` will create a folder in the current directory which will" " contain the Python executable files, and a copy of the ``pip`` library " @@ -63,25 +63,25 @@ msgid "" "name will place the files in the current directory instead." msgstr "" -#: ..\..\dev\virtualenvs.rst:40 +#: ../../dev/virtualenvs.rst:40 msgid "" "This creates a copy of Python in whichever directory you ran the command in," " placing it in a folder named :file:`venv`." msgstr "" -#: ..\..\dev\virtualenvs.rst:43 +#: ../../dev/virtualenvs.rst:43 msgid "You can also use a Python interpreter of your choice." msgstr "" -#: ..\..\dev\virtualenvs.rst:49 +#: ../../dev/virtualenvs.rst:49 msgid "This will use the Python interpreter in :file:`/usr/bin/python2.7`" msgstr "" -#: ..\..\dev\virtualenvs.rst:51 +#: ../../dev/virtualenvs.rst:51 msgid "To begin using the virtual environment, it needs to be activated:" msgstr "" -#: ..\..\dev\virtualenvs.rst:57 +#: ../../dev/virtualenvs.rst:57 msgid "" "The name of the current virtual environment will now appear on the left of " "the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to let you " @@ -90,40 +90,40 @@ msgid "" "installation." msgstr "" -#: ..\..\dev\virtualenvs.rst:62 +#: ../../dev/virtualenvs.rst:62 msgid "Install packages as usual, for example:" msgstr "" -#: ..\..\dev\virtualenvs.rst:68 +#: ../../dev/virtualenvs.rst:68 msgid "" "If you are done working in the virtual environment for the moment, you can " "deactivate it:" msgstr "" -#: ..\..\dev\virtualenvs.rst:75 +#: ../../dev/virtualenvs.rst:75 msgid "" "This puts you back to the system's default Python interpreter with all its " "installed libraries." msgstr "" -#: ..\..\dev\virtualenvs.rst:78 +#: ../../dev/virtualenvs.rst:78 msgid "" "To delete a virtual environment, just delete its folder. (In this case, it " "would be ``rm -rf venv``.)" msgstr "" -#: ..\..\dev\virtualenvs.rst:81 +#: ../../dev/virtualenvs.rst:81 msgid "" "After a while, though, you might end up with a lot of virtual environments " "littered across your system, and its possible you'll forget their names or " "where they were placed." msgstr "" -#: ..\..\dev\virtualenvs.rst:86 +#: ../../dev/virtualenvs.rst:86 msgid "Other Notes" msgstr "" -#: ..\..\dev\virtualenvs.rst:88 +#: ../../dev/virtualenvs.rst:88 msgid "" "Running ``virtualenv`` with the option :option:`--no-site-packages` will not" " include the packages that are installed globally. This can be useful for " @@ -131,13 +131,13 @@ msgid "" "is the default behavior for ``virtualenv`` 1.7 and later.]" msgstr "" -#: ..\..\dev\virtualenvs.rst:93 +#: ../../dev/virtualenvs.rst:93 msgid "" "In order to keep your environment consistent, it's a good idea to \"freeze\"" " the current state of the environment packages. To do this, run" msgstr "" -#: ..\..\dev\virtualenvs.rst:100 +#: ../../dev/virtualenvs.rst:100 msgid "" "This will create a :file:`requirements.txt` file, which contains a simple " "list of all the packages in the current environment, and their respective " @@ -146,23 +146,23 @@ msgid "" "same versions:" msgstr "" -#: ..\..\dev\virtualenvs.rst:110 +#: ../../dev/virtualenvs.rst:110 msgid "" "This can help ensure consistency across installations, across deployments, " "and across developers." msgstr "" -#: ..\..\dev\virtualenvs.rst:113 +#: ../../dev/virtualenvs.rst:113 msgid "" "Lastly, remember to exclude the virtual environment folder from source " "control by adding it to the ignore list." msgstr "" -#: ..\..\dev\virtualenvs.rst:117 +#: ../../dev/virtualenvs.rst:117 msgid "virtualenvwrapper" msgstr "" -#: ..\..\dev\virtualenvs.rst:119 +#: ../../dev/virtualenvs.rst:119 msgid "" "`virtualenvwrapper " "`_ provides a" @@ -170,114 +170,114 @@ msgid "" "pleasant. It also places all your virtual environments in one place." msgstr "" -#: ..\..\dev\virtualenvs.rst:123 ..\..\dev\virtualenvs.rst:135 +#: ../../dev/virtualenvs.rst:123 ../../dev/virtualenvs.rst:135 msgid "To install (make sure **virtualenv** is already installed):" msgstr "" -#: ..\..\dev\virtualenvs.rst:131 +#: ../../dev/virtualenvs.rst:131 msgid "" "(`Full virtualenvwrapper install instructions " "`_.)" msgstr "" -#: ..\..\dev\virtualenvs.rst:133 +#: ../../dev/virtualenvs.rst:133 msgid "" "For Windows, you can use the `virtualenvwrapper-powershell " "`_ clone." msgstr "" -#: ..\..\dev\virtualenvs.rst:147 +#: ../../dev/virtualenvs.rst:147 msgid "Create a virtual environment:" msgstr "" -#: ..\..\dev\virtualenvs.rst:153 +#: ../../dev/virtualenvs.rst:153 msgid "This creates the :file:`venv` folder inside :file:`~/Envs`." msgstr "" -#: ..\..\dev\virtualenvs.rst:155 +#: ../../dev/virtualenvs.rst:155 msgid "Work on a virtual environment:" msgstr "" -#: ..\..\dev\virtualenvs.rst:161 +#: ../../dev/virtualenvs.rst:161 msgid "" "**virtualenvwrapper** provides tab-completion on environment names. It " "really helps when you have a lot of environments and have trouble " "remembering their names." msgstr "" -#: ..\..\dev\virtualenvs.rst:165 +#: ../../dev/virtualenvs.rst:165 msgid "" "``workon`` also deactivates whatever environment you are currently in, so " "you can quickly switch between environments." msgstr "" -#: ..\..\dev\virtualenvs.rst:168 +#: ../../dev/virtualenvs.rst:168 msgid "Deactivating is still the same:" msgstr "" -#: ..\..\dev\virtualenvs.rst:174 +#: ../../dev/virtualenvs.rst:174 msgid "To delete:" msgstr "" -#: ..\..\dev\virtualenvs.rst:181 +#: ../../dev/virtualenvs.rst:181 msgid "Other useful commands" msgstr "" -#: ..\..\dev\virtualenvs.rst:184 +#: ../../dev/virtualenvs.rst:184 msgid "List all of the environments." msgstr "" -#: ..\..\dev\virtualenvs.rst:187 +#: ../../dev/virtualenvs.rst:187 msgid "" "Navigate into the directory of the currently activated virtual environment, " "so you can browse its :file:`site-packages`, for example." msgstr "" -#: ..\..\dev\virtualenvs.rst:191 +#: ../../dev/virtualenvs.rst:191 msgid "Like the above, but directly into :file:`site-packages` directory." msgstr "" -#: ..\..\dev\virtualenvs.rst:194 +#: ../../dev/virtualenvs.rst:194 msgid "Shows contents of :file:`site-packages` directory." msgstr "" -#: ..\..\dev\virtualenvs.rst:196 +#: ../../dev/virtualenvs.rst:196 msgid "" "`Full list of virtualenvwrapper commands " "`_." msgstr "" -#: ..\..\dev\virtualenvs.rst:199 +#: ../../dev/virtualenvs.rst:199 msgid "autoenv" msgstr "" -#: ..\..\dev\virtualenvs.rst:200 +#: ../../dev/virtualenvs.rst:200 msgid "" "When you ``cd`` into a directory containing a :file:`.env`, `autoenv " "`_ automagically activates the " "environment." msgstr "" -#: ..\..\dev\virtualenvs.rst:203 +#: ../../dev/virtualenvs.rst:203 msgid "Install it on Mac OS X using ``brew``:" msgstr "" -#: ..\..\dev\virtualenvs.rst:209 +#: ../../dev/virtualenvs.rst:209 msgid "And on Linux:" msgstr "" -#: ..\..\dev\virtualenvs.rst:184 +#: ../../dev/virtualenvs.rst:184 msgid "``lsvirtualenv``" msgstr "" -#: ..\..\dev\virtualenvs.rst:188 +#: ../../dev/virtualenvs.rst:188 msgid "``cdvirtualenv``" msgstr "" -#: ..\..\dev\virtualenvs.rst:191 +#: ../../dev/virtualenvs.rst:191 msgid "``cdsitepackages``" msgstr "" -#: ..\..\dev\virtualenvs.rst:194 +#: ../../dev/virtualenvs.rst:194 msgid "``lssitepackages``" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index 7c6cbce07..5488d2687 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\index.rst:7 +#: ../../index.rst:7 msgid "The Hitchhiker's Guide to Python!" msgstr "파이썬을 여행하는 히치하이커를 위한 안내서" -#: ..\..\index.rst:9 +#: ../../index.rst:9 msgid "Welcome to The Hitchhiker's Guide to Python." msgstr "파이썬을 여행하는 히치하이커를 위한 안내서에 오신 것을 환영합니다." -#: ..\..\index.rst:11 +#: ../../index.rst:11 msgid "" "**This guide is currently under heavy active development.** If you'd like " "to help, `fork us on GitHub `_!" -#: ..\..\index.rst:14 +#: ../../index.rst:14 msgid "" "This *opinionated* guide exists to provide both novice and expert Python " "developers a best-practice handbook to the installation, configuration, and " @@ -37,60 +37,60 @@ msgstr "" "이 *자부심 강한* 가이드는 파이썬 초보자와 전문 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는 우수 사례 " "안내서입니다." -#: ..\..\contents.rst.inc:2 +#: ../../contents.rst.inc:2 msgid "Getting Started" msgstr "시작하기" -#: ..\..\contents.rst.inc:4 +#: ../../contents.rst.inc:4 msgid "This part of the guide focuses on setting up your Python environment." msgstr "이 파트의 주제는 파이썬 환경설정입니다." -#: ..\..\contents.rst.inc:11 +#: ../../contents.rst.inc:11 msgid "Properly Install Python" msgstr "적절한 파이썬 설치" -#: ..\..\contents.rst.inc:23 +#: ../../contents.rst.inc:23 msgid "Writing Great Code" msgstr "최고의 코드 작성하기" -#: ..\..\contents.rst.inc:25 +#: ../../contents.rst.inc:25 msgid "" "This part of the guide focuses on best practices for writing Python code." msgstr "이 파트는 파이썬 코드 작성의 모범 사례를 다룹니다." -#: ..\..\contents.rst.inc:41 +#: ../../contents.rst.inc:41 msgid "Scenario Guide" msgstr "시나리오 안내" -#: ..\..\contents.rst.inc:43 +#: ../../contents.rst.inc:43 msgid "" "This part of the guide focuses on tool and module advice based on different " "scenarios." msgstr "이 파트는 다양한 시나리에오 따른 툴과 모듈에 대한 조언을 다룹니다" -#: ..\..\contents.rst.inc:66 +#: ../../contents.rst.inc:66 msgid "Shipping Great Code" msgstr "최고의 코드를 진수하기" -#: ..\..\contents.rst.inc:68 +#: ../../contents.rst.inc:68 msgid "This part of the guide focuses on deploying your Python code." msgstr "이 파트는 파이썬 코드 배포를 다룹니다" -#: ..\..\contents.rst.inc:78 +#: ../../contents.rst.inc:78 msgid "Development Environment" msgstr "개발 환경" -#: ..\..\contents.rst.inc:90 +#: ../../contents.rst.inc:90 msgid "Additional Notes" msgstr "참고" -#: ..\..\contents.rst.inc:92 +#: ../../contents.rst.inc:92 msgid "" "This part of the guide, which is mostly prose, begins with some background " "information about Python, then focuses on next steps." msgstr "대부분 산문체로 쓰여진 이 부분은 파이썬에 대한 배경 지식부터 시작하여 그 다음 단계까지 다룹니다." -#: ..\..\contents.rst.inc:109 +#: ../../contents.rst.inc:109 msgid "" "Contribution notes and legal information are here (for those interested)." msgstr "(관심있으신 분들을 위한) 공헌자를 위한 알림과 법적 정보는 여기에 있습니다." diff --git a/docs/locale/ko/LC_MESSAGES/intro/community.po b/docs/locale/ko/LC_MESSAGES/intro/community.po index 46a4c819d..fc3f824f1 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/community.po +++ b/docs/locale/ko/LC_MESSAGES/intro/community.po @@ -11,127 +11,127 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\intro\community.rst:4 +#: ../../intro/community.rst:4 msgid "The Community" msgstr "" -#: ..\..\intro\community.rst:7 +#: ../../intro/community.rst:7 msgid "BDFL" msgstr "" -#: ..\..\intro\community.rst:9 +#: ../../intro/community.rst:9 msgid "" "Guido van Rossum, the creator of Python, is often referred to as the BDFL — " "the Benevolent Dictator For Life." msgstr "" -#: ..\..\intro\community.rst:15 +#: ../../intro/community.rst:15 msgid "Python Software Foundation" msgstr "" -#: ..\..\intro\community.rst:17 +#: ../../intro/community.rst:17 msgid "" "The mission of the Python Software Foundation is to promote, protect, and " "advance the Python programming language, and to support and facilitate the " "growth of a diverse and international community of Python programmers." msgstr "" -#: ..\..\intro\community.rst:21 +#: ../../intro/community.rst:21 msgid "`Learn More about the PSF `_." msgstr "" -#: ..\..\intro\community.rst:25 +#: ../../intro/community.rst:25 msgid "PEPs" msgstr "" -#: ..\..\intro\community.rst:27 +#: ../../intro/community.rst:27 msgid "" "PEPs are *Python Enhancement Proposals*. They describe changes to Python " "itself, or the standards around it." msgstr "" -#: ..\..\intro\community.rst:30 +#: ../../intro/community.rst:30 msgid "There are three different types of PEPs (as defined by :pep:`1`):" msgstr "" -#: ..\..\intro\community.rst:33 +#: ../../intro/community.rst:33 msgid "Describes a new feature or implementation." msgstr "" -#: ..\..\intro\community.rst:36 +#: ../../intro/community.rst:36 msgid "" "Describes a design issue, general guidelines, or information to the " "community." msgstr "" -#: ..\..\intro\community.rst:40 +#: ../../intro/community.rst:40 msgid "Describes a process related to Python." msgstr "" -#: ..\..\intro\community.rst:44 +#: ../../intro/community.rst:44 msgid "Notable PEPs" msgstr "" -#: ..\..\intro\community.rst:46 +#: ../../intro/community.rst:46 msgid "There are a few PEPs that could be considered required reading:" msgstr "" -#: ..\..\intro\community.rst:49 +#: ../../intro/community.rst:49 msgid "Read this. All of it. Follow it." msgstr "" -#: ..\..\intro\community.rst:52 +#: ../../intro/community.rst:52 msgid "" "A list of 19 statements that briefly explain the philosophy behind Python." msgstr "" -#: ..\..\intro\community.rst:55 +#: ../../intro/community.rst:55 msgid "" "Gives guidelines for semantics and conventions associated with Python " "docstrings." msgstr "" -#: ..\..\intro\community.rst:58 +#: ../../intro/community.rst:58 msgid "" "You can read more at `The PEP Index `_." msgstr "" -#: ..\..\intro\community.rst:61 +#: ../../intro/community.rst:61 msgid "Submitting a PEP" msgstr "" -#: ..\..\intro\community.rst:63 +#: ../../intro/community.rst:63 msgid "" "PEPs are peer-reviewed and accepted/rejected after much discussion. Anyone " "can write and submit a PEP for review." msgstr "" -#: ..\..\intro\community.rst:66 +#: ../../intro/community.rst:66 msgid "Here's an overview of the PEP acceptance workflow:" msgstr "" -#: ..\..\intro\community.rst:72 +#: ../../intro/community.rst:72 msgid "Python Conferences" msgstr "" -#: ..\..\intro\community.rst:74 +#: ../../intro/community.rst:74 msgid "" "The major events for the Python community are developer conferences. The two" " most notable conferences are PyCon, which is held in the US, and its " "European sibling, EuroPython." msgstr "" -#: ..\..\intro\community.rst:78 +#: ../../intro/community.rst:78 msgid "" "A comprehensive list of conferences is maintained at `pycon.org " "`_." msgstr "" -#: ..\..\intro\community.rst:82 +#: ../../intro/community.rst:82 msgid "Python User Groups" msgstr "" -#: ..\..\intro\community.rst:84 +#: ../../intro/community.rst:84 msgid "" "User Groups are where a bunch of Python developers meet to present or talk " "about Python topics of interest. A list of local user groups is maintained " @@ -139,26 +139,26 @@ msgid "" "`_." msgstr "" -#: ..\..\intro\community.rst:33 +#: ../../intro/community.rst:33 msgid "**Standards**" msgstr "" -#: ..\..\intro\community.rst:37 +#: ../../intro/community.rst:37 msgid "**Informational**" msgstr "" -#: ..\..\intro\community.rst:41 +#: ../../intro/community.rst:41 msgid "**Process**" msgstr "" -#: ..\..\intro\community.rst:49 +#: ../../intro/community.rst:49 msgid ":pep:`8`: The Python Style Guide." msgstr "" -#: ..\..\intro\community.rst:52 +#: ../../intro/community.rst:52 msgid ":pep:`20`: The Zen of Python." msgstr "" -#: ..\..\intro\community.rst:56 +#: ../../intro/community.rst:56 msgid ":pep:`257`: Docstring Conventions." msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.po b/docs/locale/ko/LC_MESSAGES/intro/documentation.po index 2497f5710..dfc19b59b 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/intro/documentation.po @@ -11,47 +11,47 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\intro\documentation.rst:2 +#: ../../intro/documentation.rst:2 msgid "Documentation" msgstr "" -#: ..\..\intro\documentation.rst:5 +#: ../../intro/documentation.rst:5 msgid "Official Documentation" msgstr "" -#: ..\..\intro\documentation.rst:7 +#: ../../intro/documentation.rst:7 msgid "" "The official Python Language and Library documentation can be found here:" msgstr "" -#: ..\..\intro\documentation.rst:9 +#: ../../intro/documentation.rst:9 msgid "`Python 2.x `_" msgstr "" -#: ..\..\intro\documentation.rst:10 +#: ../../intro/documentation.rst:10 msgid "`Python 3.x `_" msgstr "" -#: ..\..\intro\documentation.rst:14 +#: ../../intro/documentation.rst:14 msgid "Read the Docs" msgstr "" -#: ..\..\intro\documentation.rst:16 +#: ../../intro/documentation.rst:16 msgid "" "Read the Docs is a popular community project that hosts documentation for " "open source software. It holds documentation for many Python modules, both " "popular and exotic." msgstr "" -#: ..\..\intro\documentation.rst:20 +#: ../../intro/documentation.rst:20 msgid "`Read the Docs `_" msgstr "" -#: ..\..\intro\documentation.rst:24 +#: ../../intro/documentation.rst:24 msgid "pydoc" msgstr "" -#: ..\..\intro\documentation.rst:26 +#: ../../intro/documentation.rst:26 msgid "" ":program:`pydoc` is a utlity that is installed when you install Python. It " "allows you to quickly retrieve and search for documentation from your shell." @@ -59,7 +59,7 @@ msgid "" "pulling up documentation would be as simple as" msgstr "" -#: ..\..\intro\documentation.rst:35 +#: ../../intro/documentation.rst:35 msgid "" "The above command is essentially equivalent to opening the Python REPL and " "running" diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.po b/docs/locale/ko/LC_MESSAGES/intro/duction.po index 135038e7d..6eeb9a963 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/duction.po +++ b/docs/locale/ko/LC_MESSAGES/intro/duction.po @@ -11,38 +11,38 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\intro\duction.rst:2 +#: ../../intro/duction.rst:2 msgid "Introduction" msgstr "" -#: ..\..\intro\duction.rst:4 +#: ../../intro/duction.rst:4 msgid "From the `official Python website `_:" msgstr "" -#: ..\..\intro\duction.rst:6 +#: ../../intro/duction.rst:6 msgid "" "Python is a general-purpose, high-level programming language similar to Tcl," " Perl, Ruby, Scheme, or Java. Some of its main key features include:" msgstr "" -#: ..\..\intro\duction.rst:10 +#: ../../intro/duction.rst:10 msgid "**very clear, readable syntax**" msgstr "" -#: ..\..\intro\duction.rst:12 +#: ../../intro/duction.rst:12 msgid "" "Python's philosophy focuses on readability, from code blocks delineated with" " significant whitespace to intuitive keywords in place of inscrutable " "punctuation." msgstr "" -#: ..\..\intro\duction.rst:16 +#: ../../intro/duction.rst:16 msgid "" "**extensive standard libraries and third party modules for virtually any " "task**" msgstr "" -#: ..\..\intro\duction.rst:19 +#: ../../intro/duction.rst:19 msgid "" "Python is sometimes described with the words \"batteries included\" because " "of its extensive `standard library `_, " @@ -50,7 +50,7 @@ msgid "" "object serialization, and much more." msgstr "" -#: ..\..\intro\duction.rst:25 +#: ../../intro/duction.rst:25 msgid "" "Additionally, the `Python Package Index `_ is " "available for users to submit their packages for widespread use, similar to " @@ -60,11 +60,11 @@ msgid "" "`_ set of math routines." msgstr "" -#: ..\..\intro\duction.rst:33 +#: ../../intro/duction.rst:33 msgid "**integration with other systems**" msgstr "" -#: ..\..\intro\duction.rst:35 +#: ../../intro/duction.rst:35 msgid "" "Python can integrate with `Java libraries `_, " "enabling it to be used with the rich Java environment that corporate " @@ -72,22 +72,22 @@ msgid "" "`_ when speed is of the essence." msgstr "" -#: ..\..\intro\duction.rst:41 +#: ../../intro/duction.rst:41 msgid "**ubiquity on computers**" msgstr "" -#: ..\..\intro\duction.rst:43 +#: ../../intro/duction.rst:43 msgid "" "Python is available on Windows, \\*nix, and Mac. It runs wherever the Java " "virtual machine runs, and the reference implementation CPython can help " "bring Python to wherever there is a working C compiler." msgstr "" -#: ..\..\intro\duction.rst:47 +#: ../../intro/duction.rst:47 msgid "**friendly community**" msgstr "" -#: ..\..\intro\duction.rst:49 +#: ../../intro/duction.rst:49 msgid "" "Python has a vibrant and large :ref:`community ` which " "maintains wikis, conferences, countless repositories, mailing lists, IRC " @@ -95,44 +95,44 @@ msgid "" "write this guide!" msgstr "" -#: ..\..\intro\duction.rst:58 +#: ../../intro/duction.rst:58 msgid "About This Guide" msgstr "" -#: ..\..\intro\duction.rst:61 +#: ../../intro/duction.rst:61 msgid "Purpose" msgstr "" -#: ..\..\intro\duction.rst:63 +#: ../../intro/duction.rst:63 msgid "" "The Hitchhiker's Guide to Python exists to provide both novice and expert " "Python developers a best-practice handbook to the installation, " "configuration, and usage of Python on a daily basis." msgstr "" -#: ..\..\intro\duction.rst:69 +#: ../../intro/duction.rst:69 msgid "By the Community" msgstr "" -#: ..\..\intro\duction.rst:71 +#: ../../intro/duction.rst:71 msgid "" "This guide is architected and maintained by `Kenneth Reitz " "`_ in an open fashion. This is a community-" "driven effort that serves one purpose: to serve the community." msgstr "" -#: ..\..\intro\duction.rst:76 +#: ../../intro/duction.rst:76 msgid "For the Community" msgstr "" -#: ..\..\intro\duction.rst:78 +#: ../../intro/duction.rst:78 msgid "" "All contributions to the Guide are welcome, from Pythonistas of all levels. " "If you think there's a gap in what the Guide covers, fork the Guide on " "GitHub and submit a pull request." msgstr "" -#: ..\..\intro\duction.rst:82 +#: ../../intro/duction.rst:82 msgid "" "Contributions are welcome from everyone, whether they're an old hand or a " "first-time Pythonista, and the authors to the Guide will gladly help if you " @@ -140,7 +140,7 @@ msgid "" " contribution." msgstr "" -#: ..\..\intro\duction.rst:87 +#: ../../intro/duction.rst:87 msgid "" "To get started working on The Hitchhiker's Guide, see the " ":doc:`/notes/contribute` page." diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.po b/docs/locale/ko/LC_MESSAGES/intro/learning.po index ef64bb0f2..9acc40428 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/learning.po +++ b/docs/locale/ko/LC_MESSAGES/intro/learning.po @@ -11,34 +11,34 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\intro\learning.rst:2 +#: ../../intro/learning.rst:2 msgid "Learning Python" msgstr "" -#: ..\..\intro\learning.rst:5 +#: ../../intro/learning.rst:5 msgid "Beginner" msgstr "" -#: ..\..\intro\learning.rst:8 +#: ../../intro/learning.rst:8 msgid "The Python Tutorial" msgstr "" -#: ..\..\intro\learning.rst:10 +#: ../../intro/learning.rst:10 msgid "" "This is the official tutorial. It covers all the basics, and offers a tour " "of the language and the standard library. Recommended for those who need a " "quickstart guide to the language." msgstr "" -#: ..\..\intro\learning.rst:14 +#: ../../intro/learning.rst:14 msgid "`The Python Tutorial `_" msgstr "" -#: ..\..\intro\learning.rst:18 +#: ../../intro/learning.rst:18 msgid "Learn Python Interactive Tutorial" msgstr "" -#: ..\..\intro\learning.rst:20 +#: ../../intro/learning.rst:20 msgid "" "Learnpython.org is an easy non-intimidating way to get introduced to Python." " The website takes the same approach used on the popular `Try Ruby " @@ -47,25 +47,25 @@ msgid "" " to install Python locally." msgstr "" -#: ..\..\intro\learning.rst:25 +#: ../../intro/learning.rst:25 msgid "`Learn Python `_" msgstr "" -#: ..\..\intro\learning.rst:28 +#: ../../intro/learning.rst:28 msgid "" "If you want a more traditional book, *Python For You and Me* is an excellent" " resource for learning all aspects of the language." msgstr "" -#: ..\..\intro\learning.rst:31 +#: ../../intro/learning.rst:31 msgid "`Python for You and Me `_" msgstr "" -#: ..\..\intro\learning.rst:35 +#: ../../intro/learning.rst:35 msgid "Invent Your Own Computer Games with Python" msgstr "" -#: ..\..\intro\learning.rst:37 +#: ../../intro/learning.rst:37 msgid "" "This beginner's book is for those with no programming experience at all. " "Each chapter has the source code to a small game, using these example " @@ -73,75 +73,75 @@ msgid "" "what programs \"look like\"." msgstr "" -#: ..\..\intro\learning.rst:42 +#: ../../intro/learning.rst:42 msgid "" "`Invent Your Own Computer Games with Python `_" msgstr "" -#: ..\..\intro\learning.rst:46 +#: ../../intro/learning.rst:46 msgid "Hacking Secret Ciphers with Python" msgstr "" -#: ..\..\intro\learning.rst:48 +#: ../../intro/learning.rst:48 msgid "" "This book teaches Python programming and basic cryptography for absolute " "beginners. The chapters provide the source code for various ciphers, as well" " as programs that can break them." msgstr "" -#: ..\..\intro\learning.rst:52 +#: ../../intro/learning.rst:52 msgid "" "`Hacking Secret Ciphers with Python `_" msgstr "" -#: ..\..\intro\learning.rst:55 +#: ../../intro/learning.rst:55 msgid "Learn Python the Hard Way" msgstr "" -#: ..\..\intro\learning.rst:57 +#: ../../intro/learning.rst:57 msgid "" "This is an excellent beginner programmer's guide to Python. It covers " "\"hello world\" from the console to the web." msgstr "" -#: ..\..\intro\learning.rst:60 +#: ../../intro/learning.rst:60 msgid "`Learn Python the Hard Way `_" msgstr "" -#: ..\..\intro\learning.rst:64 +#: ../../intro/learning.rst:64 msgid "Crash into Python" msgstr "" -#: ..\..\intro\learning.rst:66 +#: ../../intro/learning.rst:66 msgid "" "Also known as *Python for Programmers with 3 Hours*, this guide gives " "experienced developers from other languages a crash course on Python." msgstr "" -#: ..\..\intro\learning.rst:69 +#: ../../intro/learning.rst:69 msgid "`Crash into Python `_" msgstr "" -#: ..\..\intro\learning.rst:73 +#: ../../intro/learning.rst:73 msgid "Dive Into Python 3" msgstr "" -#: ..\..\intro\learning.rst:75 +#: ../../intro/learning.rst:75 msgid "" "Dive Into Python 3 is a good book for those ready to jump in to Python 3. " "It's a good read if you are moving from Python 2 to 3 or if you already have" " some experience programming in another language." msgstr "" -#: ..\..\intro\learning.rst:79 +#: ../../intro/learning.rst:79 msgid "`Dive Into Python 3 `_" msgstr "" -#: ..\..\intro\learning.rst:82 +#: ../../intro/learning.rst:82 msgid "Think Python: How to Think Like a Computer Scientist" msgstr "" -#: ..\..\intro\learning.rst:84 +#: ../../intro/learning.rst:84 msgid "" "Think Python attempts to give an introduction to basic concepts in computer " "science through the use of the Python language. The focus was to create a " @@ -149,13 +149,13 @@ msgid "" "devoted to the subject of debugging." msgstr "" -#: ..\..\intro\learning.rst:89 +#: ../../intro/learning.rst:89 msgid "" "While exploring the various features available in the Python language the " "author weaves in various design patterns and best practices." msgstr "" -#: ..\..\intro\learning.rst:92 +#: ../../intro/learning.rst:92 msgid "" "The book also includes several case studies which have the reader explore " "the topics discussed in the book in greater detail by applying those topics " @@ -163,15 +163,15 @@ msgid "" "Analysis." msgstr "" -#: ..\..\intro\learning.rst:97 +#: ../../intro/learning.rst:97 msgid "`Think Python `_" msgstr "" -#: ..\..\intro\learning.rst:101 +#: ../../intro/learning.rst:101 msgid "Python Koans" msgstr "" -#: ..\..\intro\learning.rst:103 +#: ../../intro/learning.rst:103 msgid "" "Python Koans is a port of Edgecase's Ruby Koans. It uses a test-driven " "approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive tutorial" @@ -179,83 +179,83 @@ msgid "" "in a test script, this provides sequential steps to learning Python." msgstr "" -#: ..\..\intro\learning.rst:108 +#: ../../intro/learning.rst:108 msgid "" "For those used to languages and figuring out puzzles on their own, this can " "be a fun, attractive option. For those new to Python and programming, having" " an additional resource or reference will be helpful." msgstr "" -#: ..\..\intro\learning.rst:112 +#: ../../intro/learning.rst:112 msgid "`Python Koans `_" msgstr "" -#: ..\..\intro\learning.rst:114 +#: ../../intro/learning.rst:114 msgid "" "More information about test driven development can be found at these " "resources:" msgstr "" -#: ..\..\intro\learning.rst:116 +#: ../../intro/learning.rst:116 msgid "" "`Test Driven Development `_" msgstr "" -#: ..\..\intro\learning.rst:119 +#: ../../intro/learning.rst:119 msgid "A Byte of Python" msgstr "" -#: ..\..\intro\learning.rst:121 +#: ../../intro/learning.rst:121 msgid "" "A free introductory book that teaches Python at the beginner level, it " "assumes no previous programming experience." msgstr "" -#: ..\..\intro\learning.rst:124 +#: ../../intro/learning.rst:124 msgid "" "`A Byte of Python for Python 2.x " "`_ `A Byte of Python " "for Python 3.x `_" msgstr "" -#: ..\..\intro\learning.rst:129 +#: ../../intro/learning.rst:129 msgid "Advanced" msgstr "" -#: ..\..\intro\learning.rst:132 +#: ../../intro/learning.rst:132 msgid "Pro Python" msgstr "" -#: ..\..\intro\learning.rst:134 +#: ../../intro/learning.rst:134 msgid "" "This book is for intermediate to advanced Python programmers who are looking" " to understand how and why Python works the way it does and how they can " "take their code to the next level." msgstr "" -#: ..\..\intro\learning.rst:137 +#: ../../intro/learning.rst:137 msgid "`Pro Python `_" msgstr "" -#: ..\..\intro\learning.rst:141 +#: ../../intro/learning.rst:141 msgid "Expert Python Programming" msgstr "" -#: ..\..\intro\learning.rst:142 +#: ../../intro/learning.rst:142 msgid "" "Expert Python Programming deals with best practices in programming Python " "and is focused on the more advanced crowd." msgstr "" -#: ..\..\intro\learning.rst:145 +#: ../../intro/learning.rst:145 msgid "" "It starts with topics like decorators (with caching, proxy, and context " "manager case-studies), method resolution order, using super() and meta-" "programming, and general :pep:`8` best practices." msgstr "" -#: ..\..\intro\learning.rst:149 +#: ../../intro/learning.rst:149 msgid "" "It has a detailed, multi-chapter case study on writing and releasing a " "package and eventually an application, including a chapter on using " @@ -264,17 +264,17 @@ msgid "" "optimization/profiling." msgstr "" -#: ..\..\intro\learning.rst:154 +#: ../../intro/learning.rst:154 msgid "" "`Expert Python Programming `_" msgstr "" -#: ..\..\intro\learning.rst:158 +#: ../../intro/learning.rst:158 msgid "A Guide to Python's Magic Methods" msgstr "" -#: ..\..\intro\learning.rst:160 +#: ../../intro/learning.rst:160 msgid "" "This is a collection of blog posts by Rafe Kettler which explain 'magic " "methods' in Python. Magic methods are surrounded by double underscores " @@ -282,45 +282,45 @@ msgid "" "magical ways." msgstr "" -#: ..\..\intro\learning.rst:164 +#: ../../intro/learning.rst:164 msgid "" "`A Guide to Python's Magic Methods " "`_" msgstr "" -#: ..\..\intro\learning.rst:168 +#: ../../intro/learning.rst:168 msgid "For Engineers and Scientists" msgstr "" -#: ..\..\intro\learning.rst:171 +#: ../../intro/learning.rst:171 msgid "A Primer on Scientific Programming with Python" msgstr "" -#: ..\..\intro\learning.rst:173 +#: ../../intro/learning.rst:173 msgid "" "A Primer on Scientific Programming with Python, written by Hans Petter " "Langtangen, mainly covers Python's usage in scientific field. In the book, " "examples are chosen from mathematics and the natural sciences." msgstr "" -#: ..\..\intro\learning.rst:177 +#: ../../intro/learning.rst:177 msgid "" "`A Primer on Scientific Programming with Python " "`_" msgstr "" -#: ..\..\intro\learning.rst:180 +#: ../../intro/learning.rst:180 msgid "Numerical Methods in Engineering with Python" msgstr "" -#: ..\..\intro\learning.rst:182 +#: ../../intro/learning.rst:182 msgid "" "Numerical Methods in Engineering with Python, written by Jaan Kiusalaas, " "attempts to emphasis on numerical methods and how to implement them in " "Python." msgstr "" -#: ..\..\intro\learning.rst:185 +#: ../../intro/learning.rst:185 msgid "" "`Numerical Methods in Engineering with Python " "`_" msgstr "" -#: ..\..\intro\learning.rst:188 +#: ../../intro/learning.rst:188 msgid "Miscellaneous topics" msgstr "" -#: ..\..\intro\learning.rst:191 +#: ../../intro/learning.rst:191 msgid "Problem Solving with Algorithms and Data Structures" msgstr "" -#: ..\..\intro\learning.rst:193 +#: ../../intro/learning.rst:193 msgid "" "Problem Solving with Algorithms and Data Structures covers a range of data " "structures and algorithms. All concepts are illustrated with Python code " "along with interactive samples that can be run directly in the browser." msgstr "" -#: ..\..\intro\learning.rst:197 +#: ../../intro/learning.rst:197 msgid "" "`Problem Solving with Algorithms and Data Structures " "`_" msgstr "" -#: ..\..\intro\learning.rst:201 +#: ../../intro/learning.rst:201 msgid "Programming Collective Intelligence" msgstr "" -#: ..\..\intro\learning.rst:203 +#: ../../intro/learning.rst:203 msgid "" "Programming Collective Intelligence introduces a wide array of basic machine" " learning and data mining methods. The exposition is not very mathematically" @@ -361,85 +361,85 @@ msgid "" " how to implement the algorithms in Python." msgstr "" -#: ..\..\intro\learning.rst:207 +#: ../../intro/learning.rst:207 msgid "" "`Programming Collective Intelligence " "`_" msgstr "" -#: ..\..\intro\learning.rst:210 +#: ../../intro/learning.rst:210 msgid "References" msgstr "" -#: ..\..\intro\learning.rst:213 +#: ../../intro/learning.rst:213 msgid "Python in a Nutshell" msgstr "" -#: ..\..\intro\learning.rst:215 +#: ../../intro/learning.rst:215 msgid "" "Python in a Nutshell, written by Alex Martelli, covers most cross-platform " "Python's usage, from its syntax to built-in libraries to advanced topics " "such as writing C extensions." msgstr "" -#: ..\..\intro\learning.rst:219 +#: ../../intro/learning.rst:219 msgid "" "`Python in a Nutshell `_" msgstr "" -#: ..\..\intro\learning.rst:222 +#: ../../intro/learning.rst:222 msgid "The Python Language Reference" msgstr "" -#: ..\..\intro\learning.rst:224 +#: ../../intro/learning.rst:224 msgid "" "This is Python's reference manual, it covers the syntax and the core " "semantics of the language." msgstr "" -#: ..\..\intro\learning.rst:227 +#: ../../intro/learning.rst:227 msgid "" "`The Python Language Reference " "`_" msgstr "" -#: ..\..\intro\learning.rst:230 +#: ../../intro/learning.rst:230 msgid "Python Pocket Reference" msgstr "" -#: ..\..\intro\learning.rst:232 +#: ../../intro/learning.rst:232 msgid "" "Python Pocket Reference, written by Mark Lutz, is an easy to use reference " "to the core language, with descriptions of commonly used modules and " "toolkits. It covers Python 3 and 2.6 versions." msgstr "" -#: ..\..\intro\learning.rst:236 +#: ../../intro/learning.rst:236 msgid "" "`Python Pocket Reference " "`_" msgstr "" -#: ..\..\intro\learning.rst:239 +#: ../../intro/learning.rst:239 msgid "Python Cookbook" msgstr "" -#: ..\..\intro\learning.rst:241 +#: ../../intro/learning.rst:241 msgid "" "Python Cookbook, written by David Beazley and Brian K. Jones, is packed with" " practical recipes. This book covers the core python language as well as " "tasks common to a wide variety of application domains." msgstr "" -#: ..\..\intro\learning.rst:245 +#: ../../intro/learning.rst:245 msgid "`Python Cookbook `_" msgstr "" -#: ..\..\intro\learning.rst:248 +#: ../../intro/learning.rst:248 msgid "Writing Idiomatic Python" msgstr "" -#: ..\..\intro\learning.rst:250 +#: ../../intro/learning.rst:250 msgid "" "\"Writing Idiomatic Python\", written by Jeff Knupp, contains the most " "common and important Python idioms in a format that maximizes identification" @@ -449,13 +449,13 @@ msgid "" "the \"Harmful\" way to write it and the \"Idiomatic\" way." msgstr "" -#: ..\..\intro\learning.rst:257 +#: ../../intro/learning.rst:257 msgid "" "`For Python 2.7.3+ `_" msgstr "" -#: ..\..\intro\learning.rst:259 +#: ../../intro/learning.rst:259 msgid "" "`For Python 3.3+ `_" diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.po b/docs/locale/ko/LC_MESSAGES/intro/news.po index 4ebf99413..c119cbc6d 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/news.po +++ b/docs/locale/ko/LC_MESSAGES/intro/news.po @@ -11,75 +11,75 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\intro\news.rst:2 +#: ../../intro/news.rst:2 msgid "News" msgstr "" -#: ..\..\intro\news.rst:5 +#: ../../intro/news.rst:5 msgid "Planet Python" msgstr "" -#: ..\..\intro\news.rst:7 +#: ../../intro/news.rst:7 msgid "" "This is an aggregate of Python news from a growing number of developers." msgstr "" -#: ..\..\intro\news.rst:9 +#: ../../intro/news.rst:9 msgid "`Planet Python `_" msgstr "" -#: ..\..\intro\news.rst:12 +#: ../../intro/news.rst:12 msgid "/r/python" msgstr "" -#: ..\..\intro\news.rst:14 +#: ../../intro/news.rst:14 msgid "" "/r/python is the Reddit Python community where users contribute and vote on " "Python-related news." msgstr "" -#: ..\..\intro\news.rst:17 +#: ../../intro/news.rst:17 msgid "`/r/python `_" msgstr "" -#: ..\..\intro\news.rst:20 +#: ../../intro/news.rst:20 msgid "Pycoder's Weekly" msgstr "" -#: ..\..\intro\news.rst:22 +#: ../../intro/news.rst:22 msgid "" "Pycoder's Weekly is a free weekly Python newsletter for Python developers by" " Python developers (Projects, Articles, News, and Jobs)." msgstr "" -#: ..\..\intro\news.rst:25 +#: ../../intro/news.rst:25 msgid "`Pycoder's Weekly `_" msgstr "" -#: ..\..\intro\news.rst:28 +#: ../../intro/news.rst:28 msgid "Python Weekly" msgstr "" -#: ..\..\intro\news.rst:30 +#: ../../intro/news.rst:30 msgid "" "Python Weekly is a free weekly newsletter featuring curated news, articles, " "new releases, jobs, etc. related to Python." msgstr "" -#: ..\..\intro\news.rst:33 +#: ../../intro/news.rst:33 msgid "`Python Weekly `_" msgstr "" -#: ..\..\intro\news.rst:36 +#: ../../intro/news.rst:36 msgid "Python News" msgstr "" -#: ..\..\intro\news.rst:38 +#: ../../intro/news.rst:38 msgid "" "News section in the official Python web site (www.python.org). It briefly " "highlights the news from Python community." msgstr "" -#: ..\..\intro\news.rst:41 +#: ../../intro/news.rst:41 msgid "`Python News `_" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/notes/contribute.po b/docs/locale/ko/LC_MESSAGES/notes/contribute.po index 08851db52..238d1b7e8 100644 --- a/docs/locale/ko/LC_MESSAGES/notes/contribute.po +++ b/docs/locale/ko/LC_MESSAGES/notes/contribute.po @@ -11,16 +11,16 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\notes\contribute.rst:2 +#: ../../notes/contribute.rst:2 msgid "Contribute" msgstr "" -#: ..\..\notes\contribute.rst:4 +#: ../../notes/contribute.rst:4 msgid "" "Python-guide is under active development, and contributors are welcome." msgstr "" -#: ..\..\notes\contribute.rst:6 +#: ../../notes/contribute.rst:6 msgid "" "If you have a feature request, suggestion, or bug report, please open a new " "issue on GitHub_. To submit patches, please send a pull request on GitHub_. " @@ -29,24 +29,24 @@ msgid "" "guide/contributors>`_." msgstr "" -#: ..\..\notes\contribute.rst:12 +#: ../../notes/contribute.rst:12 msgid "Style Guide" msgstr "" -#: ..\..\notes\contribute.rst:14 +#: ../../notes/contribute.rst:14 msgid "For all contributions, please follow the :ref:`guide-style-guide`." msgstr "" -#: ..\..\notes\contribute.rst:19 +#: ../../notes/contribute.rst:19 msgid "Todo List" msgstr "" -#: ..\..\notes\contribute.rst:21 +#: ../../notes/contribute.rst:21 msgid "" "If you'd like to contribute, there's plenty to do. Here's a short todo_ " "list." msgstr "" -#: ..\..\..\TODO.rst:1 +#: ../../../TODO.rst:1 msgid "Establish \"use this\" vs \"alternatives are....\" recommendations" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/notes/license.po b/docs/locale/ko/LC_MESSAGES/notes/license.po index e5e5ceb4d..79f151cfe 100644 --- a/docs/locale/ko/LC_MESSAGES/notes/license.po +++ b/docs/locale/ko/LC_MESSAGES/notes/license.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\notes\license.rst:3 +#: ../../notes/license.rst:3 msgid "License" msgstr "" -#: ..\..\notes\license.rst:5 +#: ../../notes/license.rst:5 msgid "" "The Guide is licensed under the `Creative Commons Attribution-NonCommercial-" "ShareAlike 3.0 Unported license `." msgstr "" -#: ..\..\notes\styleguide.rst:26 +#: ../../notes/styleguide.rst:26 msgid "" "Avoid including too much information on subjects that don't directly relate " "to Python development." msgstr "" -#: ..\..\notes\styleguide.rst:28 +#: ../../notes/styleguide.rst:28 msgid "" "Prefer to link to other sources if the information is already out there. Be " "sure to describe what and why you are linking." msgstr "" -#: ..\..\notes\styleguide.rst:30 +#: ../../notes/styleguide.rst:30 msgid "" "`Cite `_ " "references where needed." msgstr "" -#: ..\..\notes\styleguide.rst:32 +#: ../../notes/styleguide.rst:32 msgid "" "If a subject isn't directly relevant to Python, but useful in conjunction " "with Python (e.g., Git, GitHub, Databases), reference by linking to useful " "resources, and describe why it's useful to Python." msgstr "" -#: ..\..\notes\styleguide.rst:35 +#: ../../notes/styleguide.rst:35 msgid "When in doubt, ask." msgstr "" -#: ..\..\notes\styleguide.rst:38 +#: ../../notes/styleguide.rst:38 msgid "Headings" msgstr "" -#: ..\..\notes\styleguide.rst:40 +#: ../../notes/styleguide.rst:40 msgid "Use the following styles for headings." msgstr "" -#: ..\..\notes\styleguide.rst:42 +#: ../../notes/styleguide.rst:42 msgid "Chapter title:" msgstr "" -#: ..\..\notes\styleguide.rst:50 +#: ../../notes/styleguide.rst:50 msgid "Page title:" msgstr "" -#: ..\..\notes\styleguide.rst:58 +#: ../../notes/styleguide.rst:58 msgid "Section headings:" msgstr "" -#: ..\..\notes\styleguide.rst:65 +#: ../../notes/styleguide.rst:65 msgid "Sub section headings:" msgstr "" -#: ..\..\notes\styleguide.rst:73 +#: ../../notes/styleguide.rst:73 msgid "Prose" msgstr "" -#: ..\..\notes\styleguide.rst:75 +#: ../../notes/styleguide.rst:75 msgid "" "Wrap text lines at 78 characters. Where necessary, lines may exceed 78 " "characters, especially if wrapping would make the source text more difficult" " to read." msgstr "" -#: ..\..\notes\styleguide.rst:81 +#: ../../notes/styleguide.rst:81 msgid "Code Examples" msgstr "" -#: ..\..\notes\styleguide.rst:83 +#: ../../notes/styleguide.rst:83 msgid "" "Wrap all code examples at 70 characters to avoid horizontal scrollbars." msgstr "" -#: ..\..\notes\styleguide.rst:85 +#: ../../notes/styleguide.rst:85 msgid "Command line examples:" msgstr "" -#: ..\..\notes\styleguide.rst:94 +#: ../../notes/styleguide.rst:94 msgid "Be sure to include the ``$`` prefix before each line." msgstr "" -#: ..\..\notes\styleguide.rst:96 +#: ../../notes/styleguide.rst:96 msgid "Python interpreter examples:" msgstr "" -#: ..\..\notes\styleguide.rst:106 +#: ../../notes/styleguide.rst:106 msgid "Python examples:" msgstr "" -#: ..\..\notes\styleguide.rst:118 +#: ../../notes/styleguide.rst:118 msgid "Externally Linking" msgstr "" -#: ..\..\notes\styleguide.rst:120 +#: ../../notes/styleguide.rst:120 msgid "Prefer labels for well known subjects (ex: proper nouns) when linking:" msgstr "" -#: ..\..\notes\styleguide.rst:128 +#: ../../notes/styleguide.rst:128 msgid "" "Prefer to use descriptive labels with inline links instead of leaving bare " "links:" msgstr "" -#: ..\..\notes\styleguide.rst:135 +#: ../../notes/styleguide.rst:135 msgid "" "Avoid using labels such as \"click here\", \"this\", etc. preferring " "descriptive labels (SEO worthy) instead." msgstr "" -#: ..\..\notes\styleguide.rst:139 +#: ../../notes/styleguide.rst:139 msgid "Linking to Sections in The Guide" msgstr "" -#: ..\..\notes\styleguide.rst:141 +#: ../../notes/styleguide.rst:141 msgid "" "To cross-reference other parts of this documentation, use the `:ref: " "`_ keyword and labels." msgstr "" -#: ..\..\notes\styleguide.rst:145 +#: ../../notes/styleguide.rst:145 msgid "" "To make reference labels more clear and unique, always add a ``-ref`` " "suffix:" msgstr "" -#: ..\..\notes\styleguide.rst:155 +#: ../../notes/styleguide.rst:155 msgid "Notes and Warnings" msgstr "" -#: ..\..\notes\styleguide.rst:157 +#: ../../notes/styleguide.rst:157 msgid "" "Make use of the appropriate `admonitions directives " "`_ when making notes." msgstr "" -#: ..\..\notes\styleguide.rst:160 +#: ../../notes/styleguide.rst:160 msgid "Notes:" msgstr "" -#: ..\..\notes\styleguide.rst:169 +#: ../../notes/styleguide.rst:169 msgid "Warnings:" msgstr "" -#: ..\..\notes\styleguide.rst:176 +#: ../../notes/styleguide.rst:176 msgid "TODOs" msgstr "" -#: ..\..\notes\styleguide.rst:178 +#: ../../notes/styleguide.rst:178 msgid "" "Please mark any incomplete areas of The Guide with a `todo directive " "`_. To " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po index 9ee8cfa9e..489e886c9 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\admin.rst:2 +#: ../../scenarios/admin.rst:2 msgid "Systems Administration" msgstr "" -#: ..\..\scenarios\admin.rst:5 +#: ../../scenarios/admin.rst:5 msgid "Fabric" msgstr "" -#: ..\..\scenarios\admin.rst:7 +#: ../../scenarios/admin.rst:7 msgid "" "`Fabric `_ is a library for simplifying system " "administration tasks. While Chef and Puppet tend to focus on managing " @@ -27,11 +27,11 @@ msgid "" "tasks such as deployment." msgstr "" -#: ..\..\scenarios\admin.rst:12 +#: ../../scenarios/admin.rst:12 msgid "Install Fabric:" msgstr "" -#: ..\..\scenarios\admin.rst:18 +#: ../../scenarios/admin.rst:18 msgid "" "The following code will create two tasks that we can use: ``memory_usage`` " "and ``deploy``. The former will output the memory usage on each machine. The" @@ -40,31 +40,31 @@ msgid "" "server." msgstr "" -#: ..\..\scenarios\admin.rst:41 +#: ../../scenarios/admin.rst:41 msgid "" "With the previous code saved in a file named :file:`fabfile.py`, we can " "check memory usage with:" msgstr "" -#: ..\..\scenarios\admin.rst:61 +#: ../../scenarios/admin.rst:61 msgid "and we can deploy with:" msgstr "" -#: ..\..\scenarios\admin.rst:67 +#: ../../scenarios/admin.rst:67 msgid "" "Additional features include parallel execution, interaction with remote " "programs, and host grouping." msgstr "" -#: ..\..\scenarios\admin.rst:70 +#: ../../scenarios/admin.rst:70 msgid "`Fabric Documentation `_" msgstr "" -#: ..\..\scenarios\admin.rst:73 +#: ../../scenarios/admin.rst:73 msgid "Salt" msgstr "" -#: ..\..\scenarios\admin.rst:75 +#: ../../scenarios/admin.rst:75 msgid "" "`Salt `_ is an open source infrastructure management " "tool. It supports remote command execution from a central point (master " @@ -72,25 +72,25 @@ msgid "" "be used to configure multiple servers using simple template files." msgstr "" -#: ..\..\scenarios\admin.rst:80 +#: ../../scenarios/admin.rst:80 msgid "" "Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" -#: ..\..\scenarios\admin.rst:86 +#: ../../scenarios/admin.rst:86 msgid "" "After configuring a master server and any number of minion hosts, we can run" " arbitrary shell commands or use pre-built modules of complex commands on " "our minions." msgstr "" -#: ..\..\scenarios\admin.rst:89 +#: ../../scenarios/admin.rst:89 msgid "" "The following command lists all available minion hosts, using the ping " "module." msgstr "" -#: ..\..\scenarios\admin.rst:95 +#: ../../scenarios/admin.rst:95 msgid "" "The host filtering is accomplished by matching the minion id, or using the " "grains system. The `grains " @@ -99,62 +99,62 @@ msgid "" "architecture to provide a host taxonomy for the Salt modules." msgstr "" -#: ..\..\scenarios\admin.rst:100 +#: ../../scenarios/admin.rst:100 msgid "" "The following command lists all available minions running CentOS using the " "grains system:" msgstr "" -#: ..\..\scenarios\admin.rst:106 +#: ../../scenarios/admin.rst:106 msgid "" "Salt also provides a state system. States can be used to configure the " "minion hosts." msgstr "" -#: ..\..\scenarios\admin.rst:108 +#: ../../scenarios/admin.rst:108 msgid "" "For example, when a minion host is ordered to read the following state file," " it will install and start the Apache server:" msgstr "" -#: ..\..\scenarios\admin.rst:122 +#: ../../scenarios/admin.rst:122 msgid "" "State files can be written using YAML, the Jinja2 template system or pure " "Python." msgstr "" -#: ..\..\scenarios\admin.rst:124 +#: ../../scenarios/admin.rst:124 msgid "`Salt Documentation `_" msgstr "" -#: ..\..\scenarios\admin.rst:128 +#: ../../scenarios/admin.rst:128 msgid "Psutil" msgstr "" -#: ..\..\scenarios\admin.rst:130 +#: ../../scenarios/admin.rst:130 msgid "" "`Psutil `_ is an interface to different " "system information (e.g. CPU, memory, disks, network, users and processes)." msgstr "" -#: ..\..\scenarios\admin.rst:133 +#: ../../scenarios/admin.rst:133 msgid "" "Here is an example to be aware of some server overload. If any of the tests " "(net, CPU) fail, it will send an email." msgstr "" -#: ..\..\scenarios\admin.rst:179 +#: ../../scenarios/admin.rst:179 msgid "" "A full terminal application like a widely extended top which is based on " "psutil and with the ability of a client-server monitoring is `glance " "`_." msgstr "" -#: ..\..\scenarios\admin.rst:184 +#: ../../scenarios/admin.rst:184 msgid "Ansible" msgstr "" -#: ..\..\scenarios\admin.rst:186 +#: ../../scenarios/admin.rst:186 msgid "" "`Ansible `_ is an open source system automation tool. " "The biggest advantage over Puppet or Chef is it does not require an agent on" @@ -163,31 +163,31 @@ msgid "" "templating." msgstr "" -#: ..\..\scenarios\admin.rst:191 +#: ../../scenarios/admin.rst:191 msgid "" "Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" -#: ..\..\scenarios\admin.rst:197 +#: ../../scenarios/admin.rst:197 msgid "" "Ansible requires an inventory file that describes the hosts to which it has " "access. Below is an example of a host and playbook that will ping all the " "hosts in the inventory file." msgstr "" -#: ..\..\scenarios\admin.rst:201 +#: ../../scenarios/admin.rst:201 msgid "Here is an example inventory file: :file:`hosts.yml`" msgstr "" -#: ..\..\scenarios\admin.rst:209 +#: ../../scenarios/admin.rst:209 msgid "Here is an example playbook: :file:`ping.yml`" msgstr "" -#: ..\..\scenarios\admin.rst:221 +#: ../../scenarios/admin.rst:221 msgid "To run the playbook:" msgstr "" -#: ..\..\scenarios\admin.rst:227 +#: ../../scenarios/admin.rst:227 msgid "" "The Ansible playbook will ping all of the servers in the :file:`hosts.yml` " "file. You can also select groups of servers using Ansible. For more " @@ -195,24 +195,24 @@ msgid "" "`_." msgstr "" -#: ..\..\scenarios\admin.rst:233 +#: ../../scenarios/admin.rst:233 msgid "Chef" msgstr "" -#: ..\..\scenarios\admin.rst:235 +#: ../../scenarios/admin.rst:235 msgid "Write about Chef" msgstr "" -#: ..\..\scenarios\admin.rst:237 +#: ../../scenarios/admin.rst:237 msgid "" "`Chef Documentation `_" msgstr "" -#: ..\..\scenarios\admin.rst:241 +#: ../../scenarios/admin.rst:241 msgid "Puppet" msgstr "" -#: ..\..\scenarios\admin.rst:243 +#: ../../scenarios/admin.rst:243 msgid "" "`Puppet `_ is an IT Automation and configuration " "management software from Puppet Labs that allows System Administrators to " @@ -220,7 +220,7 @@ msgid "" "way to manage their fleet of physical and virtual machines." msgstr "" -#: ..\..\scenarios\admin.rst:248 +#: ../../scenarios/admin.rst:248 msgid "" "Puppet is available both as an Open Source and an Enterprise variant. " "Modules are small,shareable units of code written to automate or define the " @@ -229,14 +229,14 @@ msgid "" "Enterprise Puppet." msgstr "" -#: ..\..\scenarios\admin.rst:253 +#: ../../scenarios/admin.rst:253 msgid "" "Puppet Agents are installed on nodes whose state needs to be monitored or " "changed. A desginated server known as the Puppet Master is responsible for " "orchastrating the agent nodes." msgstr "" -#: ..\..\scenarios\admin.rst:257 +#: ../../scenarios/admin.rst:257 msgid "" "Agent nodes send basic facts about the system such as to the operating " "system, kernel, architecture, ip address, hostname etc. to the Puppet " @@ -246,21 +246,21 @@ msgid "" "a report back to the Puppet Master." msgstr "" -#: ..\..\scenarios\admin.rst:263 +#: ../../scenarios/admin.rst:263 msgid "" "Facter is an interesting tool that ships with Puppet that pulls basic facts " "about the System. These facts can be referenced as a variable while writing " "your Puppet modules." msgstr "" -#: ..\..\scenarios\admin.rst:276 +#: ../../scenarios/admin.rst:276 msgid "" "Writing Modules in Puppet is pretty straight forward. Puppet Manifests " "together form Puppet Modules. Puppet manifest end with an extension of " "``.pp``. Here is an example of 'Hello World' in Puppet." msgstr "" -#: ..\..\scenarios\admin.rst:288 +#: ../../scenarios/admin.rst:288 msgid "" "Here is another example with system based logic. Note how the " "operatingsystem fact is being used as a variable prepended with the ``$`` " @@ -268,7 +268,7 @@ msgid "" "be referenced by ``$hostname``" msgstr "" -#: ..\..\scenarios\admin.rst:301 +#: ../../scenarios/admin.rst:301 msgid "" "There are several resource types for Puppet but the package-file-service " "paradigm is all you need for undertaking majority of the configuration " @@ -277,33 +277,33 @@ msgid "" " everytime the sshd configuration file is changed." msgstr "" -#: ..\..\scenarios\admin.rst:331 +#: ../../scenarios/admin.rst:331 msgid "" "For more information checkout `Puppet Labs Documentation " "`_" msgstr "" -#: ..\..\scenarios\admin.rst:334 +#: ../../scenarios/admin.rst:334 msgid "Blueprint" msgstr "" -#: ..\..\scenarios\admin.rst:336 +#: ../../scenarios/admin.rst:336 msgid "Write about Blueprint" msgstr "" -#: ..\..\scenarios\admin.rst:339 +#: ../../scenarios/admin.rst:339 msgid "Buildout" msgstr "" -#: ..\..\scenarios\admin.rst:341 +#: ../../scenarios/admin.rst:341 msgid "Write about Buildout" msgstr "" -#: ..\..\scenarios\admin.rst:343 +#: ../../scenarios/admin.rst:343 msgid "`Buildout Website `_" msgstr "" -#: ..\..\scenarios\admin.rst:0 ..\..\scenarios\admin.rst:0 -#: ..\..\scenarios\admin.rst:0 +#: ../../scenarios/admin.rst:0 ../../scenarios/admin.rst:0 +#: ../../scenarios/admin.rst:0 msgid "Todo" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po index 4c9b9a9ea..4301ebe05 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po @@ -11,22 +11,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\ci.rst:2 +#: ../../scenarios/ci.rst:2 msgid "Continuous Integration" msgstr "" -#: ..\..\scenarios\ci.rst:6 +#: ../../scenarios/ci.rst:6 msgid "Why?" msgstr "" -#: ..\..\scenarios\ci.rst:8 +#: ../../scenarios/ci.rst:8 msgid "" "Martin Fowler, who first wrote about `Continuous Integration " "`_ (short: CI) " "together with Kent Beck, describes the CI as follows:" msgstr "" -#: ..\..\scenarios\ci.rst:11 +#: ../../scenarios/ci.rst:11 msgid "" "Continuous Integration is a software development practice where members of a" " team integrate their work frequently, usually each person integrates at " @@ -37,31 +37,31 @@ msgid "" "cohesive software more rapidly." msgstr "" -#: ..\..\scenarios\ci.rst:20 +#: ../../scenarios/ci.rst:20 msgid "Jenkins" msgstr "" -#: ..\..\scenarios\ci.rst:22 +#: ../../scenarios/ci.rst:22 msgid "" "`Jenkins CI `_ is an extensible continuous " "integration engine. Use it." msgstr "" -#: ..\..\scenarios\ci.rst:28 +#: ../../scenarios/ci.rst:28 msgid "Buildbot" msgstr "" -#: ..\..\scenarios\ci.rst:30 +#: ../../scenarios/ci.rst:30 msgid "" "`Buildbot `_ is a Python system to " "automate the compile/test cycle to validate code changes." msgstr "" -#: ..\..\scenarios\ci.rst:35 +#: ../../scenarios/ci.rst:35 msgid "Mule" msgstr "" -#: ..\..\scenarios\ci.rst:37 +#: ../../scenarios/ci.rst:37 msgid "" "`Mule " "`_ " @@ -73,11 +73,11 @@ msgid "" "that happens." msgstr "" -#: ..\..\scenarios\ci.rst:47 +#: ../../scenarios/ci.rst:47 msgid "Tox" msgstr "" -#: ..\..\scenarios\ci.rst:49 +#: ../../scenarios/ci.rst:49 msgid "" "`tox `_ is an automation tool " "providing packaging, testing and deployment of Python software right from " @@ -85,29 +85,29 @@ msgid "" "command line tool which provides the following features:" msgstr "" -#: ..\..\scenarios\ci.rst:54 +#: ../../scenarios/ci.rst:54 msgid "" "Checking that packages install correctly with different Python versions and " "interpreters" msgstr "" -#: ..\..\scenarios\ci.rst:56 +#: ../../scenarios/ci.rst:56 msgid "" "Running tests in each of the environments, configuring your test tool of " "choice" msgstr "" -#: ..\..\scenarios\ci.rst:58 +#: ../../scenarios/ci.rst:58 msgid "" "Acting as a front-end to Continuous Integration servers, reducing " "boilerplate and merging CI and shell-based testing." msgstr "" -#: ..\..\scenarios\ci.rst:63 +#: ../../scenarios/ci.rst:63 msgid "Travis-CI" msgstr "" -#: ..\..\scenarios\ci.rst:65 +#: ../../scenarios/ci.rst:65 msgid "" "`Travis-CI `_ is a distributed CI server which " "builds tests for open source projects for free. It provides multiple workers" @@ -117,13 +117,13 @@ msgid "" "ci is a great and easy way to get started with Continuous Integration." msgstr "" -#: ..\..\scenarios\ci.rst:72 +#: ../../scenarios/ci.rst:72 msgid "" "In order to get started, add a :file:`.travis.yml` file to your repository " "with this example content::" msgstr "" -#: ..\..\scenarios\ci.rst:88 +#: ../../scenarios/ci.rst:88 msgid "" "This will get your project tested on all the listed Python versions by " "running the given script, and will only build the master branch. There are a" @@ -132,7 +132,7 @@ msgid "" "explain all of these options, and are very thorough." msgstr "" -#: ..\..\scenarios\ci.rst:94 +#: ../../scenarios/ci.rst:94 msgid "" "In order to activate testing for your project, go to `the travis-ci site " "`_ and login with your GitHub account. Then activate" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po index 21f048d93..ca055059c 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\cli.rst:2 +#: ../../scenarios/cli.rst:2 msgid "Command-line Applications" msgstr "" -#: ..\..\scenarios\cli.rst:4 +#: ../../scenarios/cli.rst:4 msgid "" "Command-line applications, also referred to as `Console Applications " "`_, are computer programs " @@ -26,42 +26,42 @@ msgid "" "flags or switches." msgstr "" -#: ..\..\scenarios\cli.rst:12 +#: ../../scenarios/cli.rst:12 msgid "Some popular command-line applications include:" msgstr "" -#: ..\..\scenarios\cli.rst:14 +#: ../../scenarios/cli.rst:14 msgid "" "`Grep `_ - A plain-text data search " "utility" msgstr "" -#: ..\..\scenarios\cli.rst:15 +#: ../../scenarios/cli.rst:15 msgid "" "`curl `_ - A tool for data transfer with URL syntax" msgstr "" -#: ..\..\scenarios\cli.rst:16 +#: ../../scenarios/cli.rst:16 msgid "" "`httpie `_ - A command line HTTP " "client, a user-friendly cURL replacement" msgstr "" -#: ..\..\scenarios\cli.rst:18 +#: ../../scenarios/cli.rst:18 msgid "`git `_ - A distributed version control system" msgstr "" -#: ..\..\scenarios\cli.rst:19 +#: ../../scenarios/cli.rst:19 msgid "" "`mercurial `_ - A distributed version control" " system primarily written in Python" msgstr "" -#: ..\..\scenarios\cli.rst:23 +#: ../../scenarios/cli.rst:23 msgid "Clint" msgstr "" -#: ..\..\scenarios\cli.rst:25 +#: ../../scenarios/cli.rst:25 msgid "" "`clint `_ is a Python module which is " "filled with very useful tools for developing command-line applications. It " @@ -69,11 +69,11 @@ msgid "" "column printer, iterator based progress bars and implicit argument handling." msgstr "" -#: ..\..\scenarios\cli.rst:31 +#: ../../scenarios/cli.rst:31 msgid "Click" msgstr "" -#: ..\..\scenarios\cli.rst:33 +#: ../../scenarios/cli.rst:33 msgid "" "`click `_ is an upcoming Python package for " "creating command-line interfaces in a composable way with as little code as " @@ -81,22 +81,22 @@ msgid "" "but comes with good defaults out of the box." msgstr "" -#: ..\..\scenarios\cli.rst:39 +#: ../../scenarios/cli.rst:39 msgid "docopt" msgstr "" -#: ..\..\scenarios\cli.rst:41 +#: ../../scenarios/cli.rst:41 msgid "" "`docopt `_ is a lightweight, highly Pythonic package " "that allows creating command-line interfaces easily and intuitively, by " "parsing POSIX-style usage instructions." msgstr "" -#: ..\..\scenarios\cli.rst:46 +#: ../../scenarios/cli.rst:46 msgid "Plac" msgstr "" -#: ..\..\scenarios\cli.rst:48 +#: ../../scenarios/cli.rst:48 msgid "" "`Plac `_ is a simple wrapper over the " "Python standard library `argparse " @@ -108,11 +108,11 @@ msgid "" "command-line interface because it is quick and simple." msgstr "" -#: ..\..\scenarios\cli.rst:57 +#: ../../scenarios/cli.rst:57 msgid "Cliff" msgstr "" -#: ..\..\scenarios\cli.rst:59 +#: ../../scenarios/cli.rst:59 msgid "" "`Cliff `_ is a framework for " "building command-line programs. It uses setuptools entry points to provide " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.po b/docs/locale/ko/LC_MESSAGES/scenarios/client.po index a1b427594..05a96105b 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/client.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/client.po @@ -11,26 +11,26 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\client.rst:2 +#: ../../scenarios/client.rst:2 msgid "Network Applications" msgstr "" -#: ..\..\scenarios\client.rst:7 +#: ../../scenarios/client.rst:7 msgid "HTTP" msgstr "" -#: ..\..\scenarios\client.rst:9 +#: ../../scenarios/client.rst:9 msgid "" "The Hypertext Transfer Protocol (HTTP) is an application protocol for " "distributed, collaborative, hypermedia information systems. HTTP is the " "foundation of data communication for the World Wide Web." msgstr "" -#: ..\..\scenarios\client.rst:14 +#: ../../scenarios/client.rst:14 msgid "Requests" msgstr "" -#: ..\..\scenarios\client.rst:16 +#: ../../scenarios/client.rst:16 msgid "" "Python’s standard urllib2 module provides most of the HTTP capabilities you " "need, but the API is thoroughly broken. It was built for a different time — " @@ -38,7 +38,7 @@ msgid "" "overrides) to perform the simplest of tasks." msgstr "" -#: ..\..\scenarios\client.rst:21 +#: ../../scenarios/client.rst:21 msgid "" "Requests takes all of the work out of Python HTTP — making your integration " "with web services seamless. There’s no need to manually add query strings to" @@ -47,28 +47,28 @@ msgid "" "Requests." msgstr "" -#: ..\..\scenarios\client.rst:27 +#: ../../scenarios/client.rst:27 msgid "" "`Documentation `_" msgstr "" -#: ..\..\scenarios\client.rst:28 +#: ../../scenarios/client.rst:28 msgid "`PyPi `_" msgstr "" -#: ..\..\scenarios\client.rst:29 +#: ../../scenarios/client.rst:29 msgid "`GitHub `_" msgstr "" -#: ..\..\scenarios\client.rst:33 +#: ../../scenarios/client.rst:33 msgid "Distributed Systems" msgstr "" -#: ..\..\scenarios\client.rst:37 +#: ../../scenarios/client.rst:37 msgid "ZeroMQ" msgstr "" -#: ..\..\scenarios\client.rst:39 +#: ../../scenarios/client.rst:39 msgid "" "ØMQ (also spelled ZeroMQ, 0MQ or ZMQ) is a high-performance asynchronous " "messaging library aimed at use in scalable distributed or concurrent " @@ -77,11 +77,11 @@ msgid "" "library is designed to have a familiar socket-style API." msgstr "" -#: ..\..\scenarios\client.rst:46 +#: ../../scenarios/client.rst:46 msgid "RabbitMQ" msgstr "" -#: ..\..\scenarios\client.rst:48 +#: ../../scenarios/client.rst:48 msgid "" "RabbitMQ is an open source message broker software that implements the " "Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written in " @@ -90,10 +90,10 @@ msgid "" "the broker are available for all major programming languages." msgstr "" -#: ..\..\scenarios\client.rst:53 +#: ../../scenarios/client.rst:53 msgid "`Homepage `_" msgstr "" -#: ..\..\scenarios\client.rst:54 +#: ../../scenarios/client.rst:54 msgid "`GitHub Organization `_" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po index 548f6c2e5..e71a9d8a0 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po @@ -11,41 +11,41 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\crypto.rst:2 ..\..\scenarios\crypto.rst:5 +#: ../../scenarios/crypto.rst:2 ../../scenarios/crypto.rst:5 msgid "Cryptography" msgstr "" -#: ..\..\scenarios\crypto.rst:7 +#: ../../scenarios/crypto.rst:7 msgid "" "`Cryptography `_ is an actively " "developed library that provides cryptographic recipes and primitives. It " "supports Python 2.6-2.7, Python 3.2+ and PyPy." msgstr "" -#: ..\..\scenarios\crypto.rst:12 +#: ../../scenarios/crypto.rst:12 msgid "" "Cryptography is divided into two layers of recipes and hazardous materials " "(hazmat). The recipes layer provides simple API for proper symmetric " "encryption and the hazmat layer provides low-level cryptographic primitives." msgstr "" -#: ..\..\scenarios\crypto.rst:19 ..\..\scenarios\crypto.rst:49 +#: ../../scenarios/crypto.rst:19 ../../scenarios/crypto.rst:49 msgid "Installation" msgstr "" -#: ..\..\scenarios\crypto.rst:26 ..\..\scenarios\crypto.rst:56 +#: ../../scenarios/crypto.rst:26 ../../scenarios/crypto.rst:56 msgid "Example" msgstr "" -#: ..\..\scenarios\crypto.rst:28 +#: ../../scenarios/crypto.rst:28 msgid "Example code using high level symmetric encryption recipe:" msgstr "" -#: ..\..\scenarios\crypto.rst:42 +#: ../../scenarios/crypto.rst:42 msgid "PyCrypto" msgstr "" -#: ..\..\scenarios\crypto.rst:44 +#: ../../scenarios/crypto.rst:44 msgid "" "`PyCrypto `_ is another library, " "which provides secure hash functions and various encryption algorithms. It " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.po b/docs/locale/ko/LC_MESSAGES/scenarios/db.po index e0b7ffbac..514a10058 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/db.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/db.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\db.rst:2 +#: ../../scenarios/db.rst:2 msgid "Databases" msgstr "" -#: ..\..\scenarios\db.rst:5 +#: ../../scenarios/db.rst:5 msgid "DB-API" msgstr "" -#: ..\..\scenarios\db.rst:7 +#: ../../scenarios/db.rst:7 msgid "" "The Python Database API (DB-API) defines a standard interface for Python " "database access modules. It's documented in :pep:`249`. Nearly all Python " @@ -27,7 +27,7 @@ msgid "" "this interface." msgstr "" -#: ..\..\scenarios\db.rst:12 +#: ../../scenarios/db.rst:12 msgid "" "Tutorials that explain how to work with modules that conform to this " "interface can be found `here " @@ -37,47 +37,47 @@ msgid "" "/DB-API.html>`__." msgstr "" -#: ..\..\scenarios\db.rst:17 +#: ../../scenarios/db.rst:17 msgid "SQLAlchemy" msgstr "" -#: ..\..\scenarios\db.rst:19 +#: ../../scenarios/db.rst:19 msgid "" "`SQLAlchemy `_ is a commonly used database " "toolkit. Unlike many database libraries it not only provides an ORM layer " "but also a generalized API for writing database-agnostic code without SQL." msgstr "" -#: ..\..\scenarios\db.rst:28 +#: ../../scenarios/db.rst:28 msgid "Django ORM" msgstr "" -#: ..\..\scenarios\db.rst:30 +#: ../../scenarios/db.rst:30 msgid "" "The Django ORM is the interface used by `Django " "`_ to provide database access." msgstr "" -#: ..\..\scenarios\db.rst:33 +#: ../../scenarios/db.rst:33 msgid "" "It's based on the idea of `models `_, an abstraction that makes it easier to manipulate data" " in Python." msgstr "" -#: ..\..\scenarios\db.rst:36 +#: ../../scenarios/db.rst:36 msgid "The basics:" msgstr "" -#: ..\..\scenarios\db.rst:38 +#: ../../scenarios/db.rst:38 msgid "Each model is a Python class that subclasses django.db.models.Model." msgstr "" -#: ..\..\scenarios\db.rst:39 +#: ../../scenarios/db.rst:39 msgid "Each attribute of the model represents a database field." msgstr "" -#: ..\..\scenarios\db.rst:40 +#: ../../scenarios/db.rst:40 msgid "" "Django gives you an automatically-generated database-access API; see `Making" " queries `__." diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po index 08b2b4bf0..dea371bc4 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po @@ -11,47 +11,47 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\gui.rst:2 +#: ../../scenarios/gui.rst:2 msgid "GUI Applications" msgstr "" -#: ..\..\scenarios\gui.rst:4 +#: ../../scenarios/gui.rst:4 msgid "Alphabetical list of GUI Applications." msgstr "" -#: ..\..\scenarios\gui.rst:7 +#: ../../scenarios/gui.rst:7 msgid "Camelot" msgstr "" -#: ..\..\scenarios\gui.rst:8 +#: ../../scenarios/gui.rst:8 msgid "" "`Camelot `_ provides components for building " "applications on top of Python, SQLAlchemy and Qt. It is inspired by the " "Django admin interface." msgstr "" -#: ..\..\scenarios\gui.rst:12 +#: ../../scenarios/gui.rst:12 msgid "" "The main resource for information is the website: http://www.python-" "camelot.com and the mailing list https://groups.google.com/forum/#!forum" "/project-camelot" msgstr "" -#: ..\..\scenarios\gui.rst:17 +#: ../../scenarios/gui.rst:17 msgid "Cocoa" msgstr "" -#: ..\..\scenarios\gui.rst:18 +#: ../../scenarios/gui.rst:18 msgid "" "The Cocoa framework is only available on OS X. Don't pick this if you're " "writing a cross-platform application!" msgstr "" -#: ..\..\scenarios\gui.rst:21 +#: ../../scenarios/gui.rst:21 msgid "GTk" msgstr "" -#: ..\..\scenarios\gui.rst:22 +#: ../../scenarios/gui.rst:22 msgid "" "PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ library " "itself, it is currently licensed under the GNU LGPL. It is worth noting that" @@ -60,11 +60,11 @@ msgid "" "existing applications be ported from PyGTK to PyGObject." msgstr "" -#: ..\..\scenarios\gui.rst:29 +#: ../../scenarios/gui.rst:29 msgid "Kivy" msgstr "" -#: ..\..\scenarios\gui.rst:30 +#: ../../scenarios/gui.rst:30 msgid "" "`Kivy `_ is a Python library for development of multi-touch" " enabled media rich applications. The aim is to allow for quick and easy " @@ -72,68 +72,68 @@ msgid "" "and deployable." msgstr "" -#: ..\..\scenarios\gui.rst:35 +#: ../../scenarios/gui.rst:35 msgid "" "Kivy is written in Python, based on OpenGL and supports different input " "devices such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, " "Apple's products and so on." msgstr "" -#: ..\..\scenarios\gui.rst:38 +#: ../../scenarios/gui.rst:38 msgid "" "Kivy is actively being developed by a community and free to use. It operates" " on all major platforms (Linux, OSX, Windows, Android)." msgstr "" -#: ..\..\scenarios\gui.rst:41 +#: ../../scenarios/gui.rst:41 msgid "The main resource for information is the website: http://kivy.org" msgstr "" -#: ..\..\scenarios\gui.rst:44 +#: ../../scenarios/gui.rst:44 msgid "PyObjC" msgstr "" -#: ..\..\scenarios\gui.rst:45 +#: ../../scenarios/gui.rst:45 msgid "" "Only available on OS X. Don't pick this if you're writing a cross-platform " "application." msgstr "" -#: ..\..\scenarios\gui.rst:48 +#: ../../scenarios/gui.rst:48 msgid "PySide" msgstr "" -#: ..\..\scenarios\gui.rst:49 +#: ../../scenarios/gui.rst:49 msgid "PySide is a Python binding of the cross-platform GUI toolkit Qt." msgstr "" -#: ..\..\scenarios\gui.rst:51 +#: ../../scenarios/gui.rst:51 msgid "http://developer.qt.nokia.com/wiki/PySideDownloads/" msgstr "" -#: ..\..\scenarios\gui.rst:54 +#: ../../scenarios/gui.rst:54 msgid "PyQt" msgstr "" -#: ..\..\scenarios\gui.rst:55 +#: ../../scenarios/gui.rst:55 msgid "" "If your software does not fully comply with the GPL you will need a " "commercial license!" msgstr "" -#: ..\..\scenarios\gui.rst:57 +#: ../../scenarios/gui.rst:57 msgid "PyQt provides Python bindings for the Qt Framework (see below)." msgstr "" -#: ..\..\scenarios\gui.rst:59 +#: ../../scenarios/gui.rst:59 msgid "http://www.riverbankcomputing.co.uk/software/pyqt/download" msgstr "" -#: ..\..\scenarios\gui.rst:62 +#: ../../scenarios/gui.rst:62 msgid "PyjamasDesktop (pyjs Desktop)" msgstr "" -#: ..\..\scenarios\gui.rst:63 +#: ../../scenarios/gui.rst:63 msgid "" "PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget " "set for desktop and a cross-platform framework. (After release v0.6 " @@ -142,57 +142,57 @@ msgid "" "desktop application." msgstr "" -#: ..\..\scenarios\gui.rst:68 +#: ../../scenarios/gui.rst:68 msgid "" "`Python Wiki for PyjamasDesktop " "`_." msgstr "" -#: ..\..\scenarios\gui.rst:70 +#: ../../scenarios/gui.rst:70 msgid "The main website; `pyjs Desktop `_." msgstr "" -#: ..\..\scenarios\gui.rst:73 +#: ../../scenarios/gui.rst:73 msgid "Qt" msgstr "" -#: ..\..\scenarios\gui.rst:74 +#: ../../scenarios/gui.rst:74 msgid "" "`Qt `_ is a cross-platform application framework " "that is widely used for developing software with a GUI but can also be used " "for non-GUI applications." msgstr "" -#: ..\..\scenarios\gui.rst:79 +#: ../../scenarios/gui.rst:79 msgid "Tk" msgstr "" -#: ..\..\scenarios\gui.rst:80 +#: ../../scenarios/gui.rst:80 msgid "" "Tkinter is a thin object-oriented layer on top of Tcl/Tk. **It has the " "advantage of being included with the Python standard library, making it the " "most convenient and compatible toolkit to program with.**" msgstr "" -#: ..\..\scenarios\gui.rst:84 +#: ../../scenarios/gui.rst:84 msgid "" "Both Tk and Tkinter are available on most Unix platforms, as well as on " "Windows and Macintosh systems. Starting with the 8.0 release, Tk offers " "native look and feel on all platforms." msgstr "" -#: ..\..\scenarios\gui.rst:88 +#: ../../scenarios/gui.rst:88 msgid "" "There's a good multi-language Tk tutorial with Python examples at `TkDocs " "`_. There's more information " "available on the `Python Wiki `_." msgstr "" -#: ..\..\scenarios\gui.rst:93 +#: ../../scenarios/gui.rst:93 msgid "wxPython" msgstr "" -#: ..\..\scenarios\gui.rst:94 +#: ../../scenarios/gui.rst:94 msgid "" "wxPython is a GUI toolkit for the Python programming language. It allows " "Python programmers to create programs with a robust, highly functional " @@ -201,7 +201,7 @@ msgid "" "platform GUI library, which is written in C++." msgstr "" -#: ..\..\scenarios\gui.rst:100 +#: ../../scenarios/gui.rst:100 msgid "" "**Install (Stable) wxPython** *go to " "http://www.wxpython.org/download.php#stable and download the appropriate " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po index a94545ce3..ce3e23a45 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po @@ -11,37 +11,37 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\imaging.rst:3 +#: ../../scenarios/imaging.rst:3 msgid "Image Manipulation" msgstr "" -#: ..\..\scenarios\imaging.rst:6 +#: ../../scenarios/imaging.rst:6 msgid "Add introduction about image manipulation and its Python libraries." msgstr "" -#: ..\..\scenarios\imaging.rst:9 +#: ../../scenarios/imaging.rst:9 msgid "Python Imaging Library" msgstr "" -#: ..\..\scenarios\imaging.rst:11 +#: ../../scenarios/imaging.rst:11 msgid "" "The `Python Imaging Library `_, or " "PIL for short, is *the* library for image manipulation in Python. " "Unfortunately, its development has stagnated, with its last release in 2009." msgstr "" -#: ..\..\scenarios\imaging.rst:15 +#: ../../scenarios/imaging.rst:15 msgid "" "Luckily for you, there's an actively-developed fork of PIL called `Pillow " "`_ - it's easier to install, runs on all " "operating systems, and supports Python 3." msgstr "" -#: ..\..\scenarios\imaging.rst:19 +#: ../../scenarios/imaging.rst:19 msgid "Installation" msgstr "" -#: ..\..\scenarios\imaging.rst:21 +#: ../../scenarios/imaging.rst:21 msgid "" "Before installing Pillow, you'll have to install Pillow's prerequisites. " "Find the instructions for your platform `here " @@ -49,10 +49,10 @@ msgid "" "instructions>`_." msgstr "" -#: ..\..\scenarios\imaging.rst:24 +#: ../../scenarios/imaging.rst:24 msgid "After that, it's straightforward:" msgstr "" -#: ..\..\scenarios\imaging.rst:0 +#: ../../scenarios/imaging.rst:0 msgid "Todo" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.po b/docs/locale/ko/LC_MESSAGES/scenarios/network.po index 5fc2d499b..8ad46c422 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/network.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/network.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\network.rst:2 +#: ../../scenarios/network.rst:2 msgid "Networking" msgstr "" -#: ..\..\scenarios\network.rst:5 +#: ../../scenarios/network.rst:5 msgid "Twisted" msgstr "" -#: ..\..\scenarios\network.rst:7 +#: ../../scenarios/network.rst:7 msgid "" "`Twisted `_ is an event-driven networking " "engine. It can be used to build applications around many different " @@ -28,11 +28,11 @@ msgid "" "`_." msgstr "" -#: ..\..\scenarios\network.rst:13 +#: ../../scenarios/network.rst:13 msgid "PyZMQ" msgstr "" -#: ..\..\scenarios\network.rst:15 +#: ../../scenarios/network.rst:15 msgid "" "`PyZMQ `_ is the Python binding for `ZeroMQ" " `_, which is a high-performance asynchronous " @@ -40,36 +40,36 @@ msgid "" "message queuing without a message broker. The basic patterns for this are:" msgstr "" -#: ..\..\scenarios\network.rst:20 +#: ../../scenarios/network.rst:20 msgid "" "request-reply: connects a set of clients to a set of services. This is a " "remote procedure call and task distribution pattern." msgstr "" -#: ..\..\scenarios\network.rst:22 +#: ../../scenarios/network.rst:22 msgid "" "publish-subscribe: connects a set of publishers to a set of subscribers. " "This is a data distribution pattern." msgstr "" -#: ..\..\scenarios\network.rst:24 +#: ../../scenarios/network.rst:24 msgid "" "push-pull (or pipeline): connects nodes in a fan-out / fan-in pattern that " "can have multiple steps, and loops. This is a parallel task distribution and" " collection pattern." msgstr "" -#: ..\..\scenarios\network.rst:28 +#: ../../scenarios/network.rst:28 msgid "" "For a quick start, read the `ZeroMQ guide " "`_." msgstr "" -#: ..\..\scenarios\network.rst:31 +#: ../../scenarios/network.rst:31 msgid "gevent" msgstr "" -#: ..\..\scenarios\network.rst:33 +#: ../../scenarios/network.rst:33 msgid "" "`gevent `_ is a coroutine-based Python networking " "library that uses greenlets to provide a high-level synchronous API on top " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po index 83fe3c570..c11799a64 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po @@ -11,22 +11,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\scientific.rst:3 +#: ../../scenarios/scientific.rst:3 msgid "Scientific Applications" msgstr "" -#: ..\..\scenarios\scientific.rst:6 +#: ../../scenarios/scientific.rst:6 msgid "Context" msgstr "" -#: ..\..\scenarios\scientific.rst:8 +#: ../../scenarios/scientific.rst:8 msgid "" "Python is frequently used for high-performance scientific applications. It " "is widely used in academia and scientific projects because it is easy to " "write and performs well." msgstr "" -#: ..\..\scenarios\scientific.rst:12 +#: ../../scenarios/scientific.rst:12 msgid "" "Due to its high performance nature, scientific computing in Python often " "utilizes external libraries, typically written in faster languages (like C, " @@ -37,15 +37,15 @@ msgid "" "Lecture Notes `_" msgstr "" -#: ..\..\scenarios\scientific.rst:22 +#: ../../scenarios/scientific.rst:22 msgid "Tools" msgstr "" -#: ..\..\scenarios\scientific.rst:25 +#: ../../scenarios/scientific.rst:25 msgid "IPython" msgstr "" -#: ..\..\scenarios\scientific.rst:27 +#: ../../scenarios/scientific.rst:27 msgid "" "`IPython `_ is an enhanced version of Python " "interpreter, which provides features of great interest to scientists. The " @@ -57,15 +57,15 @@ msgid "" "shared and exported in various file formats." msgstr "" -#: ..\..\scenarios\scientific.rst:38 +#: ../../scenarios/scientific.rst:38 msgid "Libraries" msgstr "" -#: ..\..\scenarios\scientific.rst:41 +#: ../../scenarios/scientific.rst:41 msgid "NumPy" msgstr "" -#: ..\..\scenarios\scientific.rst:43 +#: ../../scenarios/scientific.rst:43 msgid "" "`NumPy `_ is a low level library written in C (and " "FORTRAN) for high level mathematical functions. NumPy cleverly overcomes the" @@ -75,23 +75,23 @@ msgid "" "quickly." msgstr "" -#: ..\..\scenarios\scientific.rst:49 +#: ../../scenarios/scientific.rst:49 msgid "" "NumPy is part of the SciPy project, and is released as a separate library so" " people who only need the basic requirements can use it without installing " "the rest of SciPy." msgstr "" -#: ..\..\scenarios\scientific.rst:53 +#: ../../scenarios/scientific.rst:53 msgid "" "NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." msgstr "" -#: ..\..\scenarios\scientific.rst:56 +#: ../../scenarios/scientific.rst:56 msgid "Numba" msgstr "" -#: ..\..\scenarios\scientific.rst:58 +#: ../../scenarios/scientific.rst:58 msgid "" "`Numba `_ is an Numpy aware Python compiler (just-" "in-time (JIT) specializing compiler) which compiles annotated Python (and " @@ -100,11 +100,11 @@ msgid "" "which can be natively executed at runtime." msgstr "" -#: ..\..\scenarios\scientific.rst:65 +#: ../../scenarios/scientific.rst:65 msgid "SciPy" msgstr "" -#: ..\..\scenarios\scientific.rst:67 +#: ../../scenarios/scientific.rst:67 msgid "" "`SciPy `_ is a library that uses NumPy for more " "mathematical functions. SciPy uses NumPy arrays as the basic data structure," @@ -113,11 +113,11 @@ msgid "" "differential equation solving and signal processing." msgstr "" -#: ..\..\scenarios\scientific.rst:74 +#: ../../scenarios/scientific.rst:74 msgid "Matplotlib" msgstr "" -#: ..\..\scenarios\scientific.rst:76 +#: ../../scenarios/scientific.rst:76 msgid "" "`Matplotlib `_ is a flexible plotting " "library for creating interactive 2D and 3D plots that can also be saved as " @@ -128,11 +128,11 @@ msgid "" "`_." msgstr "" -#: ..\..\scenarios\scientific.rst:85 +#: ../../scenarios/scientific.rst:85 msgid "Pandas" msgstr "" -#: ..\..\scenarios\scientific.rst:87 +#: ../../scenarios/scientific.rst:87 msgid "" "`Pandas `_ is data manipulation library based on " "Numpy which provides many useful functions for accessing, indexing, merging " @@ -142,11 +142,11 @@ msgid "" " data." msgstr "" -#: ..\..\scenarios\scientific.rst:95 +#: ../../scenarios/scientific.rst:95 msgid "Rpy2" msgstr "" -#: ..\..\scenarios\scientific.rst:97 +#: ../../scenarios/scientific.rst:97 msgid "" "`Rpy2 `_ is a Python binding for the R" " statistical package allowing the execution of R functions from Python and " @@ -155,11 +155,11 @@ msgid "" " bindings." msgstr "" -#: ..\..\scenarios\scientific.rst:103 +#: ../../scenarios/scientific.rst:103 msgid "PsychoPy" msgstr "" -#: ..\..\scenarios\scientific.rst:105 +#: ../../scenarios/scientific.rst:105 msgid "" "`PsychoPy `_ is a library for cognitive scientists" " allowing the creation of cognitive psychology and neuroscience experiments." @@ -167,11 +167,11 @@ msgid "" "design and data collection." msgstr "" -#: ..\..\scenarios\scientific.rst:112 +#: ../../scenarios/scientific.rst:112 msgid "Resources" msgstr "" -#: ..\..\scenarios\scientific.rst:114 +#: ../../scenarios/scientific.rst:114 msgid "" "Installation of scientific Python packages can be troublesome, as many of " "these packages are implemented as Python C extensions which need to be " @@ -180,11 +180,11 @@ msgid "" "scientific Python packages." msgstr "" -#: ..\..\scenarios\scientific.rst:121 +#: ../../scenarios/scientific.rst:121 msgid "Unofficial Windows Binaries for Python Extension Packages" msgstr "" -#: ..\..\scenarios\scientific.rst:123 +#: ../../scenarios/scientific.rst:123 msgid "" "Many people who do scientific computing are on Windows, yet many of the " "scientific computing packages are notoriously difficult to build and install" @@ -195,11 +195,11 @@ msgid "" "If you're on Windows, you may want to check it out." msgstr "" -#: ..\..\scenarios\scientific.rst:131 +#: ../../scenarios/scientific.rst:131 msgid "Anaconda" msgstr "" -#: ..\..\scenarios\scientific.rst:133 +#: ../../scenarios/scientific.rst:133 msgid "" "`Continuum Analytics `_ offers the `Anaconda Python " "Distribution `_ which includes " @@ -209,11 +209,11 @@ msgid "" "available for academics and researchers." msgstr "" -#: ..\..\scenarios\scientific.rst:141 +#: ../../scenarios/scientific.rst:141 msgid "Canopy" msgstr "" -#: ..\..\scenarios\scientific.rst:143 +#: ../../scenarios/scientific.rst:143 msgid "" "`Canopy `_ is another scientific" " Python distribution, produced by `Enthought `_." diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po index 5b65fea00..7a72cf258 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\scrape.rst:2 +#: ../../scenarios/scrape.rst:2 msgid "HTML Scraping" msgstr "" -#: ..\..\scenarios\scrape.rst:5 +#: ../../scenarios/scrape.rst:5 msgid "Web Scraping" msgstr "" -#: ..\..\scenarios\scrape.rst:7 +#: ../../scenarios/scrape.rst:7 msgid "" "Web sites are written using HTML, which means that each web page is a " "structured document. Sometimes it would be great to obtain some data from " @@ -27,7 +27,7 @@ msgid "" "provide their data in comfortable formats such as ``csv`` or ``json``." msgstr "" -#: ..\..\scenarios\scrape.rst:12 +#: ../../scenarios/scrape.rst:12 msgid "" "This is where web scraping comes in. Web scraping is the practice of using a" " computer program to sift through a web page and gather the data that you " @@ -35,11 +35,11 @@ msgid "" "structure of the data." msgstr "" -#: ..\..\scenarios\scrape.rst:18 +#: ../../scenarios/scrape.rst:18 msgid "lxml and Requests" msgstr "" -#: ..\..\scenarios\scrape.rst:20 +#: ../../scenarios/scrape.rst:20 msgid "" "`lxml `_ is a pretty extensive library written for parsing " "XML and HTML documents very quickly, even handling messed up tags in the " @@ -49,31 +49,31 @@ msgid "" "both using ``pip install lxml`` and ``pip install requests``." msgstr "" -#: ..\..\scenarios\scrape.rst:27 +#: ../../scenarios/scrape.rst:27 msgid "Let's start with the imports:" msgstr "" -#: ..\..\scenarios\scrape.rst:34 +#: ../../scenarios/scrape.rst:34 msgid "" "Next we will use ``requests.get`` to retrieve the web page with our data, " "parse it using the ``html`` module and save the results in ``tree``:" msgstr "" -#: ..\..\scenarios\scrape.rst:42 +#: ../../scenarios/scrape.rst:42 msgid "" "``tree`` now contains the whole HTML file in a nice tree structure which we " "can go over two different ways: XPath and CSSSelect. In this example, we " "will focus on the former." msgstr "" -#: ..\..\scenarios\scrape.rst:46 +#: ../../scenarios/scrape.rst:46 msgid "" "XPath is a way of locating information in structured documents such as HTML " "or XML documents. A good introduction to XPath is on `W3Schools " "`_ ." msgstr "" -#: ..\..\scenarios\scrape.rst:50 +#: ../../scenarios/scrape.rst:50 msgid "" "There are also various tools for obtaining the XPath of elements such as " "FireBug for Firefox or the Chrome Inspector. If you're using Chrome, you can" @@ -81,24 +81,24 @@ msgid "" " click again and choose 'Copy XPath'." msgstr "" -#: ..\..\scenarios\scrape.rst:55 +#: ../../scenarios/scrape.rst:55 msgid "" "After a quick analysis, we see that in our page the data is contained in two" " elements - one is a div with title 'buyer-name' and the other is a span " "with class 'item-price':" msgstr "" -#: ..\..\scenarios\scrape.rst:64 +#: ../../scenarios/scrape.rst:64 msgid "" "Knowing this we can create the correct XPath query and use the lxml " "``xpath`` function like this:" msgstr "" -#: ..\..\scenarios\scrape.rst:74 +#: ../../scenarios/scrape.rst:74 msgid "Let's see what we got exactly:" msgstr "" -#: ..\..\scenarios\scrape.rst:94 +#: ../../scenarios/scrape.rst:94 msgid "" "Congratulations! We have successfully scraped all the data we wanted from a " "web page using lxml and Requests. We have it stored in memory as two lists. " @@ -106,7 +106,7 @@ msgid "" "Python or we can save it to a file and share it with the world." msgstr "" -#: ..\..\scenarios\scrape.rst:99 +#: ../../scenarios/scrape.rst:99 msgid "" "Some more cool ideas to think about are modifying this script to iterate " "through the rest of the pages of this example dataset, or rewriting this " diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po index 20ea9a865..0d970ab38 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po @@ -11,32 +11,32 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\speed.rst:2 +#: ../../scenarios/speed.rst:2 msgid "Speed" msgstr "" -#: ..\..\scenarios\speed.rst:4 +#: ../../scenarios/speed.rst:4 msgid "" "CPython, the most commonly used implementation of Python, is slow for CPU " "bound tasks. `PyPy`_ is fast." msgstr "" -#: ..\..\scenarios\speed.rst:7 +#: ../../scenarios/speed.rst:7 msgid "" "Using a slightly modified version of `David Beazleys`_ CPU bound test code " "(added loop for multiple tests), you can see the difference between CPython " "and PyPy's processing." msgstr "" -#: ..\..\scenarios\speed.rst:37 +#: ../../scenarios/speed.rst:37 msgid "Context" msgstr "" -#: ..\..\scenarios\speed.rst:41 ..\..\scenarios\speed.rst:59 +#: ../../scenarios/speed.rst:41 ../../scenarios/speed.rst:59 msgid "The GIL" msgstr "" -#: ..\..\scenarios\speed.rst:43 +#: ../../scenarios/speed.rst:43 msgid "" "`The GIL`_ (Global Interpreter Lock) is how Python allows multiple threads " "to operate at the same time. Python's memory management isn't entirely " @@ -44,7 +44,7 @@ msgid "" " the same Python code at once." msgstr "" -#: ..\..\scenarios\speed.rst:48 +#: ../../scenarios/speed.rst:48 msgid "" "David Beazley has a great `guide`_ on how the GIL operates. He also covers " "the `new GIL`_ in Python 3.2. His results show that maximizing performance " @@ -53,21 +53,21 @@ msgid "" "application bottlenecks are." msgstr "" -#: ..\..\scenarios\speed.rst:55 ..\..\scenarios\speed.rst:65 +#: ../../scenarios/speed.rst:55 ../../scenarios/speed.rst:65 msgid "C Extensions" msgstr "" -#: ..\..\scenarios\speed.rst:61 +#: ../../scenarios/speed.rst:61 msgid "" "`Special care`_ must be taken when writing C extensions to make sure you " "register your threads with the interpreter." msgstr "" -#: ..\..\scenarios\speed.rst:69 +#: ../../scenarios/speed.rst:69 msgid "Cython" msgstr "" -#: ..\..\scenarios\speed.rst:71 +#: ../../scenarios/speed.rst:71 msgid "" "`Cython `_ implements a superset of the Python language " "with which you are able to write C and C++ modules for Python. Cython also " @@ -75,24 +75,24 @@ msgid "" "you to take advantage of Python's strong typing of variables and operations." msgstr "" -#: ..\..\scenarios\speed.rst:76 +#: ../../scenarios/speed.rst:76 msgid "Here's an example of strong typing with Cython:" msgstr "" -#: ..\..\scenarios\speed.rst:103 +#: ../../scenarios/speed.rst:103 msgid "" "This implementation of an algorithm to find prime numbers has some " "additional keywords compared to the next one, which is implemented in pure " "Python:" msgstr "" -#: ..\..\scenarios\speed.rst:128 +#: ../../scenarios/speed.rst:128 msgid "" "Notice that in the Cython version you declare integers and integer arrays to" " be compiled into C types while also creating a Python list:" msgstr "" -#: ..\..\scenarios\speed.rst:151 +#: ../../scenarios/speed.rst:151 msgid "" "What is the difference? In the upper Cython version you can see the " "declaration of the variable types and the integer array in a similar way as " @@ -102,15 +102,15 @@ msgid "" "saved in :file:`*.py` files, Cython code is saved in :file:`*.pyx` files." msgstr "" -#: ..\..\scenarios\speed.rst:158 +#: ../../scenarios/speed.rst:158 msgid "What's the difference in speed? Let's try it!" msgstr "" -#: ..\..\scenarios\speed.rst:184 +#: ../../scenarios/speed.rst:184 msgid "These lines both need a remark:" msgstr "" -#: ..\..\scenarios\speed.rst:192 +#: ../../scenarios/speed.rst:192 msgid "" "The `pyximport` module allows you to import :file:`*.pyx` files (e.g., " ":file:`primesCy.pyx`) with the Cython-compiled version of the `primes` " @@ -123,40 +123,40 @@ msgid "" "(dual core AMD E-450 1.6 GHz), the measured values are:" msgstr "" -#: ..\..\scenarios\speed.rst:209 +#: ../../scenarios/speed.rst:209 msgid "" "And here the output of an embedded `ARM beaglebone " "`_ machine:" msgstr "" -#: ..\..\scenarios\speed.rst:219 +#: ../../scenarios/speed.rst:219 msgid "Pyrex" msgstr "" -#: ..\..\scenarios\speed.rst:223 +#: ../../scenarios/speed.rst:223 msgid "Shedskin?" msgstr "" -#: ..\..\scenarios\speed.rst:226 +#: ../../scenarios/speed.rst:226 msgid "Numba" msgstr "" -#: ..\..\scenarios\speed.rst:227 +#: ../../scenarios/speed.rst:227 msgid "Write about Numba and the autojit compiler for NumPy" msgstr "" -#: ..\..\scenarios\speed.rst:230 ..\..\scenarios\speed.rst:234 +#: ../../scenarios/speed.rst:230 ../../scenarios/speed.rst:234 msgid "Threading" msgstr "" -#: ..\..\scenarios\speed.rst:238 +#: ../../scenarios/speed.rst:238 msgid "Spawning Processes" msgstr "" -#: ..\..\scenarios\speed.rst:242 +#: ../../scenarios/speed.rst:242 msgid "Multiprocessing" msgstr "" -#: ..\..\scenarios\speed.rst:0 +#: ../../scenarios/speed.rst:0 msgid "Todo" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.po b/docs/locale/ko/LC_MESSAGES/scenarios/web.po index bbdd50f93..e71fe1596 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/web.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/web.po @@ -11,25 +11,25 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\web.rst:3 +#: ../../scenarios/web.rst:3 msgid "Web Applications" msgstr "" -#: ..\..\scenarios\web.rst:5 +#: ../../scenarios/web.rst:5 msgid "" "As a powerful scripting language adapted to both fast prototyping and bigger" " projects, Python is widely used in Web applications development." msgstr "" -#: ..\..\scenarios\web.rst:10 +#: ../../scenarios/web.rst:10 msgid "Context" msgstr "" -#: ..\..\scenarios\web.rst:14 +#: ../../scenarios/web.rst:14 msgid "WSGI" msgstr "" -#: ..\..\scenarios\web.rst:16 +#: ../../scenarios/web.rst:16 msgid "" "The Web Server Gateway Interface (or \"WSGI\" for short) is a standard " "interface between web servers and Python web application frameworks. By " @@ -39,11 +39,11 @@ msgid "" "WSGI is documented in :pep:`3333`." msgstr "" -#: ..\..\scenarios\web.rst:25 +#: ../../scenarios/web.rst:25 msgid "Frameworks" msgstr "" -#: ..\..\scenarios\web.rst:27 +#: ../../scenarios/web.rst:27 msgid "" "Broadly speaking, a web framework consists of a set of libraries and a main " "handler within which you can build custom code to implement a web " @@ -51,33 +51,33 @@ msgid "" "patterns and utilities to accomplish at least the following:" msgstr "" -#: ..\..\scenarios\web.rst:33 +#: ../../scenarios/web.rst:33 msgid "" "Matches an incoming HTTP request to a particular piece of Python code to be " "invoked" msgstr "" -#: ..\..\scenarios\web.rst:37 +#: ../../scenarios/web.rst:37 msgid "Encapsulate the information received from or sent to a user's browser" msgstr "" -#: ..\..\scenarios\web.rst:40 +#: ../../scenarios/web.rst:40 msgid "" "Allows for separating Python code implementing an application's logic from " "the HTML (or other) output that it produces" msgstr "" -#: ..\..\scenarios\web.rst:44 +#: ../../scenarios/web.rst:44 msgid "" "Runs an HTTP server on development machines to enable rapid development; " "often automatically reloads server-side code when files are updated" msgstr "" -#: ..\..\scenarios\web.rst:49 +#: ../../scenarios/web.rst:49 msgid "Django" msgstr "" -#: ..\..\scenarios\web.rst:51 +#: ../../scenarios/web.rst:51 msgid "" "`Django `_ is a \"batteries included\" web " "application framework. By providing many utilities and patterns out of the " @@ -86,24 +86,24 @@ msgid "" " it." msgstr "" -#: ..\..\scenarios\web.rst:57 +#: ../../scenarios/web.rst:57 msgid "" "Django has a large and active community, and many pre-built `re-usable " "modules `_ that can be incorporated into a new " "project as-is, or customized to fit your needs." msgstr "" -#: ..\..\scenarios\web.rst:61 +#: ../../scenarios/web.rst:61 msgid "" "There are annual Django conferences `in the United States " "`_ and `in Europe `_." msgstr "" -#: ..\..\scenarios\web.rst:66 +#: ../../scenarios/web.rst:66 msgid "Flask" msgstr "" -#: ..\..\scenarios\web.rst:68 +#: ../../scenarios/web.rst:68 msgid "" "`Flask `_ is a \"microframework\" for Python. " "Rather than aiming to provide everything you could possibly need, Flask " @@ -115,17 +115,17 @@ msgid "" "`_ may already exist to suit your needs." msgstr "" -#: ..\..\scenarios\web.rst:77 +#: ../../scenarios/web.rst:77 msgid "" "**Support** for flask can best be found in its mailing list. Just shoot an " "email to flask@librelist.com and reply to the confirmation email." msgstr "" -#: ..\..\scenarios\web.rst:82 +#: ../../scenarios/web.rst:82 msgid "Werkzeug" msgstr "" -#: ..\..\scenarios\web.rst:84 +#: ../../scenarios/web.rst:84 msgid "" "`Werkzeug `_ is not actually a real framework, " "but rather a very powerful set of tools for building web applications. It " @@ -134,17 +134,17 @@ msgid "" "for their application that is not commonly found in other web frameworks." msgstr "" -#: ..\..\scenarios\web.rst:90 +#: ../../scenarios/web.rst:90 msgid "" "Support can be found on its `mailing list " "`_." msgstr "" -#: ..\..\scenarios\web.rst:94 +#: ../../scenarios/web.rst:94 msgid "Tornado" msgstr "" -#: ..\..\scenarios\web.rst:95 +#: ../../scenarios/web.rst:95 msgid "" "`Tornado `_ is a scalable, non-blocking web " "server and web application framework with a relative simple usage. Tornado " @@ -152,17 +152,17 @@ msgid "" "`friendfeed `_ , a real time chat and blog system." msgstr "" -#: ..\..\scenarios\web.rst:99 +#: ../../scenarios/web.rst:99 msgid "" "In the Jinja2 template engine example it is used to serve the rendered " "pages." msgstr "" -#: ..\..\scenarios\web.rst:103 +#: ../../scenarios/web.rst:103 msgid "Pyramid" msgstr "" -#: ..\..\scenarios\web.rst:105 +#: ../../scenarios/web.rst:105 msgid "" "`Pyramid `_ lies somewhere between a big " "framework like Django and the microframeworks: It comes with a lot of " @@ -176,21 +176,21 @@ msgid "" "running web application in the browser." msgstr "" -#: ..\..\scenarios\web.rst:115 +#: ../../scenarios/web.rst:115 msgid "" "**Support** can also be found in the `documentation " "`__." msgstr "" -#: ..\..\scenarios\web.rst:120 +#: ../../scenarios/web.rst:120 msgid "Web Servers" msgstr "" -#: ..\..\scenarios\web.rst:125 +#: ../../scenarios/web.rst:125 msgid "Nginx" msgstr "" -#: ..\..\scenarios\web.rst:127 +#: ../../scenarios/web.rst:127 msgid "" "`Nginx `_ (pronounced \"engine-x\") is a web server and " "reverse-proxy for HTTP, SMTP and other protocols. It is known for its high " @@ -200,21 +200,21 @@ msgid "" "high-load websites, Nginx is gradually becoming quite popular." msgstr "" -#: ..\..\scenarios\web.rst:138 +#: ../../scenarios/web.rst:138 msgid "WSGI Servers" msgstr "" -#: ..\..\scenarios\web.rst:140 +#: ../../scenarios/web.rst:140 msgid "" "Stand-alone WSGI servers typically use less resources than traditional web " "servers and provide top performance [3]_." msgstr "" -#: ..\..\scenarios\web.rst:146 +#: ../../scenarios/web.rst:146 msgid "Gunicorn" msgstr "" -#: ..\..\scenarios\web.rst:148 +#: ../../scenarios/web.rst:148 msgid "" "`Gunicorn `_ (Green Unicorn) is a WSGI server used to " "serve Python applications. It is a Python interpretation of the Ruby " @@ -226,11 +226,11 @@ msgid "" "`_." msgstr "" -#: ..\..\scenarios\web.rst:160 +#: ../../scenarios/web.rst:160 msgid "uWSGI" msgstr "" -#: ..\..\scenarios\web.rst:162 +#: ../../scenarios/web.rst:162 msgid "" "`uWSGI `_ is a full stack for building " "hosting services. In addition to process management, process monitoring, " @@ -245,33 +245,33 @@ msgid "" "magic variables `_." msgstr "" -#: ..\..\scenarios\web.rst:180 +#: ../../scenarios/web.rst:180 msgid "Server Best Practices" msgstr "" -#: ..\..\scenarios\web.rst:182 +#: ../../scenarios/web.rst:182 msgid "" "The majority of self hosted Python applications today are hosted with a WSGI" " server such as :ref:`Gunicorn `, either directly or behind a " "lightweight web server such as :ref:`nginx `." msgstr "" -#: ..\..\scenarios\web.rst:186 +#: ../../scenarios/web.rst:186 msgid "" "The WSGI servers serve the Python applications while the web server handles " "tasks better suited for it such as static file serving, request routing, " "DDoS protection, and basic authentication." msgstr "" -#: ..\..\scenarios\web.rst:191 +#: ../../scenarios/web.rst:191 msgid "Hosting" msgstr "" -#: ..\..\scenarios\web.rst:194 +#: ../../scenarios/web.rst:194 msgid "Platform-as-a-Service" msgstr "" -#: ..\..\scenarios\web.rst:196 +#: ../../scenarios/web.rst:196 msgid "" "Platform-as-a-Service (PaaS) is a type of cloud computing infrastructure " "which abstracts and manages infrastructure, routing, and scaling of web " @@ -280,32 +280,32 @@ msgid "" "details." msgstr "" -#: ..\..\scenarios\web.rst:202 +#: ../../scenarios/web.rst:202 msgid "" "Most PaaS services offer a command-line interface that developers can use to" " set up and interrogate configuration, and to deploy new releases of an " "application to the service." msgstr "" -#: ..\..\scenarios\web.rst:206 +#: ../../scenarios/web.rst:206 msgid "" "PaaS services and their partners offer add-on functionality which is well " "integrated into the platform, such as database hosting, email services, " "logging, scheduled and background tasks, billing and payment, etc." msgstr "" -#: ..\..\scenarios\web.rst:212 +#: ../../scenarios/web.rst:212 msgid "Heroku" msgstr "" -#: ..\..\scenarios\web.rst:214 +#: ../../scenarios/web.rst:214 msgid "" "`Heroku `_'s `Cedar stack " "`_ offers first class support " "for Python 2.7 applications." msgstr "" -#: ..\..\scenarios\web.rst:218 +#: ../../scenarios/web.rst:218 msgid "" "Heroku allows you to run as many Python web applications as you like, 24/7 " "and free of charge. Heroku is best described as a horizontal scaling " @@ -313,7 +313,7 @@ msgid "" "run on more than one Dyno (abstracted servers) at a time." msgstr "" -#: ..\..\scenarios\web.rst:223 +#: ../../scenarios/web.rst:223 msgid "" "Heroku maintains `articles " "`_ on using Python with " @@ -322,11 +322,11 @@ msgid "" " to set up your first application." msgstr "" -#: ..\..\scenarios\web.rst:230 +#: ../../scenarios/web.rst:230 msgid "DotCloud" msgstr "" -#: ..\..\scenarios\web.rst:232 +#: ../../scenarios/web.rst:232 msgid "" "`DotCloud `_ supports WSGI applications and " "background/worker tasks natively on their platform. Web applications run " @@ -334,31 +334,31 @@ msgid "" "ref>`, and allow custom configuration of both for advanced users." msgstr "" -#: ..\..\scenarios\web.rst:237 +#: ../../scenarios/web.rst:237 msgid "" "DotCloud uses a custom command-line API client which can work with " "applications managed in git repositories or any other version control " "system." msgstr "" -#: ..\..\scenarios\web.rst:241 +#: ../../scenarios/web.rst:241 msgid "" "DotCloud has a free plan with limited database size, and without extra " "services (caching…)." msgstr "" -#: ..\..\scenarios\web.rst:244 +#: ../../scenarios/web.rst:244 msgid "" "See the `DotCloud documentation on Python " "`_ for more information and help " "getting started." msgstr "" -#: ..\..\scenarios\web.rst:250 +#: ../../scenarios/web.rst:250 msgid "Gondor" msgstr "" -#: ..\..\scenarios\web.rst:252 +#: ../../scenarios/web.rst:252 msgid "" "`Gondor `_ is a PaaS specialized for deploying Django " "and Pinax applications. Gondor recommends Django version 1.6 and supports " @@ -367,17 +367,17 @@ msgid "" "specific configuration information." msgstr "" -#: ..\..\scenarios\web.rst:257 +#: ../../scenarios/web.rst:257 msgid "" "Gondor has a guide on deploying `Django projects " "`_." msgstr "" -#: ..\..\scenarios\web.rst:261 +#: ../../scenarios/web.rst:261 msgid "Templating" msgstr "" -#: ..\..\scenarios\web.rst:263 +#: ../../scenarios/web.rst:263 msgid "" "Most WSGI applications are responding to HTTP requests to serve content in " "HTML or other markup languages. Instead of generating directly textual " @@ -389,19 +389,19 @@ msgid "" "application." msgstr "" -#: ..\..\scenarios\web.rst:273 +#: ../../scenarios/web.rst:273 msgid "" "As template files are sometimes written by designers or front-end " "developers, it can be difficult to handle increasing complexity." msgstr "" -#: ..\..\scenarios\web.rst:277 +#: ../../scenarios/web.rst:277 msgid "" "Some general good practices apply to the part of the application passing " "dynamic content to the template engine, and to the templates themselves." msgstr "" -#: ..\..\scenarios\web.rst:281 +#: ../../scenarios/web.rst:281 msgid "" "Template files should be passed only the dynamic content that is needed for " "rendering the template. Avoid the temptation to pass additional content " @@ -409,7 +409,7 @@ msgid "" " to remove a likely unused variable later." msgstr "" -#: ..\..\scenarios\web.rst:287 +#: ../../scenarios/web.rst:287 msgid "" "Many template engines allow for complex statements or assignments in the " "template itself, and many allow some Python code to be evaluated in the " @@ -417,18 +417,18 @@ msgid "" " and often make it harder to find bugs." msgstr "" -#: ..\..\scenarios\web.rst:293 +#: ../../scenarios/web.rst:293 msgid "" "It is often necessary to mix JavaScript templates with HTML templates. A " "sane approach to this design is to isolate the parts where the HTML template" " passes some variable content to the JavaScript code." msgstr "" -#: ..\..\scenarios\web.rst:301 +#: ../../scenarios/web.rst:301 msgid "Jinja2" msgstr "" -#: ..\..\scenarios\web.rst:302 +#: ../../scenarios/web.rst:302 msgid "" "`Jinja2 `_ is a template engine which is similar to" " the Django template system with some extra features. It is a text-based " @@ -438,64 +438,64 @@ msgid "" "Jinja2 is released under the BSD license." msgstr "" -#: ..\..\scenarios\web.rst:309 +#: ../../scenarios/web.rst:309 msgid "Here some important html tags in Jinja2:" msgstr "" -#: ..\..\scenarios\web.rst:330 +#: ../../scenarios/web.rst:330 msgid "" "The next listings is an example of a web site in combination with the " "tornado web server. Tornado is not very complicate to use." msgstr "" -#: ..\..\scenarios\web.rst:371 +#: ../../scenarios/web.rst:371 msgid "" "The :file:`base.html` file can be used as base for all site pages which are " "for example implemented in the content block." msgstr "" -#: ..\..\scenarios\web.rst:396 +#: ../../scenarios/web.rst:396 msgid "" "The next listing is our site page (:file:`site.html`) loaded in the Python " "app which extends :file:`base.html`. The content block is automatically set " "into the corresponding block in the :file:`base.html` page." msgstr "" -#: ..\..\scenarios\web.rst:419 +#: ../../scenarios/web.rst:419 msgid "References" msgstr "" -#: ..\..\scenarios\web.rst:420 +#: ../../scenarios/web.rst:420 msgid "" "`The mod_python project is now officially dead " "`_" msgstr "" -#: ..\..\scenarios\web.rst:421 +#: ../../scenarios/web.rst:421 msgid "" "`mod_wsgi vs mod_python " "`_" msgstr "" -#: ..\..\scenarios\web.rst:422 +#: ../../scenarios/web.rst:422 msgid "" "`Benchmark of Python WSGI Servers `_" msgstr "" -#: ..\..\scenarios\web.rst:34 +#: ../../scenarios/web.rst:34 msgid "URL Routing" msgstr "" -#: ..\..\scenarios\web.rst:37 +#: ../../scenarios/web.rst:37 msgid "Request and Response Objects" msgstr "" -#: ..\..\scenarios\web.rst:41 +#: ../../scenarios/web.rst:41 msgid "Template Engine" msgstr "" -#: ..\..\scenarios\web.rst:46 +#: ../../scenarios/web.rst:46 msgid "Development Web Server" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.po b/docs/locale/ko/LC_MESSAGES/scenarios/xml.po index 05eb8f633..783757b7b 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/xml.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/xml.po @@ -11,60 +11,60 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\scenarios\xml.rst:2 +#: ../../scenarios/xml.rst:2 msgid "XML parsing" msgstr "" -#: ..\..\scenarios\xml.rst:5 +#: ../../scenarios/xml.rst:5 msgid "untangle" msgstr "" -#: ..\..\scenarios\xml.rst:7 +#: ../../scenarios/xml.rst:7 msgid "" "`untangle `_ is a simple library which " "takes an XML document and returns a Python object which mirrors the nodes " "and attributes in its structure." msgstr "" -#: ..\..\scenarios\xml.rst:11 +#: ../../scenarios/xml.rst:11 msgid "For example, an XML file like this:" msgstr "" -#: ..\..\scenarios\xml.rst:20 +#: ../../scenarios/xml.rst:20 msgid "can be loaded like this:" msgstr "" -#: ..\..\scenarios\xml.rst:27 +#: ../../scenarios/xml.rst:27 msgid "and then you can get the child elements name like this:" msgstr "" -#: ..\..\scenarios\xml.rst:33 +#: ../../scenarios/xml.rst:33 msgid "untangle also supports loading XML from a string or an URL." msgstr "" -#: ..\..\scenarios\xml.rst:36 +#: ../../scenarios/xml.rst:36 msgid "xmltodict" msgstr "" -#: ..\..\scenarios\xml.rst:38 +#: ../../scenarios/xml.rst:38 msgid "" "`xmltodict `_ is another simple " "library that aims at making XML feel like working with JSON." msgstr "" -#: ..\..\scenarios\xml.rst:41 +#: ../../scenarios/xml.rst:41 msgid "An XML file like this:" msgstr "" -#: ..\..\scenarios\xml.rst:55 +#: ../../scenarios/xml.rst:55 msgid "can be loaded into a Python dict like this:" msgstr "" -#: ..\..\scenarios\xml.rst:64 +#: ../../scenarios/xml.rst:64 msgid "and then you can access elements, attributes and values like this:" msgstr "" -#: ..\..\scenarios\xml.rst:73 +#: ../../scenarios/xml.rst:73 msgid "" "xmltodict also lets you roundtrip back to XML with the unparse function, has" " a streaming mode suitable for handling files that don't fit in memory and " diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po index c2509370a..bcd7f1ff0 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po @@ -11,145 +11,145 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\shipping\freezing.rst:2 +#: ../../shipping/freezing.rst:2 msgid "Freezing Your Code" msgstr "" -#: ..\..\shipping\freezing.rst:4 +#: ../../shipping/freezing.rst:4 msgid "" "An alternative to shipping your code is freezing it — shipping it as an " "executable with a bundled Python interpreter." msgstr "" -#: ..\..\shipping\freezing.rst:7 +#: ../../shipping/freezing.rst:7 msgid "Many applications you use every day do this:" msgstr "" -#: ..\..\shipping\freezing.rst:9 +#: ../../shipping/freezing.rst:9 msgid "Dropbox" msgstr "" -#: ..\..\shipping\freezing.rst:10 +#: ../../shipping/freezing.rst:10 msgid "BitTorrent" msgstr "" -#: ..\..\shipping\freezing.rst:11 +#: ../../shipping/freezing.rst:11 msgid "..." msgstr "" -#: ..\..\shipping\freezing.rst:13 +#: ../../shipping/freezing.rst:13 msgid "Fill in \"Freezing Your Code\" stub" msgstr "" -#: ..\..\shipping\freezing.rst:18 +#: ../../shipping/freezing.rst:18 msgid "Comparison" msgstr "" -#: ..\..\shipping\freezing.rst:20 +#: ../../shipping/freezing.rst:20 msgid "Solutions and platforms/features supported:" msgstr "" -#: ..\..\shipping\freezing.rst:23 +#: ../../shipping/freezing.rst:23 msgid "Solution" msgstr "" -#: ..\..\shipping\freezing.rst:23 ..\..\shipping\freezing.rst:43 +#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:43 msgid "Windows" msgstr "" -#: ..\..\shipping\freezing.rst:23 ..\..\shipping\freezing.rst:103 +#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:103 msgid "Linux" msgstr "" -#: ..\..\shipping\freezing.rst:23 +#: ../../shipping/freezing.rst:23 msgid "OS X" msgstr "" -#: ..\..\shipping\freezing.rst:23 +#: ../../shipping/freezing.rst:23 msgid "Python 3" msgstr "" -#: ..\..\shipping\freezing.rst:23 +#: ../../shipping/freezing.rst:23 msgid "License" msgstr "" -#: ..\..\shipping\freezing.rst:23 +#: ../../shipping/freezing.rst:23 msgid "One-file mode" msgstr "" -#: ..\..\shipping\freezing.rst:23 +#: ../../shipping/freezing.rst:23 msgid "Zipfile import" msgstr "" -#: ..\..\shipping\freezing.rst:23 +#: ../../shipping/freezing.rst:23 msgid "Eggs" msgstr "" -#: ..\..\shipping\freezing.rst:23 +#: ../../shipping/freezing.rst:23 msgid "pkg_resources support" msgstr "" -#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:46 -#: ..\..\shipping\freezing.rst:107 +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:46 +#: ../../shipping/freezing.rst:107 msgid "bbFreeze" msgstr "" -#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:25 -#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:25 -#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:25 -#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:26 -#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:26 -#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:27 -#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:27 -#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:28 -#: ..\..\shipping\freezing.rst:28 ..\..\shipping\freezing.rst:28 -#: ..\..\shipping\freezing.rst:28 ..\..\shipping\freezing.rst:28 -#: ..\..\shipping\freezing.rst:28 ..\..\shipping\freezing.rst:29 -#: ..\..\shipping\freezing.rst:29 ..\..\shipping\freezing.rst:29 -#: ..\..\shipping\freezing.rst:29 ..\..\shipping\freezing.rst:29 +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 msgid "yes" msgstr "" -#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:25 -#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:26 -#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:26 -#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:27 -#: ..\..\shipping\freezing.rst:27 ..\..\shipping\freezing.rst:28 -#: ..\..\shipping\freezing.rst:28 ..\..\shipping\freezing.rst:29 -#: ..\..\shipping\freezing.rst:29 ..\..\shipping\freezing.rst:29 +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 msgid "no" msgstr "" -#: ..\..\shipping\freezing.rst:25 ..\..\shipping\freezing.rst:26 -#: ..\..\shipping\freezing.rst:29 +#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:26 +#: ../../shipping/freezing.rst:29 msgid "MIT" msgstr "" -#: ..\..\shipping\freezing.rst:26 ..\..\shipping\freezing.rst:53 +#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:53 msgid "py2exe" msgstr "" -#: ..\..\shipping\freezing.rst:27 +#: ../../shipping/freezing.rst:27 msgid "pyInstaller" msgstr "" -#: ..\..\shipping\freezing.rst:27 +#: ../../shipping/freezing.rst:27 msgid "GPL" msgstr "" -#: ..\..\shipping\freezing.rst:28 +#: ../../shipping/freezing.rst:28 msgid "cx_Freeze" msgstr "" -#: ..\..\shipping\freezing.rst:28 +#: ../../shipping/freezing.rst:28 msgid "PSF" msgstr "" -#: ..\..\shipping\freezing.rst:29 ..\..\shipping\freezing.rst:96 +#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:96 msgid "py2app" msgstr "" -#: ..\..\shipping\freezing.rst:33 +#: ../../shipping/freezing.rst:33 msgid "" "Freezing Python code on Linux into a Windows executable was only once " "supported in PyInstaller `and later dropped. " @@ -157,54 +157,54 @@ msgid "" "on-linux-into-a-windows-executable#comment11890276_2951046>`_." msgstr "" -#: ..\..\shipping\freezing.rst:38 +#: ../../shipping/freezing.rst:38 msgid "" "All solutions need MS Visual C++ dll to be installed on target machine, " "except py2app. Only Pyinstaller makes self-executable exe that bundles the " "dll when passing :option:`--onefile` to :file:`Configure.py`." msgstr "" -#: ..\..\shipping\freezing.rst:48 +#: ../../shipping/freezing.rst:48 msgid "" "Prerequisite is to install :ref:`Python, Setuptools and pywin32 dependency " "on Windows `." msgstr "" -#: ..\..\shipping\freezing.rst:50 +#: ../../shipping/freezing.rst:50 msgid "Write steps for most basic .exe" msgstr "" -#: ..\..\shipping\freezing.rst:55 +#: ../../shipping/freezing.rst:55 msgid "Prerequisite is to install :ref:`Python on Windows `." msgstr "" -#: ..\..\shipping\freezing.rst:57 +#: ../../shipping/freezing.rst:57 msgid "" "Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" msgstr "" -#: ..\..\shipping\freezing.rst:59 +#: ../../shipping/freezing.rst:59 msgid "" "Write :file:`setup.py` (`List of configuration options " "`_)::" msgstr "" -#: ..\..\shipping\freezing.rst:70 +#: ../../shipping/freezing.rst:70 msgid "" "(Optionally) `include icon `_" msgstr "" -#: ..\..\shipping\freezing.rst:72 +#: ../../shipping/freezing.rst:72 msgid "" "(Optionally) `one-file mode `_" msgstr "" -#: ..\..\shipping\freezing.rst:74 +#: ../../shipping/freezing.rst:74 msgid "Generate :file:`.exe` into :file:`dist` directory:" msgstr "" -#: ..\..\shipping\freezing.rst:80 +#: ../../shipping/freezing.rst:80 msgid "" "Provide the Microsoft Visual C runtime DLL. Two options: `globally install " "dll on target machine `_." msgstr "" -#: ..\..\shipping\freezing.rst:83 ..\..\shipping\freezing.rst:99 -#: ..\..\shipping\freezing.rst:110 +#: ../../shipping/freezing.rst:83 ../../shipping/freezing.rst:99 +#: ../../shipping/freezing.rst:110 msgid "PyInstaller" msgstr "" -#: ..\..\shipping\freezing.rst:85 +#: ../../shipping/freezing.rst:85 msgid "" "Prerequisite is to have installed :ref:`Python, Setuptools and pywin32 " "dependency on Windows `." msgstr "" -#: ..\..\shipping\freezing.rst:87 +#: ../../shipping/freezing.rst:87 msgid "" "`Most basic tutorial `_" msgstr "" -#: ..\..\shipping\freezing.rst:88 +#: ../../shipping/freezing.rst:88 msgid "" "`Manual " "`_" msgstr "" -#: ..\..\shipping\freezing.rst:92 +#: ../../shipping/freezing.rst:92 msgid "OS X" msgstr "" -#: ..\..\shipping\freezing.rst:0 ..\..\shipping\freezing.rst:0 +#: ../../shipping/freezing.rst:0 ../../shipping/freezing.rst:0 msgid "Todo" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/shipping/packaging.po b/docs/locale/ko/LC_MESSAGES/shipping/packaging.po index dd9f10992..fb38967d5 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/packaging.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/packaging.po @@ -11,53 +11,53 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\shipping\packaging.rst:2 +#: ../../shipping/packaging.rst:2 msgid "Packaging Your Code" msgstr "" -#: ..\..\shipping\packaging.rst:4 +#: ../../shipping/packaging.rst:4 msgid "Packaging your code is important." msgstr "" -#: ..\..\shipping\packaging.rst:6 +#: ../../shipping/packaging.rst:6 msgid "" "You'll need to package your code first before sharing it with other " "developers." msgstr "" -#: ..\..\shipping\packaging.rst:8 +#: ../../shipping/packaging.rst:8 msgid "" "The `Python Packaging Guide `_ provides an extensive guide on creating " "and maintaining Python packages." msgstr "" -#: ..\..\shipping\packaging.rst:11 +#: ../../shipping/packaging.rst:11 msgid "For Python Developers" msgstr "" -#: ..\..\shipping\packaging.rst:13 +#: ../../shipping/packaging.rst:13 msgid "" "If you're writing an open source Python module, `PyPI " "`_, more properly known as *The Cheeseshop*, is the " "place to host it." msgstr "" -#: ..\..\shipping\packaging.rst:19 +#: ../../shipping/packaging.rst:19 msgid "Pip vs. easy_install" msgstr "" -#: ..\..\shipping\packaging.rst:21 +#: ../../shipping/packaging.rst:21 msgid "" "Use `pip `_. More details `here " "`_" msgstr "" -#: ..\..\shipping\packaging.rst:25 +#: ../../shipping/packaging.rst:25 msgid "Personal PyPI" msgstr "" -#: ..\..\shipping\packaging.rst:27 +#: ../../shipping/packaging.rst:27 msgid "" "If you want to install packages from a source different from PyPI, (say, if " "your packages are *proprietary*), you can do it by hosting a simple http " @@ -65,32 +65,32 @@ msgid "" "be installed." msgstr "" -#: ..\..\shipping\packaging.rst:31 +#: ../../shipping/packaging.rst:31 msgid "**Showing an example is always beneficial**" msgstr "" -#: ..\..\shipping\packaging.rst:33 +#: ../../shipping/packaging.rst:33 msgid "" "Say if you are after installing a package called :file:`MyPackage.tar.gz`, " "and assuming this is your directory structure:" msgstr "" -#: ..\..\shipping\packaging.rst:39 +#: ../../shipping/packaging.rst:39 msgid "MyPackage.tar.gz" msgstr "" -#: ..\..\shipping\packaging.rst:41 +#: ../../shipping/packaging.rst:41 msgid "Go to your command prompt and type:" msgstr "" -#: ..\..\shipping\packaging.rst:48 +#: ../../shipping/packaging.rst:48 msgid "" "This runs a simple http server running on port 9000 and will list all " "packages (like **MyPackage**). Now you can install **MyPackage** using any " "Python package installer. Using Pip, you would do it like:" msgstr "" -#: ..\..\shipping\packaging.rst:56 +#: ../../shipping/packaging.rst:56 msgid "" "Having a folder with the same name as the package name is **crucial** here. " "I got fooled by that, one time. But if you feel that creating a folder " @@ -98,11 +98,11 @@ msgid "" "is *redundant*, you can still install MyPackage using:" msgstr "" -#: ..\..\shipping\packaging.rst:66 +#: ../../shipping/packaging.rst:66 msgid "pypiserver" msgstr "" -#: ..\..\shipping\packaging.rst:68 +#: ../../shipping/packaging.rst:68 msgid "" "`Pypiserver `_ is a minimal PyPI " "compatible server. It can be used to serve a set of packages to easy_install" @@ -111,126 +111,126 @@ msgid "" "found on PyPI." msgstr "" -#: ..\..\shipping\packaging.rst:75 +#: ../../shipping/packaging.rst:75 msgid "S3-Hosted PyPi" msgstr "" -#: ..\..\shipping\packaging.rst:77 +#: ../../shipping/packaging.rst:77 msgid "" "One simple option for a personal PyPi server is to use Amazon S3. A " "prerequisite for this is that you have an Amazon AWS account with an S3 " "bucket." msgstr "" -#: ..\..\shipping\packaging.rst:79 +#: ../../shipping/packaging.rst:79 msgid "**Install all your requirements from PyPi or another source**" msgstr "" -#: ..\..\shipping\packaging.rst:80 +#: ../../shipping/packaging.rst:80 msgid "**Install pip2pi**" msgstr "" -#: ..\..\shipping\packaging.rst:82 +#: ../../shipping/packaging.rst:82 msgid ":code:`pip install git+https://github.com/wolever/pip2pi.git`" msgstr "" -#: ..\..\shipping\packaging.rst:84 +#: ../../shipping/packaging.rst:84 msgid "**Follow pip2pi README for pip2tgz and dir2pi commands**" msgstr "" -#: ..\..\shipping\packaging.rst:86 +#: ../../shipping/packaging.rst:86 msgid "" ":code:`pip2tgz packages/ YourPackage` (or :code:`pip2tgz packages/ -r " "requirements.txt`)" msgstr "" -#: ..\..\shipping\packaging.rst:87 +#: ../../shipping/packaging.rst:87 msgid ":code:`dir2pi packages/`" msgstr "" -#: ..\..\shipping\packaging.rst:89 +#: ../../shipping/packaging.rst:89 msgid "**Upload the new files**" msgstr "" -#: ..\..\shipping\packaging.rst:91 +#: ../../shipping/packaging.rst:91 msgid "" "Use a client like Cyberduck to sync the entire :file:`packages` folder to " "your s3 bucket" msgstr "" -#: ..\..\shipping\packaging.rst:92 +#: ../../shipping/packaging.rst:92 msgid "" "Make sure you upload :code:`packages/simple/index.html` as well as all new " "files and directories" msgstr "" -#: ..\..\shipping\packaging.rst:94 +#: ../../shipping/packaging.rst:94 msgid "**Fix new file permissions**" msgstr "" -#: ..\..\shipping\packaging.rst:96 +#: ../../shipping/packaging.rst:96 msgid "" "By default, when you upload new files to the S3 bucket, they will have the " "wrong permissions set." msgstr "" -#: ..\..\shipping\packaging.rst:97 +#: ../../shipping/packaging.rst:97 msgid "" "Use the Amazon web console to set the READ permission of the files to " "EVERYONE." msgstr "" -#: ..\..\shipping\packaging.rst:98 +#: ../../shipping/packaging.rst:98 msgid "" "If you get HTTP 403 when trying to install a package, make sure you've set " "the permissions correctly." msgstr "" -#: ..\..\shipping\packaging.rst:100 +#: ../../shipping/packaging.rst:100 msgid "**All done**" msgstr "" -#: ..\..\shipping\packaging.rst:102 +#: ../../shipping/packaging.rst:102 msgid "" "You can now install your package with :code:`pip install --index-" "url=http://your-s3-bucket/packages/simple/ YourPackage`" msgstr "" -#: ..\..\shipping\packaging.rst:105 +#: ../../shipping/packaging.rst:105 msgid "For Linux Distributions" msgstr "" -#: ..\..\shipping\packaging.rst:107 +#: ../../shipping/packaging.rst:107 msgid "`Fedora `_" msgstr "" -#: ..\..\shipping\packaging.rst:108 +#: ../../shipping/packaging.rst:108 msgid "" "`Debian and Ubuntu `_" msgstr "" -#: ..\..\shipping\packaging.rst:109 +#: ../../shipping/packaging.rst:109 msgid "" "`Arch `_" msgstr "" -#: ..\..\shipping\packaging.rst:112 +#: ../../shipping/packaging.rst:112 msgid "Useful Tools" msgstr "" -#: ..\..\shipping\packaging.rst:114 +#: ../../shipping/packaging.rst:114 msgid "`fpm `_" msgstr "" -#: ..\..\shipping\packaging.rst:115 +#: ../../shipping/packaging.rst:115 msgid "`alien `_" msgstr "" -#: ..\..\shipping\packaging.rst:39 +#: ../../shipping/packaging.rst:39 msgid "archive" msgstr "" -#: ..\..\shipping\packaging.rst:39 +#: ../../shipping/packaging.rst:39 msgid "MyPackage" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..87012041e4ea17412ed02306ee959b865705c5c1 100644 GIT binary patch literal 6381 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" -#: ..\..\starting\install\linux.rst:37 +#: ../../starting/install/linux.rst:37 msgid "" "The new ``easy_install`` command you have available is considered by many to" " be deprecated, so we will install its replacement: **pip**. Pip allows for " @@ -86,15 +86,15 @@ msgstr "" "그러니 이를 대체할 것을 설치해보자. **pip** 는 패키지의 설치 제거도 가능케 하고, easy_install와 달리 현재 활발히 " "유지 보수되고 있다." -#: ..\..\starting\install\linux.rst:41 +#: ../../starting/install/linux.rst:41 msgid "To install pip, simply open a command prompt and run" msgstr "pip를 설치하려면 아래 파이썬 스크립트를 실행하면 된다." -#: ..\..\starting\install\linux.rst:49 +#: ../../starting/install/linux.rst:49 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ..\..\starting\install\linux.rst:51 +#: ../../starting/install/linux.rst:51 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -106,13 +106,13 @@ msgstr "" "이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " "관리할 수 있도록 해준다." -#: ..\..\starting\install\linux.rst:56 +#: ../../starting/install/linux.rst:56 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해준다." -#: ..\..\starting\install\linux.rst:59 +#: ../../starting/install/linux.rst:59 msgid "" "To start using and see more information: `Virtual Environments " "`_ 에서 볼 수 있다." -#: ..\..\starting\install\linux.rst:64 +#: ../../starting/install/linux.rst:64 msgid "" "This page is a remixed version of `another guide " "`_, which is" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..b3f0d7a7b66597a3790e67e4b021be7ac0d887cb 100644 GIT binary patch literal 8038 zcmcgwTWlOx86Hrf5H96juH}#-ngs7`oR+pMZK<22jiua_y2U9--Pzsa-Kl41wsY|X z(UQw1II+_>iZ^kRb-J`poK`Mu5+`+p%L5V;Z#;n17le33p4m4Z;0eC}pUZCS^g@xa zWS^a#bN>7H{r~Y_KX+SA!Oxxe{W^aCOb_^(_)vSj51)_W_s97C-G>$B(|C2)ZHn?U ztSPMBSYO9Fh4n93zk&7nk0{DLSdU}6N>T&tYxe(;N1P6!~@oaPbtb~tk+;< z4(q?}P?X$mB9tn~gLSjq0LFDl9p zA?IPNIXu7cCCI?@-?080&v$+~wENDlME+tWd*89c#BbB66PFCE{Isg(+ph5%;Mh zYhj`x%Vn)gXl8*ua>S_R*`jDzIXLg=u1r<5{Ge8ZvH~2-yOs@m4XK%YrmUHGr{xT( zDvwE+DB+{yYKB4Xgl=?^%zF%j6;tS<9pZ`2n^pQF@{pF3!pgatZbreghE2oL3M3}m zzu78C@leTiE17h4DMV@=k|oxaJ;xO#ZAijd(L>sVmd{(B>8=-HIs}YCQe%C)p6pM-qf~Dg z1em~9le(hrmb@HWJ19+4x+Poc?oZQ}GmAd0=JY_TX1x-0hR z#geN$4&`!0E5jg;E=O?KvIi;kT3l~pxTNPxaZNg6%X6Apv``ZF(i`%{a4b|jx9OuyyPfFLT5HJ7`1Us9p=#^}iD;B9&mEHj=0jML-M#F%HIgOnz zbcuo`ObZ|jBPUix5_NA1Uqy_ zsrCxGRx~XKb$EHQK$1#j$X(r%iA;AsX3$1Mw+tO^~@|>6Dus!3I&J+{l$u+ zGn@xRy`trGLwBLq3i$(`tg@A@fW4yvTU{7JCaX#xD9ivK0%$R3A-r)Oy6_2K>-j-2 z<%SKg9r0pG?H~)wa|O;28Ro2!4I4tCPTtllE;fUCRpf|2n zA-kc^78!8;kY;DHyL3R_ujkROf&Srvt46si6ucaRZiNSi|%L@`XpC zlAPtbR=KTb0Km^=Urej;mOcZf_{(YNh<_Aam*VA=^hy+Tf(Et0A~h_=H#&h$)S-&K z5?w|o)DVn|mQ~;l5nEFORYf1njJ1&13WCPjWWi-^l-od<&H^>b0i=YT%UT3t9U#nm zHaFGCL|eiHpg!T*;o)Jm!u?aV>|(mj=w&UR0@;RLBBVyRlDAApFQ89TiAw>z1Cvw= z1usuD6WdEgh3yrzyKoS&WmzA=sn{Q6GONM$5+GUhATnuKWRZiuZo3kF(NU$B#%CQ} z)JcbyraGdOLJDCtcOXy;Q#cfBLz-@|Z62l#9tDJ>l>r_-FHvogeO%ElSF|YWriU0( zqZ+pG-V)iUR@+6Hgsr1J#TA<_MNFR_)(7=;be2KSoz~I8OQXW}Op=Yrq2fJa8Ag*M zr6`930p@}-AIpgBEe5NoC%;RNjH1M0P3JJ2q|2HEdP8>e4h;n9XmSFI9MyJQYM%5? zRc@tE`4P82F1ij%(Lh8t(rbF<93qT_KDD#AUwAH&8>TzzIA|SWKr7=L%??W!qlGsj zoKe_QCYaEmVzSLnhtNZG2$#?ep8hkC8* zl*lDO6+M=*KV<0zRUt-*8Yhi)M8I*1k#^MffL`>_1JOos3Yn1x9KbGWlp%stu}vGI zSB|C=1~kC97v$_21>_X7Z;^5=scm4+`NUug`NSkU_4I)n4}SC4_OPRAg9Du zYsRoP+HT(M7K}NUX`dKB{NQ0e0)6O6H_g{%P86IF$OxKUzzA%kxkZL09;!+_=ny

)M zZBQkLAwf8XG7w`$Q*|pX&2+c=J+(j0Zl*YYYRN4dchgJ|&!UWS>Wt(d@`ky4G?^DA z$}hT9qn+h@e4jotU9y1P^NZWNm~Wi~yCJ*ho%NT;hzv}Nzso;|4@yHZC z58zAnNv)g_+k19C@l?+fTg5}$w?As=)I=Uxv!i#%*0zh?>c%yjEzDOYl#W(lxQp6O z^NjHWnlEfex(`3q_ju~T_C7KW_rcUw6L%F9LPk88)7>?Y?T?F-NaAP`{nHK&yUY%&w>Y_DO z^?z9p8Z)h7i3R>~a+D=KL zpT6?1RD(v9?w9_BB@vu#;!FQnv+E|MdpmaG!U;!2t5yxpPQkjh!aq=7zV-$g(W)&h zUuoiRFuRZSF2A|xUz}gQ+7M6@oPGn*xYRl@3rk7c@{LRW{?n}*;xQqX7xrOmtA?#( z(;_%O<{yXGGbA&TrX-vw=oB{X zzqSxmk)Tt*VfB%b6kY$=6bwE=*$%@Q%q;%Tch;cRXiXt3SCO9@@<$;-skB{MFM`vP zun2KlVHD!sB`EY)Df{$(rG-mu;i|h?d;01aBi{Edx1HQ~GK>q;oKB{^N=fk{owNGv2QwQdQv#-%>LP95isLUBG z2oIIoyOvzs#YsxL0U;|($@RFiNRm<|!2Nnr@a?!`!>O^LzC1?Xhc<>61@Qdjw-h)FJt8>U1cEu<@pggBbLWvZxJiFU zKv!O>Ns3>c1>ptfCR+Pp_rd*P*4II6>+m%K8~konn|}4p^&rbjgme+ihSd1_A-{10 zkyw2@rrK-0M6|@znphefowfbb(^%wt+mV$lCH(10w&Yr! zMAqs=)x-{`4^i%+-5VIRkp^P2qi^$!-m$m3IDfY?N5m#-WI>IqMNoU;focy4ola?@cg zVH74OBQV7vg|Sn9<4EgpgX$1LT6rB0TQ3;^;B#IOq=WlWJOly1`YOs<6`9p{YYq!Y z6J2?3jJns{5iT`4g(8`mAP1J4XE>?H=KSmQiBKFtSfM)#!|XW9?h-ZnB+@LEx-jIU zfi#=I5ug{P2x&y!QFf8#X;zJ<06J*a;~lSz<7*Mrj`FTpQ-Zqzqo*K1sBK2*tS{iUhsZy;)p5r8nJwBK5l^s$d!W>27)>Tru7nHzCbP@ z?^%59Us!}I`)JR}dU8+t;MeT1U!R|+7@kJ#d9;Zv5I!gn+N+J==qwrFA4iV3e~^9M zFK+U$qmMRfgo5SE;D?1y`;+TjRGb~7N4-jAiardX$&lXBKjZ3ruWNWvtNQ1G+qb5O zZV2M&;0G@NQ?sp8M+l;eO%Mi^L1$&%>SBCT1H>_!Dj9hgRQ$P@m^^FUN5y~m8rV_<2j>0rG?=3-xZBR22*+9CQmVEQ6zCXle;GQgNrxro`6U=+={i1(~N4%o50;Pl~0Qs=1z*GZKnVCeX#0oj9+fK6kd zDe{Ywce#oNdFuf=o`5vlKW*T*|>E+8!{{U(Z&opGx1dn#aqdmLJ=BiYPjbD%$ z6cLY`hyex*n&KiQH#Mc}O+4dy(0gC?W)yuo$UoCeU) zu@WI2!!=)-!rsKJ9FkSS**HQ&0iMxJBWhV?T4($*afD5lLKvqj{=WlR(-xhS4(Ipq zWN_py>hZCs(^TNAE=%DQu(0~(x9T4YoV6(bNz`r**XlDcFdGpEp(UZY5A?r?=-wh) m80pU83P~OTsNvYuIzz3E=h!;kXsNM)8fc^-l42yP%6|YyXG`J$ delta 82 zcmaE6_kc;~o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUx0~-)srDP#+%!KSy6z1shji TM^7IIM;DhM*WlpE75t3=1Ah+I diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po index f5cd25654..adc1ef87c 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po @@ -11,17 +11,17 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\starting\install\osx.rst:4 +#: ../../starting/install/osx.rst:4 msgid "Installing Python on Mac OS X" msgstr "맥 OS X에 파이썬 설치하기" -#: ..\..\starting\install\osx.rst:6 +#: ../../starting/install/osx.rst:6 msgid "" "The latest version of Mac OS X, Mavericks, **comes with Python 2.7 out of " "the box**." msgstr "맥 OS X의 최신 버전인 요세미티에는 **훌륭하게도 파이썬 2.7이 딸려온다**." -#: ..\..\starting\install\osx.rst:8 +#: ../../starting/install/osx.rst:8 msgid "" "You do not need to install or configure anything else to use Python. Having " "said that, I would strongly recommend that you install the tools and " @@ -30,31 +30,29 @@ msgid "" "Setuptools, as it makes it much easier for you to use other third-party " "Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다." -"그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서 아래에 " -"설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools는 반드시" -" 설치해야 한다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서" +" 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools는 반드시 설치해야 한다. 이것들은 다른 파이썬 " +"서드파티 라이브러리들을 사용하기 편하게 해준다." -#: ..\..\starting\install\osx.rst:14 +#: ../../starting/install/osx.rst:14 msgid "" "The version of Python that ships with OS X is great for learning. Yet, it's " "not good for development. The version shipped with OS X may be out of date " "from the `official current Python release `_, which is considered the stable production version." msgstr "" -"OS X에 포함된 파이썬의 버젼은 배우기에는 최고다. 하지만 개발에는 좋지 않다. " -"OS X에 딸려온 버젼은 안정화된 `공식 릴리즈 된 파이썬" -" `_ 보다 구버전일 것이다." +"OS X에 포함된 파이썬의 버젼은 배우기에는 최고다. 하지만 개발에는 좋지 않다. OS X에 딸려온 버젼은 안정화된 `공식 릴리즈 된 " +"파이썬 `_ 보다 구버전일 것이다." -#: ..\..\starting\install\osx.rst:20 +#: ../../starting/install/osx.rst:20 msgid "Doing it Right" msgstr "바로 시작하기" -#: ..\..\starting\install\osx.rst:22 +#: ../../starting/install/osx.rst:22 msgid "Let's install a real version of Python." msgstr "진짜 파이썬을 설치해보자!" -#: ..\..\starting\install\osx.rst:24 +#: ../../starting/install/osx.rst:24 msgid "" "Before installing Python, you'll need to install GCC. GCC can be obtained by" " downloading `XCode `_, the smaller " @@ -62,41 +60,39 @@ msgid "" " Apple account) or the even smaller `OSX-GCC-Installer " "`_ package." msgstr "" -"파이썬을 설치하기 전에 GCC를 설치해야 한다. GCC는 " -"`XCode `_ 를 설치하면서 얻을 수 있다. " -"더 작은 버전인 `Command Line Tools `_ " -"(애플 계정이 있어야 한다) 에서도 얻을 수 있고, 그보다도 더 작은 버젼인 " -"`OSX-GCC-Installer `_ " -"패키지에서도 얻을 수 있다." - -#: ..\..\starting\install\osx.rst:31 +"파이썬을 설치하기 전에 GCC를 설치해야 한다. GCC는 `XCode `_" +" 를 설치하면서 얻을 수 있다. 더 작은 버전인 `Command Line Tools " +"`_ (애플 계정이 있어야 한다) 에서도 얻을 수 있고, 그보다도" +" 더 작은 버젼인 `OSX-GCC-Installer `_ 패키지에서도 얻을 수 있다." + +#: ../../starting/install/osx.rst:31 msgid "" "If you already have XCode installed, do not install OSX-GCC-Installer. In " "combination, the software can cause issues that are difficult to diagnose." msgstr "" -"이미 XCode를 설치했으면 OSX-GCC-Installer는 설치하면 안된다." -"두개를 모두 설치하면 원인을 밝히 어려운 문제를 일으킬 수 있다." +"이미 XCode를 설치했으면 OSX-GCC-Installer는 설치하면 안된다.두개를 모두 설치하면 원인을 밝히 어려운 문제를 일으킬 수" +" 있다." -#: ..\..\starting\install\osx.rst:35 +#: ../../starting/install/osx.rst:35 msgid "" "While OS X comes with a large number of UNIX utilities, those familiar with " "Linux systems will notice one key component missing: a decent package " "manager. `Homebrew `_ fills this void." msgstr "" -"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 한가지가 " -"빠져있다는 사실을 알아챌 것이다. 훌륭한 패키지 매니저가 없다는 것이다. 하지만 " -"`Homebrew `_ 가 그 빈자리를 채워준다." +"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 한가지가 빠져있다는 사실을 알아챌 것이다. 훌륭한 " +"패키지 매니저가 없다는 것이다. 하지만 `Homebrew `_ 가 그 빈자리를 채워준다." -#: ..\..\starting\install\osx.rst:39 +#: ../../starting/install/osx.rst:39 msgid "" "To `install Homebrew " "`_, simply run" msgstr "" "`Homebrew를 설치하기 위해서는 " -"`_, 아래 코드를 " -"그냥 실행하기만 하면 된다." +"`_, 아래 코드를 그냥 실행하기만 " +"하면 된다." -#: ..\..\starting\install\osx.rst:46 +#: ../../starting/install/osx.rst:46 msgid "" "The script will explain what changes it will make and prompt you before the " "installation begins. Once you've installed Homebrew, insert the Homebrew " @@ -104,54 +100,52 @@ msgid "" " this by adding the following line at the bottom of your :file:`~/.profile` " "file" msgstr "" -"이 스크립트는 설치가 시작되기 전에 설치로 인해 변경되는 것들과 명령어를 설명해준다. " -"Homebrew가 설치됐으면 Homebrew 디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣자. " -":file:`~/.profile` 파일의 마지막 줄에 다음과 같이 덧붙이면 된다." +"이 스크립트는 설치가 시작되기 전에 설치로 인해 변경되는 것들과 명령어를 설명해준다. Homebrew가 설치됐으면 Homebrew " +"디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣자. :file:`~/.profile` 파일의 마지막 줄에 다음과 같이 " +"덧붙이면 된다." -#: ..\..\starting\install\osx.rst:56 +#: ../../starting/install/osx.rst:56 msgid "Now, we can install Python 2.7:" msgstr "이제 우리는 파이썬 2.7을 설치할 수 있다." -#: ..\..\starting\install\osx.rst:62 +#: ../../starting/install/osx.rst:62 msgid "This will take a minute or two." msgstr "1~2분 정도 걸릴 것이다." -#: ..\..\starting\install\osx.rst:66 +#: ../../starting/install/osx.rst:66 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ..\..\starting\install\osx.rst:68 +#: ../../starting/install/osx.rst:68 msgid "Homebrew installs Setuptools and ``pip`` for you." msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해준다." -#: ..\..\starting\install\osx.rst:70 +#: ../../starting/install/osx.rst:70 msgid "" "Setuptools enables you to download and install any compliant Python software" " over a network (usually the Internet) with a single command " "(``easy_install``). It also enables you to add this network installation " "capability to your own Python software with very little work." msgstr "" -"Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 " -"편리한 파이썬 소프트웨어를 다운로드받고 설치할 수 있도록 해준다. 또한 최소한의 " -"작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." +"Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 편리한 파이썬 소프트웨어를 " +"다운로드받고 설치할 수 있도록 해준다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." -#: ..\..\starting\install\osx.rst:75 +#: ../../starting/install/osx.rst:75 msgid "" "``pip`` is a tool for easily installing and managing Python packages, that " "is recommended over ``easy_install``. It is superior to ``easy_install`` in " "`several ways `_, and is actively maintained." msgstr "" -"``pip`` 는 파이썬 패키지를 손쉽게 설치하고 관리할 수 있게 해주는 툴이다. " -"``easy_install`` 로 설치할 것을 추천한다. ``easy_install`` 는 " -"`많은 면 `_ " -"에서 탁월하고, 또한 활발히 유지 보수되고 있다." +"``pip`` 는 파이썬 패키지를 손쉽게 설치하고 관리할 수 있게 해주는 툴이다. ``easy_install`` 로 설치할 것을 " +"추천한다. ``easy_install`` 는 `많은 면 `_ 에서 탁월하고, 또한 활발히 유지 보수되고 있다." -#: ..\..\starting\install\osx.rst:81 +#: ../../starting/install/osx.rst:81 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ..\..\starting\install\osx.rst:83 +#: ../../starting/install/osx.rst:83 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -159,34 +153,31 @@ msgid "" " Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 " -"간의 독립성을 유지시켜주는 툴이다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, " -"프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " +"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 툴이다. " +"이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " "관리할 수 있도록 해준다." -#: ..\..\starting\install\osx.rst:88 +#: ../../starting/install/osx.rst:88 msgid "" "For example, you can work on a project which requires Django 1.3 while also " "maintaining a project which requires Django 1.0." -msgstr "" -"예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 " -"유지보수 할 수 있도록 해준다." +msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해준다." -#: ..\..\starting\install\osx.rst:91 +#: ../../starting/install/osx.rst:91 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" -"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 " -"`Virtual Environments `_ " -"에서 볼 수 있다." +"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 `Virtual Environments " +"`_ 에서 볼 수 있다." -#: ..\..\starting\install\osx.rst:96 +#: ../../starting/install/osx.rst:96 msgid "" "This page is a remixed version of `another guide " "`_, which is" " available under the same license." msgstr "" -"이 페이지는 `다른 가이드 `_ " -"를 재배열 버전이다. 라이선스는 동일하다." \ No newline at end of file +"이 페이지는 `다른 가이드 `_ 를 재배열 버전이다. 라이선스는 동일하다." diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..3eea441fdb0e74d5af542a5e6706fe09f9115443 100644 GIT binary patch literal 8469 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 을 다운로드 받아야 " "한다. 확실한 최신 버전으로 파이썬을 설치하고자 한다면, `Python.org web " -"site `_ 홈페이지의 "Windows Installer" 링크에서 다운받으면 " +"site `_ 홈페이지의 \"Windows Installer\" 링크에서 다운받으면 " "된다." #: ../../starting/install/win.rst:11 diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.mo b/docs/locale/ko/LC_MESSAGES/starting/installation.mo index e07e53cfda72b78032402b53299aab3d7e0e8d3d..52de2a3d3bf62a25dfd48d7a5d3e01590ebb256e 100644 GIT binary patch delta 44 zcmaFQ-z6|%31jufr7zi}-^|^j@M=Q?ka|6N&g-rz3U7OQfSfnIYZNB;u_pomA5|Ez delta 16 YcmeAYc+Wp!31h;>r7zhguVhaI06hQ)7XSbN diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.po b/docs/locale/ko/LC_MESSAGES/starting/installation.po index e6ae61893..00b9c6afc 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/installation.po +++ b/docs/locale/ko/LC_MESSAGES/starting/installation.po @@ -11,16 +11,16 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\starting\installation.rst:2 +#: ../../starting/installation.rst:2 msgid "Properly Installing Python" msgstr "올바른 파이썬 설치" -#: ..\..\starting\installation.rst:4 +#: ../../starting/installation.rst:4 msgid "" "There's a good chance that you already have Python on your operating system." msgstr "운좋게도 이미 파이썬이 당신의 운영체제에 설치되어 있을 수도 있다." -#: ..\..\starting\installation.rst:6 +#: ../../starting/installation.rst:6 msgid "" "If so, you do not need to install or configure anything else to use Python. " "Having said that, I would strongly recommend that you install the tools and " @@ -29,32 +29,32 @@ msgid "" "Setuptools, Pip, and Virtualenv — they make it much easier for you to use " "other third-party Python libraries." msgstr "" -"만일 그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에" -"이 가이드에서 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다.특히 Setuptools, Pip, Virtualenv는 " +"만일 그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기 " +"전에이 가이드에서 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다.특히 Setuptools, Pip, Virtualenv는 " "반드시 설치해야 한다.이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." -#: ..\..\starting\installation.rst:14 +#: ../../starting/installation.rst:14 msgid "Installation Guides" msgstr "설치 가이드" -#: ..\..\starting\installation.rst:17 +#: ../../starting/installation.rst:17 msgid "" "for development purposes, as well as setuptools, pip, and virtualenv setup." msgstr "이 가이드는 파이썬 개발을 위한 설치 뿐만 아니라 setuptools, pip, and virtualenv의 설치도 다룬다." -#: ..\..\starting\installation.rst:19 +#: ../../starting/installation.rst:19 msgid ":ref:`Mac OS X `." msgstr ":ref:`Mac OS X `." -#: ..\..\starting\installation.rst:20 +#: ../../starting/installation.rst:20 msgid ":ref:`Microsoft Windows`." msgstr ":ref:`Microsoft Windows`." -#: ..\..\starting\installation.rst:21 +#: ../../starting/installation.rst:21 msgid ":ref:`Ubuntu Linux `." msgstr ":ref:`Ubuntu Linux `." -#: ..\..\starting\installation.rst:17 +#: ../../starting/installation.rst:17 msgid "" "These guides go over the proper installation of :ref:`Python 2.7 `" diff --git a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po index d2fee9bda..45efe3908 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po +++ b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po @@ -11,22 +11,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\starting\pip-virtualenv.rst:4 +#: ../../starting/pip-virtualenv.rst:4 msgid "Further Configuration of Pip and Virtualenv" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:7 +#: ../../starting/pip-virtualenv.rst:7 msgid "Requiring an active virtual environment for ``pip``" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:9 +#: ../../starting/pip-virtualenv.rst:9 msgid "" "By now it should be clear that using virtual envirtonments is a great way to" " keep your development environment clean and keeping different projects' " "requirements separate." msgstr "" -#: ..\..\starting\pip-virtualenv.rst:13 +#: ../../starting/pip-virtualenv.rst:13 msgid "" "When you start working on many different projects, it can be hard to " "remember to activate the related virtual environment when you come back to a" @@ -36,14 +36,14 @@ msgid "" "global package list." msgstr "" -#: ..\..\starting\pip-virtualenv.rst:19 +#: ../../starting/pip-virtualenv.rst:19 msgid "" "In order to make sure that you install packages to your active virtual " "environment when you use ``pip install``, consider adding the following two " "lines to your :file:`~/.bashrc` file:" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:27 +#: ../../starting/pip-virtualenv.rst:27 msgid "" "After saving this change and sourcing the :file:`~/.bashrc` file with " "``source ~/.bashrc``, pip will no longer let you install packages if you are" @@ -52,46 +52,46 @@ msgid "" "environment is needed to install packages." msgstr "" -#: ..\..\starting\pip-virtualenv.rst:37 +#: ../../starting/pip-virtualenv.rst:37 msgid "" "You can also do this configuration by editing your :file:`pip.conf` or " ":file:`pip.ini` file. :file:`pip.conf` is used by Unix and Mac OS X " "operating systems and it can be found at:" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:45 +#: ../../starting/pip-virtualenv.rst:45 msgid "" "Similarly, the :file:`pip.ini` file is used by Windows operating systems and" " it can be found at:" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:52 +#: ../../starting/pip-virtualenv.rst:52 msgid "" "If you don't have a :file:`pip.conf` or :file:`pip.ini` file at these " "locations, you can create a new file with the correct name for your " "operating system." msgstr "" -#: ..\..\starting\pip-virtualenv.rst:55 +#: ../../starting/pip-virtualenv.rst:55 msgid "" "If you already have a configuration file, just add the following line under " "the ``[global]`` settings to require an active virtual environment:" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:62 +#: ../../starting/pip-virtualenv.rst:62 msgid "" "If you did not have a configuration file, you will need to create a new one " "and add the following lines to this new file:" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:71 +#: ../../starting/pip-virtualenv.rst:71 msgid "" "You will of course need to install some packages globally (usually ones that" " you use across different projects consistenly) and this can be accomplished" " by adding the following to your :file:`~/.bashrc` file:" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:81 +#: ../../starting/pip-virtualenv.rst:81 msgid "" "After saving the changes and sourcing your :file:`~/.bashrc` file you can " "now install packages globally by running ``gpip install``. You can change " @@ -100,11 +100,11 @@ msgid "" "pip." msgstr "" -#: ..\..\starting\pip-virtualenv.rst:87 +#: ../../starting/pip-virtualenv.rst:87 msgid "Caching packages for future use" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:89 +#: ../../starting/pip-virtualenv.rst:89 msgid "" "Every developer has preferred libraries and when you are working on a lot of" " different projects, you are bound to have some overlap between the " @@ -112,7 +112,7 @@ msgid "" "library in a lot of different projects." msgstr "" -#: ..\..\starting\pip-virtualenv.rst:94 +#: ../../starting/pip-virtualenv.rst:94 msgid "" "It is surely unnecessary to re-download the same packages/libraries each " "time you start working on a new project (and in a new virtual environmen as " @@ -120,20 +120,20 @@ msgid "" " reuse already installed packages." msgstr "" -#: ..\..\starting\pip-virtualenv.rst:99 +#: ../../starting/pip-virtualenv.rst:99 msgid "" "On UNIX systems, you can add the following line to your :file:`.bashrc` or " ":file:`.bash_profile` file." msgstr "" -#: ..\..\starting\pip-virtualenv.rst:106 +#: ../../starting/pip-virtualenv.rst:106 msgid "" "You can set the path to anywhere you like (as long as you have write " "access). After adding this line, ``source`` your :file:`.bashrc` (or " ":file:`.bash_profile`) file and you will be all set." msgstr "" -#: ..\..\starting\pip-virtualenv.rst:110 +#: ../../starting/pip-virtualenv.rst:110 msgid "" "Another way of doing the same configuration is via the :file:`pip.conf` or " ":file:`pip.ini` files, depending on your system. If you are on Windows, you " @@ -141,13 +141,13 @@ msgid "" "settings:" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:118 +#: ../../starting/pip-virtualenv.rst:118 msgid "" "Similarly, on UNIX systems you should simply add the following line to your " ":file:`pip.conf` file under ``[global]`` settings:" msgstr "" -#: ..\..\starting\pip-virtualenv.rst:125 +#: ../../starting/pip-virtualenv.rst:125 msgid "" "Even though you can use any path you like to store your cache, it is " "recommended that you create a new folder *in* the folder where your " diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.po b/docs/locale/ko/LC_MESSAGES/starting/which-python.po index 4d28e084e..506c2d8f2 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/which-python.po +++ b/docs/locale/ko/LC_MESSAGES/starting/which-python.po @@ -11,143 +11,135 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ..\..\starting\which-python.rst:2 +#: ../../starting/which-python.rst:2 msgid "Picking an Interpreter" msgstr "인터프리터 고르기" -#: ..\..\starting\which-python.rst:7 +#: ../../starting/which-python.rst:7 msgid "The State of Python (2 vs 3)" msgstr "파이썬 현황(2 vs 3)" -#: ..\..\starting\which-python.rst:9 +#: ../../starting/which-python.rst:9 msgid "" "When choosing a Python interpreter, one looming question is always present: " "\"Should I choose Python 2 or Python 3\"? The answer is not as obvious as " "one might think." msgstr "" -"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오른다." -"\"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\"" -"답은 생각처럼 간단하지 않다." +"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오른다.\"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\"답은 생각처럼 간단하지 " +"않다." -#: ..\..\starting\which-python.rst:14 +#: ../../starting/which-python.rst:14 msgid "The basic gist of the state of things is as follows:" -msgstr "" -"이 문제의 기본적인 요지는 다음과 같다." +msgstr "이 문제의 기본적인 요지는 다음과 같다." -#: ..\..\starting\which-python.rst:16 +#: ../../starting/which-python.rst:16 msgid "Python 2.7 has been the standard for a *long* time." -msgstr "" -"1. 파이썬2.7이 *오랫동안* 표준이었다." +msgstr "1. 파이썬2.7이 *오랫동안* 표준이었다." -#: ..\..\starting\which-python.rst:17 +#: ../../starting/which-python.rst:17 msgid "" "Python 3 introduced major changes to the language, which many developers are" " unhappy with." -msgstr "" -"2. 파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." +msgstr "2. 파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." -#: ..\..\starting\which-python.rst:18 +#: ../../starting/which-python.rst:18 msgid "Python 2.7 will receive necessary security updates for a few years." -msgstr "" -"3. 파이썬2.7은 향후 몇년은 필수 보안 업데이트를 받을 것이다." +msgstr "3. 파이썬2.7은 향후 몇년은 필수 보안 업데이트를 받을 것이다." -#: ..\..\starting\which-python.rst:19 +#: ../../starting/which-python.rst:19 msgid "Python 3 is continually evolving, like Python 2 did in years past." -msgstr "" -"4. 파이썬3는 파이썬2가 지난 몇년간 그랬던 것처럼 계속 진화하고 있다." +msgstr "4. 파이썬3는 파이썬2가 지난 몇년간 그랬던 것처럼 계속 진화하고 있다." -#: ..\..\starting\which-python.rst:21 +#: ../../starting/which-python.rst:21 msgid "So, you can now see why this is not such an easy decision." msgstr "이제 왜 이 문제가 쉽지 않은지 알 수 있을 것이다." -#: ..\..\starting\which-python.rst:25 +#: ../../starting/which-python.rst:25 msgid "Recommendations" msgstr "추천" -#: ..\..\starting\which-python.rst:27 +#: ../../starting/which-python.rst:27 msgid "I'll be blunt:" msgstr "단도직입적으로 말하겠다." -#: ..\..\starting\which-python.rst:30 +#: ../../starting/which-python.rst:30 msgid "**Use Python 3 if...**" msgstr "**이런 경우에는 파이썬3를...**" -#: ..\..\starting\which-python.rst:32 +#: ../../starting/which-python.rst:32 msgid "You don't care." msgstr "아무렴 어때." -#: ..\..\starting\which-python.rst:33 +#: ../../starting/which-python.rst:33 msgid "You love Python 3." msgstr "나는 파이썬3를 사랑해." -#: ..\..\starting\which-python.rst:34 +#: ../../starting/which-python.rst:34 msgid "You are indifferent towards 2 vs 3." msgstr "2건 3건 상관없다." -#: ..\..\starting\which-python.rst:35 +#: ../../starting/which-python.rst:35 msgid "You don't know which one to use." msgstr "어떤 것을 써야할지 모르겠다." -#: ..\..\starting\which-python.rst:36 +#: ../../starting/which-python.rst:36 msgid "You embrace change." msgstr "변화를 받아들이겠다." -#: ..\..\starting\which-python.rst:38 +#: ../../starting/which-python.rst:38 msgid "**Use Python 2 if...**" msgstr "**이런 경우에는 파이썬2를...**" -#: ..\..\starting\which-python.rst:40 +#: ../../starting/which-python.rst:40 msgid "You love Python 2 and are saddened by the future being Python 3." msgstr "파이썬2를 사랑하고 파이썬3의 미래에 대해 비관적일 때." -#: ..\..\starting\which-python.rst:41 +#: ../../starting/which-python.rst:41 msgid "" "The stability requirements of your software would be improved by a language " "and runtime that never changes." msgstr "절대 변하지 않는 언어와 런타임으로 소프트웨어의 안정성을 향상시키겠다." -#: ..\..\starting\which-python.rst:42 +#: ../../starting/which-python.rst:42 msgid "Software that you depend on requires it." msgstr "사용하는 소프트웨어가 파이썬2를 사용한다면." -#: ..\..\starting\which-python.rst:46 +#: ../../starting/which-python.rst:46 msgid "So.... 3?" msgstr "그러면.... 3?" -#: ..\..\starting\which-python.rst:48 +#: ../../starting/which-python.rst:48 msgid "" "If you're choosing a Python interpreter to use, and aren't opinionated, then" " I recommend you use the newest Python 3.x, since every version brings new " "and improved standard library modules, security and bug fixes. Progress is " "progress." msgstr "" -"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면," -"최신 버젼의 파이썬3.x 사용을 추천한다. 모든 버젼이 새롭고 향상된 표준 라이브러리 모듈과" -"보안, 그리고 버그 수정을 제공하고 있기 때문이다. 개선이 진행 중이다." +"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면,최신 버젼의 파이썬3.x 사용을 추천한다. 모든 버젼이 새롭고 " +"향상된 표준 라이브러리 모듈과보안, 그리고 버그 수정을 제공하고 있기 때문이다. 개선이 진행 중이다." -#: ..\..\starting\which-python.rst:52 +#: ../../starting/which-python.rst:52 msgid "" "Given such, only use Python 2 if you have a strong reason to, such as a " "Python 2 exclusive library which has no adequate Python 3 ready alternative," " or you (like me) absolutely love and are inspired by Python 2." msgstr "" -"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고 오로지 파이썬2에서만 돌아가는" -"라이브러리라든가 아니면 파이썬 2를 너무나도 사랑한다면(나처럼) 파이썬2를 사용할 수" -"밖에 없을 것이다." +"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고 오로지 파이썬2에서만 돌아가는라이브러리라든가 아니면 파이썬 2를 너무나도 " +"사랑한다면(나처럼) 파이썬2를 사용할 수밖에 없을 것이다." -#: ..\..\starting\which-python.rst:56 +#: ../../starting/which-python.rst:56 msgid "" "Check out `Can I Use Python 3? `_ to see if any" " software you're depending on will block your adoption of Python 3." msgstr "" -" `Can I Use Python 3? `_ 에서 당신이 사용 중인" -"소프트웨어에서 파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 확인해보시라." +" `Can I Use Python 3? `_ 에서 당신이 사용 중인소프트웨어에서 " +"파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 확인해보시라." -#: ..\..\starting\which-python.rst:59 +#: ../../starting/which-python.rst:59 msgid "`Further Reading `_" msgstr "`더 읽을 거리 `_" -#: ..\..\starting\which-python.rst:61 +#: ../../starting/which-python.rst:61 msgid "" "It is possible to `write code that works on Python 2.6, 2.7, and 3.3 " "`_. This " @@ -155,152 +147,145 @@ msgid "" "writing; if you're a beginner there are far more important things to worry " "about." msgstr "" -"`파이썬2.6, 2.7, 3.3에서 모두 돌아가는 코드를 작성하는 것도 가능하다." -"`_ 이 가이드는" -"사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지" -"다루고 있다. 초보자라면 신경써야할 대단히 중요한 사항들도 있다." +"`파이썬2.6, 2.7, 3.3에서 모두 돌아가는 코드를 작성하는 것도 " +"가능하다.`_ 이 " +"가이드는사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지다루고 있다. 초보자라면 신경써야할 대단히 " +"중요한 사항들도 있다." -#: ..\..\starting\which-python.rst:68 +#: ../../starting/which-python.rst:68 msgid "Implementations" msgstr "구현" -#: ..\..\starting\which-python.rst:70 +#: ../../starting/which-python.rst:70 msgid "" "When people speak of *Python* they often mean not just the language but also" " the CPython implementation. *Python* is actually a specification for a " "language that can be implemented in many different ways." msgstr "" -"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을" -"의미할 때가 많다. *파이썬* 은 실제로 다양한 방법으로 구현될 수 있는 언어를 위한 명세이다." +"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을의미할 때가 많다. *파이썬* 은 실제로 다양한 방법으로 " +"구현될 수 있는 언어를 위한 명세이다." -#: ..\..\starting\which-python.rst:75 +#: ../../starting/which-python.rst:75 msgid "CPython" msgstr "CPython" -#: ..\..\starting\which-python.rst:77 +#: ../../starting/which-python.rst:77 msgid "" "`CPython `_ is the reference implementation of " "Python, written in C. It compiles Python code to intermediate bytecode which" " is then interpreted by a virtual machine. CPython provides the highest " "level of compatibility with Python packages and C extension modules." msgstr "" -"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스다." -"파이썬 코드를 가상 머신에 의해 해석되는 중간 바이트코드로 컴파일한다. CPython은 파이썬" -"패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공한다." +"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스다.파이썬 코드를 가상 머신에 의해 " +"해석되는 중간 바이트코드로 컴파일한다. CPython은 파이썬패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공한다." -#: ..\..\starting\which-python.rst:82 +#: ../../starting/which-python.rst:82 msgid "" "If you are writing open-source Python code and want to reach the widest " "possible audience, targeting CPython is best. To use packages which rely on " "C extensions to function, CPython is your only implementation option." msgstr "" -"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고다." -"C언어 확장 기능을 쓰는 패키지를 사용하려면 CPython이 유일한 구현 방법이다." +"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고다.C언어 확장 기능을 쓰는 패키지를 " +"사용하려면 CPython이 유일한 구현 방법이다." -#: ..\..\starting\which-python.rst:86 +#: ../../starting/which-python.rst:86 msgid "" "All versions of the Python language are implemented in C because CPython is " "the reference implementation." msgstr "파이선 언어의 모든 버젼은 C언어로 구현된다. CPython이 파이썬 구현의 리퍼런스라 그렇다." -#: ..\..\starting\which-python.rst:90 +#: ../../starting/which-python.rst:90 msgid "PyPy" msgstr "PyPy" -#: ..\..\starting\which-python.rst:92 +#: ../../starting/which-python.rst:92 msgid "" "`PyPy `_ is a Python interpreter implemented in a " "restricted statically-typed subset of the Python language called RPython. " "The interpreter features a just-in-time compiler and supports multiple back-" "ends (C, CLI, JVM)." msgstr "" -"`PyPy `_ 는 RPython이라 불리는 파이썬 언어의 정적 타입으로만 " -"구현된 파이썬 인터프리터다. 이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 " -"백엔드(C, CLI, JVM)를 지원한다는 것이다." +"`PyPy `_ 는 RPython이라 불리는 파이썬 언어의 정적 타입으로만 구현된 파이썬 인터프리터다. " +"이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 지원한다는 것이다." -#: ..\..\starting\which-python.rst:96 +#: ../../starting/which-python.rst:96 msgid "" "PyPy aims for maximum compatibility with the reference CPython " "implementation while improving performance." msgstr "" -"PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 " -"유지하는 동시에 그 성능을 향상시키는 것이다." +"PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 유지하는 동시에 그 성능을 향상시키는 것이다." -#: ..\..\starting\which-python.rst:99 +#: ../../starting/which-python.rst:99 msgid "" "If you are looking to increase performance of your Python code, it's worth " "giving PyPy a try. On a suite of benchmarks, it's currently `over 5 times " "faster than CPython `_." msgstr "" -"만약 당신의 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 " -"가치가 있다. 벤치마크에서 PyPy는 CPython보다 `5배나 빨랐다 `_." +"만약 당신의 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 가치가 있다. 벤치마크에서 PyPy는 CPython보다" +" `5배나 빨랐다 `_." -#: ..\..\starting\which-python.rst:103 +#: ../../starting/which-python.rst:103 msgid "" "PyPy supports Python 2.7. PyPy3 [#pypy_ver]_, released in beta, targets " "Python 3." msgstr "PyPy는 파이썬2.7을 지원한다. 베타로 나온 PyPy3 [#pypy_ver]_,는 파이썬3를 지원한다." -#: ..\..\starting\which-python.rst:106 +#: ../../starting/which-python.rst:106 msgid "Jython" msgstr "Jython" -#: ..\..\starting\which-python.rst:108 +#: ../../starting/which-python.rst:108 msgid "" "`Jython `_ is a Python implementation that compiles " "Python code to Java bytecode which is then executed by the JVM (Java Virtual" " Machine). Additionally, it is able to import and use any Java class like a " "Python module." msgstr "" -"`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 " -"JVM(자바 가상 머신)에서 실행시키는 파이썬 구현이다. 뿐만 아니라 Jython은 " -"자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있다." +"`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 JVM(자바 가상 머신)에서 " +"실행시키는 파이썬 구현이다. 뿐만 아니라 Jython은 자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있다." -#: ..\..\starting\which-python.rst:113 +#: ../../starting/which-python.rst:113 msgid "" "If you need to interface with an existing Java codebase or have other " "reasons to need to write Python code for the JVM, Jython is the best choice." msgstr "" -"자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면," -" Jython은 최고의 선택이 될 것이다." +"자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면, Jython은 최고의 선택이 될 것이다." -#: ..\..\starting\which-python.rst:116 +#: ../../starting/which-python.rst:116 msgid "Jython currently supports up to Python 2.5. [#jython_ver]_" msgstr "Jython은 현재 파이썬 2.5까지 지원한다. [#jython_ver]_" -#: ..\..\starting\which-python.rst:119 +#: ../../starting/which-python.rst:119 msgid "IronPython" msgstr "IronPython" -#: ..\..\starting\which-python.rst:121 +#: ../../starting/which-python.rst:121 msgid "" "`IronPython `_ is an implementation of Python for " "the .NET framework. It can use both Python and .NET framework libraries, and" " can also expose Python code to other languages in the .NET framework." msgstr "" -"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현이다." -" 파이썬과 닷넷 프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 " -"다른 언어로 바꿀 수 있다." +"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현이다. 파이썬과 닷넷 " +"프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있다." -#: ..\..\starting\which-python.rst:125 +#: ../../starting/which-python.rst:125 msgid "" "`Python Tools for Visual Studio `_ integrates " "IronPython directly into the Visual Studio development environment, making " "it an ideal choice for Windows developers." msgstr "" -"`Python Tools for Visual Studio `_ 는" -"IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있다. 이는 Windows " -"개발자들에게 좋은 선택이다." +"`Python Tools for Visual Studio `_ " +"는IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있다. 이는 Windows 개발자들에게 좋은 선택이다." -#: ..\..\starting\which-python.rst:129 +#: ../../starting/which-python.rst:129 msgid "IronPython supports Python 2.7. [#iron_ver]_" msgstr "IronPython은 파이썬 2.7을 지원한다. [#iron_ver]_" -#: ..\..\starting\which-python.rst:132 +#: ../../starting/which-python.rst:132 msgid "PythonNet" msgstr "PythonNet" -#: ..\..\starting\which-python.rst:134 +#: ../../starting/which-python.rst:134 msgid "" "`Python for .NET `_ is a package which provides" " near seamless integration of a natively installed Python installation with " @@ -308,38 +293,37 @@ msgid "" "that taken by IronPython (see above), to which it is more complementary than" " competing with." msgstr "" -"`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 " -"닷넷 공통 언어 런타임(CLR)을 말끔하게 통합시켜주는 패키지이다. 이는 위의 " -"IronPython이 취한 방식을 역으로 접근한 것으로, 보다 상호 보완적이다." +"`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 닷넷 공통 언어 " +"런타임(CLR)을 말끔하게 통합시켜주는 패키지이다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다 상호 " +"보완적이다." -#: ..\..\starting\which-python.rst:140 +#: ../../starting/which-python.rst:140 msgid "" "In conjunction with Mono, PythonNet enables native Python installations on " "non-Windows operating systems, such as OS X and Linux, to operate within the" " .NET framework. It can be run in addition to IronPython without conflict." msgstr "" -"Mono와 함께 사용하면 PythonNet은 OS X와 리눅스처럼 비Windows 운영체제에 설치된 " -"순정 버젼의 파이썬을 닷넷 프레임워크 안에서 수행될 수 있도록 해준다. IronPython과 " -"같이 사용해도 충돌하지 않는다." +"Mono와 함께 사용하면 PythonNet은 OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 프레임워크" +" 안에서 수행될 수 있도록 해준다. IronPython과 같이 사용해도 충돌하지 않는다." -#: ..\..\starting\which-python.rst:145 +#: ../../starting/which-python.rst:145 msgid "PythonNet supports from Python 2.3 up to Python 2.7. [#pythonnet_ver]_" msgstr "PythonNet은 파이썬 2.3부터 2.7버젼까지 지원한다. [#pythonnet_ver]_" -#: ..\..\starting\which-python.rst:147 +#: ../../starting/which-python.rst:147 msgid "http://pypy.org/compat.html" msgstr "http://pypy.org/compat.html" -#: ..\..\starting\which-python.rst:149 +#: ../../starting/which-python.rst:149 msgid "" "http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" msgstr "" "http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" -#: ..\..\starting\which-python.rst:151 +#: ../../starting/which-python.rst:151 msgid "http://ironpython.codeplex.com/releases/view/81726" msgstr "http://ironpython.codeplex.com/releases/view/81726" -#: ..\..\starting\which-python.rst:153 +#: ../../starting/which-python.rst:153 msgid "http://pythonnet.github.io/readme.html" msgstr "http://pythonnet.github.io/readme.html" diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index c61b0bb59ae2f80851bab3ee9f272b296346f92f..0b481ef8383f0624a481845c7261a1b5328580e8 100644 GIT binary patch literal 8134 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 delta 129 zcmX?RKbOtxo)F7a1|VPtVi_Pd0dau92SS1A6h;OHUm#xsh&KV*MnHTTh*^OAe@qMv zl0cf7dE>7P#>qO|l9RXa&XRBo_3=^gbM$ppuyOTu^z?CXba4rC4Gx}M&ezCNl3H9c I`HqY<0J@MEga7~l From 36c087f68bcad6ba1d84ef83f823cbf4c88e6493 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 4 Dec 2014 10:02:42 +0900 Subject: [PATCH 018/117] modified: locale/ko/LC_MESSAGES/starting/which-python.po --- .../ko/LC_MESSAGES/starting/which-python.po | 108 +++++++++--------- 1 file changed, 54 insertions(+), 54 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.po b/docs/locale/ko/LC_MESSAGES/starting/which-python.po index 506c2d8f2..0e6dc04d9 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/which-python.po +++ b/docs/locale/ko/LC_MESSAGES/starting/which-python.po @@ -11,15 +11,15 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../starting/which-python.rst:2 +#: ..\..\starting\which-python.rst:2 msgid "Picking an Interpreter" msgstr "인터프리터 고르기" -#: ../../starting/which-python.rst:7 +#: ..\..\starting\which-python.rst:7 msgid "The State of Python (2 vs 3)" msgstr "파이썬 현황(2 vs 3)" -#: ../../starting/which-python.rst:9 +#: ..\..\starting\which-python.rst:9 msgid "" "When choosing a Python interpreter, one looming question is always present: " "\"Should I choose Python 2 or Python 3\"? The answer is not as obvious as " @@ -28,87 +28,87 @@ msgstr "" "파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오른다.\"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\"답은 생각처럼 간단하지 " "않다." -#: ../../starting/which-python.rst:14 +#: ..\..\starting\which-python.rst:14 msgid "The basic gist of the state of things is as follows:" msgstr "이 문제의 기본적인 요지는 다음과 같다." -#: ../../starting/which-python.rst:16 +#: ..\..\starting\which-python.rst:16 msgid "Python 2.7 has been the standard for a *long* time." msgstr "1. 파이썬2.7이 *오랫동안* 표준이었다." -#: ../../starting/which-python.rst:17 +#: ..\..\starting\which-python.rst:17 msgid "" "Python 3 introduced major changes to the language, which many developers are" " unhappy with." msgstr "2. 파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." -#: ../../starting/which-python.rst:18 +#: ..\..\starting\which-python.rst:18 msgid "Python 2.7 will receive necessary security updates for a few years." msgstr "3. 파이썬2.7은 향후 몇년은 필수 보안 업데이트를 받을 것이다." -#: ../../starting/which-python.rst:19 +#: ..\..\starting\which-python.rst:19 msgid "Python 3 is continually evolving, like Python 2 did in years past." msgstr "4. 파이썬3는 파이썬2가 지난 몇년간 그랬던 것처럼 계속 진화하고 있다." -#: ../../starting/which-python.rst:21 +#: ..\..\starting\which-python.rst:21 msgid "So, you can now see why this is not such an easy decision." msgstr "이제 왜 이 문제가 쉽지 않은지 알 수 있을 것이다." -#: ../../starting/which-python.rst:25 +#: ..\..\starting\which-python.rst:25 msgid "Recommendations" msgstr "추천" -#: ../../starting/which-python.rst:27 +#: ..\..\starting\which-python.rst:27 msgid "I'll be blunt:" msgstr "단도직입적으로 말하겠다." -#: ../../starting/which-python.rst:30 +#: ..\..\starting\which-python.rst:30 msgid "**Use Python 3 if...**" msgstr "**이런 경우에는 파이썬3를...**" -#: ../../starting/which-python.rst:32 +#: ..\..\starting\which-python.rst:32 msgid "You don't care." msgstr "아무렴 어때." -#: ../../starting/which-python.rst:33 +#: ..\..\starting\which-python.rst:33 msgid "You love Python 3." msgstr "나는 파이썬3를 사랑해." -#: ../../starting/which-python.rst:34 +#: ..\..\starting\which-python.rst:34 msgid "You are indifferent towards 2 vs 3." msgstr "2건 3건 상관없다." -#: ../../starting/which-python.rst:35 +#: ..\..\starting\which-python.rst:35 msgid "You don't know which one to use." msgstr "어떤 것을 써야할지 모르겠다." -#: ../../starting/which-python.rst:36 +#: ..\..\starting\which-python.rst:36 msgid "You embrace change." msgstr "변화를 받아들이겠다." -#: ../../starting/which-python.rst:38 +#: ..\..\starting\which-python.rst:38 msgid "**Use Python 2 if...**" msgstr "**이런 경우에는 파이썬2를...**" -#: ../../starting/which-python.rst:40 +#: ..\..\starting\which-python.rst:40 msgid "You love Python 2 and are saddened by the future being Python 3." msgstr "파이썬2를 사랑하고 파이썬3의 미래에 대해 비관적일 때." -#: ../../starting/which-python.rst:41 +#: ..\..\starting\which-python.rst:41 msgid "" "The stability requirements of your software would be improved by a language " "and runtime that never changes." msgstr "절대 변하지 않는 언어와 런타임으로 소프트웨어의 안정성을 향상시키겠다." -#: ../../starting/which-python.rst:42 +#: ..\..\starting\which-python.rst:42 msgid "Software that you depend on requires it." msgstr "사용하는 소프트웨어가 파이썬2를 사용한다면." -#: ../../starting/which-python.rst:46 +#: ..\..\starting\which-python.rst:46 msgid "So.... 3?" msgstr "그러면.... 3?" -#: ../../starting/which-python.rst:48 +#: ..\..\starting\which-python.rst:48 msgid "" "If you're choosing a Python interpreter to use, and aren't opinionated, then" " I recommend you use the newest Python 3.x, since every version brings new " @@ -118,7 +118,7 @@ msgstr "" "파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면,최신 버젼의 파이썬3.x 사용을 추천한다. 모든 버젼이 새롭고 " "향상된 표준 라이브러리 모듈과보안, 그리고 버그 수정을 제공하고 있기 때문이다. 개선이 진행 중이다." -#: ../../starting/which-python.rst:52 +#: ..\..\starting\which-python.rst:52 msgid "" "Given such, only use Python 2 if you have a strong reason to, such as a " "Python 2 exclusive library which has no adequate Python 3 ready alternative," @@ -127,7 +127,7 @@ msgstr "" "하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고 오로지 파이썬2에서만 돌아가는라이브러리라든가 아니면 파이썬 2를 너무나도 " "사랑한다면(나처럼) 파이썬2를 사용할 수밖에 없을 것이다." -#: ../../starting/which-python.rst:56 +#: ..\..\starting\which-python.rst:56 msgid "" "Check out `Can I Use Python 3? `_ to see if any" " software you're depending on will block your adoption of Python 3." @@ -135,11 +135,11 @@ msgstr "" " `Can I Use Python 3? `_ 에서 당신이 사용 중인소프트웨어에서 " "파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 확인해보시라." -#: ../../starting/which-python.rst:59 +#: ..\..\starting\which-python.rst:59 msgid "`Further Reading `_" msgstr "`더 읽을 거리 `_" -#: ../../starting/which-python.rst:61 +#: ..\..\starting\which-python.rst:61 msgid "" "It is possible to `write code that works on Python 2.6, 2.7, and 3.3 " "`_. This " @@ -152,11 +152,11 @@ msgstr "" "가이드는사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지다루고 있다. 초보자라면 신경써야할 대단히 " "중요한 사항들도 있다." -#: ../../starting/which-python.rst:68 +#: ..\..\starting\which-python.rst:68 msgid "Implementations" msgstr "구현" -#: ../../starting/which-python.rst:70 +#: ..\..\starting\which-python.rst:70 msgid "" "When people speak of *Python* they often mean not just the language but also" " the CPython implementation. *Python* is actually a specification for a " @@ -165,11 +165,11 @@ msgstr "" "사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을의미할 때가 많다. *파이썬* 은 실제로 다양한 방법으로 " "구현될 수 있는 언어를 위한 명세이다." -#: ../../starting/which-python.rst:75 +#: ..\..\starting\which-python.rst:75 msgid "CPython" msgstr "CPython" -#: ../../starting/which-python.rst:77 +#: ..\..\starting\which-python.rst:77 msgid "" "`CPython `_ is the reference implementation of " "Python, written in C. It compiles Python code to intermediate bytecode which" @@ -179,7 +179,7 @@ msgstr "" "`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스다.파이썬 코드를 가상 머신에 의해 " "해석되는 중간 바이트코드로 컴파일한다. CPython은 파이썬패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공한다." -#: ../../starting/which-python.rst:82 +#: ..\..\starting\which-python.rst:82 msgid "" "If you are writing open-source Python code and want to reach the widest " "possible audience, targeting CPython is best. To use packages which rely on " @@ -188,17 +188,17 @@ msgstr "" "오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고다.C언어 확장 기능을 쓰는 패키지를 " "사용하려면 CPython이 유일한 구현 방법이다." -#: ../../starting/which-python.rst:86 +#: ..\..\starting\which-python.rst:86 msgid "" "All versions of the Python language are implemented in C because CPython is " "the reference implementation." msgstr "파이선 언어의 모든 버젼은 C언어로 구현된다. CPython이 파이썬 구현의 리퍼런스라 그렇다." -#: ../../starting/which-python.rst:90 +#: ..\..\starting\which-python.rst:90 msgid "PyPy" msgstr "PyPy" -#: ../../starting/which-python.rst:92 +#: ..\..\starting\which-python.rst:92 msgid "" "`PyPy `_ is a Python interpreter implemented in a " "restricted statically-typed subset of the Python language called RPython. " @@ -208,14 +208,14 @@ msgstr "" "`PyPy `_ 는 RPython이라 불리는 파이썬 언어의 정적 타입으로만 구현된 파이썬 인터프리터다. " "이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 지원한다는 것이다." -#: ../../starting/which-python.rst:96 +#: ..\..\starting\which-python.rst:96 msgid "" "PyPy aims for maximum compatibility with the reference CPython " "implementation while improving performance." msgstr "" "PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 유지하는 동시에 그 성능을 향상시키는 것이다." -#: ../../starting/which-python.rst:99 +#: ..\..\starting\which-python.rst:99 msgid "" "If you are looking to increase performance of your Python code, it's worth " "giving PyPy a try. On a suite of benchmarks, it's currently `over 5 times " @@ -224,17 +224,17 @@ msgstr "" "만약 당신의 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 가치가 있다. 벤치마크에서 PyPy는 CPython보다" " `5배나 빨랐다 `_." -#: ../../starting/which-python.rst:103 +#: ..\..\starting\which-python.rst:103 msgid "" "PyPy supports Python 2.7. PyPy3 [#pypy_ver]_, released in beta, targets " "Python 3." msgstr "PyPy는 파이썬2.7을 지원한다. 베타로 나온 PyPy3 [#pypy_ver]_,는 파이썬3를 지원한다." -#: ../../starting/which-python.rst:106 +#: ..\..\starting\which-python.rst:106 msgid "Jython" msgstr "Jython" -#: ../../starting/which-python.rst:108 +#: ..\..\starting\which-python.rst:108 msgid "" "`Jython `_ is a Python implementation that compiles " "Python code to Java bytecode which is then executed by the JVM (Java Virtual" @@ -244,22 +244,22 @@ msgstr "" "`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 JVM(자바 가상 머신)에서 " "실행시키는 파이썬 구현이다. 뿐만 아니라 Jython은 자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있다." -#: ../../starting/which-python.rst:113 +#: ..\..\starting\which-python.rst:113 msgid "" "If you need to interface with an existing Java codebase or have other " "reasons to need to write Python code for the JVM, Jython is the best choice." msgstr "" "자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면, Jython은 최고의 선택이 될 것이다." -#: ../../starting/which-python.rst:116 +#: ..\..\starting\which-python.rst:116 msgid "Jython currently supports up to Python 2.5. [#jython_ver]_" msgstr "Jython은 현재 파이썬 2.5까지 지원한다. [#jython_ver]_" -#: ../../starting/which-python.rst:119 +#: ..\..\starting\which-python.rst:119 msgid "IronPython" msgstr "IronPython" -#: ../../starting/which-python.rst:121 +#: ..\..\starting\which-python.rst:121 msgid "" "`IronPython `_ is an implementation of Python for " "the .NET framework. It can use both Python and .NET framework libraries, and" @@ -268,7 +268,7 @@ msgstr "" "`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현이다. 파이썬과 닷넷 " "프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있다." -#: ../../starting/which-python.rst:125 +#: ..\..\starting\which-python.rst:125 msgid "" "`Python Tools for Visual Studio `_ integrates " "IronPython directly into the Visual Studio development environment, making " @@ -277,15 +277,15 @@ msgstr "" "`Python Tools for Visual Studio `_ " "는IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있다. 이는 Windows 개발자들에게 좋은 선택이다." -#: ../../starting/which-python.rst:129 +#: ..\..\starting\which-python.rst:129 msgid "IronPython supports Python 2.7. [#iron_ver]_" msgstr "IronPython은 파이썬 2.7을 지원한다. [#iron_ver]_" -#: ../../starting/which-python.rst:132 +#: ..\..\starting\which-python.rst:132 msgid "PythonNet" msgstr "PythonNet" -#: ../../starting/which-python.rst:134 +#: ..\..\starting\which-python.rst:134 msgid "" "`Python for .NET `_ is a package which provides" " near seamless integration of a natively installed Python installation with " @@ -297,7 +297,7 @@ msgstr "" "런타임(CLR)을 말끔하게 통합시켜주는 패키지이다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다 상호 " "보완적이다." -#: ../../starting/which-python.rst:140 +#: ..\..\starting\which-python.rst:140 msgid "" "In conjunction with Mono, PythonNet enables native Python installations on " "non-Windows operating systems, such as OS X and Linux, to operate within the" @@ -306,24 +306,24 @@ msgstr "" "Mono와 함께 사용하면 PythonNet은 OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 프레임워크" " 안에서 수행될 수 있도록 해준다. IronPython과 같이 사용해도 충돌하지 않는다." -#: ../../starting/which-python.rst:145 +#: ..\..\starting\which-python.rst:145 msgid "PythonNet supports from Python 2.3 up to Python 2.7. [#pythonnet_ver]_" msgstr "PythonNet은 파이썬 2.3부터 2.7버젼까지 지원한다. [#pythonnet_ver]_" -#: ../../starting/which-python.rst:147 +#: ..\..\starting\which-python.rst:147 msgid "http://pypy.org/compat.html" msgstr "http://pypy.org/compat.html" -#: ../../starting/which-python.rst:149 +#: ..\..\starting\which-python.rst:149 msgid "" "http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" msgstr "" "http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" -#: ../../starting/which-python.rst:151 +#: ..\..\starting\which-python.rst:151 msgid "http://ironpython.codeplex.com/releases/view/81726" msgstr "http://ironpython.codeplex.com/releases/view/81726" -#: ../../starting/which-python.rst:153 +#: ..\..\starting\which-python.rst:153 msgid "http://pythonnet.github.io/readme.html" msgstr "http://pythonnet.github.io/readme.html" From 17cea23da5cc29f5a85ff0d8d938faad36bc8951 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 4 Dec 2014 11:03:17 +0900 Subject: [PATCH 019/117] structure.po merge test --- .../ko/LC_MESSAGES/writing/structure.po | 237 +++++++++--------- 1 file changed, 113 insertions(+), 124 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 69f074c27..9ed6025af 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -11,11 +11,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../../writing/structure.rst:2 +#: ..\..\writing\structure.rst:2 msgid "Structuring Your Project" msgstr "프로젝트 구성하기" -#: ../../writing/structure.rst:4 +#: ..\..\writing\structure.rst:4 msgid "" "By \"structure\" we mean the decisions you make concerning how your project " "best meets its objective. We need to consider how to best leverage Python's " @@ -23,39 +23,36 @@ msgid "" "means making clean code whose logic and dependencies are clear as well as " "how the files and folders are organized in the filesystem." msgstr "" -"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 " -"의사결정을 의미한다. 우리는 깔끔하고 효율적인 코드라는 파이썬의 특성을 극대화 할 수 " -"있는 방법을 고민할 필요가 있다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한 코드를 " -"만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제다." +"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미한다. 우리는 깔끔하고 효율적인 " +"코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한 코드를 만드는" +" 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제다." -#: ../../writing/structure.rst:11 +#: ..\..\writing\structure.rst:11 msgid "" "Which functions should go into which modules? How does data flow through the" " project? What features and functions can be grouped together and isolated? " "By answering questions like these you can begin to plan, in a broad sense, " "what your finished product will look like." msgstr "" -"어느 모듈에 어느 기능이 들어가야 할까? 프로젝트에서 데이터는 어덯게 흘러가야 할까? " -"어떤 특징과 기능이 통합되거나 분리되어야 할까? 이러한 질문에 답함으로써 프로젝트의 " -"계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있다." +"어느 모듈에 어느 기능이 들어가야 할까? 프로젝트에서 데이터는 어덯게 흘러가야 할까? 어떤 특징과 기능이 통합되거나 분리되어야 할까? " +"이러한 질문에 답함으로써 프로젝트의 계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있다." -#: ../../writing/structure.rst:16 +#: ..\..\writing\structure.rst:16 msgid "" "In this section we take a closer look at Python's module and import systems " "as they are the central elements to enforcing structure in your project. We " "then discuss various perspectives on how to build code which can be extended" " and tested reliably." msgstr "" -"이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것이다. 이 2가지가 " -"프로젝트를 위한 강력한 구조를 만들기 위한 핵심적인 요소이기 때문이다. 그런 다음, " -"확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 " -"관점에서 검토할 것이다." +"이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것이다. 이 2가지가 프로젝트를 위한 강력한 구조를 만들기 위한 " +"핵심적인 요소이기 때문이다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 관점에서 " +"검토할 것이다." -#: ../../writing/structure.rst:23 +#: ..\..\writing\structure.rst:23 msgid "Structure is Key" msgstr "구성이 중요하다" -#: ../../writing/structure.rst:25 +#: ..\..\writing\structure.rst:25 msgid "" "Thanks to the way imports and modules are handled in Python, it is " "relatively easy to structure a Python project. Easy, here, means that you do" @@ -63,19 +60,17 @@ msgid "" "grasp. Therefore, you are left with the pure architectural task of crafting " "the different parts of your project and their interactions." msgstr "" -"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽다. " -"여기서 쉽다는 말은 제약이 많지 않고, 모듈을 불러오는 방식이 이해하기 쉽다는 뜻이다. " -"따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 하면 된다." +"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽다. 여기서 쉽다는 말은 제약이 많지 않고, 모듈을 " +"불러오는 방식이 이해하기 쉽다는 뜻이다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 하면 된다." -#: ../../writing/structure.rst:32 +#: ..\..\writing\structure.rst:32 msgid "" "Easy structuring of a project means it is also easy to do it poorly. Some " "signs of a poorly structured project include:" msgstr "" -"프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻이다. 프로젝트가 " -"엉망으로 구성되었다는 신호를 몇 가지 찾아보았다." +"프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻이다. 프로젝트가 엉망으로 구성되었다는 신호를 몇 가지 찾아보았다." -#: ../../writing/structure.rst:36 +#: ..\..\writing\structure.rst:36 msgid "" "Multiple and messy circular dependencies: if your classes Table and Chair in" " :file:`furn.py` need to import Carpenter from :file:`workers.py` to answer " @@ -85,26 +80,23 @@ msgid "" "you will have to resort to fragile hacks such as using import statements " "inside methods or functions." msgstr "" -"복잡한 순환 참조: ``책상.누가 만들었나()`` 같은 질문에 답하려면 :file:`가구.py` 의 " -"탁자와 의자가 :file:`작업자.py` 에서 목수를 불러와야 하는데, 반대로 ``목수.뭐하니()`` " -"같은 질문에 답하려면 목수가 책상과 의자를 불러와야만 하는 경우가 있다. 이것이 " -"순환 참조다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 " -"난도질스러운 방법에 의존하는 수 밖에 없다." +"복잡한 순환 참조: ``책상.누가 만들었나()`` 같은 질문에 답하려면 :file:`가구.py` 의 탁자와 의자가 " +":file:`작업자.py` 에서 목수를 불러와야 하는데, 반대로 ``목수.뭐하니()`` 같은 질문에 답하려면 목수가 책상과 의자를 " +"불러와야만 하는 경우가 있다. 이것이 순환 참조다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 난도질스러운 " +"방법에 의존하는 수 밖에 없다." -#: ../../writing/structure.rst:45 +#: ..\..\writing\structure.rst:45 msgid "" "Hidden coupling: each and every change in Table's implementation breaks 20 " "tests in unrelated test cases because it breaks Carpenter's code, which " "requires very careful surgery to adapt the change. This means you have too " "many assumptions about Table in Carpenter's code or the reverse." msgstr "" -"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 " -"안돌아가게 한다. 책상의 코드 변경이 목수의 코드를 무너뜨리기 때문이다. 이럴 " -"때 코드 변경을 하려면 아주 신중한 수술을 해야한다. 이 말인즉, 목수의 코드 안에 " -"있는 책상의 코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 " -"한다는 뜻이다." +"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 한다. 책상의 코드 변경이 목수의 코드를" +" 무너뜨리기 때문이다. 이럴 때 코드 변경을 하려면 아주 신중한 수술을 해야한다. 이 말인즉, 목수의 코드 안에 있는 책상의 코드를 " +"변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻이다." -#: ../../writing/structure.rst:51 +#: ..\..\writing\structure.rst:51 msgid "" "Heavy usage of global state or context: instead of explicitly passing " "``(height, width, type, wood)`` to each other, Table and Carpenter rely on " @@ -114,13 +106,11 @@ msgid "" "discover that remote template code is also modifying this context, messing " "with table dimensions." msgstr "" -"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 " -"정의하지 않는 경우다. 목수가 언제든 아무나 바꿀 수 있는 전역 변수를 사용하기 " -"시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생긴다. 어쩌다가 이런 " -"일이 벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 견본 코드가 " -"문맥을 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 것이다." +"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우다. 목수가 언제든 아무나 " +"바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생긴다. 어쩌다가 이런 일이 벌어졌는지를 " +"조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 견본 코드가 문맥을 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 것이다." -#: ../../writing/structure.rst:60 +#: ..\..\writing\structure.rst:60 msgid "" "Spaghetti code: multiple pages of nested if clauses and for loops with a lot" " of copy-pasted procedural code and no proper segmentation are known as " @@ -128,13 +118,11 @@ msgid "" "controversial features) make it very hard to maintain this kind of code. So " "the good news is that you might not see too much of it." msgstr "" -"스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 " -"for반복문이 어지럽게 반복되며, 적절하게 나눠지지도 않은 코드를 스파게티 " -"코드라고 한다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 " -"있기 때문에 이런 복잡하고 어지러운 코드는 유지 보수하기가 어렵다. " -"다행히 이런 난장판을 많이 볼 일은 없을 것이다." +"스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 나눠지지도 " +"않은 코드를 스파게티 코드라고 한다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 복잡하고 어지러운 코드는" +" 유지 보수하기가 어렵다. 다행히 이런 난장판을 많이 볼 일은 없을 것이다." -#: ../../writing/structure.rst:67 +#: ..\..\writing\structure.rst:67 msgid "" "Ravioli code is more likely in Python: it consists of hundreds of similar " "little pieces of logic, often classes or objects, without proper structure. " @@ -142,24 +130,24 @@ msgid "" "Table, or even TableNew for your task at hand, you might be swimming in " "ravioli code." msgstr "" -"라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 " -"볼 수 있다. 구조화도 되어있지 않으면서 수 백개의 비슷한 로직이나 작은 클래스, " -"또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 한다. 식탁을 " -"써야하는지, 탁자를 써야하는지, 그도 아니면 새 책상이 필요한건지 도무지 " -"기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것이다." +"라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있다. 구조화도 되어있지 않으면서 수 백개의 비슷한 " +"로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 한다. 식탁을 써야하는지, 탁자를 써야하는지, 그도 아니면" +" 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것이다." -#: ../../writing/structure.rst:75 +#: ..\..\writing\structure.rst:75 msgid "Modules" msgstr "모듈" -#: ../../writing/structure.rst:77 +#: ..\..\writing\structure.rst:77 msgid "" "Python modules are one of the main abstraction layers available and probably" " the most natural one. Abstraction layers allow separating code into parts " "holding related data and functionality." msgstr "" +"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운" +"모습이다. 추상 레이어는 코드를 기능 파트와 데이터 저장 파트로 나눌 수 있도록 해준다." -#: ../../writing/structure.rst:81 +#: ..\..\writing\structure.rst:81 msgid "" "For example, a layer of a project can handle interfacing with user actions, " "while another would handle low-level manipulation of data. The most natural " @@ -169,14 +157,15 @@ msgid "" " ``import`` and ``from ... import`` statements." msgstr "" -#: ../../writing/structure.rst:88 + +#: ..\..\writing\structure.rst:88 msgid "" "As soon as you use `import` statements you use modules. These can be either " "built-in modules such as `os` and `sys`, third-party modules you have " "installed in your environment, or your project's internal modules." msgstr "" -#: ../../writing/structure.rst:92 +#: ..\..\writing\structure.rst:92 msgid "" "To keep in line with the style guide, keep module names short, lowercase, " "and be sure to avoid using special symbols like the dot (.) or question mark" @@ -184,7 +173,7 @@ msgid "" " this way will interfere with the way Python looks for modules." msgstr "" -#: ../../writing/structure.rst:97 +#: ..\..\writing\structure.rst:97 msgid "" "In the case of `my.spam.py` Python expects to find a :file:`spam.py` file in" " a folder named :file:`my` which is not the case. There is an `example " @@ -192,20 +181,20 @@ msgid "" "notation should be used in the Python docs." msgstr "" -#: ../../writing/structure.rst:102 +#: ..\..\writing\structure.rst:102 msgid "" "If you'd like you could name your module :file:`my_spam.py`, but even our " "friend the underscore should not be seen often in module names." msgstr "" -#: ../../writing/structure.rst:105 +#: ..\..\writing\structure.rst:105 msgid "" "Aside from some naming restrictions, nothing special is required for a " "Python file to be a module, but you need to understand the import mechanism " "in order to use this concept properly and avoid some issues." msgstr "" -#: ../../writing/structure.rst:109 +#: ..\..\writing\structure.rst:109 msgid "" "Concretely, the ``import modu`` statement will look for the proper file, " "which is :file:`modu.py` in the same directory as the caller if it exists. " @@ -214,7 +203,7 @@ msgid "" "found." msgstr "" -#: ../../writing/structure.rst:114 +#: ..\..\writing\structure.rst:114 msgid "" "Once :file:`modu.py` is found, the Python interpreter will execute the " "module in an isolated scope. Any top-level statement in :file:`modu.py` will" @@ -222,14 +211,14 @@ msgid "" " are stored in the module's dictionary." msgstr "" -#: ../../writing/structure.rst:119 +#: ..\..\writing\structure.rst:119 msgid "" "Then, the module's variables, functions, and classes will be available to " "the caller through the module's namespace, a central concept in programming " "that is particularly helpful and powerful in Python." msgstr "" -#: ../../writing/structure.rst:123 +#: ..\..\writing\structure.rst:123 msgid "" "In many languages, an ``include file`` directive is used by the preprocessor" " to take all code found in the file and 'copy' it into the caller's code. It" @@ -239,7 +228,7 @@ msgid "" "function with the same name." msgstr "" -#: ../../writing/structure.rst:129 +#: ..\..\writing\structure.rst:129 msgid "" "It is possible to simulate the more standard behavior by using a special " "syntax of the import statement: ``from modu import *``. This is generally " @@ -247,7 +236,7 @@ msgid "" "and makes dependencies less compartmentalized**." msgstr "" -#: ../../writing/structure.rst:134 +#: ..\..\writing\structure.rst:134 msgid "" "Using ``from modu import func`` is a way to pinpoint the function you want " "to import and put it in the global namespace. While much less harmful than " @@ -256,19 +245,19 @@ msgid "" " save a little typing." msgstr "" -#: ../../writing/structure.rst:139 +#: ..\..\writing\structure.rst:139 msgid "**Very bad**" msgstr "" -#: ../../writing/structure.rst:148 +#: ..\..\writing\structure.rst:148 msgid "**Better**" msgstr "" -#: ../../writing/structure.rst:156 ../../writing/structure.rst:443 +#: ..\..\writing\structure.rst:156 ..\..\writing\structure.rst:443 msgid "**Best**" msgstr "" -#: ../../writing/structure.rst:164 +#: ..\..\writing\structure.rst:164 msgid "" "As mentioned in the :ref:`code_style` section, readability is one of the " "main features of Python. Readability means to avoid useless boilerplate text" @@ -279,17 +268,17 @@ msgid "" "understandability in all but the simplest single file projects." msgstr "" -#: ../../writing/structure.rst:174 +#: ..\..\writing\structure.rst:174 msgid "Packages" msgstr "" -#: ../../writing/structure.rst:176 +#: ..\..\writing\structure.rst:176 msgid "" "Python provides a very straightforward packaging system, which is simply an " "extension of the module mechanism to a directory." msgstr "" -#: ../../writing/structure.rst:179 +#: ..\..\writing\structure.rst:179 msgid "" "Any directory with an :file:`__init__.py` file is considered a Python " "package. The different modules in the package are imported in a similar " @@ -298,7 +287,7 @@ msgid "" "definitions." msgstr "" -#: ../../writing/structure.rst:184 +#: ..\..\writing\structure.rst:184 msgid "" "A file :file:`modu.py` in the directory :file:`pack/` is imported with the " "statement ``import pack.modu``. This statement will look for an " @@ -309,7 +298,7 @@ msgid "" "pack.modu namespace." msgstr "" -#: ../../writing/structure.rst:190 +#: ..\..\writing\structure.rst:190 msgid "" "A commonly seen issue is to add too much code to :file:`__init__.py` files. " "When the project complexity grows, there may be sub-packages and sub-sub-" @@ -318,31 +307,31 @@ msgid "" "files met while traversing the tree." msgstr "" -#: ../../writing/structure.rst:196 +#: ..\..\writing\structure.rst:196 msgid "" "Leaving an :file:`__init__.py` file empty is considered normal and even a " "good practice, if the package's modules and sub-packages do not need to " "share any code." msgstr "" -#: ../../writing/structure.rst:199 +#: ..\..\writing\structure.rst:199 msgid "" "Lastly, a convenient syntax is available for importing deeply nested " "packages: ``import very.deep.module as mod``. This allows you to use `mod` " "in place of the verbose repetition of ``very.deep.module``." msgstr "" -#: ../../writing/structure.rst:204 +#: ..\..\writing\structure.rst:204 msgid "Object-oriented programming" msgstr "" -#: ../../writing/structure.rst:206 +#: ..\..\writing\structure.rst:206 msgid "" "Python is sometimes described as an object-oriented programming language. " "This can be somewhat misleading and needs to be clarified." msgstr "" -#: ../../writing/structure.rst:209 +#: ..\..\writing\structure.rst:209 msgid "" "In Python, everything is an object, and can be handled as such. This is what" " is meant when we say, for example, that functions are first-class objects. " @@ -352,7 +341,7 @@ msgid "" "oriented language." msgstr "" -#: ../../writing/structure.rst:216 +#: ..\..\writing\structure.rst:216 msgid "" "However, unlike Java, Python does not impose object-oriented programming as " "the main programming paradigm. It is perfectly viable for a Python project " @@ -361,7 +350,7 @@ msgid "" "oriented programming." msgstr "" -#: ../../writing/structure.rst:222 +#: ..\..\writing\structure.rst:222 msgid "" "Moreover, as seen in the modules_ section, the way Python handles modules " "and namespaces gives the developer a natural way to ensure the encapsulation" @@ -370,7 +359,7 @@ msgid "" " not use object-orientation, when it is not required by the business model." msgstr "" -#: ../../writing/structure.rst:229 +#: ..\..\writing\structure.rst:229 msgid "" "There are some reasons to avoid unnecessary object-orientation. Defining " "custom classes is useful when we want to glue together some state and some " @@ -378,7 +367,7 @@ msgid "" "functional programming, comes from the \"state\" part of the equation." msgstr "" -#: ../../writing/structure.rst:234 +#: ..\..\writing\structure.rst:234 msgid "" "In some architectures, typically web applications, multiple instances of " "Python processes are spawned to respond to external requests that can happen" @@ -394,13 +383,13 @@ msgid "" "process loaded the item, and then we have to mark as read a deleted object." msgstr "" -#: ../../writing/structure.rst:247 +#: ..\..\writing\structure.rst:247 msgid "" "This and other issues led to the idea that using stateless functions is a " "better programming paradigm." msgstr "" -#: ../../writing/structure.rst:250 +#: ..\..\writing\structure.rst:250 msgid "" "Another way to say the same thing is to suggest using functions and " "procedures with as few implicit contexts and side-effects as possible. A " @@ -411,41 +400,41 @@ msgid "" "persistence layer, it is said to have a side-effect." msgstr "" -#: ../../writing/structure.rst:257 +#: ..\..\writing\structure.rst:257 msgid "" "Carefully isolating functions with context and side-effects from functions " "with logic (called pure functions) allow the following benefits:" msgstr "" -#: ../../writing/structure.rst:260 +#: ..\..\writing\structure.rst:260 msgid "" "Pure functions are deterministic: given a fixed input, the output will " "always be the same." msgstr "" -#: ../../writing/structure.rst:263 +#: ..\..\writing\structure.rst:263 msgid "" "Pure functions are much easier to change or replace if they need to be " "refactored or optimized." msgstr "" -#: ../../writing/structure.rst:266 +#: ..\..\writing\structure.rst:266 msgid "" "Pure functions are easier to test with unit-tests: There is less need for " "complex context setup and data cleaning afterwards." msgstr "" -#: ../../writing/structure.rst:269 +#: ..\..\writing\structure.rst:269 msgid "Pure functions are easier to manipulate, decorate, and pass-around." msgstr "" -#: ../../writing/structure.rst:271 +#: ..\..\writing\structure.rst:271 msgid "" "In summary, pure functions, without any context or side-effects, are more " "efficient building blocks than classes and objects for some architectures." msgstr "" -#: ../../writing/structure.rst:274 +#: ..\..\writing\structure.rst:274 msgid "" "Obviously, object-orientation is useful and even necessary in many cases, " "for example when developing graphical desktop applications or games, where " @@ -453,11 +442,11 @@ msgid "" " relatively long life of their own in the computer's memory." msgstr "" -#: ../../writing/structure.rst:281 +#: ..\..\writing\structure.rst:281 msgid "Decorators" msgstr "" -#: ../../writing/structure.rst:283 +#: ..\..\writing\structure.rst:283 msgid "" "The Python language provides a simple yet powerful syntax called " "'decorators'. A decorator is a function or a class that wraps (or decorates)" @@ -467,7 +456,7 @@ msgid "" "@decorator syntax is clearer and thus preferred." msgstr "" -#: ../../writing/structure.rst:306 +#: ..\..\writing\structure.rst:306 msgid "" "This mechanism is useful for separating concerns and avoiding external un-" "related logic 'polluting' the core logic of the function or method. A good " @@ -478,11 +467,11 @@ msgid "" "logic." msgstr "" -#: ../../writing/structure.rst:315 +#: ..\..\writing\structure.rst:315 msgid "Dynamic typing" msgstr "" -#: ../../writing/structure.rst:317 +#: ..\..\writing\structure.rst:317 msgid "" "Python is said to be dynamically typed, which means that variables do not " "have a fixed type. In fact, in Python, variables are very different from " @@ -493,7 +482,7 @@ msgid "" "the value 'a string', then to a function." msgstr "" -#: ../../writing/structure.rst:325 +#: ..\..\writing\structure.rst:325 msgid "" "The dynamic typing of Python is often considered to be a weakness, and " "indeed it can lead to complexities and hard-to-debug code. Something named " @@ -502,36 +491,36 @@ msgid "" "completely unrelated object." msgstr "" -#: ../../writing/structure.rst:331 +#: ..\..\writing\structure.rst:331 msgid "Some guidelines help to avoid this issue:" msgstr "" -#: ../../writing/structure.rst:333 +#: ..\..\writing\structure.rst:333 msgid "Avoid using the same variable name for different things." msgstr "" -#: ../../writing/structure.rst:335 ../../writing/structure.rst:359 -#: ../../writing/structure.rst:423 +#: ..\..\writing\structure.rst:335 ..\..\writing\structure.rst:359 +#: ..\..\writing\structure.rst:423 msgid "**Bad**" msgstr "" -#: ../../writing/structure.rst:344 ../../writing/structure.rst:433 +#: ..\..\writing\structure.rst:344 ..\..\writing\structure.rst:433 msgid "**Good**" msgstr "" -#: ../../writing/structure.rst:353 +#: ..\..\writing\structure.rst:353 msgid "" "Using short functions or methods helps reduce the risk of using the same " "name for two unrelated things." msgstr "" -#: ../../writing/structure.rst:356 +#: ..\..\writing\structure.rst:356 msgid "" "It is better to use different names even for things that are related, when " "they have a different type:" msgstr "" -#: ../../writing/structure.rst:367 +#: ..\..\writing\structure.rst:367 msgid "" "There is no efficiency gain when reusing names: the assignments will have to" " create new objects anyway. However, when the complexity grows and each " @@ -539,7 +528,7 @@ msgid "" "loops, it becomes harder to ascertain what a given variable's type is." msgstr "" -#: ../../writing/structure.rst:373 +#: ..\..\writing\structure.rst:373 msgid "" "Some coding practices, like functional programming, recommend never " "reassigning a variable. In Java this is done with the `final` keyword. " @@ -549,15 +538,15 @@ msgid "" "mutable and immutable types." msgstr "" -#: ../../writing/structure.rst:380 +#: ..\..\writing\structure.rst:380 msgid "Mutable and immutable types" msgstr "" -#: ../../writing/structure.rst:382 +#: ..\..\writing\structure.rst:382 msgid "Python has two kinds of built-in or user-defined types." msgstr "" -#: ../../writing/structure.rst:384 +#: ..\..\writing\structure.rst:384 msgid "" "Mutable types are those that allow in-place modification of the content. " "Typical mutables are lists and dictionaries: All lists have mutating " @@ -565,34 +554,34 @@ msgid "" "modified in place. The same goes for dictionaries." msgstr "" -#: ../../writing/structure.rst:389 +#: ..\..\writing\structure.rst:389 msgid "" "Immutable types provide no method for changing their content. For instance, " "the variable x set to the integer 6 has no \"increment\" method. If you want" " to compute x + 1, you have to create another integer and give it a name." msgstr "" -#: ../../writing/structure.rst:403 +#: ..\..\writing\structure.rst:403 msgid "" "One consequence of this difference in behavior is that mutable types are not" " \"stable\", and therefore cannot be used as dictionary keys." msgstr "" -#: ../../writing/structure.rst:407 +#: ..\..\writing\structure.rst:407 msgid "" "Using properly mutable types for things that are mutable in nature and " "immutable types for things that are fixed in nature helps to clarify the " "intent of the code." msgstr "" -#: ../../writing/structure.rst:411 +#: ..\..\writing\structure.rst:411 msgid "" "For example, the immutable equivalent of a list is the tuple, created with " "``(1, 2)``. This tuple is a pair that cannot be changed in-place, and can be" " used as a key for a dictionary." msgstr "" -#: ../../writing/structure.rst:415 +#: ..\..\writing\structure.rst:415 msgid "" "One peculiarity of Python that can surprise beginners is that strings are " "immutable. This means that when constructing a string from its parts, it is " @@ -602,7 +591,7 @@ msgid "" "than constructing a list in a loop with calls to ``append()``." msgstr "" -#: ../../writing/structure.rst:451 +#: ..\..\writing\structure.rst:451 msgid "" "One final thing to mention about strings is that using ``join()`` is not " "always best. In the instances where you are creating a new string from a " @@ -611,7 +600,7 @@ msgid "" "existing string, using ``join()`` should be your preferred method." msgstr "" -#: ../../writing/structure.rst:467 +#: ..\..\writing\structure.rst:467 msgid "" "You can also use the :ref:`% ` formatting operator" " to concatenate a pre-determined number of strings besides " @@ -620,22 +609,22 @@ msgid "" ":py:meth:`str.format` method in the later versions." msgstr "" -#: ../../writing/structure.rst:484 +#: ..\..\writing\structure.rst:484 msgid "Vendorizing Dependencies" msgstr "" -#: ../../writing/structure.rst:488 +#: ..\..\writing\structure.rst:488 msgid "Runners" msgstr "" -#: ../../writing/structure.rst:492 +#: ..\..\writing\structure.rst:492 msgid "Further Reading" msgstr "" -#: ../../writing/structure.rst:494 +#: ..\..\writing\structure.rst:494 msgid "http://docs.python.org/2/library/" msgstr "" -#: ../../writing/structure.rst:495 +#: ..\..\writing\structure.rst:495 msgid "http://www.diveintopython.net/toc/index.html" msgstr "" From 05e0b78fd07597bc45e704a7d5d05e210aacc246 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 4 Dec 2014 15:29:09 +0900 Subject: [PATCH 020/117] translated ~407line --- .../ko/LC_MESSAGES/writing/structure.po | 84 +++++++++++++++++-- 1 file changed, 78 insertions(+), 6 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 9ed6025af..0a7405d09 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -156,7 +156,11 @@ msgid "" "the interface file needs to import the low-level file. This is done with the" " ``import`` and ``from ... import`` statements." msgstr "" - +"예를 들어 프로젝트의 레이어 중 하나는 사용자 인터페이스를 담당하고, 다른 하나는 " +"저수준의 데이터 처리를 담당할 수도 있다. 이 두 레이어를 분리시키는 가장 자연스러운" +"방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각 하나의 파일에 " +"넣는 것이다. 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 한다." +"이는 ``import`` 와 ``from ... import`` 구문으로 가능하다." #: ..\..\writing\structure.rst:88 msgid "" @@ -164,6 +168,9 @@ msgid "" "built-in modules such as `os` and `sys`, third-party modules you have " "installed in your environment, or your project's internal modules." msgstr "" +" `import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있다. 이는 내장 모듈인" +" `os` , `sys` , 프로젝트에 포함시킨 모듈과 따로 설치한 서드파티 모듈도" +"마찬가지다." #: ..\..\writing\structure.rst:92 msgid "" @@ -172,6 +179,9 @@ msgid "" " (?). So a file name like :file:`my.spam.py` is one you should avoid! Naming" " this way will interfere with the way Python looks for modules." msgstr "" +"본 안내서의 스타일 가이드의 방침을 따르려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나" +"물음표(?) 같은 특수 문자의 사용을 지양해야 한다. 그러니까 :file:`my.spam.py` 같은" +"이름으로 만들면 안된다! 파이썬이 모듈을 찾는 걸 방해한다." #: ..\..\writing\structure.rst:97 msgid "" @@ -180,12 +190,18 @@ msgid "" "`_ of how the dot " "notation should be used in the Python docs." msgstr "" +" `my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` " +"이라는 이름의 파일을 찾는다. 이는 잘못된 경우다. 아래 글을 참조하기 바란다." +"파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한" +" `예시 `_ " #: ..\..\writing\structure.rst:102 msgid "" "If you'd like you could name your module :file:`my_spam.py`, but even our " "friend the underscore should not be seen often in module names." msgstr "" +" :file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능하다. 하지만 우리의 친구" +"밑줄(_)은 모듈 이름으로는 자주 쓰이지 않는다." #: ..\..\writing\structure.rst:105 msgid "" @@ -193,6 +209,9 @@ msgid "" "Python file to be a module, but you need to understand the import mechanism " "in order to use this concept properly and avoid some issues." msgstr "" +"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없다. " +"하지만 모듈이라는 개념을 잘 사용하고 문제를 발생시키지 않기 위해서는, 모듈을 불러오는 " +"방법을 이해할 필요가 있다." #: ..\..\writing\structure.rst:109 msgid "" @@ -202,6 +221,10 @@ msgid "" "in the \"path\" recursively and raise an ImportError exception if it is not " "found." msgstr "" +"구체적으로 살펴보자. ``import modu`` 구문이 있으면 이는 호출자로서 같은 디렉토리 " +"안에서 적절한 파일, 즉 :file:`modu.py` 라는 파일을 찾는다. 만약 해당 파일이" +"발견되지 않는다면 파이썬 인터프리터는 :file:`modu.py` 파일을 \"path\" 에서" +"재귀적으로 찾는다. 그래도 발견되지 않으면 ImportError exception을 띄운다." #: ..\..\writing\structure.rst:114 msgid "" @@ -210,6 +233,9 @@ msgid "" " be executed, including other imports if any. Function and class definitions" " are stored in the module's dictionary." msgstr "" +"일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행한다." +" :file:`modu.py` 모듈 안의 모든 최상위 구문이 실행된다. 불러온 다른 모듈이 있다면" +"그것도 함께 실행된다. 함수와 클래스 정의는 모듈의 디렉토리에 저장된다." #: ..\..\writing\structure.rst:119 msgid "" @@ -217,6 +243,9 @@ msgid "" "the caller through the module's namespace, a central concept in programming " "that is particularly helpful and powerful in Python." msgstr "" +"그런 다음, 모듈의 변수와 함수, 그리고 클래스는 프로그래밍의 핵심적인 개념이자," +" 특히 파이썬에서는 더욱 유용하고 강력하게 쓰이는 모듈의 명칭 공간(namespace)" +"을 통해 호출자가 사용할 수 있게 된다. " #: ..\..\writing\structure.rst:123 msgid "" @@ -227,6 +256,10 @@ msgid "" "included code could have unwanted effects, e.g. override an existing " "function with the same name." msgstr "" +"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와" +"호출자에 '복사'해 넣는 명령어로 사용된다. 하지만 파이썬에서는 다르다. 모듈에 포함된" +"코드는 명칭 공간에 독립적으로 실행된다. 이는 일반적으로 모듈에 포함된 코드가 오작동을" +"하는 경우가 없다는 뜻이다. " #: ..\..\writing\structure.rst:129 msgid "" @@ -235,6 +268,10 @@ msgid "" "considered bad practice. **Using** ``import *`` **makes code harder to read " "and makes dependencies less compartmentalized**." msgstr "" +"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 " +"작동하는지 확인해보자. 일반적으로 이러한 구문은 잘못된 습관이다. " +" **Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, " +"코드의 독립성 여부를 판단하기 어렵게 한다." #: ..\..\writing\structure.rst:134 msgid "" @@ -244,18 +281,23 @@ msgid "" "namespace, its only advantage over a simpler ``import modu`` is that it will" " save a little typing." msgstr "" +" ``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 " +"전역 명칭 공간(global namespace)에 넣어둘 수 있는 좋은 방법이다. " +"뿐만 아니라 이 구문은 전역 명칭 공간(global namespace)에 무엇을 불러올지를" +"명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭다. 단순히 ``import *`` " +"구문을 사용하는 것은 단지 타이핑을 덜 한다는 이점 뿐이다." #: ..\..\writing\structure.rst:139 msgid "**Very bad**" -msgstr "" +msgstr "**최악**" #: ..\..\writing\structure.rst:148 msgid "**Better**" -msgstr "" +msgstr "**최악보다는 낫다**" #: ..\..\writing\structure.rst:156 ..\..\writing\structure.rst:443 msgid "**Best**" -msgstr "" +msgstr "**최고**" #: ..\..\writing\structure.rst:164 msgid "" @@ -267,16 +309,24 @@ msgid "" "from, as in the ``modu.func`` idiom, greatly improves code readability and " "understandability in all but the simplest single file projects." msgstr "" +" :ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나다." +"가독성이란 쓸데없이 긴 본문과 잡동사니를 피한다는 뜻이다. 그러므로 어느 수준까지는" +"간결성을 얻고자 하는 노력이 필요하다. 그러나 너무 간결한 나머지 모호해서는 안된다." +" ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은" +"코드의 가독성과 이해용이성을 크게 놓여준다." +"단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇다." #: ..\..\writing\structure.rst:174 msgid "Packages" -msgstr "" +msgstr "패키지" #: ..\..\writing\structure.rst:176 msgid "" "Python provides a very straightforward packaging system, which is simply an " "extension of the module mechanism to a directory." msgstr "" +"파이썬은 아주 간단한 패키지 만들기 시스템을 제공한다. 이 시스템은 단순히 " +"파이썬 모듈 구조를 디렉토리로 확장한 것이다." #: ..\..\writing\structure.rst:179 msgid "" @@ -286,6 +336,10 @@ msgid "" ":file:`__init__.py` file, which is used to gather all package-wide " "definitions." msgstr "" +" :file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식된다." +"패키지의 여러 다른 모듈들은 일반적인 모듈과 비슷한 방법으로 불러와진다." +"그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별하다." +"이 파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰인다." #: ..\..\writing\structure.rst:184 msgid "" @@ -297,6 +351,11 @@ msgid "" "variable, function, or class defined in :file:`modu.py` is available in the " "pack.modu namespace." msgstr "" +":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로" +"불러와진다. 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾는다." +"그리고 해당 패키지의 모든 상위 구문을 실행한다. 이 작업 후에 :file:`modu.py` " +"파일에 정의된 모든 변수나 함수, 클래스를 pack.modu 명칭 공간(namespace)에서" +" 쓸 수 있다." #: ..\..\writing\structure.rst:190 msgid "" @@ -306,6 +365,11 @@ msgid "" "item from a sub-sub-package will require executing all :file:`__init__.py` " "files met while traversing the tree." msgstr "" +"일반적으로 보이는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우다. " +"프로젝트가 복잡해질수록 디렉토리 구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을" +" 수 있다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 불러오려고 했더니" +" 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 " +"실행하게 될 때가 있다." #: ..\..\writing\structure.rst:196 msgid "" @@ -313,6 +377,8 @@ msgid "" "good practice, if the package's modules and sub-packages do not need to " "share any code." msgstr "" +"따라서 패키지의 모듈과 서브-패키지에서 코드를 서로 공유할 필요가 없다면 " +":file:`__init__.py` 은 빈 파일로 남겨두는게 일반적일 뿐만 아니라 좋은 습관이다." #: ..\..\writing\structure.rst:199 msgid "" @@ -320,16 +386,21 @@ msgid "" "packages: ``import very.deep.module as mod``. This allows you to use `mod` " "in place of the verbose repetition of ``very.deep.module``." msgstr "" +"마지막으로 패키지 안쪽 깊숙히 불러올 수 있는 편리한 구문이 있다." +"``import very.deep.module as mod`` 이다. 이 구문은 ``very.deep.module``" +"같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를 사용할 수 있게 해준다." #: ..\..\writing\structure.rst:204 msgid "Object-oriented programming" -msgstr "" +msgstr "객체지향 프로그래밍" #: ..\..\writing\structure.rst:206 msgid "" "Python is sometimes described as an object-oriented programming language. " "This can be somewhat misleading and needs to be clarified." msgstr "" +"파이썬은 종종 객체지향 프로그래밍 언어라고 설명된다." +"이는 다소 오해의 여지가 있기에 명확히 할 필요가 있다." #: ..\..\writing\structure.rst:209 msgid "" @@ -340,6 +411,7 @@ msgid "" "may have methods and properties. In this understanding, Python is an object-" "oriented language." msgstr "" +"파이썬에서 모든 것은 객체다. 그리고 객체처럼 다룰 수 있다." #: ..\..\writing\structure.rst:216 msgid "" From 2111cc1bfe15b8da1532d2d50c5c1122481d1ab9 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 4 Dec 2014 17:36:20 +0900 Subject: [PATCH 021/117] translated ~434line --- docs/locale/ko/LC_MESSAGES/writing/structure.po | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 0a7405d09..8bc12bf29 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -411,7 +411,10 @@ msgid "" "may have methods and properties. In this understanding, Python is an object-" "oriented language." msgstr "" -"파이썬에서 모든 것은 객체다. 그리고 객체처럼 다룰 수 있다." +"파이썬에서 모든 것은 객체다. 그리고 객체처럼 다룰 수 있다. 말하자면 first-class 객체를" +" 예로 들 수 있다. 함수, 클래스, 문자열, 심지어 타입도 파이썬에서는 객체다. " +"다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 있다. 또한 메소드와" +"속성을 가질 수도 있다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것이다." #: ..\..\writing\structure.rst:216 msgid "" @@ -421,6 +424,10 @@ msgid "" "class inheritance, or any other mechanisms that are specific to object-" "oriented programming." msgstr "" +"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 " +"있지 않다. 객체지향으로 만들지 않은 파이썬 프로젝트도 완벽하게 실행 가능하다. " +"즉, 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있다." +"클래스 상속이나 객체지향 프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지다." #: ..\..\writing\structure.rst:222 msgid "" @@ -430,6 +437,7 @@ msgid "" " use object-orientation. Therefore, Python programmers have more latitude to" " not use object-orientation, when it is not required by the business model." msgstr "" +"게다가 modules_ 섹션에서 볼 수 있듯이 " #: ..\..\writing\structure.rst:229 msgid "" From a4081602138373aaf69bfc76458d7d712eebd152 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 4 Dec 2014 21:16:40 +0900 Subject: [PATCH 022/117] translated ~structure.rst:247 --- .../ko/LC_MESSAGES/writing/structure.mo | Bin 8134 -> 26134 bytes .../ko/LC_MESSAGES/writing/structure.po | 16 ++++++++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index 0b481ef8383f0624a481845c7261a1b5328580e8..c224d0393a95387bdc0e13fe298c09d5dd70587b 100644 GIT binary patch literal 26134 zcmbW8e{fvab>Cl_OwwqQagw@en>OyVoJN#FK(dmyF5=jhWZ71tU$JF7PTB|y>;tgX zVi(z65Q06Op(v1s2+|@$f&yiLf+9*JRd@`MpajO0-Cxt0HZy6blV;k?^w+fg2m7|| zU(Iyt&h+y==ic|;f>h#GBkAqFeed3L&yVlj!wb&hP(?>wR25#~=&bU;5D`xx)AFa{UKf-*_L-a-IJ1B>5=UV?U83FYw$y z{&OzdWA9Ir=ehq!e?Cdt%>A2xAxVCS@4x?3N%FsV?hpTRlDv=a|B}W09^e1tPbbN% zT(>^Jb6g+)t4XrR?_c2h`+6=-5?)DOxs$c={aakM-hcEVWaIjKT))lr$)8D*zsL1` ze=SM=2G5=3`fFVO$83Z{SW`T>-$GO!kFCuPh9^q*Z=*ulH^6M|KS&tjKTH&pLBiw;loMt&-niAr;=oq>w}-+KG%Qq2(ohh@~;W`hV;*V@ft{r~=$-jeNa(&@9UH|8vPLhAh z?|(d=B!83p->%_9T>s}plKckO->viGJ@-7Ab$j>RV;_3GtYaU)kaZT*iCUd652Tar z+1YlhxtMmdtd%yp-T93Fr@eMstJk@-)7kmS86K-=x;Zx0Xl7&MPe0vgHF{4!Jvz5I zp6XV2H2vZX1N3IHbgt9>yV+z(9K3Gt)=xWn@j7B4kNaayW8u`Pxj_J*=YKRrbE`rS~okGHfHDAonE6g z%{yH#P1e!NX49!odserYtulDJ&}cT(PWD^#jGSiAW|Q;&E_dH^jp=OGOBZHXZrbbA z4rLw9V@vLJvTPJ>N)_?_*>-*2^uscwmU0bY0xkaDacSFS&+16ko3V$xy&A%2tzJ4l z?!Tsbd{l#ukB_ELY2oEVwwh+U{Y*O5?x4&l!!3475vDTz_`$IDEUmHf_7pmk@#jXG z*`cgi&VYTNl6@N}K$bDZEq~=w@kqF6-2Kjdlyq zskIiTX@lF~|Mi$777xE{ha>Ns^B7khHCH`8v}(D<||jNzuH_!&D&9O9%Z08gbg+^;Y{ z!pV7Ok+nmZv|8w*)=lS{HGT;L984$XWdt0BXXmoXMy*LW&D0JxP=?H}^}Ux5AC&(R z&*)^ni`0blbd4972dhde2sN_6np~p|(?6=|;`}XraUI(noos4sT*&Zrx3}2L#=($a zmQGfy*CrZG#XeKZWugqq(mSfPNcB3vy(Ofs3XcJx? zw9z8~vuAsT8k5a=AzJ_!)(^6@XNl=4KI6<%FlxdAz0RV=E6_GM)4;z`;AGb6Ng{W5 z#F^-1hmd+SeGn}(ZZ~UbYB_OxqB}X?(ULT#7SqI3OtE0F7T!#|Gwt~%Xhsw8 z&qLL{3?(;a36%zG0CfFL#4sP0{eou;JkgK93+FGqW_;YdT2GCG9QB5No<`d}2E&ay z?L)j}U|ltVq@Qo$ryxeFGz{K`JaQ*32EPNYyS<2>hGhZEyXFDiHtvlui|u*YBn`-f z-6L9+zXfl#DB#ga0tw8|a9ezBV!qMrjg&qOI^&a!Jl^h(o36*Zi(SA8eDBoB5*?Ht z14y&u?Fwb)Z8qH@x!Xyz)}cnH-IAvoG}z6sguA3f4B8@GqHwsiJl#@+ISpVSd*PbB zPQ!c|>}jJGOt@=arynT6KE93HI_xs`dim3A<#2XLRwCTD7`Mt4^D z(C%O=`HPh7DX!g`%;tJZt$-r7mPKn8945ErZH)BbVtQwhA@58Vh&MvXCaQxJU4f~Y zZ?^UfM$xF9mew}YUeNtck-R753A0&-d&|Y!6H4igL%`Y>vtlg~{_J&II4>!bI)XOG zL-byRJC97tS(&Bsc~l#D`Biz)L&hY0|UZKW*ftuePO1Js+#TT z#-ypHo)Pi&tTovn92Bj3*06LzA&94G!SZ?|FZRw+G?`E;)HL zc?h+2GR3cfPMM+QR)l2{4f|51rgH<@tQ9B@Xs!3FjG;?vsw5<&))1%$6ige+)g;zN zw?}eLAF;2vCfF{ga-9<$#$M`E}WR|oXESUz}Nr`AB# zIMpLYxE}6w7$SRC?umB=v8r;6CJ)!TC2^DGz}Z^iX>L>2!b`Pgx1DBs99OBgwZge} z8;2iFKPOP{Hl}f4f8Fk*?7#=>#ej_#Iia47C7&|MYJxRDG;P)vS^d!5f+gavZo~lH zOw}eOpJi8q508l;;IywMERYHf;=`NG_Clabr0mArJo!nQV4`}hS92aP+a@wv%6d5V z0tA@#bu)m?a+%Sc-a^|&B;qXjbuwu4{G5Tb*)K>Jb41P4D>IQ^<)ETTzyc0lid2#) zAxo5BPwywt@~t?Hk7sdiq6C!EBjwOOh%r$Fu1ku7zed(dI7p`Pal_cr(a}J5s$l|d zeI~0NS_JL{8|ZDi*`7d87Dz_%+93C{y)on?1Z$+?DO_%@*_do7@y$U1Ww!D012b7; zdIs=^!SrT`fW))2U9obQrzH8>1c{UCd4Hp`D0xzh3S_niJ&{#QOyC$n8|9BlOh_($OuH( ztrCzAiX0AeAPFcq$>`I#9QneQGm%XSHK2ySH4pH)OVk_PNtl7CA*<+Qvu$Hg1cqU; zYP%SGwiM?{R$IB|50VO8$8KSps@@>cT1vryjXH1(7|&ys*7TSwTKZ8oSWK1Ouq`fV zT30ewSSnL{w7{Nf&veuK?*sNhG(9=r!Wsw&OI0#bnFj}CeM*ZULwKby9)pVcL|hFy zx|_NHC}V0KpPKJXOCaDPZ+by_T-sxLut~=1t;u56V?Z5 zQ-+euV$tPAB9gR%&0sE4hx0;(4&xg`@^}k4;rRiWpj3z82LIym1%+X7HFXr23#!(w zK`4}vvu8ujvT%)X@62SX0f`?8^@2?atb8g|4X`EqCF6q_Y-^eiAqYVxz|aSASuMz% zAB?$f&0s#Lv4=$ufm*;(^hP8*1`2b9fUvt*veY`$^9pF@v?tZ)u@ItdGSjY0OXke@ zW)EIg=ARPQkhlnos#?onXbSFtQ!@tnc9ERvcWkL5W1jvkBLezf(8FJ(aJ;!LWR?fO zhHx{1uA&v#6(v^kwDQR)lsrI>D$|+tcTKkE7Vi@HkSPtR104(46T`1WenyBY)<{9P zx=(^cjc(g9jt67WQ1&DumN_PwJIMdZCQ$4q(M{I9s~3TaMAs3t$-8cy%!9@ZGT&OL z8MHY6MswNd^k}LS(NRH!iH%q)sTSrfa=Xz|1)tf#>JM>Ax^32&lld3t#Nd%{A)82R zbIR1QlQTQt>@|RXR6%|RDk@z7#k~v?+>|I@P`?39Q<2TJ6}qJGXGzqm;so%PD{R3| z<>tuaX;{9=*&|7np60E>8JND7W}-XEFmt*@J=Nx__Eqt)7;l)k1)iZ9IrJv*)o2m3 zv!2B~FG%;8q6r1Z!mJ5qgy1T-<~uZlCZQ~yHa&q^)(+>O`82|h_0ViFsw=sfd?M>D zs4?s2vDW$d8!UQ(J>gdxD=UQFP%+#8x(2QY!pc=lO zxEM9Rk+E<_i#NS5Hx>sTpIsb{sV=e!c(MFe4o626y~X;jc+k+y;KoZ{gPWpxJ4;8u z=n*O>#tD_a)V_CI9uG+>{pd`uH#c_gz4i8Fmz1j(=qTm$y}fz*^|-4wg0(>~)0=I6 zD0CRR9~*yK3y4*Coq3qc9XmA8U?m3ENGcIRA#2kp5u3?E!%^AO;hX#ih3cSedg0j8 z-vXTjMUc;gVulVAX24$JBqTO*5?d=NOjR1Hw`^vZqZqf+u&6hQ`=O4BHAZ;9MaH2| z2$fgy(4GeX;DE9TIf!_t;8g2@E)h+zkOy4fA+rkK;Q8`+yaj;cBScsp8;d2I^cH`;r`UPG z2g)22yFkdvt`h!k4IEJSo_jv8N$cZM9ctlN z`&au(bONnr00lEPutt+dYh73_!6bNv=ZQ0?VQuo%qVX?cyesH{el$Bbxqxpp$K1@sQLwVgwcQV+B4)8$rxyh{y_5WmieV?4S9#TE=+ zWkI5M>MW(H?gggZ*Epf-WcR@QmSkF+>&BLgA|`ZILIn^ z)|&BcQ2Ah2Ez)38Pk@1Z8aM?I#F;2@!jj14R;;Lb=zLc}NJut%w4pSXU{o%0>v*CU zK!ymV*MK2K6)bf^ajV7vn$4P6Akrtxe*A!G8l6e&08~SUUWt`WVSkK(sGg7`-F#b6f^7fV(#(r$=J&oRh3n5`>Z@+zIjzFNeGL7RV-$Qpd?zg&sTXBrJMWJH3K|^Q`h<2qtWhviCbmca!^IS`~?2>8o6yZuy!Kb=!zSO|r z?R@H(13`$5oAz;Hd&=w8+1*c?mxe;D{4!a+~*+Z3<{Z;Z~zs z(V~>7?F=tzV#iFKXH$FhHER|Z;v>N!oD!9JTSo$`aSE<2h&XtrkY$}E#VSa;$I6I~ zu8pXu{}*$eD+N!Fdszz7P=G_&N0ZNLle*am(hJiBlyr3%5XHG}K`xygA!^hI6iK8% zfRotgxH(SiyGI1hHL_4Z+TIUcCu`hw3--fsyg*i#a*{;3G*p){dS?HY})9S@fJ~mXIkwAJRCO|l4&&9 zPSk>pJyxM!E9D1l%t`%$YTc;K5G>r&b~SrTaF@76c(<`Xd4LEKn#UROqFLg~_UVoF zv-@XT0LDqEmMxBq^0YEI8BSVsN?g0jzpxZW3dfmHLZgRb*uOsMZLnrhSRV5*8s z&38Kwp}vkhHIOvt8cxpWr4YgN-Yn>gA~i&$%c@0jgJV5N6GeczbUCN+lqPakqZwrC zW;PYhnP|y#VqBFr4>mJjmOFJQc{RA6D?48fO#E(+PuSU^FsX~@jDOI_acV{)L;&`K zHG<2GCl#A7<$)jKSOdiPjwz{R`N2S8k2LlyhK4QJCS!5_!;3w<(Kgtz8j{A|GxDHv zw57E)jAVgSGg)&^?k!2?XzX{~*MkLZDW)qzT6>liPU$=L^PKBZmy7In8%8*qeo{x7 zq))2I9*5WBYLSD`)?~3`tS+8>a=OW>y8hAI|#$ER$&qa35EBU;YP=SNk{e(cvX^_`|Op^cPJGso#Oc4isUT%Zg( zaM;DyEX?&NX^DQb^zMYpMzi`a&TkQ3Q)^5+c2#p>Cf@}~o@%G+)d@@4kE%4m?4(jU zJ?PTM4)`ZcV{#M+Buk>@!lQ2`^7&;<0_XpF*{g8@5p^(U;K=xzH z2gfV=w3Vt$?GO=1PL+8DH=0;!e!D7PYNkq;nc_}0Jx}uxTU<1QNftfO5ynFTA5uNz zlrC&z7D1;#gbGtP?ny?NXpom*9(MZ#rTF~Br z_jH1~Kc2D!h+E+5#>}Qf=c?!w;PK;V2hWe$(DYf(5E!eS3b23)0WTMg#Qx*ygCb|D z$>gHZ{YvMA!^ow4tZ7+^Y|kDFiXySIsj6lxr`~j?)|71UEkx?hFe!r8Ie_a5e?soo>`e9-N=EhadRt$YW28 zeDZ+O_ zC#E46%~3$?W4!BINh42Xwb`-s(FY#?^yeS=^uy^#AAR%_&4${VAG_nRM;?2)T;hjE z@4Mq6?UA>bl>N0aI(Ed3<_7z|b#OFuHv z=-t67?fm-s-nC6TrOn5D^=SXvPJiWM|M=Oof8_7;sqzya^NpMR?X`UKxqSU*|JC)B zr}K>+dwOd(-(1(H+jWu#Cr!XPvp{ORQJonBEOX#bty(&R`A_ z7JdG3erYMHGd`dJDpQZA=nl=sdvWV%XigTh{cRSmvG(5C#pb5URebhFsYi+3cg^I_ z&qF; zFgy9ltx^+;(R^b!U)exxt+?k^* zh|KE9efDhB_xZC7rP1>@UfA1yjzLd=q4{g(KLKqv4tpw*#tW^Q-Zpk5&dXO=QCRZe zxh;dxV`m5e6eGPkSj#RN!66Q`jaZJ$Fdrj>Vwbh#{h3KVwQ_T0%k)8a)>miKrT0g{oFtsD>DIiqI znu4^!i(69d%KG5QM{P_)2gQx&* zbi5S9{qstP*M=B5)L}rmCQIrE2xCnkL>&4dJIb|`c zSX{<62nA0LE9<1>!O?YTx?&6aQIif{+z}U3>NBpunk_(2^`FP9KsJV*3!q;AH;xI&W$1xXj)*1Q-OZB=tZj^{Xb_ zT$aQ5k`4+wV%99UN(hIrYU!q6OA5Sv^o zcd)cASb1ZM4|1kkrY`49!#RGGjpX@-t-W^+SM*g%B%r*o2E-^dhlB{4dgOKo{$-;6 z2ARq7T~Y-*MTiHUyj&6T!n<0G0{9Y!M7wLJ4C!8ap?_%uL!>O62PH%0*)p3}N4H4# z7rprLsieA>mcump$|iO-w5g!v_P3QDa1m!MNxo(&T>f?rJy+pc&bCPk*wHT)vcM7? z)|9D(J-$Y++6i266Y z>z@?1R7zz}zb#jADAn*v2cQ?SJEwCps?o4M-kQbA= z-CrLBC*Z z^AM(I_r8NQOYjephe8NHDs!*G58S4#85S zdYh^;f%}Q(t|Vrh1m|48jL=dwT?XaNY7AnZReW%Gv?Yt;P0Kk5A)XD4f_;Y6lrGDg zQm9z`YN&Ze71ECByW~O9Hu-HSPsp66d#P&QN({pa3%<22=O!EB;A@H-MPTgr$o(Z! zXjp~&S~!)zyo(^)B)TMAA8P8rVA?LyNaFFPpOx=neCJh%71USIrMg`iYHxc({NmE# z!MWE%Y6y99`=qJCvPE$Ve7dYsd*xz&VJTMQFD?NM(Kq28PIfJHs>8>}MW`Yp9x7jl zQj;Zx^GkjAdO?Y`m4y8zlo=}-YJ%(soV}p!x5z;#(du$n51KwMtWhow44&XATXDs( zrt@QH!$7IJqFWV4NCv03`a2Nbn3>9%A|3_-ZYg>SzEl3Ghh@)K@C>VzX;h|=Qd_*eazAT#*bj^8} zixu!Cx|O>?(KidKvlfQw={0b)RJa06^5U}4!Rp_E_>1QLP#I;LGZ%;6yrmyTh=K*; z2g(F1TL>?P<5^5<+9$p#&_cmv4n`ajxO_wL>d$H*ON{78!7u!ES+I}h-`ggQ0^i$T zH%nC)>(sD+QBGt|YNHZchbkieU`@nTa&GvTg{AAE@CaE(Z;xnm8v6>&+e{G_D|OI@hnc9Mwh_~* zBfI@*{RR`cfbcZYg3saQt4nMp433`6ubslFuk8$uU5DD-P+d7VdqO6-Ne0;|`h^;& z&_+bmrClQ-)6(zznsADmYs zuT+Aq(W*Rk+p2$^pb^}rp$!l-YzgJ#6q43Ik_^IbI)By)K#eN8v%OwRY?MC9Q#t9xWE9i z^}6y*=x`Ao$HcO3C8nZM!~{yuH%{Ox=U2hd7(Fk%YY@#nFvlyXL1fR&fInAip`t~V zUs|sS637PjfQ&PUa)V|&cY1IhH`oDoNsH!idshz+j&1HM3j&g%yx0}Cjz-)FK^>uP zq!H|Y^{#$UI4)*?|6r;+d08%9u@)9BoyWis;oNyl3)JlNib7*+KfKDpJ@v)e0oB6W z^W)dGE}l_Q`QCq)QHajVrS>-7HSHnX=5=e-yJ@d&!W`@=^E6KiOK(vuZGnMWhDf->vK$M@?^44LtaoHXMW7S>i>7P6ht-zv3{Q zlQtAerOq&!&K*|&@MC;DRPyq}^E87?3yZj{k&)d{R^wAC;aTBtK?s8VYct#Lr_)~L z?S#FLL^}bL&*mO+qg?n~2D5LO7Yd7LRN9OOU;}J$=IiFamFBo-QyAp!_V|qK-q0Sn z`jJK@kEjav4La*s6p4LcOvschdG?oeL5c3EIgoU_l0G<)nukfg1%3rHy7_jVzVWq0gdTiEZunjb$! zM_nDG{Oz-3x3bG-E^b{mO~M+y#u_$UntzW&NV?Nj3Nch!Ut0bNzTqSkigbep{wDd>+-JYf_-9b7cE0(%#Tj05rE%cv&%ji+*xFNX{%b+sPLd- z1P|op`MGyR&x_J07HdvKl6X1^Ryiy zlh%EZ8pg-{>Cyf-RDq$#??Fs|MPiig9~W)^q`-tUEkjjUZ&}oMLLSzlIRL7^g+CSr zlbR@lubqbYLXxWoVdzW*DiCoG9x&u~SD(i(ef#6cIu(|V_rxx;;z}nCWPcR>D%-gx zxgxi}ea`Ot24Pb5?P0InKAFg=Igt~LS!|ieAH5q#>(TmurDNY_-(!C*LP!Lhv|tJ+ zZJcfIpUMHnloQc)GtD`5HGD>eq%u_C#9YMQt+z6K90~5(2dNPwv>T{)_r8S%hKBGG zSiV|mqWF;rL4)DEe7d^%WQwIbf8q5|X(a{x^QqFY%75o5{|*7me&rLnm5MiCx~Lk` zqgE~@86ZT*PN>FED-BTqO_0F6nKItvpSRS>wmo9i^*Wvqo{)Q%Viijw7R=F*&Jh%B z@beh^0k^W*f=I+JWaBoN%s7USC6?Px2W{Wu*R>SO@cZ7=`bv7kTEKFp8pyFsQrU7a zb%&ok7q0b}(MlkhVNVzZ`Jsh!!IlHPQCT^o5YOIJ$?*^w-{kNgWTGezt6UwyRyfqO zZt9Nq4vH0lp=vQ)sq9x8f(QN#87OFdqN0h6ux2~`u8J`&Q<^@xg{PT{sD4kJAj9eS zLC}{UMx^C(n-OgGlc*M3s6kuF=CXo|NP1Pr#{mX)#c=b;%NWLsd{6c*ak1r$ylQ66zY2cVa4`pYV0%X7{*dpDg9YWn)BlC zORph{LRp7P2EI=Se^BXf?E~z`=p3^GZaulkc8w{VkVTQSRdRCL-05-T=9qy&UNN>6 zei6o#YE>3$JKc{&vW2$1$)kGO^myFjsbsgeE&-KTWf)?o^ktyyKmdvU(VJBBxCEbQazkpsbx=rJHb&%Fs#4LL4#2vu!}^3kF<=BW>skws z?qF0s>Y7!tw|U(FivQ^piO$D{VUIvpU#EPM?X3NX%!(&%sv(UIqzxHW!KEe*^Ikk% z91=^a^|}S1oufd2DpKKS1tD}PrKIK+%Ca1E&?}q_67sQDOvk#|{opzd+#e|3uPSuEV<)}dLS#&rA@1gvZa=j%e9{yeduV?5fH> zo)K6O{4re%6)KI5xG2ZB2ve)(#1h3jv0W|H{m8VNw zdni{pJecB6p3PsTP{%Rtdzz+uH7GU&(_Z`?^p zS+goOqD{kztXgoVz-Iicr}B_NhEW6Pw3LKh<>D_@^9 z$pJ1MhA<=i>3gKi!`TC+6+itGrb=wTpZ#!-SkiP=AcFnuDA9Y6A7CYRhPW*(xN+Gc zljaGh^Q}}QX%_ygXVp^%KG{z~Gu{u#FI|#j>d2%uw5*}4XLXJPv^_y@mp|HKHmiq} zFI4E*`zDXO2H`Gi(L;=m>#DM#*BN0>`xdoM~3>{a^{UJX$P@ zIjzM_Nxmx$Fn843?OKoFsBf^BjP1$^?sN7n?6qS-z{wCV>fD^*Swvoy*M2%?xCyiW zudZ~IUK>=(a&$T(V^%DAhX`?1MWSeV)UACamRSn=|1c#)>ZPxmAB0q)vV|xuYZWD8 z68&p8aWxBYY>BW%%kZA@@i4V^OgQ$_KdD9t+iTx&SqmC|n^!dR{#x4NikHY}=DHZk zkEGbR@)N@tU~UtgeTSrPN=c+UPKy^-qH41n5#4YEJF%ufaID11K0cg{gKgs}Dw~K= zPJUBPKY-u7Vn>N9uWJ&()QOQDSqWeYs0rq;C`kR#fN0bkc2*IJP#uB=gniiI4i0Br z)l-Bp4@*e^!z%|b+ldP8Pw13VnK%@f5l-w>Oqx@rQ|5-vgw6HAZ|jVnDG1qx_A38w Sy6MGI`)}}TDBEzjh8#`G^S%}Dv4I8(GbZn$1G#Ob;$quC^EbQkWc*kb4 zkj1Qo1&YuVTS<}2P`<-k&-t9^_q^}9?4FoxZ{oftup?Fl)k19+8rJtefBHuHpF8sx@hL#kXFz_cqp z;0Ir1*?7yT5HH)VmafV7YNb_Ns3&Ls)WC)LE9S}Hc=`ptG)sk1mcMGkJ6t4x$4Q)v z5cb>WQr{%k-MCFv=A7h}_Z1$F`my=hC41I-ZtPZ@7qAl@BaY2?KbmB;=fHOM<%;a( T(3-I;qmE6?$ diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 8bc12bf29..bf68040b4 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -426,7 +426,7 @@ msgid "" msgstr "" "하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 " "있지 않다. 객체지향으로 만들지 않은 파이썬 프로젝트도 완벽하게 실행 가능하다. " -"즉, 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있다." +"즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있다." "클래스 상속이나 객체지향 프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지다." #: ..\..\writing\structure.rst:222 @@ -437,7 +437,10 @@ msgid "" " use object-orientation. Therefore, Python programmers have more latitude to" " not use object-orientation, when it is not required by the business model." msgstr "" -"게다가 modules_ 섹션에서 볼 수 있듯이 " +"게다가 modules_ 섹션에서 볼 수 있듯이 파이썬이 모듈과 명칭 공간(namespace)를 다루는 방식은" +"개발자로 하여금 자연스럽게 캡슐화와 추상 레이어의 분리를 가능하게 해준다. 캡슐화와 추상 레이어의 " +"분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유다. 그러므로 파이썬 프로그래머는 비지니스 모델이" +" 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 된다." #: ..\..\writing\structure.rst:229 msgid "" @@ -446,6 +449,9 @@ msgid "" "functionality. The problem, as pointed out by the discussions about " "functional programming, comes from the \"state\" part of the equation." msgstr "" +"불필요한 객체지향을 피해야 할 이유는 여러가지가 있다. 어떤 구문과 기능은 한데 모아두는 편이 " +"더 유용할 때가 있다. 이럴 때는 사용자 정의 클래스를 정의해서 쓰면 편리하다. 문제는 " +"함수형 프로그래밍의 문제점으로 지적되는 등식 부분의 \"구문\" 에서 발생한다." #: ..\..\writing\structure.rst:234 msgid "" @@ -462,12 +468,18 @@ msgid "" " same time, it may happen that the deletion actually occurs after the first " "process loaded the item, and then we have to mark as read a deleted object." msgstr "" +"어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생한다. 동시에 " +"발생하는 외부의 요청에 응답하기 위해서다. 이런 경우에는 구문의 실행이 멈춰져 " +" 예정된 오브젝트가 된다. " +"즉 어떤 고정된 정보를 계속 잡고 있는 것이다. 이때문에 동시성의 문제나 경합 상황이 발생하기 쉽다." #: ..\..\writing\structure.rst:247 msgid "" "This and other issues led to the idea that using stateless functions is a " "better programming paradigm." msgstr "" +"이 문제 뿐만 아니라 다른 설명하지 않은 문제들이 발생하기도 한다. 이 때문에 구문없는 함수가 " +"더 나은 프로그래밍 패러다임으로 생각되기도 한다." #: ..\..\writing\structure.rst:250 msgid "" From ec2d4fa841e98c0cff7d53e92d7c49881e1b4e07 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Fri, 5 Dec 2014 11:31:28 +0900 Subject: [PATCH 023/117] translated ~all --- .../ko/LC_MESSAGES/writing/structure.po | 101 +++++++++++++++--- 1 file changed, 89 insertions(+), 12 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index bf68040b4..b06617bd7 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -491,40 +491,54 @@ msgid "" "If a function saves or deletes data in a global variable or in the " "persistence layer, it is said to have a side-effect." msgstr "" +"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와" +" 프로시저를 사용하는 것이다. 전역 변수를 아무렇게나 사용하거나, 함수 내부에 있는 " +"퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해진다. 여기서 부작용이란" +" 함수가 함수 자체의 의미를 바꿔버리는 변화를 의미한다. 만약 함수가 퍼시스턴스 레이어에 " +"있는 데이터나 전역 변수에 있는 데이터를 날려버리거나 저장하는 경우를 말한다." #: ..\..\writing\structure.rst:257 msgid "" "Carefully isolating functions with context and side-effects from functions " "with logic (called pure functions) allow the following benefits:" msgstr "" +"함수가 잘 분리되어 있고 부작용도 없는 순수 함수라면 다음과 같은 장점이 있다." #: ..\..\writing\structure.rst:260 msgid "" "Pure functions are deterministic: given a fixed input, the output will " "always be the same." msgstr "" +"" +"순수 함수는 결정성이 있다. 즉, 같은 입력값이 있으면 언제나 같은 출력값을 낸다. " #: ..\..\writing\structure.rst:263 msgid "" "Pure functions are much easier to change or replace if they need to be " "refactored or optimized." msgstr "" +"순수 함수는 수정하거나 최적화 작업이 필요할 때 쉽게 수정 및 변경할 수 있다." #: ..\..\writing\structure.rst:266 msgid "" "Pure functions are easier to test with unit-tests: There is less need for " "complex context setup and data cleaning afterwards." msgstr "" +"순수 함수는 단위 테스트를 하기 쉽다. 즉, 복잡한 테스트 셋업 작업과 데이터 삭제 " +"작업에 손이 덜 간다." #: ..\..\writing\structure.rst:269 msgid "Pure functions are easier to manipulate, decorate, and pass-around." msgstr "" +"순수 함수는 다루기 쉽고, 기능을 더하기도 쉽고, 없애기도 쉽다." #: ..\..\writing\structure.rst:271 msgid "" "In summary, pure functions, without any context or side-effects, are more " "efficient building blocks than classes and objects for some architectures." msgstr "" +"요약하자면, 독립적이고 부작용도 없는 순수 함수는 다른 어떠한 아키텍처의 클래스나 " +"객체보다도 효과적인 구성 요소라고 할 수 있다." #: ..\..\writing\structure.rst:274 msgid "" @@ -533,10 +547,13 @@ msgid "" "the things that are manipulated (windows, buttons, avatars, vehicles) have a" " relatively long life of their own in the computer's memory." msgstr "" +"분명히 객체지향은 유용하다. 그리고 꼭 필요한 경우가 많다. 예를 들면 " +"데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼, 아바타, 탈것이 있는 게임같은 " +"경우다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문이다." #: ..\..\writing\structure.rst:281 msgid "Decorators" -msgstr "" +msgstr "데코레이터" #: ..\..\writing\structure.rst:283 msgid "" @@ -547,6 +564,11 @@ msgid "" "class objects in Python, this can be done 'manually', but using the " "@decorator syntax is clearer and thus preferred." msgstr "" +"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있다." +"데코레이터는 함수나 메소드를 감싸는(장식하는) 함수나 클래스다. " +"'장식된' 함수나 메소드는 원래의 '장식되지 않은' 함수나 메소드를 대체한다." +"함수는 파이썬에서 first-class 객체이기 때문이다. 이 작업은 '수작업'으로도 가능하지만 " +"@decorator 문법을 쓰면 깔끔하게 쓸 수 있다. 그래서 많이들 쓴다." #: ..\..\writing\structure.rst:306 msgid "" @@ -558,10 +580,15 @@ msgid "" "they have already been computed. This is clearly not part of the function " "logic." msgstr "" +"이 방법으로 함수나 메소드의 핵심 로직을 외부의 관련없는 로직이 오염시키는 일을 피할 " +"수 있기 때문에 유용하다. 예를 들면 데코레이션을 써서 다루는 편이 좋은 기능으로 " +"메모이제이션과 캐싱을 들 수 있다. 무거운 함수의 결과값을 테이블에 저장한 다음, " +"이미 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 것이다. 이는 " +"함수에서 자체적으로 가지고 있어야 할 기능은 아니다." #: ..\..\writing\structure.rst:315 msgid "Dynamic typing" -msgstr "" +msgstr "동적 타입" #: ..\..\writing\structure.rst:317 msgid "" @@ -573,6 +600,11 @@ msgid "" "therefore possible for the variable 'a' to be set to the value 1, then to " "the value 'a string', then to a function." msgstr "" +"파이썬은 동적 타입이 되는 언어라고 불린다. 이 말은 변수가 고정된 타입을 가지고 있지 " +"않다는 뜻이다. 사실 파이썬의 변수는 다른 수많은 언어, 특히 정적 타입 언어의" +" 변수와는 아주 다르다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 객체를" +" 가리키는 컴퓨터 메모리의 한 조각이 아니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, " +"값 'a string'을 가지고, 또 함수가 될 수도 있는 것이다." #: ..\..\writing\structure.rst:325 msgid "" @@ -582,35 +614,43 @@ msgid "" " needs to track this name in the code to make sure it has not been set to a " "completely unrelated object." msgstr "" +"동적 타입은 종종 파이썬의 약점으로 여겨지기도 한다. 실제로 동적 타입은 코드를 " +"복잡하게 만들고 디버깅하기 어렵게 만든다. 'a'라는 이름이 너무나 많은 것이 될 수 " +"있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 " +"무관한 객체인지를 확인하기 위해 코드 전체를 뒤져야 한다." #: ..\..\writing\structure.rst:331 msgid "Some guidelines help to avoid this issue:" msgstr "" +"이러한 문제를 피하기 위한 가이드라인을 소개한다." #: ..\..\writing\structure.rst:333 msgid "Avoid using the same variable name for different things." -msgstr "" +msgstr "다른 것에 같은 변수명을 붙이지 마라." #: ..\..\writing\structure.rst:335 ..\..\writing\structure.rst:359 #: ..\..\writing\structure.rst:423 msgid "**Bad**" -msgstr "" +msgstr "**나쁜 예**" #: ..\..\writing\structure.rst:344 ..\..\writing\structure.rst:433 msgid "**Good**" -msgstr "" +msgstr "**좋은 예**" #: ..\..\writing\structure.rst:353 msgid "" "Using short functions or methods helps reduce the risk of using the same " "name for two unrelated things." msgstr "" +"메소드나 함수를 짧게 쓰는 방법은 상관없는 것들에게 같은 이름을 붙이는 위험을 줄일 " +"수 있다." #: ..\..\writing\structure.rst:356 msgid "" "It is better to use different names even for things that are related, when " "they have a different type:" msgstr "" +"관련된 것이라고 해도 다른 타입을 가진다면 다른 이름을 붙이는 편이 좋다." #: ..\..\writing\structure.rst:367 msgid "" @@ -619,6 +659,9 @@ msgid "" "assignment is separated by other lines of code, including 'if' branches and " "loops, it becomes harder to ascertain what a given variable's type is." msgstr "" +"한 번 쓴 이름을 재활용 하는 것은 비효율적이다. 대입문은 반드시 새로운 객체를 만들어야 " +"한다. 하지만 너무 복잡해지고, 'if' 분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 " +"변수가 어떤 타입인지 확인하기 어려워진다." #: ..\..\writing\structure.rst:373 msgid "" @@ -629,14 +672,19 @@ msgid "" "to a variable more than once, and it helps in grasping the concept of " "mutable and immutable types." msgstr "" +"함수형 프로그래밍의 코딩 습관처럼 재할당이 불가능한 변수의 사용을 추천한다. " +"자바에서는 `final` 키워드로 가능하다. 파이썬은 `final` 키워드가 없고, " +"또한 이러한 방법은 파이썬의 철학에 반하는 일이다. 하지만 변수를 한 번 이상 " +"재할당하지 않는 것은 좋은 습관이며, 가변 타입과 불변 타입을 이해하는데 " +"도움이 될 것이다." #: ..\..\writing\structure.rst:380 msgid "Mutable and immutable types" -msgstr "" +msgstr "가변 타입과 불변 타입" #: ..\..\writing\structure.rst:382 msgid "Python has two kinds of built-in or user-defined types." -msgstr "" +msgstr "파이썬에는 내장 타입과 사용자 정의 타입이 있다." #: ..\..\writing\structure.rst:384 msgid "" @@ -645,6 +693,10 @@ msgid "" "methods, like :py:meth:`list.append` or :py:meth:`list.pop`, and can be " "modified in place. The same goes for dictionaries." msgstr "" +"가변 타입은 내부에서 자체적으로 변경이 가능하다. " +"일반적인 가변 타입은 리스트와 딕셔너리다. 모든 리스트에는 " +" :py:meth:`list.append` 나 :py:meth:`list.pop` 처럼 자체적으로 변경 가능한 " +"메소드가 있다. 딕셔너리도 마찬가지다. " #: ..\..\writing\structure.rst:389 msgid "" @@ -652,12 +704,16 @@ msgid "" "the variable x set to the integer 6 has no \"increment\" method. If you want" " to compute x + 1, you have to create another integer and give it a name." msgstr "" +"불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않는다. 예를 들면 " +"integer 6으로 설정된 변수 x에는 \"increment\" 가 없다. 만약 x에 1을 더하고 " +"싶다면 다른 integer 변수를 만들어서 이름을 부여해야 한다. " #: ..\..\writing\structure.rst:403 msgid "" "One consequence of this difference in behavior is that mutable types are not" " \"stable\", and therefore cannot be used as dictionary keys." msgstr "" +"이러한 차이 때문에 가변 타입은 \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없다." #: ..\..\writing\structure.rst:407 msgid "" @@ -665,6 +721,9 @@ msgid "" "immutable types for things that are fixed in nature helps to clarify the " "intent of the code." msgstr "" +"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, " +"원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 " +"코드의 목적을 명확히 하는데 도움이 된다." #: ..\..\writing\structure.rst:411 msgid "" @@ -672,6 +731,8 @@ msgid "" "``(1, 2)``. This tuple is a pair that cannot be changed in-place, and can be" " used as a key for a dictionary." msgstr "" +"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능하다. ``(1, 2)`` 로 만든다. " +"튜플은 자체적으로 변경이 불가능하면서, 딕셔너리의 키로 사용할 수 있다." #: ..\..\writing\structure.rst:415 msgid "" @@ -682,6 +743,12 @@ msgid "" "thing to notice, however, is that list comprehensions are better and faster " "than constructing a list in a loop with calls to ``append()``." msgstr "" +"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점이다." +"이는 문자열의 일부를 다시 만들고 싶을 때, 애시당초 리스트로 만들어서 그 일부를 " +"변경하는 편이 효율적이라는 뜻이다. 리스트는 변경 가능하고, 전체 문자열이 필요하면 " +"('join')을 사용하여 한데 이어 붙일 수 있기 때문이다. 하지만 한가지 알아둬야 할 점은 " +"반복문에서 ``append()`` 메소드를 호출해 리스트를 만드는 것보다 " +"리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 것이다." #: ..\..\writing\structure.rst:451 msgid "" @@ -691,6 +758,11 @@ msgid "" "faster, but in cases like above or in cases where you are adding to an " "existing string, using ``join()`` should be your preferred method." msgstr "" +"문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것이다." +" 문자열이 몇 개 있을지 미리 정해져 있는 상태에서 새로운 문자열을 만들 때는 " +"더하기 연산자를 쓰는 편이 실제로 더 빠르다." +" 하지만 문자열이 몇 개 있을지 정해져 있지 않거나, 이미 만들어진 문자열에 추가로 " +"문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것이다. " #: ..\..\writing\structure.rst:467 msgid "" @@ -700,23 +772,28 @@ msgid "" "operator became deprecated in Python 3.1 and will be replaced by the " ":py:meth:`str.format` method in the later versions." msgstr "" +"또한 :py:meth:`str.join` 와 ``+`` 외에 " +"포맷 연산자 :ref:`% ` 를 써서 " +"미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있다. " +"하지만 :pep:`3101` 에 따르면 ``%`` 연산자는 파이썬 3.1에서는 사라졌고 " +"최신 버전에서는 :py:meth:`str.format` 로 대체될 것이라고 한다." #: ..\..\writing\structure.rst:484 msgid "Vendorizing Dependencies" -msgstr "" +msgstr "Vendorizing Dependencies" #: ..\..\writing\structure.rst:488 msgid "Runners" -msgstr "" +msgstr "Runners" #: ..\..\writing\structure.rst:492 msgid "Further Reading" -msgstr "" +msgstr "더 알아보기" #: ..\..\writing\structure.rst:494 msgid "http://docs.python.org/2/library/" -msgstr "" +msgstr "http://docs.python.org/2/library/" #: ..\..\writing\structure.rst:495 msgid "http://www.diveintopython.net/toc/index.html" -msgstr "" +msgstr "http://www.diveintopython.net/toc/index.html" From e20e62bfe8674a19c527dd364907baf096a2b45f Mon Sep 17 00:00:00 2001 From: Jou Sung-Shik Date: Fri, 5 Dec 2014 13:37:14 +0900 Subject: [PATCH 024/117] Add latex setting for unicode --- docs/conf.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/conf.py b/docs/conf.py index 575d0cad4..2ed42eea8 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -276,3 +276,12 @@ locale_dirs = ['locale/'] # path is example but recommended. gettext_compact = False # optional. +latex_elements = { + # Additional stuff for the LaTeX preamble. + 'preamble': "".join(( + '\DeclareUnicodeCharacter{00A0}{ }', # NO-BREAK SPACE + '\DeclareUnicodeCharacter{251C}{+}', # BOX DRAWINGS LIGHT VERTICAL AND RIGHT + '\DeclareUnicodeCharacter{2514}{+}', # BOX DRAWINGS LIGHT UP AND RIGHT + )), +} + From 94cde8fd318d4986b1b20f814db85b00d1fe45ae Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Fri, 5 Dec 2014 13:53:04 +0900 Subject: [PATCH 025/117] ~45 translated --- docs/locale/ko/LC_MESSAGES/writing/style.po | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po index f60e01dcf..19c3604c1 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/style.po +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -5,7 +5,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -13,7 +13,7 @@ msgstr "" #: ..\..\writing\style.rst:4 msgid "Code Style" -msgstr "" +msgstr "코드 스타일" #: ..\..\writing\style.rst:6 msgid "" @@ -22,12 +22,17 @@ msgid "" "heart of the design of the Python language, following the recognised fact " "that code is read much more often than it is written." msgstr "" +"파이썬에서 뭐가 가장 좋냐고 파이썬 프로그래머들에게 묻는다면, 파이썬 프로그래머들은 " +"파이썬의 높은 가독성이 좋다고 말할 것이다. 실제로 높은 수준의 가독성은 파이썬 " +"언어 디자인의 심장이다. 코드는 쓰여지기 보다는 읽혀지는 경우가 더 많다는 사실 때문이다." #: ..\..\writing\style.rst:11 msgid "" "One reason for Python code to be easily read and understood is its " "relatively complete set of Code Style guidelines and \"Pythonic\" idioms." msgstr "" +"파이썬 코드가 쉽게 읽히고 잘 이해되는 한가지 이유는 비교적 완벽한 코드 스타일 " +"가이드라인과 \"파이썬스러운\" 관용구 때문이다." #: ..\..\writing\style.rst:14 msgid "" @@ -36,12 +41,18 @@ msgid "" "lines of code do not follow the common guidelines and fail to express the " "intent in what is considered the best (hear: most readable) way." msgstr "" +"뿐만 아니라 베테랑 파이썬 개발자(파이써니스타)들이 코드의 어느 부분을 지적하며 " +"이건 \"파이썬스럽지\" 않아, 라고 한다면 이는 보통 파이썬의 일반적인 가이드라인을 " +"따르지 않았고, 가장 좋은 방법(대부분 가독성)을 따르지 않아 코드의 의도를 표현하는데 " +"실패했다는 뜻이다." #: ..\..\writing\style.rst:19 msgid "" "On some border cases, no best way has been agreed upon on how to express an " "intent in Python code, but these cases are rare." msgstr "" +"어떤 경우에는 파이썬 코드의 의도를 표현하기 위한 최선의 방법을 합의하기 어려울 때도" +" 있지만, 이런 경우는 드물다." #: ..\..\writing\style.rst:23 msgid "General concepts" From a614de202ef90409dc65f62872b03836f1be2f46 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Fri, 5 Dec 2014 14:08:05 +0900 Subject: [PATCH 026/117] modified: locale/ko/LC_MESSAGES/writing/structure.mo modified: locale/ko/LC_MESSAGES/writing/style.mo --- .../ko/LC_MESSAGES/writing/structure.mo | Bin 26134 -> 40742 bytes docs/locale/ko/LC_MESSAGES/writing/style.mo | Bin 352 -> 2366 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index c224d0393a95387bdc0e13fe298c09d5dd70587b..6bca488f00f856470d76ff6fb3ce7f1cc251989b 100644 GIT binary patch delta 15543 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 delta 1014 zcmYMyX-HI26bJDCd$VYw%{Zx*mYKFWX-T%(o|;=$nrN1mX)ZyQq64KCMoN$r8KYB# z6+)>&AHq{81!jwi*+!Tx&_+s-PW7p%l=|2E(7^D!=iKw|d-vSi)S)^aD3xz4`g-s; zkN+wBA6NcHz^M9PR}RM*yHTSKaHpPh18e>1En27td})XgP*@x50`#*kejM52bdT?;cogEzncm)(kuR~qZ_9IWt>l=kCaLl1^|2p7XrCEPTZt_cYG%Z zsHT0igC@-Y4pGxgU@_}X&~$ol7GP$6>KtGaokw>vA4~5uZV6^*8JAjte8#nNf$5CD z(>0YGOb!J+=r*1~6x}^vYxR{dwv-RFQFaYaX+P&*(^}fPfFDGo76J)u`Rzqo%iWi9 zP3GUz5A;_AaFV`V4hYvNTFFhYK4=yDZ{#3+4e*i$%Obf5^@`S7Hn0xpWqcq8sHc%} z%+nX~{8(DP9;l$t5`j3HypbKCXE$kQE=lYtUs#n4d||$Zg6}I&(e7GBD$jo{C(fh- zyeD{-1~}*-{Yopg0L`>8ox5P2*H*0q<_y4x`Jqhil#bF8&iicV<)p`UXh-140=hZ> zeJ8Ml`HpPfBl;}|$e=fJd6{6fM&^~;tk!=6n=P+IiVOidvAK2XWv?k;ku1+JMJ`(c zRk3@w=*7>k$|&K1230Q1=rt&t?2VIrr8~q`aZSqJwI{nEuT;#7eyY+Q@lln7t3N9C zn#g>)9-X7gin#HL3?;-U_GO8)r8se)PG)UxH;5&DP?25RY8CO!>{6vIE7~aL0@WZr zh0j&d7l*j`o*QYsHqw09>9`c&tg9YwZ1~jHK79Vn@YNIYuq;X$=RDrxJaUm0^1CWj aFCjH$Itf0tPqlZ|^~l-NW2#shGL%2tgw&V- diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.mo b/docs/locale/ko/LC_MESSAGES/writing/style.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..335c94d90a413fc68045b16262492a3d27ee87dd 100644 GIT binary patch literal 2366 zcmaJ=Pfr_16yN?$#i^=PsfQk(IDzVQf%bshGzuj&MS>6|q*8iY?7`kEY8b;DS}Jo<)VjAQQ~%k?m7hj#A9>0(FeqlwiJ{bdOhEl#b;lvsRKtXr4O`U$ot%4)$1_ zCtcfT37WU!3OrKA6<=gmkSLvvr@+KxUC@Ydfm)p}dUgOFQDYj%e1UlpC;(m-EwF%j zi0f8QDEK_XJQ}dNd$u1~gOuU63jqR-e_mj7*H^f8ealTKfpDnwv{2vW0riI&?RbAg zfynw<%W-m)W)`k$@Cf%A^mkb=SAy%yA$83=&eLg_m(1D;7RIW2^Oo%>Fzj~5W4B@m7d2*JG*2Urd$>e#%V&NBc*2Va zp_Jugp@d6%aGkOlK*Kl17f+*6x}SjQDyyW5&|Frx9eC^PS}hNfsp3r8=p)-a_m2J0 z0)yuqBb?a~P+P4e$fEH)Kj1u}99G@wF~x`Ke`*d7o1YBP$VhBt6fx#CwqUEw-H@9TW7o{-8S~N@eKixCp8V*W znJW{0Q?xLa&L-=>o|>TKl2ua)+n2clLMPY=X;9ar0X1rm*y zVr4_D*2Qis^6CrKrQW%$mPy?ISz-@W#o9fYe+Edp_G(?#7CXgGX`9-6cd?KBQIe~5 zxm^K_YPjYH$z<}g>Q$A|Qou&3c zlf-jXQg2s}I^`v7t3`Y7NNzQiRN}z~5dL%=^g{#SNR$eqfg&2NA^t9kodU^HUaT&Q z>LH1}?asY|s6Fh-0N@qTtN`7>vDQx!9Xd6rR92d3j2io9ORN-0yjT)1^0JyI;F8ck+a$!cpS7s}I8y^@#N#8x^aI5TfJ6v5w6Ud1XqmdCn1OKT{(cXbu2wx1%`);s zIo%rwU9TX6Rx%G+o8n0e>BH=0B#!8~u!oelqPZ*fN&}(*zzTEEs6hq)Oa}1jQLUE6 zT3$Rkq|U=ir<_+D(Ps}pbG6>=Yte&&SO!1g$J2Ya9Y=)Hn-8 zHIn@CNIfHoHmfZwYh(>QT5WYoEm2gIQM#fYrji+Nwz930{*`a<7hw&_U-Dw_NW(t! d%FkNXetvkiHyU!Q)lco#lHA&D?>Ejg@c#~!VHp4b delta 82 zcmdld^ngj{o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#kl^K1#XP#+%!KSy6z1shji TM^7IIM;DhM*WlpEZ7hud=`#+9 From 83ca18c79509ec9a3b4b6688f3dd9b0ae858ee7c Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Fri, 5 Dec 2014 16:41:57 +0900 Subject: [PATCH 027/117] translated ~115 --- docs/locale/ko/LC_MESSAGES/writing/style.po | 22 ++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po index 19c3604c1..a22b90676 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/style.po +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -56,25 +56,26 @@ msgstr "" #: ..\..\writing\style.rst:23 msgid "General concepts" -msgstr "" +msgstr "일반적인 개념" #: ..\..\writing\style.rst:26 msgid "Explicit code" -msgstr "" +msgstr "명쾌한 코드" #: ..\..\writing\style.rst:28 msgid "" "While any kind of black magic is possible with Python, the most explicit and" " straightforward manner is preferred." msgstr "" +"파이썬으로 어떤 마법을 부릴 수 있다면, 가장 명쾌하고 간단한 방법으로 할 것이다." #: ..\..\writing\style.rst:31 ..\..\writing\style.rst:58 msgid "**Bad**" -msgstr "" +msgstr "**나쁜 예**" #: ..\..\writing\style.rst:39 ..\..\writing\style.rst:69 msgid "**Good**" -msgstr "" +msgstr "**좋은 예**" #: ..\..\writing\style.rst:46 msgid "" @@ -83,10 +84,13 @@ msgid "" " exactly what to do by reading the first and last lines, which is not the " "case with the bad example." msgstr "" +"위의 좋은 코드에서 x와 y는 호출자로부터 직접 값을 받아와 곧바로 딕셔너리로 반환한다. " +"이 함수를 쓰는 개발자들은 첫 줄과 마지막 줄을 읽는 것만으로 무엇을 하는 함수인지 " +"정확히 알 수 있다. 하지만 나쁜 예에서는 그렇지 않다." #: ..\..\writing\style.rst:52 msgid "One statement per line" -msgstr "" +msgstr "한 줄에 한 구문" #: ..\..\writing\style.rst:54 msgid "" @@ -94,14 +98,17 @@ msgid "" "appreciated for their brevity and their expressiveness, it is bad practice " "to have two disjoint statements on the same line of code." msgstr "" +"간결성과 표현성을 위해 리스트 컴프리헨션(list comprehension) 같은 복잡한 구문을 " +"만드는 경우가 있다. 이렇게 한 줄의 코드에 두 개의 분리 가능한 코드를 " +"넣는 것은 잘못된 습관이다. " #: ..\..\writing\style.rst:85 msgid "Function arguments" -msgstr "" +msgstr "함수 인자" #: ..\..\writing\style.rst:87 msgid "Arguments can be passed to functions in four different ways." -msgstr "" +msgstr "인자는 4가지 경로를 통해 함수로 전달될 수 있다." #: ..\..\writing\style.rst:89 msgid "" @@ -112,6 +119,7 @@ msgid "" "the user of the function has no difficulty remembering that those two " "functions require two arguments, and in which order." msgstr "" +"1. **위치 매개 변수** 는 필수적이다. " #: ..\..\writing\style.rst:96 msgid "" From 38f6c21a77b58bcece66fad2fb5c11fa9d70156d Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Fri, 5 Dec 2014 16:43:23 +0900 Subject: [PATCH 028/117] translated ~115 --- docs/locale/ko/LC_MESSAGES/writing/style.mo | Bin 2366 -> 4575 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.mo b/docs/locale/ko/LC_MESSAGES/writing/style.mo index 335c94d90a413fc68045b16262492a3d27ee87dd..d12c48d5d32773c3fd8f4cc3ea05d258718ef8bc 100644 GIT binary patch delta 2402 zcmZWpO>7%Q7~S*_M9W`MDF+TC;83g(si>SlNVK9A2cQC^iW3>H$MMkhuDi32V^PU2 zb!bS9NNL4KUfVr4}(DMBjBwh(0k1%e8}R+9=wXY!J0 z!|oRK{k92|SI9^=)9quxd2Mqto80BNQYp|E-5U^I=^!84LPUs8Sb-PSfO9NJ3HEMO z^n~;JNY0b4jF^i(=lFeuJ12xMz!%QJQ!Y}sE*$JDz2V#Lhaem4$apds24y3**zWK} zFEXYCCWRcP;f6uhdb-^6MA+>O!{4+;rFP&P62q)Qfm!(?WhDij4GS;Gf$&mZb%}({ zmPStdK|vuBcO#@MkWN5GDqu+}fTy}1kckYTMiQ{c@!?5dsQwli8n5@e&pMs1s zc9rBQ3QbZTaNcZv-S^y%(%U}N9q|aG1+!Ea#d1z%q$d!+$WBWnfjE*LcTeN;3`v)| z$^}ZvBy4Q-lSN3u@3&d90SemUf=X0T$mLKb!mTLqFhw^IO;Cc+l(oOi%m=`j=G6D;)-P0 z`f=y+zEUEgKdzf|4QA?N_9tb&xoBp}y`}wCnMTF@P-l8^zSC?l-71^0I(}7pe3Her z3KnMWoSA9si}M4_F*9psc7o21bed(eSZ1B&4Sltt7uH$)$x2*n!|6Jlu*b~Ysfxb1 zq$lPWc9@wRqacpinADeXIzAttFPoWlN8cPZcdKy?d-llbhG5-f$hoeY-73}?YSg0> zt%JMMeI=@V261~WSzj|XVJZzaVy4TiXnUxynbigrjVf2maiz)3;yE*S38B6)GZm(r zUm5fX`%Y_7Hz%obJy|oOle#jduPxbivmQ^^QK4l4Y*3daY7>2%%S}o|l{Iam%k!4v zBUcJgL0ag4ePReUN2TnW8LOhYMZGGbQ;&{wsK1(kpP;_TrHli z#j|6~)T&)NU+nTp<~DkjZO^((gUxY!P0wAhA!_5Tkv%`{C|Raa$kYUU8?3Xkq?gv5 zxLQSH=Ch?WP;wOZEK+V_l7-)Q%v?XsC&V4E|ncUp7U!`!b^Y~8#; z-rWx48jhCFmwIY)VAfe~n#wKWD8AH)>lG|4KaC1W3G9&1n75 z{kQOWWSu77b!)}UUfpiYmcCepBS7N+n=b*5eD7MQcSO(3Nj{6ScFSt?Qe2^aQDVrPD6=I%dv)_B#NW delta 183 zcmcbwyich9o)F7a1|VPqVi_Rz0dat!210>pE+D%Wh(#G07&?Ho43M4_`hnHU(l zfV2fO1A{YA>@biP0P@*c85mN4dRe_&@|SO=v0Ie>(7K1WKbLU2iC zPU_}3W^u;NMXah!n?G>4FbcfcJLUD{ISOyOmb`6lcr$m;W-jhD#?4E44>AD&C6^@T From 3ebf0786e887b78e5ff175ee1f59fba033280ab1 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Fri, 5 Dec 2014 23:52:28 +0900 Subject: [PATCH 029/117] bug fix --- .../ko/LC_MESSAGES/starting/install/win.mo | Bin 8469 -> 8471 bytes .../ko/LC_MESSAGES/starting/install/win.po | 22 +++++++++--------- .../ko/LC_MESSAGES/starting/which-python.mo | Bin 12444 -> 12436 bytes .../ko/LC_MESSAGES/starting/which-python.po | 16 ++++++------- .../ko/LC_MESSAGES/writing/structure.mo | Bin 40742 -> 40733 bytes .../ko/LC_MESSAGES/writing/structure.po | 18 +++++++------- 6 files changed, 28 insertions(+), 28 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo index 3eea441fdb0e74d5af542a5e6706fe09f9115443..5dd1a7a6e756a8aa883fd5a0b9b15e40d4afcb53 100644 GIT binary patch delta 324 zcmXBPJxc>Y6ouh4lEg)`e&kCejvGOUDN+O!qgbttjbI@u)Ix0R(;8S5e?V|ilQcpq zE1PMof?y>U3Mu>*Vx^tnE2*BDx#!N@xejl`_G+|dq^*S1lGIE}3;2aIm`+J=Xz`xh zCz>(o#*^+i?@UM$)+eP0e8euErlk~l<4ZaA-jo!g#cw>uZR(9_+D};Yc&)<4zq8Ul z`!Zb}f~~x?g!#f~pmoer-@#Wrnv)LcTbY;o=Fb}78L4O36JX0qtV?|vcfXMW;t_Q@UOK0H&3Yj)3++_{a6*}Mv>{}C4kL-Pkb CZZYWq delta 365 zcmZwC&nv@m9LMq3XKicP{Q8ci*}mgsiX>sn#dkNQmhz)WD4G(9%Syg+a1?!GmIFCC zxqMGV`1qP z(|Awr6HP#>M5G())kew1T$A*Gk66W0R0@+1#H2X)hGxmZG=AeM7U<8nFuum&n!jcF z@Nb(m%e{}OD}sj|QV%9N>kH-3qCbT%xSWs{nd|S8?#P`arAy56iW)xQ8y=^mUh;G4 z`a)$}8mE40v*9$2X9}9kc;`{epD}jO4EnpFWX#IsH#WD{^DBk?Qn9>W+Swi+^KRRJ eyoyyb8Gj-E5%GpnMgJ(}8qe4R|K)whem8%V3q5K8 diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.po b/docs/locale/ko/LC_MESSAGES/starting/install/win.po index 0c8993801..b74441862 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/win.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/win.po @@ -21,13 +21,13 @@ msgid "" "`_ of Python 2.7 from " "the official Website. If you want to be sure you are installing a fully up-" "to-date version then use the \"Windows Installer\" link from the home page " -"of the `Python.org web site `_ ." +"of the `Python.org web site `_ " msgstr "" -"우선 공식 웹사이트에서 파이썬 2.7의 `최신 버전 " -"`_ 을 다운로드 받아야 " -"한다. 확실한 최신 버전으로 파이썬을 설치하고자 한다면, `Python.org web " -"site `_ 홈페이지의 \"Windows Installer\" 링크에서 다운받으면 " -"된다." +"우선 공식 웹사이트에서 파이썬 2.7의" +"`최신 버전 `_ " +"을 다운로드 받아야 한다. 확실한 최신 버전으로 파이썬을 설치하고자 한다면, " +"`Python.org web site `_ " +"홈페이지의 \"Windows Installer\" 링크에서 다운받으면 된다." #: ../../starting/install/win.rst:11 msgid "" @@ -50,9 +50,9 @@ msgid "" "which copy of Python is run." msgstr "" "파이썬이 설치되는 디렉토리는 버전 숫자를 포함하도록 디자인되어 있다. 예를 들어 " -"파이썬 2.7을 설치하면 :file:`C:\\Python27\\` 디렉토리에 설치되는 것이다. " +"파이썬 2.7을 설치하면 :file:`C:\\\\Python27\\\\` 디렉토리에 설치되는 것이다. " "덕분에 하나의 시스템에서 충돌 없어 여러 버전의 파이썬을 사용할 수 있다. 물론 오직 " -"하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있다. :envvar:`PATH` " +"하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있다. :envvar:`PATH` " "환경 변수가 자동으로 변경되지도 않는다. 그러니 실해되는 파이썬의 버전을 늘 관리해야 한다." #: ../../starting/install/win.rst:23 @@ -63,8 +63,8 @@ msgid "" ":file:`C:\\\\Python27\\\\`, add this to your :envvar:`PATH`:" msgstr "" "파이썬 인터프리터의 전체 경로명을 매번 입력하는 일은 금새 싫증난다. 그러니 컴퓨터의 " -"기본 파이썬 버전이 있는 디렉토리에 envvar:`PATH` 를 추가하라. 파이썬이 " -":file:`C:\\Python27\\` 에 설치되었다면 아래와 같이 추가하라." +"기본 파이썬 버전이 있는 디렉토리에 :envvar:`PATH` 를 추가하라. 파이썬이 " +":file:`C:\\\\Python27\\\\` 에 설치되었다면 아래와 같이 추가하라." #: ../../starting/install/win.rst:32 msgid "You can do this easily by running the following in ``powershell``:" @@ -113,7 +113,7 @@ msgid "" "`_" msgstr "" "Windows에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 된다." -"`ez_setup.py `_" +" `ez_setup.py `_ " #: ../../starting/install/win.rst:60 msgid "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.mo b/docs/locale/ko/LC_MESSAGES/starting/which-python.mo index 4100168790c93209711fcd2cb871ce05c18f3b2b..7518efb3e4a033c45dd2f4f8776dfb2773c72ed0 100644 GIT binary patch delta 502 zcmXBQODIHf6vy%3WvCfqY`h=W7{+*0W|C4UDJk|8N)b}lYQ$Z3n3(6!P`fwO0@Dv}*0@5?Vibu-A zv2rN`=a5HhyjWUi*oCjivMTpVUN-E+*x;!ODS`YL)A6J-exsLFEXVnMHQ!MW)kqEG z=WNO4>c>gI&&XL9-_RckCQfHsep_RtIX9f__+DK6+CKVP+BdBavm?zM_&k`2&hLJ& wZA2HsR<)x&gJY8-M6Ipp{Hkd!6;B&x#O}H?te28HE6v?&4Y?;G5ALg!e~D~jApigX delta 515 zcmXBQy-QnR6vy#jyc%fIU|d?YTCXvtwbq+dC7^>Z68iv)JCxFPC@w{agNsRo z%C%sN4iz1W3W0R3(8ZTveW3&*DlQ^o^baUx@EZb``#I-4=W_0O=AsMHRKXG3mQ+zI zIUUj-Hj!r^NdNFZp5os+X$e>BrRVewJ*1y}wn1``&!da{yD4?y3Qkc!!(!iSpVW`< zum;z$9JhRm=?B3sg}3;D>Ft=qSLpUjA2EUv+{Zf@Y?g+x3yTBdIDoV0#Vq#V1y*Bo zKni0IzQJ+)jmLqQbVTs&k#rwFJ(j94fjnB|#nRfu7kG{=t5A#7!iK|G9Q^r-R7Spm zmH4N%bfbq)r321$ZG1=lr&U^TCn#~bDtHO_8C8d*5$sJ*8x!~JaCtc0UAydbjol=Z z*NeZdXV&aXbI@~@n#{*nZobav6U&xux%#S1PEE>?w-@s9Ir~fFMB3xqcNots(>`em X869}n|I%p3QU80R(=yW;f5v?aJ>_K0 diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.po b/docs/locale/ko/LC_MESSAGES/starting/which-python.po index 0e6dc04d9..dc8a7be39 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/which-python.po +++ b/docs/locale/ko/LC_MESSAGES/starting/which-python.po @@ -34,21 +34,21 @@ msgstr "이 문제의 기본적인 요지는 다음과 같다." #: ..\..\starting\which-python.rst:16 msgid "Python 2.7 has been the standard for a *long* time." -msgstr "1. 파이썬2.7이 *오랫동안* 표준이었다." +msgstr "파이썬2.7이 *오랫동안* 표준이었다." #: ..\..\starting\which-python.rst:17 msgid "" "Python 3 introduced major changes to the language, which many developers are" " unhappy with." -msgstr "2. 파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." +msgstr "파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." #: ..\..\starting\which-python.rst:18 msgid "Python 2.7 will receive necessary security updates for a few years." -msgstr "3. 파이썬2.7은 향후 몇년은 필수 보안 업데이트를 받을 것이다." +msgstr "파이썬2.7은 향후 몇년은 필수 보안 업데이트를 받을 것이다." #: ..\..\starting\which-python.rst:19 msgid "Python 3 is continually evolving, like Python 2 did in years past." -msgstr "4. 파이썬3는 파이썬2가 지난 몇년간 그랬던 것처럼 계속 진화하고 있다." +msgstr "파이썬3는 파이썬2가 지난 몇년간 그랬던 것처럼 계속 진화하고 있다." #: ..\..\starting\which-python.rst:21 msgid "So, you can now see why this is not such an easy decision." @@ -132,7 +132,7 @@ msgid "" "Check out `Can I Use Python 3? `_ to see if any" " software you're depending on will block your adoption of Python 3." msgstr "" -" `Can I Use Python 3? `_ 에서 당신이 사용 중인소프트웨어에서 " +"`Can I Use Python 3? `_ 에서 당신이 사용 중인소프트웨어에서 " "파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 확인해보시라." #: ..\..\starting\which-python.rst:59 @@ -147,9 +147,9 @@ msgid "" "writing; if you're a beginner there are far more important things to worry " "about." msgstr "" -"`파이썬2.6, 2.7, 3.3에서 모두 돌아가는 코드를 작성하는 것도 " -"가능하다.`_ 이 " -"가이드는사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지다루고 있다. 초보자라면 신경써야할 대단히 " +"파이썬 2.6, 2.7, 3.3에서 모두 돌아가는 코드를 작성하는 것도 " +" `가능하다 `_. 이 " +"가이드는 사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있다. 초보자라면 신경써야할 대단히 " "중요한 사항들도 있다." #: ..\..\starting\which-python.rst:68 diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index 6bca488f00f856470d76ff6fb3ce7f1cc251989b..83c415e43b7aee5a76f8dc7330e88830fcb788f3 100644 GIT binary patch delta 677 zcmXBROGuPa7>Ds^2GpsnTu5a_7^p>P5kV2HLX3>)qG_q2BPNx2A%`wvHHIc>$&iyN zrBQ^oH9i+@vTPC6q6@eYN`jVQ*&-;q&;zZ0=l{OnIp>`-W0T>L$?*8^aQu7-@=BmM z4EIan9WYl0S=OJF!xr<*VfbWTd;}WJ-zp$suC9co<}X$D^sfe*e$=|>J=Hhnx7CoL zcWWTk`a_*@|D#&sOu6WLJtoU0>?L<1nDpC*YnoG{A)4r8`B1c}m-LRWrDS z!4}wU{-Y~&*Qx&l)U;f#XKJ7W)$*lTl?CXH5I;zgh=1Wkh!@AskAN8jBN4yi}T_n2Tfp%Pm zUm;lE4Qb|_D?XPwUyIDMJzi$c>4jzHpWc$C8P}lI`Ud^1BYnPx_9T2QU3(p(y0IS$ zG?Da2x$ofP8~%4r)HMLxZ1fMpGkrDWlzz~6%b~RSwoj^GwaR{E7*6W35f8Wi`i?{D zd{CV7VQ+FgB{Nx28VL$ZYD2+j>7H`GHV&5R{KC2`cNG Y(t;O_-KoL;SZ8kXebLHbZfJYzKa?ViF#rGn delta 692 zcmXBRU1-g59LMqZIc%fYQ^S;WsF6A(G%dM63yWg2vCV92%~PArPHWcMgRq8aZO3-j z*h)68Jay#GYB6#{i9|@zQqq(Xap5gjum9)!d;0$Vzv1!VwejHXKf(6a04&RgydaDg zzzbly5Efd0SOja$@Atw-bNW80G5;ur9&=R*q?o^#!d#uPAL5#(DegC^&&)3mK&pJ6HPq?{rcvx<63_d?m92sE=tUgwMCa61D7yT z2iwdu>mgHj9{=CK!3Ga@JUim$tZ!6oWMyMJEcSa<6DSUlyxvfICg&t<(NSICy3aabru{U0)0ke@t~1`= z16FrJk~!Q3cg*WF*F1IBCo+f6!F+R|+o#e@ZLq#Zzv$Qn_tf4Vn4>Ftp+d9!ytT%n z@W^$$ColSTcGTSu>m3-1!2^9h2p^mH!1#UFemXZzYvQ9 diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index b06617bd7..7d48471fc 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -168,9 +168,9 @@ msgid "" "built-in modules such as `os` and `sys`, third-party modules you have " "installed in your environment, or your project's internal modules." msgstr "" -" `import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있다. 이는 내장 모듈인" -" `os` , `sys` , 프로젝트에 포함시킨 모듈과 따로 설치한 서드파티 모듈도" -"마찬가지다." +"`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있다. 이는 내장 모듈인" +"`os`, `sys`, 프로젝트에 포함시킨 모듈과 따로 설치한 서드파티 모듈도 마찬가지다." + #: ..\..\writing\structure.rst:92 msgid "" @@ -190,7 +190,7 @@ msgid "" "`_ of how the dot " "notation should be used in the Python docs." msgstr "" -" `my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` " +"`my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` " "이라는 이름의 파일을 찾는다. 이는 잘못된 경우다. 아래 글을 참조하기 바란다." "파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한" " `예시 `_ " @@ -200,7 +200,7 @@ msgid "" "If you'd like you could name your module :file:`my_spam.py`, but even our " "friend the underscore should not be seen often in module names." msgstr "" -" :file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능하다. 하지만 우리의 친구" +":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능하다. 하지만 우리의 친구" "밑줄(_)은 모듈 이름으로는 자주 쓰이지 않는다." #: ..\..\writing\structure.rst:105 @@ -281,7 +281,7 @@ msgid "" "namespace, its only advantage over a simpler ``import modu`` is that it will" " save a little typing." msgstr "" -" ``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 " +"``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 " "전역 명칭 공간(global namespace)에 넣어둘 수 있는 좋은 방법이다. " "뿐만 아니라 이 구문은 전역 명칭 공간(global namespace)에 무엇을 불러올지를" "명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭다. 단순히 ``import *`` " @@ -309,7 +309,7 @@ msgid "" "from, as in the ``modu.func`` idiom, greatly improves code readability and " "understandability in all but the simplest single file projects." msgstr "" -" :ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나다." +":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나다." "가독성이란 쓸데없이 긴 본문과 잡동사니를 피한다는 뜻이다. 그러므로 어느 수준까지는" "간결성을 얻고자 하는 노력이 필요하다. 그러나 너무 간결한 나머지 모호해서는 안된다." " ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은" @@ -336,7 +336,7 @@ msgid "" ":file:`__init__.py` file, which is used to gather all package-wide " "definitions." msgstr "" -" :file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식된다." +":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식된다." "패키지의 여러 다른 모듈들은 일반적인 모듈과 비슷한 방법으로 불러와진다." "그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별하다." "이 파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰인다." @@ -437,7 +437,7 @@ msgid "" " use object-orientation. Therefore, Python programmers have more latitude to" " not use object-orientation, when it is not required by the business model." msgstr "" -"게다가 modules_ 섹션에서 볼 수 있듯이 파이썬이 모듈과 명칭 공간(namespace)를 다루는 방식은" +"게다가 modules 섹션에서 볼 수 있듯이 파이썬이 모듈과 명칭 공간(namespace)를 다루는 방식은" "개발자로 하여금 자연스럽게 캡슐화와 추상 레이어의 분리를 가능하게 해준다. 캡슐화와 추상 레이어의 " "분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유다. 그러므로 파이썬 프로그래머는 비지니스 모델이" " 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 된다." From e5e33f404a692be22afd6f45ab8e9c3bd8cd95d5 Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Thu, 13 Oct 2016 07:16:22 +0000 Subject: [PATCH 030/117] update with 2016 version --- docs/locale/ko/LC_MESSAGES/_themes/README.mo | Bin 352 -> 1723 bytes docs/locale/ko/LC_MESSAGES/dev/env.mo | Bin 352 -> 24199 bytes docs/locale/ko/LC_MESSAGES/dev/env.po | 533 +++++-- .../ko/LC_MESSAGES/dev/pip-virtualenv.mo | Bin 0 -> 8561 bytes .../ko/LC_MESSAGES/dev/pip-virtualenv.po | 168 ++ docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo | Bin 352 -> 12175 bytes docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 297 ++-- docs/locale/ko/LC_MESSAGES/index.mo | Bin 2864 -> 4614 bytes docs/locale/ko/LC_MESSAGES/index.po | 129 +- docs/locale/ko/LC_MESSAGES/intro/community.mo | Bin 352 -> 4867 bytes .../ko/LC_MESSAGES/intro/documentation.mo | Bin 352 -> 2171 bytes .../ko/LC_MESSAGES/intro/documentation.po | 40 +- docs/locale/ko/LC_MESSAGES/intro/duction.mo | Bin 352 -> 6599 bytes docs/locale/ko/LC_MESSAGES/intro/duction.po | 76 +- docs/locale/ko/LC_MESSAGES/intro/learning.mo | Bin 352 -> 24665 bytes docs/locale/ko/LC_MESSAGES/intro/learning.po | 508 ++++-- docs/locale/ko/LC_MESSAGES/intro/news.mo | Bin 352 -> 3331 bytes docs/locale/ko/LC_MESSAGES/intro/news.po | 64 +- .../locale/ko/LC_MESSAGES/notes/contribute.mo | Bin 352 -> 1755 bytes docs/locale/ko/LC_MESSAGES/notes/license.mo | Bin 352 -> 759 bytes .../locale/ko/LC_MESSAGES/notes/styleguide.mo | Bin 352 -> 7075 bytes .../locale/ko/LC_MESSAGES/notes/styleguide.po | 111 +- docs/locale/ko/LC_MESSAGES/scenarios/admin.mo | Bin 352 -> 18391 bytes docs/locale/ko/LC_MESSAGES/scenarios/admin.po | 389 +++-- docs/locale/ko/LC_MESSAGES/scenarios/ci.mo | Bin 352 -> 6077 bytes docs/locale/ko/LC_MESSAGES/scenarios/ci.po | 135 +- docs/locale/ko/LC_MESSAGES/scenarios/cli.mo | Bin 352 -> 6069 bytes docs/locale/ko/LC_MESSAGES/scenarios/cli.po | 84 +- docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo | Bin 0 -> 6255 bytes docs/locale/ko/LC_MESSAGES/scenarios/clibs.po | 125 ++ .../locale/ko/LC_MESSAGES/scenarios/client.mo | Bin 352 -> 4349 bytes .../locale/ko/LC_MESSAGES/scenarios/client.po | 55 +- .../locale/ko/LC_MESSAGES/scenarios/crypto.mo | Bin 352 -> 1959 bytes .../locale/ko/LC_MESSAGES/scenarios/crypto.po | 40 +- docs/locale/ko/LC_MESSAGES/scenarios/db.mo | Bin 352 -> 6611 bytes docs/locale/ko/LC_MESSAGES/scenarios/db.po | 113 +- docs/locale/ko/LC_MESSAGES/scenarios/gui.mo | Bin 352 -> 9173 bytes docs/locale/ko/LC_MESSAGES/scenarios/gui.po | 160 +- .../ko/LC_MESSAGES/scenarios/imaging.mo | Bin 352 -> 4493 bytes .../ko/LC_MESSAGES/scenarios/imaging.po | 112 +- docs/locale/ko/LC_MESSAGES/scenarios/json.mo | Bin 0 -> 2661 bytes docs/locale/ko/LC_MESSAGES/scenarios/json.po | 86 + .../ko/LC_MESSAGES/scenarios/network.mo | Bin 352 -> 3223 bytes .../ko/LC_MESSAGES/scenarios/scientific.mo | Bin 352 -> 12139 bytes .../ko/LC_MESSAGES/scenarios/scientific.po | 245 +-- .../locale/ko/LC_MESSAGES/scenarios/scrape.mo | Bin 352 -> 6135 bytes .../locale/ko/LC_MESSAGES/scenarios/scrape.po | 102 +- .../ko/LC_MESSAGES/scenarios/serialization.mo | Bin 0 -> 1989 bytes .../ko/LC_MESSAGES/scenarios/serialization.po | 65 + docs/locale/ko/LC_MESSAGES/scenarios/speed.mo | Bin 352 -> 16401 bytes docs/locale/ko/LC_MESSAGES/scenarios/speed.po | 296 +++- docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 352 -> 27977 bytes docs/locale/ko/LC_MESSAGES/scenarios/web.po | 851 +++++++--- docs/locale/ko/LC_MESSAGES/scenarios/xml.mo | Bin 352 -> 2253 bytes .../ko/LC_MESSAGES/shipping/freezing.mo | Bin 352 -> 11475 bytes .../ko/LC_MESSAGES/shipping/freezing.po | 318 ++-- .../ko/LC_MESSAGES/shipping/packaging.mo | Bin 352 -> 14721 bytes .../ko/LC_MESSAGES/shipping/packaging.po | 332 +++- .../ko/LC_MESSAGES/starting/install/linux.mo | Bin 6381 -> 6634 bytes .../ko/LC_MESSAGES/starting/install/linux.po | 173 +- .../ko/LC_MESSAGES/starting/install/osx.mo | Bin 8038 -> 8630 bytes .../ko/LC_MESSAGES/starting/install/osx.po | 198 +-- .../ko/LC_MESSAGES/starting/install/win.mo | Bin 8471 -> 8666 bytes .../ko/LC_MESSAGES/starting/install/win.po | 171 +- .../ko/LC_MESSAGES/starting/installation.mo | Bin 2058 -> 2277 bytes .../ko/LC_MESSAGES/starting/installation.po | 54 +- .../ko/LC_MESSAGES/starting/pip-virtualenv.mo | Bin 352 -> 8513 bytes .../ko/LC_MESSAGES/starting/which-python.mo | Bin 12436 -> 12769 bytes .../ko/LC_MESSAGES/starting/which-python.po | 338 ++-- .../ko/LC_MESSAGES/writing/documentation.mo | Bin 352 -> 10763 bytes .../ko/LC_MESSAGES/writing/documentation.po | 259 +-- docs/locale/ko/LC_MESSAGES/writing/gotchas.mo | Bin 352 -> 9675 bytes docs/locale/ko/LC_MESSAGES/writing/gotchas.po | 208 ++- docs/locale/ko/LC_MESSAGES/writing/license.mo | Bin 352 -> 3847 bytes docs/locale/ko/LC_MESSAGES/writing/logging.mo | Bin 0 -> 8159 bytes docs/locale/ko/LC_MESSAGES/writing/logging.po | 207 +++ docs/locale/ko/LC_MESSAGES/writing/reading.mo | Bin 352 -> 5049 bytes docs/locale/ko/LC_MESSAGES/writing/reading.po | 110 +- .../ko/LC_MESSAGES/writing/structure.mo | Bin 40733 -> 51796 bytes .../ko/LC_MESSAGES/writing/structure.po | 1416 +++++++++++------ docs/locale/ko/LC_MESSAGES/writing/style.mo | Bin 4575 -> 34578 bytes docs/locale/ko/LC_MESSAGES/writing/style.po | 891 +++++++---- docs/locale/ko/LC_MESSAGES/writing/tests.mo | Bin 352 -> 15449 bytes docs/locale/ko/LC_MESSAGES/writing/tests.po | 375 +++-- 84 files changed, 6640 insertions(+), 3194 deletions(-) create mode 100644 docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo create mode 100644 docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/clibs.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/json.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/json.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/serialization.po create mode 100644 docs/locale/ko/LC_MESSAGES/writing/logging.mo create mode 100644 docs/locale/ko/LC_MESSAGES/writing/logging.po diff --git a/docs/locale/ko/LC_MESSAGES/_themes/README.mo b/docs/locale/ko/LC_MESSAGES/_themes/README.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..d5a10dd06f5b724cd2494ae8687babb26bfcc04e 100644 GIT binary patch literal 1723 zcmeHGJ&zMf5FI{_z=DLk41x-fke2JgHb^YPf$*|s&pLY-yaovpXnV?bpWEG|?w-9J zi1-CW{~t7v9Tkji-S#Zs9=@}bi3{*8^{u%t1o@PbN@Ps-5R`apJ0 zk)v?-cb)~G(jXAdl5%$HKn8Wd(PyNBFPCa%FZ<&Z=GM`DE&Yn5$&Yr9wG5npLq`)E z1L6``>vUr1%9f7yn;dgHE7y#?gR&2?0?MNl(v?6jbJz4GH)d77i&-3u#l&XRdaySU_Z-*V5!>i)M%{Mjy6AMowKjFT zS$FeF8w-wN%m*scANf7$_r_whC$@X^>s~e*TzR^;+iwk}4`Sk^@pvoNWpw}1a7eqo zQJ;S4k9vdQ-QM>0xWB)D2d>BvvWW@HbwKnawd|8EsBgXzj3J7oW4( ZsxsP=Q`Xc?ucg;p-{Ky)idR( z?rN&4r`?MbST;PMd_M$~kVp|oNI_8|A(SWzinNMQ_6-R|iBJgPX@e4hl!$}}Uh?~& zd#k(0_6p@OQd^!mU0qf8o_jw2=i^@cyKj2=???RU@beCS?t7W8W`DMRCW=1D%g zFNvZ*fIiFhk6sx?KMTG2swhgJpN761`hDobJof|WTexlj!=%ioOW_CiF+p;vVetrBSrE?ALwR^!E5kXp8qg1J$@Mte|7)pPlr6v4j!G zFDmG>8t*123;H>(H=y#1??B}j{|42({|!YH(HkD}@12LruC77l z7cHpl{FP@se{Y7qmFx4+cS1h`)qJ0T-UaGwUG zUJs|CpW^xv=#Qb#LEi!W>xx~ATD$NJ3%H1#@x@tdhSzJ~wO9zR|d#;mr6W1&9zUwFbyqLIn&~-)9 zNDkv{6jw0w+{nsmp8ab?A1anXgDb`ckorrWf~I(dJXB~_A5+_*@qD$ykM zOX6=-CZ#Q9_dv53?$IYUSz(?Xq*c@H?&qVuePy)ehJOO20@>n*pRWJ6w(1S{l|j~K2WXIafqIY@`Yq>?PUF1a~OiqsZ8POE*_ zO?$nhkUV-xT#X9&o-U;st-Ep3ZnWbP-e5Cn=lOxN_oSyX?kDJ{KtJ`nZB0HJ4s+zF z#T030AH{Xkc-d9S&1%{7x$OEe1Mn;D#F=62NRg; zx6=Xa3zCTRd(qp^ZTg&d;)vL?y;?)z&tgqvhg7xotr|8x3;|DJ-A<0!*Xq9We;tS+D+bF(F*M-F+if#a_zJPaSn)poILyaMVNQclI_#5a zYVVcJcthHAlYDeH55-xL#9aZIGlqp0h3PD)awkl!bz?mC5E=ra?BkQ^LE5aBRFz34 zkeu36Tzdv4iO+2G+ex>pk*;j)Y%yG!B3TRyW(wYua0XZzfK<72h-Wy7Ht<@vw2Oz^ zr@+2qV0qQ(%R#gu3fvFOI zOJuEgm+mkD^7mQ2y#ksN2lg@a>4L`l$$+R=7~5qGki|G-ruPRds>>bb=xUm@gr9EL zChX-IAxL(k$@GY+VNI{DwVDXD=(N_>BCMk1*Vaa~>9rhfnr*pw&eA+JEW|@Dv{tn`zXv%#D|A*Tnu2$0+nP#6zm*;FSy{Kn~(839A;nusO^*kUlYcK`!DCs#GC-qyv4zta1bXx%Bv1G`NW7x6 zv?ohxGZ{9SCPg#)U=F0@q%9lK_U0~j(Mbj*2F++Y9i${2M7j28k8ro=!0j|kt4Xvy z%BnOd#`7Cy^Xtho(EVvdF~_fe$7HH!87{iCdFkSMLlaLw2`_>EL8Ao6I>O>!h2DVb zM|ZXkPkHV-$q7>^&xY^_av``dn{@rS71GQTCyNq2HLE}4hs0p){j(b}d%Pg9Cg;SChEFg)0(5Wz&I`E=ifPTkr7F zum={CgoV4Sq)tZ%&3j<71|9-W35g&x4<{gFAh+7uQV;AV8{jThR?UmWr{+1vWt4V^Cq{x(tAf%`3JDZmL7#wQk7>$4!W#SIwB26m7A1SEivc!m%B|d!PLG(_^ zVPJgAtZn7Um6A=u6qs&Y3>pCuZja~2`f+SXAaGpLpmy1f+tUxhPJOjQD6ZFI;36!$ zO*tO=hzf_vAeH3WlYok?)`JXvhPYoxdt$#&7D@Ao+~8DK_eeirWLn{9g{m&6J`v*J zb%L|GI$7gHN>w7Fhr)f8C+V=h;nJZwE7J#?Rfy9w)%4Eo^A^fTaFK3Y#pF1`g!Ji| z<)d-wZLand?~1}V-8CNNHLR@uWo*+pq-LUu;uJN4vz`eomO8X1Bs8 zq~Ns%q}tje=W1?XWqn9d9V499&g6V@=)siwL=Jb@%!@q(P{s$#g+hwZama9jV+E^K zvV%(em)AoLDyf-yrhUcPL|8ziPy(b}A&elHNA#U+Byjh6oV&kyvZ;k3wP5PzSJVQQ z@d>jChy=sVk=}up8lsCPpN1Fm!rbkV-)LTwl>$2Yz)*bxL}H^fLM2~1KzGb!`K*t? zX8jsG@I03Rc~=oSr}3aeDz`PF{^fOFamj+}RO-4<5JG-uF2`!{_D})HYY?;G3z>xK zZ!O2{Xrr|5307$mQ1)T!AQ)h0ikUzYlC2ZaT55HgB}v+XNJrJc5$r2%K_1@c5w}uL zA7y={4hehhBo--<3}}VPc(yFlAoNp3c2ZniGSZlJgJRizyh5f#EpnfV5Tmpfk$7jW zu^0QVcv~FcniOauIpV=Gk-}tu1IAXD0$I4$wX~=dbvI^>qjGA#bLI6xG8j;}7fD(@ zjae)5H13^&M3gD6H>Cpy)S58{?228i`|ZGiwFYv*chVT4818Q~<7qaO5D43iXKm@6Jc zUd+8zLbYl~sl9%fbfhesr)u3x&?NO5WTqK06Ij4D;#B5o0Xg`MoU}Gca(@gt+?aWj z0_c1-Z8f5*2Wh@bqku&7=)`kv29uiQBI6<+4z)n|Py^8-g!dz*(zy8AFd443PPgF4 zO1*;g88h!v-m4ceA?#y&aAOz}Fz9GmWYgWbkSeJd?qo-I{IaeTm~7gw2(@8~b%Voo zNnE#wki^U}q$*sypTuNX77~SH@?r&sx}n5}f||@gT*|3c6N+sUihye_f+6xgsDy>c zr>$^R(WvU_Fi)*Q9nvfW)$kUj5%`Z#u1CqB>OBYmi?0)xi0pJv`F)^R)c+y13c33< znIaqyDenv?RFQ!FW|nhNdyXq>xB1n;+mo^Z7KnsuGhTLsWGw4peFh3-Y-)kTJ>1Ye z@P053C!{MvE~t6t4G;O7k>>6`S0Zx8Act{P+@9LIhg9a1m&gY_PG#|6Z=?tehE0QE zh=WH1pr4PT+Pk-!0V-nV*{GLd;|JfHuXvi#htv)_KNqU!P%dh%t8+2U^J1==X}%(; zQiz5tnwRR6&4W!1%lDonO`ueyxs3C)M=6eqJ!p_dNRT8o-(=>7N>$K7PC8~UfY2Rk zVR6{Q!mKgi;RJ=XHg0KO&G;OT$4%z-%`NMEV$|IcHn@Tp(CM13Ajkw03{qrW*55_X zRZd~qE!|b34K__YF*R=tD0LH4I>MeS>#6r^Z{cmfbx_AC%hbq!vPqd5^J=x3U`c^! z%y(2mHbc+|E?6onnz5?(WZiI|0;w1`pOM(SW_{v+q-FXdrOAB5{zV*PndX`y_O!fY z47JbJsra$#{f?=P2=pJX98neR z*sjWq9Yc5Sqb{_SWpN#PlxNXeZ~CsL43`GjomvPr^xfJ@u=rq!0cfiB3ju;6l;GI2 z-k>t^nFnE-brw@AIHdAZeKL{n1jT-%B&zz*_eXg?ORU!$8bU9_yq6`)^?knq^xBR)KL6Sx$-UWhfsGCIv8IqRmp*weS3J>E0cIov3%voj z;*4ec-4jGTYYf%G*3zb3nW@OB-GMTVMLZu7nglN$_LL_5HFx}yb#b(W&5}NG<*XIA z9ySg5{y1Akw%{T!%LZ+@inaE&Xnc#Z9SK}TLi zI4e(`JZS=Rm#?~~OuRvi=%75P*dIj#q1dcL7I})*mO`R{xeD)rwHIw>Nd&lUNtYGz z)jg+q;oV3oc0Gyv9y%uqbNw2Jj@ZP-q&jO)qG;7?2LrY1#mpwQIqhII-C1HA8K=Ui z<_{Z)WDxRfTd%ir?Z8?SjHJKri`HE^aK<((aFXfh=9wB%of%b@hE+Q>EE;5SQ!5Ke zYV($rSzlx2VURa|uYY8-`_TQTPO1`h>h3Go70Y9iMxV}@&j%jY+)k1A{01ftAd^+X zvvfhcoLX&k)y^-l4Bw1Ahp&tVG)Lq zM_Yi?CHCXuAgRzkWufl~l-49P9ir=g`LKRpV)N#qZcfi~68B^3l@N34kgg6o_-2_~ zFe(*5w{{)P+oy9Y;@mc=3DFW!a~vsXnV_icrg0(?66)a9=1Hc``KV+VGDQ@n3js{d zS~}t3a2_10q_aPuyS%5sTaMJ~mqWwf4dH(6kmO9t_k@%(Q)1`T+Ul2rjg{(kyQR4{ zCOW1EnB~edHDbZ>1Tb;h1lKB6*zbAtlXa>SiWYryab}it;8$ATQP{iUKh6{)R5FO^ zDYXS<_J}=(F-lKt3qT9-vh%45PuA)DEDc#2pnG0#5g>m~jvo{U?A3}PVsJ?Zh5Yw!@+wO=4Vu8| z0~Jcty^62wXz(6`6)~G;^zG?-Ol?Ku;6_hN{@^nXgHPdrQEQhswiPOCU}cAz0K_*Q zRmF8%8{BG)QA&e%#E2pX5R?TVhNEaNX8evITR!xT$UNp&NOgX8qVc-63-iRK&8OUm zK1o5ztA3(4efojRZps+QQxucNkmdRvsWu%Gjmv)JzN{)E^$l~j*-GpYwz+HPNT|3w zMLL{TJ_FJj_F^P8rV7?xmvprR#xSCtnxk3^kX;+NfW_?ZNPJwbvkKE3pnyYaO^&!J zxz(|?E`@ppom&Jb3{VlTH;g%USz2vxa8u2MYZ6h`ESao3Mbn zx6R(37^FA-4#;h~wDqamZh>pM-&$K03EQxm=kbf@;IR*$8jSes4P*WoHaLH0hWG`k9v; zwiHfz5M3|S2ZsXAXwefj2Btw}j-|GFtAtie{b`F0Al?iNo3phSa}HTPFq1{`x!0_ z1OjMBDuq+c`xFPYmbzs&XRl3aJc&Ln2X|MTK41(spU4(e0^3XHf*hyoX{hkE9cat@ zX6)`z>Qm-Ya&*n60RCKkajrZq^F*c|cER2BsDf z0Ok%3w?t~q?9ziNuC#Q>Z-a$xuU6~cDnG@!Je==I&aIdnLZdO`=%Fug=!W_OQk=}= zXrV?hOVZgsWa%Ho6xErOAn(L^FQwJ)O%Hi{qnKYv9YOFd`c@o0V(T_Mrdn44-w@R+ z2X=#!#IzTldZyk$f^1|FK`de82mI0I^t7unXC*Uz=^W#WXls^O?y<2z8XBCMoqvx; zjm>W3nlD(^;83-LZA7@$=4$igu`7voF&o?EUfOM(9qpBk-F(d*+qt~kI2X*gah~Y8 z=I&iRd4J>NYJ)JldU|d3)IF>G;lak0gd&4XI6U{EjrA*y?aPhx>+Z43YulUmeE9OE zjbmHvcroV9ipe6+27w0c+yYCVgmB^%|#V&xvbV(T$A(nIqn~=1y}a=GdcTLP{)< z+hon1uSy5PgtatIsJ<+O2&UD#TpVpytX>>#UL0*+9Bp14ZPuQa zdZl&wusGVxo|+0{8X@FO^~n;_UiG|4=LjnG2@cY$#nI-)(Pr%zFOD|TU0NJ%o^|dP zN1NHyp#EJPZC)I0rh%|H+C2S7Ig6vs`WLC%6lK3;akRO$INH28+Ppa0yg1tI_c_=v zSR8F$9BrO$p)Za$YkRUjr@A=WZ0GM5N1GQ%o5yVA+p$FL1&7m!i=)kpqs@z>&5NVW zi=)kV_+O_MN1GQ%n-@o$Ig!6O+Ppa0eCvP7w>a9oINCgS_\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../dev/env.rst:2 msgid "Your Development Environment" @@ -21,8 +22,9 @@ msgstr "" #: ../../dev/env.rst:8 msgid "" -"Just about anything that can edit plain text will work for writing Python " -"code, however, using a more powerful editor may make your life a bit easier." +"Just about anything that can edit plain text will work for writing Python" +" code, however, using a more powerful editor may make your life a bit " +"easier." msgstr "" #: ../../dev/env.rst:13 @@ -31,20 +33,20 @@ msgstr "" #: ../../dev/env.rst:15 msgid "" -"Vim is a text editor which uses keyboard shortcuts for editing instead of " -"menus or icons. There are a couple of plugins and settings for the Vim " +"Vim is a text editor which uses keyboard shortcuts for editing instead of" +" menus or icons. There are a couple of plugins and settings for the Vim " "editor to aid Python development. If you only develop in Python, a good " -"start is to set the default settings for indentation and line-wrapping to " -"values compliant with :pep:`8`. In your home directory, open a file called " -":file:`.vimrc` and add the following lines::" +"start is to set the default settings for indentation and line-wrapping to" +" values compliant with :pep:`8`. In your home directory, open a file " +"called :file:`.vimrc` and add the following lines::" msgstr "" #: ../../dev/env.rst:30 msgid "" "With these settings, newlines are inserted after 79 characters and " "indentation is set to 4 spaces per tab. If you also use Vim for other " -"languages, there is a handy plugin called indent_, which handles indentation" -" settings for Python source files." +"languages, there is a handy plugin called indent_, which handles " +"indentation settings for Python source files." msgstr "" #: ../../dev/env.rst:35 @@ -55,30 +57,30 @@ msgstr "" #: ../../dev/env.rst:38 msgid "" -"These plugins supply you with a basic environment for developing in Python. " -"To get the most out of Vim, you should continually check your code for " -"syntax errors and PEP8 compliance. Luckily PEP8_ and Pyflakes_ will do this " -"for you. If your Vim is compiled with :option:`+python` you can also utilize" -" some very handy plugins to do these checks from within the editor." +"These plugins supply you with a basic environment for developing in " +"Python. To get the most out of Vim, you should continually check your " +"code for syntax errors and PEP8 compliance. Luckily PEP8_ and Pyflakes_ " +"will do this for you. If your Vim is compiled with :option:`+python` you " +"can also utilize some very handy plugins to do these checks from within " +"the editor." msgstr "" #: ../../dev/env.rst:44 msgid "" -"For PEP8 checking, install the vim-pep8_ plugin, and for pyflakes you can " -"install vim-pyflakes_. Now you can map the functions ``Pep8()`` or " -"``Pyflakes()`` to any hotkey or action you want in Vim. Both plugins will " -"display errors at the bottom of the screen, and provide an easy way to jump " -"to the corresponding line. It's very handy to call these functions whenever " -"you save a file. In order to do this, add the following lines to your " -":file:`.vimrc`::" +"For PEP8 checking and pyflakes, you can install vim-flake8_. Now you can " +"map the function ``Flake8`` to any hotkey or action you want in Vim. The " +"plugin will display errors at the bottom of the screen, and provide an " +"easy way to jump to the corresponding line. It's very handy to call this " +"function whenever you save a file. In order to do this, add the following" +" line to your :file:`.vimrc`::" msgstr "" -#: ../../dev/env.rst:54 +#: ../../dev/env.rst:53 msgid "" -"If you are already using syntastic_, you can set it to run Pyflakes on write" -" and show errors and warnings in the quickfix window. An example " -"configuration to do that which also shows status and warning messages in the" -" statusbar would be::" +"If you are already using syntastic_, you can set it to run Pyflakes on " +"write and show errors and warnings in the quickfix window. An example " +"configuration to do that which also shows status and warning messages in " +"the statusbar would be::" msgstr "" #: ../../dev/env.rst:66 @@ -87,8 +89,8 @@ msgstr "" #: ../../dev/env.rst:68 msgid "" -"Python-mode_ is a complex solution for working with Python code in Vim. It " -"has:" +"Python-mode_ is a complex solution for working with Python code in Vim. " +"It has:" msgstr "" #: ../../dev/env.rst:71 @@ -127,81 +129,68 @@ msgstr "" #: ../../dev/env.rst:83 msgid "" -"SuperTab_ is a small Vim plugin that makes code completion more convenient " -"by using ```` key or any other customized keys." +"SuperTab_ is a small Vim plugin that makes code completion more " +"convenient by using ```` key or any other customized keys." msgstr "" -#: ../../dev/env.rst:97 +#: ../../dev/env.rst:96 msgid "Emacs" msgstr "" -#: ../../dev/env.rst:99 +#: ../../dev/env.rst:98 msgid "" -"Emacs is another powerful text editor. It is fully programmable (lisp), but " -"it can be some work to wire up correctly. A good start if you're already an " -"Emacs user is `Python Programming in Emacs`_ at EmacsWiki." +"Emacs is another powerful text editor. It is fully programmable (lisp), " +"but it can be some work to wire up correctly. A good start if you're " +"already an Emacs user is `Python Programming in Emacs`_ at EmacsWiki." msgstr "" -#: ../../dev/env.rst:103 +#: ../../dev/env.rst:102 msgid "Emacs itself comes with a Python mode." msgstr "" -#: ../../dev/env.rst:104 -msgid "" -"Python ships with an alternate version: `python-mode.el " -"`_" -msgstr "" - -#: ../../dev/env.rst:106 -msgid "" -"Fabián Ezequiel Gallina's `python.el " -"`_ provides nice functionality and " -"behavior out of the box" -msgstr "" - -#: ../../dev/env.rst:112 +#: ../../dev/env.rst:107 msgid "TextMate" msgstr "" -#: ../../dev/env.rst:114 +#: ../../dev/env.rst:109 msgid "" -"`TextMate `_ brings Apple's approach to operating " -"systems into the world of text editors. By bridging UNIX underpinnings and " -"GUI, TextMate cherry-picks the best of both worlds to the benefit of expert " -"scripters and novice users alike." +"`TextMate `_ brings Apple's approach to operating" +" systems into the world of text editors. By bridging UNIX underpinnings " +"and GUI, TextMate cherry-picks the best of both worlds to the benefit of " +"expert scripters and novice users alike." msgstr "" -#: ../../dev/env.rst:120 +#: ../../dev/env.rst:115 msgid "Sublime Text" msgstr "" -#: ../../dev/env.rst:122 +#: ../../dev/env.rst:117 msgid "" -"`Sublime Text `_ is a sophisticated text editor" -" for code, markup and prose. You'll love the slick user interface, " +"`Sublime Text `_ is a sophisticated text " +"editor for code, markup and prose. You'll love the slick user interface, " "extraordinary features and amazing performance." msgstr "" -#: ../../dev/env.rst:126 +#: ../../dev/env.rst:121 msgid "" -"Sublime Text has excellent support for editing Python code and uses Python " -"for its plugin API. It also has a diverse variety of plugins, `some of which" -" `_ allow for in-editor PEP8" -" checking and code \"linting\"." +"Sublime Text has excellent support for editing Python code and uses " +"Python for its plugin API. It also has a diverse variety of plugins, " +"`some of which `_ allow " +"for in-editor PEP8 checking and code \"linting\"." msgstr "" -#: ../../dev/env.rst:131 +#: ../../dev/env.rst:127 msgid "Atom" msgstr "" -#: ../../dev/env.rst:133 +#: ../../dev/env.rst:129 msgid "" -"`Atom `_ is a hackable text editor for the 21st century, " -"built on atom-shell, and based on everything we love about our favorite " -"editors." +"`Atom `_ is a hackable text editor for the 21st " +"century, built on atom-shell, and based on everything we love about our " +"favorite editors." msgstr "" -#: ../../dev/env.rst:136 +#: ../../dev/env.rst:133 msgid "" "Atom is web native (HTML, CSS, JS), focusing on modular design and easy " "plugin development. It comes with native package control and plethora of " @@ -210,251 +199,455 @@ msgid "" "`_." msgstr "" -#: ../../dev/env.rst:143 +#: ../../dev/env.rst:141 msgid "IDEs" msgstr "" -#: ../../dev/env.rst:146 +#: ../../dev/env.rst:144 msgid "PyCharm / IntelliJ IDEA" msgstr "" -#: ../../dev/env.rst:148 +#: ../../dev/env.rst:146 msgid "" -"`PyCharm `_ is developed by JetBrains, " -"also known for IntelliJ IDEA. Both share the same code base and most of " -"PyCharm's features can be brought to IntelliJ with the free `Python Plug-In " -"`_. There are two versions of " -"PyCharm: Professional Edition (Free 30-day trial) and Community " -"Edition(Apache 2.0 License) with less features." +"`PyCharm `_ is developed by JetBrains," +" also known for IntelliJ IDEA. Both share the same code base and most of " +"PyCharm's features can be brought to IntelliJ with the free `Python Plug-" +"In `_. There " +"are two versions of PyCharm: Professional Edition (Free 30-day trial) and" +" Community Edition(Apache 2.0 License) with fewer features." +msgstr "" + +#: ../../dev/env.rst:154 +msgid "Python (on Visual Studio Code)" msgstr "" #: ../../dev/env.rst:156 +msgid "" +"`Python for Visual Studio " +"`_" +" is an extension for the `Visual Studio Code IDE " +"`_. This is a free, light weight, open " +"source IDE, with support for Mac, Windows, and Linux. Built using open " +"source technologies such as Node.js and Python, with compelling features " +"such as Intellisense (autocompletion), local and remote debugging, " +"linting, and the like." +msgstr "" + +#: ../../dev/env.rst:160 +msgid "MIT licensed." +msgstr "" + +#: ../../dev/env.rst:163 +msgid "Enthought Canopy" +msgstr "" + +#: ../../dev/env.rst:164 +msgid "" +"`Enthought Canopy `_ is a " +"Python IDE which is focused towards Scientists and Engineers as it " +"provides pre installed libraries for data analysis." +msgstr "" + +#: ../../dev/env.rst:169 msgid "Eclipse" msgstr "" -#: ../../dev/env.rst:158 +#: ../../dev/env.rst:171 msgid "" -"The most popular Eclipse plugin for Python development is Aptana's `PyDev " -"`_." +"The most popular Eclipse plugin for Python development is Aptana's `PyDev" +" `_." msgstr "" -#: ../../dev/env.rst:163 +#: ../../dev/env.rst:176 msgid "Komodo IDE" msgstr "" -#: ../../dev/env.rst:165 +#: ../../dev/env.rst:178 msgid "" "`Komodo IDE `_ is developed by " -"ActiveState and is a commercial IDE for Windows, Mac, and Linux. `KomodoEdit" -" `_ is the open source alternative." +"ActiveState and is a commercial IDE for Windows, Mac, and Linux. " +"`KomodoEdit `_ is the open source " +"alternative." msgstr "" -#: ../../dev/env.rst:172 +#: ../../dev/env.rst:185 msgid "Spyder" msgstr "" -#: ../../dev/env.rst:174 +#: ../../dev/env.rst:187 msgid "" -"`Spyder `_ is an IDE specifically " +"`Spyder `_ is an IDE specifically " "geared toward working with scientific Python libraries (namely `Scipy " -"`_). It includes integration with pyflakes_, `pylint " -"`_ and `rope `_." +"`_). It includes integration with pyflakes_, " +"`pylint `_ and `rope `_." msgstr "" -#: ../../dev/env.rst:179 +#: ../../dev/env.rst:193 msgid "" -"Spyder is open-source (free), offers code completion, syntax highlighting, a" -" class and function browser, and object inspection." +"Spyder is open-source (free), offers code completion, syntax " +"highlighting, a class and function browser, and object inspection." msgstr "" -#: ../../dev/env.rst:184 +#: ../../dev/env.rst:198 msgid "WingIDE" msgstr "" -#: ../../dev/env.rst:186 +#: ../../dev/env.rst:200 msgid "" "`WingIDE `_ is a Python specific IDE. It runs on " "Linux, Windows and Mac (as an X11 application, which frustrates some Mac " "users)." msgstr "" -#: ../../dev/env.rst:189 +#: ../../dev/env.rst:203 msgid "" "WingIDE offers code completion, syntax highlighting, source browser, " "graphical debugger and support for version control systems." msgstr "" -#: ../../dev/env.rst:194 +#: ../../dev/env.rst:208 msgid "NINJA-IDE" msgstr "" -#: ../../dev/env.rst:196 +#: ../../dev/env.rst:210 msgid "" "`NINJA-IDE `_ (from the recursive acronym: " -"\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially " -"designed to build Python applications, and runs on Linux/X11, Mac OS X and " -"Windows desktop operating systems. Installers for these platforms can be " -"downloaded from the website." +"\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially" +" designed to build Python applications, and runs on Linux/X11, Mac OS X " +"and Windows desktop operating systems. Installers for these platforms can" +" be downloaded from the website." msgstr "" -#: ../../dev/env.rst:201 +#: ../../dev/env.rst:216 msgid "" -"NINJA-IDE is open-source software (GPLv3 licence) and is developed in Python" -" and Qt. The source files can be downloaded from `GitHub `_." +"NINJA-IDE is open-source software (GPLv3 licence) and is developed in " +"Python and Qt. The source files can be downloaded from `GitHub " +"`_." msgstr "" -#: ../../dev/env.rst:206 +#: ../../dev/env.rst:222 msgid "Eric (The Eric Python IDE)" msgstr "" -#: ../../dev/env.rst:208 +#: ../../dev/env.rst:224 msgid "" -"`Eric `_ is a full featured Python IDE" -" offering sourcecode autocompletion, syntax highlighting, support for " -"version control systems, python 3 support, integrated web browser, python " -"shell, integrated debugger and a flexible plug-in system. Written in python," -" it is based on the Qt gui toolkit, integrating the Scintilla editor " -"control. Eric is an open-source software (GPLv3 licence) with more than ten " -"years of active development." +"`Eric `_ is a full featured Python " +"IDE offering sourcecode autocompletion, syntax highlighting, support for " +"version control systems, python 3 support, integrated web browser, python" +" shell, integrated debugger and a flexible plug-in system. Written in " +"python, it is based on the Qt gui toolkit, integrating the Scintilla " +"editor control. Eric is an open-source software project (GPLv3 licence) " +"with more than ten years of active development." msgstr "" -#: ../../dev/env.rst:218 +#: ../../dev/env.rst:234 msgid "Interpreter Tools" msgstr "" -#: ../../dev/env.rst:222 +#: ../../dev/env.rst:238 msgid "Virtual Environments" msgstr "" -#: ../../dev/env.rst:224 -msgid "" -"A Virtual Environment is a tool to keep the dependencies required by " -"different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " -"directory clean and manageable." -msgstr "" - -#: ../../dev/env.rst:229 +#: ../../dev/env.rst:240 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." +"Virtual Environments provide a powerful way to isolate project package " +"dependencies. This means that you can use packages particular to a Python" +" project without installing them system wide and thus avoiding potential " +"version conflicts." msgstr "" -#: ../../dev/env.rst:232 +#: ../../dev/env.rst:242 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" -#: ../../dev/env.rst:235 +#: ../../dev/env.rst:247 +msgid "pyenv" +msgstr "" + +#: ../../dev/env.rst:249 +msgid "" +"`pyenv `_ is a tool to allow multiple " +"versions of the Python interpreter to be installed at the same time. " +"This solves the problem of having different projects requiring different " +"versions of Python. For example, it becomes very easy to install Python " +"2.7 for compatibility in one project, whilst still using Python 3.4 as " +"the default interpreter. pyenv isn't just limited to the CPython versions" +" - it will also install PyPy, anaconda, miniconda, stackless, jython, and" +" ironpython interpreters." +msgstr "" + +#: ../../dev/env.rst:257 +msgid "" +"pyenv works by filling a ``shims`` directory with fake versions of the " +"Python interpreter (plus other tools like ``pip`` and ``2to3``). When " +"the system looks for a program named ``python``, it looks inside the " +"``shims`` directory first, and uses the fake version, which in turn " +"passes the command on to pyenv. pyenv then works out which version of " +"Python should be run based on environment variables, ``.python-version`` " +"files, and the global default." +msgstr "" + +#: ../../dev/env.rst:264 +msgid "" +"pyenv isn't a tool for managing virtual environments, but there is the " +"plugin `pyenv-virtualenv `_ " +"which automates the creation of different environments, and also makes it" +" possible to use the existing pyenv tools to switch to different " +"environments based on environment variables or ``.python-version`` files." +msgstr "" + +#: ../../dev/env.rst:271 msgid "Other Tools" msgstr "" -#: ../../dev/env.rst:238 +#: ../../dev/env.rst:274 msgid "IDLE" msgstr "" -#: ../../dev/env.rst:240 +#: ../../dev/env.rst:276 msgid "" -":ref:`IDLE ` is an integrated development environment that is " -"part of Python standard library. It is completely written in Python and uses" -" the Tkinter GUI toolkit. Though IDLE is not suited for full-blown " -"development using Python, it is quite helpful to try out small Python " -"snippets and experiment with different features in Python." +":ref:`IDLE ` is an integrated development environment that " +"is part of Python standard library. It is completely written in Python " +"and uses the Tkinter GUI toolkit. Though IDLE is not suited for full-" +"blown development using Python, it is quite helpful to try out small " +"Python snippets and experiment with different features in Python." msgstr "" -#: ../../dev/env.rst:246 +#: ../../dev/env.rst:282 msgid "It provides the following features:" msgstr "" -#: ../../dev/env.rst:248 +#: ../../dev/env.rst:284 msgid "Python Shell Window (interpreter)" msgstr "" -#: ../../dev/env.rst:249 +#: ../../dev/env.rst:285 msgid "Multi window text editor that colorizes Python code" msgstr "" -#: ../../dev/env.rst:250 +#: ../../dev/env.rst:286 msgid "Minimal debugging facility" msgstr "" -#: ../../dev/env.rst:254 +#: ../../dev/env.rst:290 msgid "IPython" msgstr "" -#: ../../dev/env.rst:256 +#: ../../dev/env.rst:292 msgid "" -"`IPython `_ provides a rich toolkit to help you make " -"the most out of using Python interactively. Its main components are:" +"`IPython `_ provides a rich toolkit to help you make" +" the most out of using Python interactively. Its main components are:" msgstr "" -#: ../../dev/env.rst:259 +#: ../../dev/env.rst:295 msgid "Powerful Python shells (terminal- and Qt-based)." msgstr "" -#: ../../dev/env.rst:260 +#: ../../dev/env.rst:296 msgid "" -"A web-based notebook with the same core features but support for rich media," -" text, code, mathematical expressions and inline plots." +"A web-based notebook with the same core features but support for rich " +"media, text, code, mathematical expressions and inline plots." msgstr "" -#: ../../dev/env.rst:262 +#: ../../dev/env.rst:298 msgid "Support for interactive data visualization and use of GUI toolkits." msgstr "" -#: ../../dev/env.rst:263 +#: ../../dev/env.rst:299 msgid "Flexible, embeddable interpreters to load into your own projects." msgstr "" -#: ../../dev/env.rst:264 +#: ../../dev/env.rst:300 msgid "Tools for high level and interactive parallel computing." msgstr "" -#: ../../dev/env.rst:273 +#: ../../dev/env.rst:306 +msgid "" +"To download and install IPython with all it's optional dependencies for " +"the notebook, qtconsole, tests, and other functionalities" +msgstr "" + +#: ../../dev/env.rst:313 msgid "BPython" msgstr "" -#: ../../dev/env.rst:275 +#: ../../dev/env.rst:315 msgid "" -"`bpython `_ is an alternative interface to " -"the Python interpreter for Unix-like operating systems. It has the following" -" features:" +"`bpython `_ is an alternative interface " +"to the Python interpreter for Unix-like operating systems. It has the " +"following features:" msgstr "" -#: ../../dev/env.rst:278 +#: ../../dev/env.rst:319 msgid "In-line syntax highlighting." msgstr "" -#: ../../dev/env.rst:279 +#: ../../dev/env.rst:320 msgid "Readline-like autocomplete with suggestions displayed as you type." msgstr "" -#: ../../dev/env.rst:280 +#: ../../dev/env.rst:321 msgid "Expected parameter list for any Python function." msgstr "" -#: ../../dev/env.rst:281 +#: ../../dev/env.rst:322 msgid "" "\"Rewind\" function to pop the last line of code from memory and re-" "evaluate." msgstr "" -#: ../../dev/env.rst:282 +#: ../../dev/env.rst:323 msgid "Send entered code off to a pastebin." msgstr "" -#: ../../dev/env.rst:283 +#: ../../dev/env.rst:324 msgid "Save entered code to a file." msgstr "" -#: ../../dev/env.rst:284 +#: ../../dev/env.rst:325 msgid "Auto-indentation." msgstr "" -#: ../../dev/env.rst:285 +#: ../../dev/env.rst:326 msgid "Python 3 support." msgstr "" + +#: ../../dev/env.rst:333 +msgid "ptpython" +msgstr "" + +#: ../../dev/env.rst:335 +msgid "" +"`ptpython `_ is a REPL " +"build on top of the `prompt_toolkit `_ library. It is considered to be an alternative " +"to BPython_. Features include:" +msgstr "" + +#: ../../dev/env.rst:339 +msgid "Syntax highlighting" +msgstr "" + +#: ../../dev/env.rst:340 +msgid "Autocompletion" +msgstr "" + +#: ../../dev/env.rst:341 +msgid "Multiline editing" +msgstr "" + +#: ../../dev/env.rst:342 +msgid "Emacs and VIM Mode" +msgstr "" + +#: ../../dev/env.rst:343 +msgid "Embedding REPL inside of your code" +msgstr "" + +#: ../../dev/env.rst:344 +msgid "Syntax Validation" +msgstr "" + +#: ../../dev/env.rst:345 +msgid "Tab pages" +msgstr "" + +#: ../../dev/env.rst:346 +msgid "" +"Support for integrating with IPython_'s shell, by installing IPython " +"``pip install ipython`` and running ``ptipython``." +msgstr "" + +#~ msgid "" +#~ "For PEP8 checking, install the vim-" +#~ "pep8_ plugin, and for pyflakes you " +#~ "can install vim-pyflakes_. Now you " +#~ "can map the functions ``Pep8()`` or " +#~ "``Pyflakes()`` to any hotkey or action" +#~ " you want in Vim. Both plugins " +#~ "will display errors at the bottom " +#~ "of the screen, and provide an easy" +#~ " way to jump to the corresponding " +#~ "line. It's very handy to call " +#~ "these functions whenever you save a " +#~ "file. In order to do this, add " +#~ "the following lines to your " +#~ ":file:`.vimrc`::" +#~ msgstr "" + +#~ msgid "" +#~ "Python ships with an alternate version:" +#~ " `python-mode.el `_" +#~ msgstr "" + +#~ msgid "" +#~ "Fabián Ezequiel Gallina's `python.el " +#~ "`_ provides nice" +#~ " functionality and behavior out of " +#~ "the box" +#~ msgstr "" + +#~ msgid "" +#~ "`PyCharm `_ is " +#~ "developed by JetBrains, also known for" +#~ " IntelliJ IDEA. Both share the same" +#~ " code base and most of PyCharm's " +#~ "features can be brought to IntelliJ " +#~ "with the free `Python Plug-In " +#~ "`_. There are" +#~ " two versions of PyCharm: Professional " +#~ "Edition (Free 30-day trial) and " +#~ "Community Edition(Apache 2.0 License) with " +#~ "less features." +#~ msgstr "" + +#~ msgid "" +#~ "`Spyder `_ is " +#~ "an IDE specifically geared toward " +#~ "working with scientific Python libraries " +#~ "(namely `Scipy `_). It " +#~ "includes integration with pyflakes_, `pylint" +#~ " `_ and `rope " +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "`Eric `_ " +#~ "is a full featured Python IDE " +#~ "offering sourcecode autocompletion, syntax " +#~ "highlighting, support for version control " +#~ "systems, python 3 support, integrated " +#~ "web browser, python shell, integrated " +#~ "debugger and a flexible plug-in " +#~ "system. Written in python, it is " +#~ "based on the Qt gui toolkit, " +#~ "integrating the Scintilla editor control. " +#~ "Eric is an open-source software " +#~ "(GPLv3 licence) with more than ten " +#~ "years of active development." +#~ msgstr "" + +#~ msgid "" +#~ "A Virtual Environment is a tool to" +#~ " keep the dependencies required by " +#~ "different projects in separate places, " +#~ "by creating virtual Python environments " +#~ "for them. It solves the \"Project " +#~ "X depends on version 1.x but, " +#~ "Project Y needs 4.x\" dilemma, and " +#~ "keeps your global site-packages " +#~ "directory clean and manageable." +#~ msgstr "" + +#~ msgid "" +#~ "For example, you can work on a " +#~ "project which requires Django 1.3 while" +#~ " also maintaining a project which " +#~ "requires Django 1.0." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo b/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo new file mode 100644 index 0000000000000000000000000000000000000000..ace85639dd8b0005c97bde31e17c882751b5afb4 GIT binary patch literal 8561 zcmeHM&u<(_6)qtBnni#XmfwgHmpF;LGu{A-W;d&K5(g~Vab!EY8xW$)-8C~6_jCV{t0>oZ8z!eT$IKtkLmj7YJ_g;1Pj6LHBPF%*)xI8o6)n9$@ zd*6Fi{>QVI-Vpft3|?Qt>o4?X;pd0%6XF_PKf>!6uV1}ih=1ez_dX!RuQ9%RNr>)yrqTfBE47vhf?H$EZ6-!T3Q;}7ut+n)@0zy55% zt3DO*{{GVe?_19Wy!%)%;T>TlyubKt!29#h1-yU8NO+GvAMpMaBjGh)2zbBx#enxR zNF%&I#YlMngfYRm{pEo7EsTWs8b~6%?_eanzm)j3-S@hbPEAZPkbbCTI#k6#JE@9H zI$M<~eKEryve!4c?j^5Zk57~vmT4mC1Nu&;s*r`9N>ezm@?4Hpda7uaL2gg*!Azda zWLXsjO_n5su^BhlCP^$G)l-CLGmJuww6uNxyI&QlH@1-80@lnAYe+ITr+QO9uAG;r zTGNzrWPsZbm1kU212981(R6F&Fwi$V_jIT+VL9V<+Xl@FNVveZm5MV-k+H%M)A%p2Lv2CQb1~pz8O@d;`n2#iBYVHnqi6yU6V-L3Y0!Gg$eR> zn=;d5U1T&ZB*aQ~Gw1avZs;K*@ztx4j-BF$M$sxGDQVfad2XjPL2e3`63?;#p?#dJ ziVTZMlJ5lNe>X{_)86A|*AusAAxpe;LtEvUJi!Wct;#@U<>(nJBI$@kB?qO3dWk47 z$%1DbnV#s}jw$4e;pdqV9OMICOH*g2-`6EwH!kgCoqBf}@%(;e5LA5X0ClXuwT{Id zm2#T3ncN4#{mNJ13W+3kCX_x{#bDU-MG1!dL=GWih(yXy!s@)mZ45TWyvSJt**ZKs zwIe*4#nI$!N~^>~P|cL6CqA#5;%XBLdXMC7CR~WZQ-uI96YbiVXSTTPk^kf!1kCBY zj|2p8@-H?X0OXZStj(;geI}TQmJ^j%@Hg-{LHcBp0TI`2O{juOBR z72T&1i4r&F=A=}msU4SHiKZY;PHlNgVS_dmOu=)0EQK)Wm99UrP#^Klj^`{nD4w0G zF@)x)nj@wcp4j>%Ru#*8h_HU5M&ld-A`Bxa4XX&Uq(n#(Qj2!pLDm8IEZEP5=wflN zDmlULoJnOc`~a3mjJ*=93(h5Kzfw6gkj=t6)HxHNqEiRsf&>jY7yz%xLt>~_J)R%j z3jtj=&|ZTlGZ{NA^ST;O8+P(KdcqkQTi6CIbv0l|*Q2VDQ9|-mW!opSOzY?V*HVW| zVD-qx+@|cD3#N7k7Z-3=J+YNqC^D_oa}2LShnLprA%q<^Bq%psxzpUp||cA+j~9ftqVEW^)xFs89&VHDRWn9Rx&|nq9a~ zpgI&#WV4c392D~5{oU8aSAu<& z%7Y{M+W(-Q1~mFfjyE?a6vbkO@Pb=1ByPDj;3~9u%G2W4`XQd4DBr2haCF)J_3$;G7#HgfZogi}wYj!$wNnvNTRL z-#czpE@%d26eiy^ifnXgX`Ne~(Kk>*5C&Mu&Q0X!`oPM?2ex(f&bncUykzptrw! z?b`?UcRG8@`RKS*g@X;)vM297+}o4)xA%ACi#z+Tiwq7?*7i4fUUUO zxnm0=K02O_@eHq@`0L|bnc@Z7Fr(G>w<_O{ZqBbG)aZw!og%eV;d}DtiSeCp>VkR? z4c=xwd0U<6Ts|M)h`-i3zZYMhTP&Tptj{gNK5Tt%u|Bt0pIcC|vId* z4~0!;ICoy3Tb%#r1v*o1f!F62OaEI~pIfZYE$ED9eQpu@?)ACF#iw46>cf`xxkdPY J?*IMV;y=y{wT%D( literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.po b/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.po new file mode 100644 index 000000000..0b591e632 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.po @@ -0,0 +1,168 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2016. A Kenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../dev/pip-virtualenv.rst:4 +msgid "Further Configuration of Pip and Virtualenv" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:7 +msgid "Requiring an active virtual environment for ``pip``" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:9 +msgid "" +"By now it should be clear that using virtual environments is a great way " +"to keep your development environment clean and keeping different " +"projects' requirements separate." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:13 +msgid "" +"When you start working on many different projects, it can be hard to " +"remember to activate the related virtual environment when you come back " +"to a specific project. As a result of this, it is very easy to install " +"packages globally while thinking that you are actually installing the " +"package for the virtual environment of the project. Over time this can " +"result in a messy global package list." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:20 +msgid "" +"In order to make sure that you install packages to your active virtual " +"environment when you use ``pip install``, consider adding the following " +"two lines to your :file:`~/.bashrc` file:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:28 +msgid "" +"After saving this change and sourcing the :file:`~/.bashrc` file with " +"``source ~/.bashrc``, pip will no longer let you install packages if you " +"are not in a virtual environment. If you try to use ``pip install`` " +"outside of a virtual environment pip will gently remind you that an " +"activated virtual environment is needed to install packages." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:39 +msgid "" +"You can also do this configuration by editing your :file:`pip.conf` or " +":file:`pip.ini` file. :file:`pip.conf` is used by Unix and Mac OS X " +"operating systems and it can be found at:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:47 +msgid "" +"Similarly, the :file:`pip.ini` file is used by Windows operating systems " +"and it can be found at:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:54 +msgid "" +"If you don't have a :file:`pip.conf` or :file:`pip.ini` file at these " +"locations, you can create a new file with the correct name for your " +"operating system." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:57 +msgid "" +"If you already have a configuration file, just add the following line " +"under the ``[global]`` settings to require an active virtual environment:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:64 +msgid "" +"If you did not have a configuration file, you will need to create a new " +"one and add the following lines to this new file:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:73 +msgid "" +"You will of course need to install some packages globally (usually ones " +"that you use across different projects consistently) and this can be " +"accomplished by adding the following to your :file:`~/.bashrc` file:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:83 +msgid "" +"After saving the changes and sourcing your :file:`~/.bashrc` file you can" +" now install packages globally by running ``gpip install``. You can " +"change the name of the function to anything you like, just keep in mind " +"that you will have to use that name when trying to install packages " +"globally with pip." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:89 +msgid "Caching packages for future use" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:91 +msgid "" +"Every developer has preferred libraries and when you are working on a lot" +" of different projects, you are bound to have some overlap between the " +"libraries that you use. For example, you may be using the ``requests`` " +"library in a lot of different projects." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:96 +msgid "" +"It is surely unnecessary to re-download the same packages/libraries each " +"time you start working on a new project (and in a new virtual environment" +" as a result). Fortunately, you can configure pip in such a way that it " +"tries to reuse already installed packages." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:101 +msgid "" +"On UNIX systems, you can add the following line to your :file:`.bashrc` " +"or :file:`.bash_profile` file." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:108 +msgid "" +"You can set the path to anywhere you like (as long as you have write " +"access). After adding this line, ``source`` your :file:`.bashrc` (or " +":file:`.bash_profile`) file and you will be all set." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:112 +msgid "" +"Another way of doing the same configuration is via the :file:`pip.conf` " +"or :file:`pip.ini` files, depending on your system. If you are on " +"Windows, you can add the following line to your :file:`pip.ini` file " +"under ``[global]`` settings:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:120 +msgid "" +"Similarly, on UNIX systems you should simply add the following line to " +"your :file:`pip.conf` file under ``[global]`` settings:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:127 +msgid "" +"Even though you can use any path you like to store your cache, it is " +"recommended that you create a new folder *in* the folder where your " +":file:`pip.conf` or :file:`pip.ini` file lives. If you don't trust " +"yourself with all of this path voodoo, just use the values provided here " +"and you will be fine." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..b44fba8597d5fbdad5a8fec8bc64d0e2a1dfa626 100644 GIT binary patch literal 12175 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\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ../../dev/virtualenvs.rst:2 +#: ../../dev/virtualenvs.rst:4 msgid "Virtual Environments" msgstr "" -#: ../../dev/virtualenvs.rst:4 +#: ../../dev/virtualenvs.rst:6 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -#: ../../dev/virtualenvs.rst:9 +#: ../../dev/virtualenvs.rst:11 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." +"For example, you can work on a project which requires Django 1.3 while " +"also maintaining a project which requires Django 1.0." msgstr "" -#: ../../dev/virtualenvs.rst:13 +#: ../../dev/virtualenvs.rst:15 msgid "virtualenv" msgstr "" -#: ../../dev/virtualenvs.rst:15 +#: ../../dev/virtualenvs.rst:17 msgid "" -"`virtualenv `_ is a tool to create " -"isolated Python environments. virtualenv creates a folder which contains all" -" the necessary executables to use the packages that a Python project would " -"need." +"`virtualenv `_ is a tool to " +"create isolated Python environments. virtualenv creates a folder which " +"contains all the necessary executables to use the packages that a Python " +"project would need." msgstr "" -#: ../../dev/virtualenvs.rst:19 +#: ../../dev/virtualenvs.rst:21 msgid "Install virtualenv via pip:" msgstr "" -#: ../../dev/virtualenvs.rst:26 ../../dev/virtualenvs.rst:145 +#: ../../dev/virtualenvs.rst:28 ../../dev/virtualenvs.rst:150 msgid "Basic Usage" msgstr "" -#: ../../dev/virtualenvs.rst:28 +#: ../../dev/virtualenvs.rst:30 msgid "Create a virtual environment for a project:" msgstr "" -#: ../../dev/virtualenvs.rst:35 +#: ../../dev/virtualenvs.rst:37 msgid "" -"``virtualenv venv`` will create a folder in the current directory which will" -" contain the Python executable files, and a copy of the ``pip`` library " -"which you can use to install other packages. The name of the virtual " -"environment (in this case, it was ``venv``) can be anything; omitting the " -"name will place the files in the current directory instead." +"``virtualenv venv`` will create a folder in the current directory which " +"will contain the Python executable files, and a copy of the ``pip`` " +"library which you can use to install other packages. The name of the " +"virtual environment (in this case, it was ``venv``) can be anything; " +"omitting the name will place the files in the current directory instead." msgstr "" -#: ../../dev/virtualenvs.rst:40 +#: ../../dev/virtualenvs.rst:43 msgid "" -"This creates a copy of Python in whichever directory you ran the command in," -" placing it in a folder named :file:`venv`." +"This creates a copy of Python in whichever directory you ran the command " +"in, placing it in a folder named :file:`venv`." msgstr "" -#: ../../dev/virtualenvs.rst:43 +#: ../../dev/virtualenvs.rst:46 msgid "You can also use a Python interpreter of your choice." msgstr "" -#: ../../dev/virtualenvs.rst:49 +#: ../../dev/virtualenvs.rst:52 msgid "This will use the Python interpreter in :file:`/usr/bin/python2.7`" msgstr "" -#: ../../dev/virtualenvs.rst:51 +#: ../../dev/virtualenvs.rst:54 msgid "To begin using the virtual environment, it needs to be activated:" msgstr "" -#: ../../dev/virtualenvs.rst:57 +#: ../../dev/virtualenvs.rst:60 msgid "" -"The name of the current virtual environment will now appear on the left of " -"the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to let you " -"know that it's active. From now on, any package that you install using pip " -"will be placed in the ``venv`` folder, isolated from the global Python " -"installation." +"The name of the current virtual environment will now appear on the left " +"of the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to " +"let you know that it's active. From now on, any package that you install " +"using pip will be placed in the ``venv`` folder, isolated from the global" +" Python installation." msgstr "" -#: ../../dev/virtualenvs.rst:62 +#: ../../dev/virtualenvs.rst:65 msgid "Install packages as usual, for example:" msgstr "" -#: ../../dev/virtualenvs.rst:68 +#: ../../dev/virtualenvs.rst:71 msgid "" -"If you are done working in the virtual environment for the moment, you can " -"deactivate it:" +"If you are done working in the virtual environment for the moment, you " +"can deactivate it:" msgstr "" -#: ../../dev/virtualenvs.rst:75 +#: ../../dev/virtualenvs.rst:78 msgid "" -"This puts you back to the system's default Python interpreter with all its " -"installed libraries." +"This puts you back to the system's default Python interpreter with all " +"its installed libraries." msgstr "" -#: ../../dev/virtualenvs.rst:78 +#: ../../dev/virtualenvs.rst:81 msgid "" -"To delete a virtual environment, just delete its folder. (In this case, it " -"would be ``rm -rf venv``.)" +"To delete a virtual environment, just delete its folder. (In this case, " +"it would be ``rm -rf venv``.)" msgstr "" -#: ../../dev/virtualenvs.rst:81 +#: ../../dev/virtualenvs.rst:84 msgid "" -"After a while, though, you might end up with a lot of virtual environments " -"littered across your system, and its possible you'll forget their names or " -"where they were placed." +"After a while, though, you might end up with a lot of virtual " +"environments littered across your system, and its possible you'll forget " +"their names or where they were placed." msgstr "" -#: ../../dev/virtualenvs.rst:86 +#: ../../dev/virtualenvs.rst:89 msgid "Other Notes" msgstr "" -#: ../../dev/virtualenvs.rst:88 +#: ../../dev/virtualenvs.rst:91 msgid "" -"Running ``virtualenv`` with the option :option:`--no-site-packages` will not" -" include the packages that are installed globally. This can be useful for " -"keeping the package list clean in case it needs to be accessed later. [This " -"is the default behavior for ``virtualenv`` 1.7 and later.]" +"Running ``virtualenv`` with the option :option:`--no-site-packages` will " +"not include the packages that are installed globally. This can be useful " +"for keeping the package list clean in case it needs to be accessed later." +" [This is the default behavior for ``virtualenv`` 1.7 and later.]" msgstr "" -#: ../../dev/virtualenvs.rst:93 +#: ../../dev/virtualenvs.rst:96 msgid "" -"In order to keep your environment consistent, it's a good idea to \"freeze\"" -" the current state of the environment packages. To do this, run" +"In order to keep your environment consistent, it's a good idea to " +"\"freeze\" the current state of the environment packages. To do this, run" msgstr "" -#: ../../dev/virtualenvs.rst:100 +#: ../../dev/virtualenvs.rst:103 msgid "" -"This will create a :file:`requirements.txt` file, which contains a simple " -"list of all the packages in the current environment, and their respective " -"versions. Later it will be easier for a different developer (or you, if you " -"need to re-create the environment) to install the same packages using the " -"same versions:" +"This will create a :file:`requirements.txt` file, which contains a simple" +" list of all the packages in the current environment, and their " +"respective versions. You can see the list of installed packages without " +"the requirements format using \"pip list\". Later it will be easier for a" +" different developer (or you, if you need to re-create the environment) " +"to install the same packages using the same versions:" msgstr "" -#: ../../dev/virtualenvs.rst:110 +#: ../../dev/virtualenvs.rst:114 msgid "" -"This can help ensure consistency across installations, across deployments, " -"and across developers." +"This can help ensure consistency across installations, across " +"deployments, and across developers." msgstr "" -#: ../../dev/virtualenvs.rst:113 +#: ../../dev/virtualenvs.rst:117 msgid "" "Lastly, remember to exclude the virtual environment folder from source " "control by adding it to the ignore list." msgstr "" -#: ../../dev/virtualenvs.rst:117 +#: ../../dev/virtualenvs.rst:123 msgid "virtualenvwrapper" msgstr "" -#: ../../dev/virtualenvs.rst:119 +#: ../../dev/virtualenvs.rst:125 msgid "" "`virtualenvwrapper " -"`_ provides a" -" set of commands which makes working with virtual environments much more " -"pleasant. It also places all your virtual environments in one place." +"`_ " +"provides a set of commands which makes working with virtual environments " +"much more pleasant. It also places all your virtual environments in one " +"place." msgstr "" -#: ../../dev/virtualenvs.rst:123 ../../dev/virtualenvs.rst:135 +#: ../../dev/virtualenvs.rst:129 ../../dev/virtualenvs.rst:141 msgid "To install (make sure **virtualenv** is already installed):" msgstr "" -#: ../../dev/virtualenvs.rst:131 +#: ../../dev/virtualenvs.rst:137 msgid "" "(`Full virtualenvwrapper install instructions " -"`_.)" +"`_.)" msgstr "" -#: ../../dev/virtualenvs.rst:133 +#: ../../dev/virtualenvs.rst:139 msgid "" -"For Windows, you can use the `virtualenvwrapper-powershell " -"`_ clone." +"For Windows, you can use the `virtualenvwrapper-win " +"`_." msgstr "" #: ../../dev/virtualenvs.rst:147 +msgid "In Windows, the default path for WORKON_HOME is %USERPROFILE%\\Envs" +msgstr "" + +#: ../../dev/virtualenvs.rst:152 msgid "Create a virtual environment:" msgstr "" -#: ../../dev/virtualenvs.rst:153 +#: ../../dev/virtualenvs.rst:158 msgid "This creates the :file:`venv` folder inside :file:`~/Envs`." msgstr "" -#: ../../dev/virtualenvs.rst:155 +#: ../../dev/virtualenvs.rst:160 msgid "Work on a virtual environment:" msgstr "" -#: ../../dev/virtualenvs.rst:161 +#: ../../dev/virtualenvs.rst:166 +msgid "" +"Alternatively, you can make a project, which creates the virtual " +"environment, and also a project directory inside ``$PROJECT_HOME``, which" +" is ``cd`` -ed into when you ``workon myproject``." +msgstr "" + +#: ../../dev/virtualenvs.rst:174 msgid "" "**virtualenvwrapper** provides tab-completion on environment names. It " "really helps when you have a lot of environments and have trouble " "remembering their names." msgstr "" -#: ../../dev/virtualenvs.rst:165 +#: ../../dev/virtualenvs.rst:178 msgid "" -"``workon`` also deactivates whatever environment you are currently in, so " -"you can quickly switch between environments." +"``workon`` also deactivates whatever environment you are currently in, so" +" you can quickly switch between environments." msgstr "" -#: ../../dev/virtualenvs.rst:168 +#: ../../dev/virtualenvs.rst:181 msgid "Deactivating is still the same:" msgstr "" -#: ../../dev/virtualenvs.rst:174 +#: ../../dev/virtualenvs.rst:187 msgid "To delete:" msgstr "" -#: ../../dev/virtualenvs.rst:181 +#: ../../dev/virtualenvs.rst:194 msgid "Other useful commands" msgstr "" -#: ../../dev/virtualenvs.rst:184 +#: ../../dev/virtualenvs.rst:197 +msgid "``lsvirtualenv``" +msgstr "" + +#: ../../dev/virtualenvs.rst:197 msgid "List all of the environments." msgstr "" -#: ../../dev/virtualenvs.rst:187 +#: ../../dev/virtualenvs.rst:201 +msgid "``cdvirtualenv``" +msgstr "" + +#: ../../dev/virtualenvs.rst:200 msgid "" -"Navigate into the directory of the currently activated virtual environment, " -"so you can browse its :file:`site-packages`, for example." +"Navigate into the directory of the currently activated virtual " +"environment, so you can browse its :file:`site-packages`, for example." msgstr "" -#: ../../dev/virtualenvs.rst:191 +#: ../../dev/virtualenvs.rst:204 +msgid "``cdsitepackages``" +msgstr "" + +#: ../../dev/virtualenvs.rst:204 msgid "Like the above, but directly into :file:`site-packages` directory." msgstr "" -#: ../../dev/virtualenvs.rst:194 +#: ../../dev/virtualenvs.rst:207 +msgid "``lssitepackages``" +msgstr "" + +#: ../../dev/virtualenvs.rst:207 msgid "Shows contents of :file:`site-packages` directory." msgstr "" -#: ../../dev/virtualenvs.rst:196 +#: ../../dev/virtualenvs.rst:209 msgid "" "`Full list of virtualenvwrapper commands " -"`_." +"`_." +msgstr "" + +#: ../../dev/virtualenvs.rst:212 +msgid "virtualenv-burrito" +msgstr "" + +#: ../../dev/virtualenvs.rst:214 +msgid "" +"With `virtualenv-burrito `_, you can have a working virtualenv + virtualenvwrapper " +"environment in a single command." msgstr "" -#: ../../dev/virtualenvs.rst:199 +#: ../../dev/virtualenvs.rst:218 msgid "autoenv" msgstr "" -#: ../../dev/virtualenvs.rst:200 +#: ../../dev/virtualenvs.rst:219 msgid "" "When you ``cd`` into a directory containing a :file:`.env`, `autoenv " "`_ automagically activates the " "environment." msgstr "" -#: ../../dev/virtualenvs.rst:203 +#: ../../dev/virtualenvs.rst:222 msgid "Install it on Mac OS X using ``brew``:" msgstr "" -#: ../../dev/virtualenvs.rst:209 +#: ../../dev/virtualenvs.rst:228 msgid "And on Linux:" msgstr "" -#: ../../dev/virtualenvs.rst:184 -msgid "``lsvirtualenv``" -msgstr "" - -#: ../../dev/virtualenvs.rst:188 -msgid "``cdvirtualenv``" -msgstr "" - -#: ../../dev/virtualenvs.rst:191 -msgid "``cdsitepackages``" -msgstr "" +#~ msgid "" +#~ "This will create a :file:`requirements.txt`" +#~ " file, which contains a simple list" +#~ " of all the packages in the " +#~ "current environment, and their respective " +#~ "versions. Later it will be easier " +#~ "for a different developer (or you, " +#~ "if you need to re-create the " +#~ "environment) to install the same " +#~ "packages using the same versions:" +#~ msgstr "" + +#~ msgid "" +#~ "`virtualenvwrapper " +#~ "`_ " +#~ "provides a set of commands which " +#~ "makes working with virtual environments " +#~ "much more pleasant. It also places " +#~ "all your virtual environments in one " +#~ "place." +#~ msgstr "" + +#~ msgid "" +#~ "(`Full virtualenvwrapper install instructions " +#~ "`_.)" +#~ msgstr "" + +#~ msgid "" +#~ "For Windows, you can use the " +#~ "`virtualenvwrapper-powershell " +#~ "`_ clone." +#~ msgstr "" + +#~ msgid "" +#~ "`Full list of virtualenvwrapper commands " +#~ "`_." +#~ msgstr "" -#: ../../dev/virtualenvs.rst:194 -msgid "``lssitepackages``" -msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index 7cec027df76a25c941e269aad390e722a0f17ef1..a72a30cb54b93ccc3bd896b74d6b45da6e26237f 100644 GIT binary patch literal 4614 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 diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index 5488d2687..c260f49bb 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -1,96 +1,131 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Jou Sung-Shik \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../index.rst:7 msgid "The Hitchhiker's Guide to Python!" -msgstr "파이썬을 여행하는 히치하이커를 위한 안내서" +msgstr "파이썬을 여행하는 히치하이커를 위한 안내서!" #: ../../index.rst:9 -msgid "Welcome to The Hitchhiker's Guide to Python." -msgstr "파이썬을 여행하는 히치하이커를 위한 안내서에 오신 것을 환영합니다." +msgid "Greetings, Earthling! Welcome to The Hitchhiker's Guide to Python." +msgstr "안녕, 지구인! 파이썬을 여행하는 히치하이커를 위한 안내서에 오신 것을 환영합니다." #: ../../index.rst:11 msgid "" -"**This guide is currently under heavy active development.** If you'd like " -"to help, `fork us on GitHub `_!" +"**This is a living, breathing guide.** If you'd like to contribute, " +"`fork us on GitHub `_!" msgstr "" -"**이 가이드는 현재 많은 변화가 진행 중입니다.** 도와주고 싶으시다면, `fork us on GitHub " +"**이 안내서는 현재 많은 변화가 진행 중입니다.** 도와주고 싶으시다면, `fork us on GitHub " "`_!" #: ../../index.rst:14 msgid "" -"This *opinionated* guide exists to provide both novice and expert Python " -"developers a best-practice handbook to the installation, configuration, and " -"usage of Python on a daily basis." +"This handcrafted guide exists to provide both novice and expert Python " +"developers a best practice handbook to the installation, configuration, " +"and usage of Python on a daily basis." msgstr "" -"이 *자부심 강한* 가이드는 파이썬 초보자와 전문 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는 우수 사례 " -"안내서입니다." +"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는 모범 사례 안내서입니다." + +#: ../../index.rst:18 +msgid "" +"This guide is **opinionated** in a way that is almost, but not quite, " +"entirely *unlike* Python's official documentation. You won't find a list " +"of every Python web framework available here. Rather, you'll find a nice " +"concise list of highly recommended options." +msgstr "" +"이 안내서는 거의 **독단적**입니다. 하지만 파이썬 공식 문서만큼 완벽하게 독단적이지는 않습니다. " +"여기서 사용 가능한 세상의 모든 파이썬 웹 프레임워크의 목록을 찾을 수 있다는 것은 아닙니다. " +"그보다는 강력 추천하는 여러 선택 사항들의 간결하고 멋진 목록을 보게 될 것입니다. " + +#: ../../index.rst:24 +msgid "" +"Let's get started! But first, let's make sure you know where your towel " +"is." +msgstr "" +"이제 출발합시다! 그런데 우선, 당신의 타월이 어디에 있는지 확인합시다. " #: ../../contents.rst.inc:2 -msgid "Getting Started" -msgstr "시작하기" +msgid "Getting Started with Python" +msgstr "파이썬 시작하기" #: ../../contents.rst.inc:4 -msgid "This part of the guide focuses on setting up your Python environment." -msgstr "이 파트의 주제는 파이썬 환경설정입니다." +msgid "New to Python? Let's properly setup up your Python environment." +msgstr "파이썬은 처음인가요? 파이썬 환경을 잘 설치해봅시다." #: ../../contents.rst.inc:11 msgid "Properly Install Python" -msgstr "적절한 파이썬 설치" +msgstr "올바른 파이썬 설치" -#: ../../contents.rst.inc:23 -msgid "Writing Great Code" +#: ../../contents.rst.inc:24 +msgid "Writing Great Python Code" msgstr "최고의 코드 작성하기" -#: ../../contents.rst.inc:25 +#: ../../contents.rst.inc:26 msgid "" -"This part of the guide focuses on best practices for writing Python code." -msgstr "이 파트는 파이썬 코드 작성의 모범 사례를 다룹니다." - -#: ../../contents.rst.inc:41 -msgid "Scenario Guide" -msgstr "시나리오 안내" +"This part of the guide focuses on the best-practices for writing Python " +"code." +msgstr "안내서의 이 부분은 파이썬 코드 작성의 모범 사례를 다룹니다." #: ../../contents.rst.inc:43 +msgid "Scenario Guide for Python Applications" +msgstr "" +"파이썬 어플리케이션을 위한 시나리오 안내" + +#: ../../contents.rst.inc:45 msgid "" -"This part of the guide focuses on tool and module advice based on different " -"scenarios." +"This part of the guide focuses on tool and module advice based on " +"different scenarios." msgstr "이 파트는 다양한 시나리에오 따른 툴과 모듈에 대한 조언을 다룹니다" -#: ../../contents.rst.inc:66 -msgid "Shipping Great Code" +#: ../../contents.rst.inc:71 +msgid "Shipping Great Python Code" msgstr "최고의 코드를 진수하기" -#: ../../contents.rst.inc:68 +#: ../../contents.rst.inc:73 msgid "This part of the guide focuses on deploying your Python code." -msgstr "이 파트는 파이썬 코드 배포를 다룹니다" +msgstr "이 부분은 파이썬 코드 배포를 다룹니다" + +#: ../../contents.rst.inc:83 +msgid "Python Development Environments" +msgstr "파이썬 개발 환경" -#: ../../contents.rst.inc:78 -msgid "Development Environment" -msgstr "개발 환경" +#: ../../contents.rst.inc:85 +msgid "" +"This part of the guide focus on the Python development environment, and " +"the best-practice tools that are available for writing Python code." +msgstr "" +"이 부분은 파이썬 개발 환경, 그리고 파이썬 코드 작성을 위한 모범적인 개발도구를 다룹니다." -#: ../../contents.rst.inc:90 +#: ../../contents.rst.inc:99 msgid "Additional Notes" -msgstr "참고" +msgstr "참고 사항" -#: ../../contents.rst.inc:92 +#: ../../contents.rst.inc:101 msgid "" -"This part of the guide, which is mostly prose, begins with some background " -"information about Python, then focuses on next steps." -msgstr "대부분 산문체로 쓰여진 이 부분은 파이썬에 대한 배경 지식부터 시작하여 그 다음 단계까지 다룹니다." +"This part of the guide, which is mostly prose, begins with some " +"background information about Python, then focuses on next steps." +msgstr "" +"이 부분에서는 파이썬에 대한 배경 지식부터 시작해서 그 다음 단계를 구구절절 다룹니다." -#: ../../contents.rst.inc:109 +#: ../../contents.rst.inc:114 msgid "" -"Contribution notes and legal information are here (for those interested)." -msgstr "(관심있으신 분들을 위한) 공헌자를 위한 알림과 법적 정보는 여기에 있습니다." +"Notes defined within all diatonic and chromatic musical scales have been " +"intentionally excluded from this list of additional notes. Additionally, " +"this note." +msgstr "" +"이 참고 사항에서는 장음계와 단음계를 비롯한 음계의 모든 사항들을 다루지는 않습니다. " +"그런 것들은 이 참고 사항의 목록에서 일부러 제외시켰습니다. 이 문단도 그렇습니다." + +#: ../../contents.rst.inc:121 +msgid "Contribution notes and legal information (for those interested)." +msgstr "기여자를 위한 알림과 법적 정보(관심있으신 분들에게)." \ No newline at end of file diff --git a/docs/locale/ko/LC_MESSAGES/intro/community.mo b/docs/locale/ko/LC_MESSAGES/intro/community.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..063528a31ebb5689a4cab7c85f19b5d219725fe5 100644 GIT binary patch literal 4867 zcmeHJ&u<$=6yBBsCHyF@gpg2y#}5@qvv!ge(YmG7X`D1*Cuy93noBd@9oy6H?rdjf z<63}Ji6a+~;KCn4PjKQNpeOD~mEaF3Cr${7@6FmyD#4vYtT>-%cjnD|-}~O1d2r&$ zw*fw{;d>I_HxKb>?=y2a2##YI0-pwc0DKns5%6W;b>Qp30g!Ec2iyk!1pE;A;$uN@ z1lR$t0(-z|;E%vlz~6w^fJZS&1Gj;0fSE;7h*(CWPb(l9#8{+1-|+uVgddItOG9`g)QLcz^lOIsUSEH`~i3kocsY~ z9_k>0d1&Jw+r0r~9#SCl@FkFW_#VhS`~qYiP9qqOV;9Igd|(LdR?aGXe+wqihqxI!NYP(?~ zX}M6btORw6bebF4mzh<&k`iSdZxZROD~-(H7b#1rP?^J5#v~l=tN9obh| zJPCDSaj6+BN*fu~fkT2~X;m+SXSR?t)RUPsBB36~l)y_nL)wtqBbuD{TOio9$dnsa z9x<260d=Ktg^_+?nkU{_pQJ~p=4GzP$OI9^YA(1amEk z$)n%zep3!W)vivE2wGGTk^(zR_%>A+YPgD&zr~)C-j!xoffj7SM%EkaB%(;>kY^-m zpv|prq6f8LRXfpvo-n}%lYb<@c8h;t=Ck)gDR`V=c0 z71p9mDpb#gI+GM3?152E`qj4Rq{=~R962Ylw2d8o`Ei|%3uOGLjT8(x@FjN7YiImw z%VOhYxSiWzLkh^IuPk;>5+)ddU`+x(eN1h?wc~2`+Xo;D`;CL2?SJ#9#(PsVZ|1Ct__liVOK;dQQU?6@}AKH)Evl1GeO-NTc#atPMU1g zoVhoa?Sdzc5OfZL#Ar)glSbYyRQW^1@VK^b zz3Uq(;Y!!5%8?u9C@XOgAmnuL;^NN$nn=mHg5=Emuqn-&asN~DEG_d0r_BlO#XRShPgYR=oEhXf~S zXJqW(68(v~rS^^w3~+wd&N!O)yZ!fojXsX{RZL$*AQ`_`toY+DrenJh$C)<+{<_Pr{Wr{1_sDtZP)d z?#~~Zt;|;DrZyx?FKpSKio=DXXTwchqp9_^&F~8MZ!8NJp~f1`&(56<=jOsQvot?n zn?HAY79UIuH_*-4{Ak|wMtvh}t%Zwqy1G_tt(@LoTWw4=g>~Vk5t+q#q)m;Mwwg^^ zt+yIm%HhBCS!gzPh|sU&g#<^Kzp2IKMR2T4^=*!kVkh zPN4`WR0A>V0+=&kEME~n+a diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.mo b/docs/locale/ko/LC_MESSAGES/intro/documentation.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..94b722c3a7a5cc53303995161a5472101aeffe4d 100644 GIT binary patch literal 2171 zcmeHHO^+Kj7#=7eRRlunfm4OvGuxR=b`e@lcUMiDv_zUTQ5q`2g*Y>wj9ZUA*q+@D z^au3X181&q;2-b@_z%FD3tTvI;c+Ir-CZGm!CD$Ue(l$fUq6q>zu$W6y8!Jye7Etv z@WF-lEBYV25d^;h-^ceS`X2)S0s8pXn?djckbpDbFTfG-_KhI;7+7ra6>taf&%n2V ze*nJ)$6r9t{|tkk@0)j8{+B=>e-HHhKLI`e(|23`AAz3#?=60Gv*jNFJ%0lXlG^B% zVO6rI*SXFXBrGv%oRGq;$(79c5uvPOQu3TmO0Hok4c zi0rvsli|(?e$0ufoGfQ1E2+?iuv=4c<(Ly%QDJoDR~oV!e=Vq(T5lcL9@yTYrFJEqRp3SEr`m}u3g(cAEj6t0b@>@s%dLe8 zI3uj$@a&jL!~_F%upTEkPZG|a5895!Rh zD_`gaMZiFw1dHwJ-RP7KO6O{ubi24CHmchjrp>Cm+dW!*b)LHSf2n(I>Sc4zi47dY zxijvaTG_r&WzXExNvM&A`kC3D;v&rLY?Vk z9zFoKztZ7=IiApN-1{`_#bK{U@qQBT?ZjwE3}^gUc=~PL7sLK698bbQpFW!;An77FdII3a)i`Y_Jp46^B|ma{M#6z zgEYM-MTEm1b*8d0OosTyDw~k1H=#Z3-KDmB7y26 zy0v6N-KDH##&UPqxFXzto#(4AxCw_U(>X3nLiv4Mh-k(H6f z&Gco`G6~q<= diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.po b/docs/locale/ko/LC_MESSAGES/intro/documentation.po index dfc19b59b..2f7d08655 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/intro/documentation.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../intro/documentation.rst:2 msgid "Documentation" @@ -20,8 +21,7 @@ msgid "Official Documentation" msgstr "" #: ../../intro/documentation.rst:7 -msgid "" -"The official Python Language and Library documentation can be found here:" +msgid "The official Python Language and Library documentation can be found here:" msgstr "" #: ../../intro/documentation.rst:9 @@ -38,9 +38,9 @@ msgstr "" #: ../../intro/documentation.rst:16 msgid "" -"Read the Docs is a popular community project that hosts documentation for " -"open source software. It holds documentation for many Python modules, both " -"popular and exotic." +"Read the Docs is a popular community project that hosts documentation for" +" open source software. It holds documentation for many Python modules, " +"both popular and exotic." msgstr "" #: ../../intro/documentation.rst:20 @@ -53,14 +53,26 @@ msgstr "" #: ../../intro/documentation.rst:26 msgid "" -":program:`pydoc` is a utlity that is installed when you install Python. It " -"allows you to quickly retrieve and search for documentation from your shell." -" For example, if you needed a quick refresher on the :mod:`time` module, " -"pulling up documentation would be as simple as" +":program:`pydoc` is a utility that is installed when you install Python. " +"It allows you to quickly retrieve and search for documentation from your " +"shell. For example, if you needed a quick refresher on the :mod:`time` " +"module, pulling up documentation would be as simple as" msgstr "" #: ../../intro/documentation.rst:35 msgid "" -"The above command is essentially equivalent to opening the Python REPL and " -"running" +"The above command is essentially equivalent to opening the Python REPL " +"and running" msgstr "" + +#~ msgid "" +#~ ":program:`pydoc` is a utlity that is " +#~ "installed when you install Python. It" +#~ " allows you to quickly retrieve and" +#~ " search for documentation from your " +#~ "shell. For example, if you needed " +#~ "a quick refresher on the :mod:`time` " +#~ "module, pulling up documentation would " +#~ "be as simple as" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.mo b/docs/locale/ko/LC_MESSAGES/intro/duction.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..6c8e0ed4150bbb00325c0884e244d14971ecf8fd 100644 GIT binary patch literal 6599 zcmeHLyN?`68E+2rS`cu@9o$Jsd^oYR-tOJKJ0WY%HaFf~+XK7a)p~gfiK*_cnJ!Ov zRbN&0%=STskO&Dt1UzEM5F!U82reN*mmnen#6uz=f`s2!-7`Br5%34hNaN2{Q;*;G z`h8#RpPsw+{Rp2I@%<#ef8@d1=SS~~qEn224Eb@$e?VS`y!K2Ky##p!@>7sQ$d5t_ z$nRi{h5RMP|9N*e|MP26^iPa`1NkiEFWwVHpN0G_lB^b*Z^oSo6p>bjt8u(lbET(Owj?v5V2#==q@6S+^_oqr zsN}-fS?@GsN(V>IWT*e(6QQT(sY~-PRa^5!WuIFX?0ZZewgo3Q=PS|-MXpj zHgTE4za46F(lfM5z_S+aP+Gbq8kQxXYj0JGDWikw*dM`9B%tR)mbe;rnpjiy$|yvl z@l`y5Csi;XIqzVzd(Vv_d7|G#K7$g{=yAToZK>3GF z8Z_&DD5!35kCksU()lF1hhPT8gJt+e2Ty6R2D-xxe6}?jDl7`gz<7Im1G))Krp&3} zEJE-Inkegh>{TV#G~HR5Su_aJF1{E+hk2m@ZdwXXsX~^}wlhQ_kg}Y40d_F12#LU3 zMGe2!Rte;`bT9^Npv5-^C?#*xX;evsj-<%RHno#?hr6e zdAW*>wKNKFIFAO=2r&Ta$T$e1v&PoO$*7Oq3}#xg1LA?XVf;Cy-5L!o6P0u2$tq8A z@(xLjw>8jNLhB{fG1!X-1n0ZNhtV}YBhij$lD8; zL5EdY$tbL(`{Z34!?DF_lxu9i3i^aATMO87|X zOeRa46o`KTh6N7;EyoWi1iUq{axxghnH{szZETKL!@FaIAnRKR7!+RzJIqvYzn&mt za77q2+JnU%VjhlA-Z0ni@UCFV68VSW==^{(#I8pAbukJfR1F_*tW4;k%w`?CE*-go z1;vmRI>amc298-+juK?AqbZa0rU1;o3p{7L~Qh((fKBxqXHB8`Z zta_1^JAqnv=)6fm_>Z$fGNZsf?D&KpgJ9Uw%DZ41n#qxYQoSJF{-s5D1CLRS|WQbx-!L|ee@$Q~#5-jo0L0`-C4K7@&ax{U_;~p)X_8%u3(d)FG4&AwpbBfoTER&8aY9s?^zvT zF%Lclt#@oPU@L~{kfE#H(87Ru5J?`*E&IApC8+zq{ex~!b`8}4(LNaOYJ*tVU9~uJ zj9zfcG~RVp@hFeK2$ul=fa*}VI-Bh!d&&ORIq28=_{2?B9^Y%GF1|1W+B!SEh!4;} zvOnTOMB#v5-rN67yuTOk@6+C`!QLx3_wd2O_*~8vAK$P0%F*yVJ~@pKhxG7ta5B32 z)ze2uTgL)j#|27>gU^i}(ETqQAJe1Z$r0T?IvI|RUmqSGo*zAad>2bQf*sJztOoIg z6cx|V?c?LuOBI^Ft+Ns_Q^sf(DmNfqhoQT({~E%df4Q@_buv0Rx-!6ivbV*(6!v4Mh-k(H6f z\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../intro/duction.rst:2 msgid "Introduction" @@ -21,8 +22,8 @@ msgstr "" #: ../../intro/duction.rst:6 msgid "" -"Python is a general-purpose, high-level programming language similar to Tcl," -" Perl, Ruby, Scheme, or Java. Some of its main key features include:" +"Python is a general-purpose, high-level programming language similar to " +"Tcl, Perl, Ruby, Scheme, or Java. Some of its main key features include:" msgstr "" #: ../../intro/duction.rst:10 @@ -31,9 +32,9 @@ msgstr "" #: ../../intro/duction.rst:12 msgid "" -"Python's philosophy focuses on readability, from code blocks delineated with" -" significant whitespace to intuitive keywords in place of inscrutable " -"punctuation." +"Python's philosophy focuses on readability, from code blocks delineated " +"with significant whitespace to intuitive keywords in place of inscrutable" +" punctuation." msgstr "" #: ../../intro/duction.rst:16 @@ -44,18 +45,19 @@ msgstr "" #: ../../intro/duction.rst:19 msgid "" -"Python is sometimes described with the words \"batteries included\" because " -"of its extensive `standard library `_, " -"which includes modules for regular expressions, file IO, fraction handling, " -"object serialization, and much more." +"Python is sometimes described with the words \"batteries included\" " +"because of its extensive `standard library " +"`_, which includes modules for regular " +"expressions, file IO, fraction handling, object serialization, and much " +"more." msgstr "" #: ../../intro/duction.rst:25 msgid "" -"Additionally, the `Python Package Index `_ is " -"available for users to submit their packages for widespread use, similar to " -"Perl's `CPAN `_. There is a thriving community of very " -"powerful Python frameworks and tools like the `Django " +"Additionally, the `Python Package Index `_ " +"is available for users to submit their packages for widespread use, " +"similar to Perl's `CPAN `_. There is a thriving " +"community of very powerful Python frameworks and tools like the `Django " "`_ web framework and the `NumPy " "`_ set of math routines." msgstr "" @@ -78,9 +80,9 @@ msgstr "" #: ../../intro/duction.rst:43 msgid "" -"Python is available on Windows, \\*nix, and Mac. It runs wherever the Java " -"virtual machine runs, and the reference implementation CPython can help " -"bring Python to wherever there is a working C compiler." +"Python is available on Windows, \\*nix, and Mac. It runs wherever the " +"Java virtual machine runs, and the reference implementation CPython can " +"help bring Python to wherever there is a working C compiler." msgstr "" #: ../../intro/duction.rst:47 @@ -91,8 +93,8 @@ msgstr "" msgid "" "Python has a vibrant and large :ref:`community ` which " "maintains wikis, conferences, countless repositories, mailing lists, IRC " -"channels, and so much more. Heck, the Python community is even helping to " -"write this guide!" +"channels, and so much more. Heck, the Python community is even helping to" +" write this guide!" msgstr "" #: ../../intro/duction.rst:58 @@ -105,8 +107,8 @@ msgstr "" #: ../../intro/duction.rst:63 msgid "" -"The Hitchhiker's Guide to Python exists to provide both novice and expert " -"Python developers a best-practice handbook to the installation, " +"The Hitchhiker's Guide to Python exists to provide both novice and expert" +" Python developers a best practice handbook for the installation, " "configuration, and usage of Python on a daily basis." msgstr "" @@ -117,8 +119,8 @@ msgstr "" #: ../../intro/duction.rst:71 msgid "" "This guide is architected and maintained by `Kenneth Reitz " -"`_ in an open fashion. This is a community-" -"driven effort that serves one purpose: to serve the community." +"`_ in an open fashion. This is a " +"community-driven effort that serves one purpose: to serve the community." msgstr "" #: ../../intro/duction.rst:76 @@ -127,17 +129,17 @@ msgstr "" #: ../../intro/duction.rst:78 msgid "" -"All contributions to the Guide are welcome, from Pythonistas of all levels. " -"If you think there's a gap in what the Guide covers, fork the Guide on " -"GitHub and submit a pull request." +"All contributions to the Guide are welcome, from Pythonistas of all " +"levels. If you think there's a gap in what the Guide covers, fork the " +"Guide on GitHub and submit a pull request." msgstr "" #: ../../intro/duction.rst:82 msgid "" -"Contributions are welcome from everyone, whether they're an old hand or a " -"first-time Pythonista, and the authors to the Guide will gladly help if you " -"have any questions about the appropriateness, completeness, or accuracy of a" -" contribution." +"Contributions are welcome from everyone, whether they're an old hand or a" +" first-time Pythonista, and the authors to the Guide will gladly help if " +"you have any questions about the appropriateness, completeness, or " +"accuracy of a contribution." msgstr "" #: ../../intro/duction.rst:87 @@ -145,3 +147,13 @@ msgid "" "To get started working on The Hitchhiker's Guide, see the " ":doc:`/notes/contribute` page." msgstr "" + +#~ msgid "" +#~ "The Hitchhiker's Guide to Python exists" +#~ " to provide both novice and expert" +#~ " Python developers a best-practice " +#~ "handbook to the installation, configuration," +#~ " and usage of Python on a daily" +#~ " basis." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.mo b/docs/locale/ko/LC_MESSAGES/intro/learning.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..579b242c4787bf3f0850c80cd33e6de3eafa2479 100644 GIT binary patch literal 24665 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 delta 114 zcmcb4fbjv7&OITPsSH5C2*ff#tODWyfewTM(?&o^T_At*6{8Sd6J0|?U1I|UBO@y# zi^*2TG19srsfoE(3O;M1& diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.po b/docs/locale/ko/LC_MESSAGES/intro/learning.po index 9acc40428..d742df608 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/learning.po +++ b/docs/locale/ko/LC_MESSAGES/intro/learning.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../intro/learning.rst:2 msgid "Learning Python" @@ -25,302 +26,376 @@ msgstr "" #: ../../intro/learning.rst:10 msgid "" -"This is the official tutorial. It covers all the basics, and offers a tour " -"of the language and the standard library. Recommended for those who need a " -"quickstart guide to the language." +"This is the official tutorial. It covers all the basics, and offers a " +"tour of the language and the standard library. Recommended for those who " +"need a quick-start guide to the language." msgstr "" #: ../../intro/learning.rst:14 msgid "`The Python Tutorial `_" msgstr "" -#: ../../intro/learning.rst:18 +#: ../../intro/learning.rst:17 +msgid "Python for Beginners" +msgstr "" + +#: ../../intro/learning.rst:19 +msgid "" +"thepythonguru.com is a tutorial focuses on beginner programmers. It " +"covers many python concepts in depth. It also teaches you some advance " +"constructs of python like lambda expression, regular expression. At last " +"it finishes off with tutorial \"How to access MySQL db using python\"" +msgstr "" + +#: ../../intro/learning.rst:24 +msgid "`Python for beginners `_" +msgstr "" + +#: ../../intro/learning.rst:27 msgid "Learn Python Interactive Tutorial" msgstr "" -#: ../../intro/learning.rst:20 +#: ../../intro/learning.rst:29 msgid "" -"Learnpython.org is an easy non-intimidating way to get introduced to Python." -" The website takes the same approach used on the popular `Try Ruby " -"`_ website, it has an interactive Python interpreter " -"built into the site that allows you to go through the lessons without having" -" to install Python locally." +"Learnpython.org is an easy non-intimidating way to get introduced to " +"Python. The website takes the same approach used on the popular `Try Ruby" +" `_ website, it has an interactive Python " +"interpreter built into the site that allows you to go through the lessons" +" without having to install Python locally." msgstr "" -#: ../../intro/learning.rst:25 +#: ../../intro/learning.rst:35 msgid "`Learn Python `_" msgstr "" -#: ../../intro/learning.rst:28 +#: ../../intro/learning.rst:38 msgid "" -"If you want a more traditional book, *Python For You and Me* is an excellent" -" resource for learning all aspects of the language." +"If you want a more traditional book, *Python For You and Me* is an " +"excellent resource for learning all aspects of the language." msgstr "" -#: ../../intro/learning.rst:31 -msgid "`Python for You and Me `_" +#: ../../intro/learning.rst:41 +msgid "`Python for You and Me `_" msgstr "" -#: ../../intro/learning.rst:35 +#: ../../intro/learning.rst:44 +msgid "Online Python Tutor" +msgstr "" + +#: ../../intro/learning.rst:46 +msgid "" +"Online Python Tutor gives you a visual step by step representation of how" +" your program runs. Python Tutor helps people overcome a fundamental " +"barrier to learning programming by understanding what happens as the " +"computer executes each line of a program's source code." +msgstr "" + +#: ../../intro/learning.rst:52 +msgid "`Online Python Tutor `_" +msgstr "" + +#: ../../intro/learning.rst:55 msgid "Invent Your Own Computer Games with Python" msgstr "" -#: ../../intro/learning.rst:37 +#: ../../intro/learning.rst:57 msgid "" "This beginner's book is for those with no programming experience at all. " "Each chapter has the source code to a small game, using these example " -"programs to demonstrate programming concepts to give the reader an idea of " -"what programs \"look like\"." +"programs to demonstrate programming concepts to give the reader an idea " +"of what programs \"look like\"." msgstr "" -#: ../../intro/learning.rst:42 +#: ../../intro/learning.rst:62 msgid "" -"`Invent Your Own Computer Games with Python `_" +"`Invent Your Own Computer Games with Python " +"`_" msgstr "" -#: ../../intro/learning.rst:46 +#: ../../intro/learning.rst:66 msgid "Hacking Secret Ciphers with Python" msgstr "" -#: ../../intro/learning.rst:48 +#: ../../intro/learning.rst:68 msgid "" "This book teaches Python programming and basic cryptography for absolute " -"beginners. The chapters provide the source code for various ciphers, as well" -" as programs that can break them." +"beginners. The chapters provide the source code for various ciphers, as " +"well as programs that can break them." msgstr "" -#: ../../intro/learning.rst:52 +#: ../../intro/learning.rst:72 msgid "" -"`Hacking Secret Ciphers with Python `_" +"`Hacking Secret Ciphers with Python " +"`_" msgstr "" -#: ../../intro/learning.rst:55 +#: ../../intro/learning.rst:76 msgid "Learn Python the Hard Way" msgstr "" -#: ../../intro/learning.rst:57 +#: ../../intro/learning.rst:78 msgid "" "This is an excellent beginner programmer's guide to Python. It covers " "\"hello world\" from the console to the web." msgstr "" -#: ../../intro/learning.rst:60 +#: ../../intro/learning.rst:81 msgid "`Learn Python the Hard Way `_" msgstr "" -#: ../../intro/learning.rst:64 +#: ../../intro/learning.rst:85 msgid "Crash into Python" msgstr "" -#: ../../intro/learning.rst:66 +#: ../../intro/learning.rst:87 msgid "" "Also known as *Python for Programmers with 3 Hours*, this guide gives " "experienced developers from other languages a crash course on Python." msgstr "" -#: ../../intro/learning.rst:69 +#: ../../intro/learning.rst:90 msgid "`Crash into Python `_" msgstr "" -#: ../../intro/learning.rst:73 +#: ../../intro/learning.rst:94 msgid "Dive Into Python 3" msgstr "" -#: ../../intro/learning.rst:75 +#: ../../intro/learning.rst:96 msgid "" -"Dive Into Python 3 is a good book for those ready to jump in to Python 3. " -"It's a good read if you are moving from Python 2 to 3 or if you already have" -" some experience programming in another language." +"Dive Into Python 3 is a good book for those ready to jump in to Python 3." +" It's a good read if you are moving from Python 2 to 3 or if you already " +"have some experience programming in another language." msgstr "" -#: ../../intro/learning.rst:79 +#: ../../intro/learning.rst:100 msgid "`Dive Into Python 3 `_" msgstr "" -#: ../../intro/learning.rst:82 +#: ../../intro/learning.rst:104 msgid "Think Python: How to Think Like a Computer Scientist" msgstr "" -#: ../../intro/learning.rst:84 +#: ../../intro/learning.rst:106 msgid "" -"Think Python attempts to give an introduction to basic concepts in computer " -"science through the use of the Python language. The focus was to create a " -"book with plenty of exercises, minimal jargon and a section in each chapter " -"devoted to the subject of debugging." +"Think Python attempts to give an introduction to basic concepts in " +"computer science through the use of the Python language. The focus was to" +" create a book with plenty of exercises, minimal jargon and a section in " +"each chapter devoted to the subject of debugging." msgstr "" -#: ../../intro/learning.rst:89 +#: ../../intro/learning.rst:111 msgid "" -"While exploring the various features available in the Python language the " -"author weaves in various design patterns and best practices." +"While exploring the various features available in the Python language the" +" author weaves in various design patterns and best practices." msgstr "" -#: ../../intro/learning.rst:92 +#: ../../intro/learning.rst:114 msgid "" -"The book also includes several case studies which have the reader explore " -"the topics discussed in the book in greater detail by applying those topics " -"to real-world examples. Case studies include assignments in GUI and Markov " -"Analysis." +"The book also includes several case studies which have the reader explore" +" the topics discussed in the book in greater detail by applying those " +"topics to real-world examples. Case studies include assignments in GUI " +"and Markov Analysis." msgstr "" -#: ../../intro/learning.rst:97 +#: ../../intro/learning.rst:119 msgid "`Think Python `_" msgstr "" -#: ../../intro/learning.rst:101 +#: ../../intro/learning.rst:123 msgid "Python Koans" msgstr "" -#: ../../intro/learning.rst:103 +#: ../../intro/learning.rst:125 msgid "" "Python Koans is a port of Edgecase's Ruby Koans. It uses a test-driven " -"approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive tutorial" -" teaching basic Python concepts. By fixing assertion statements that fail " -"in a test script, this provides sequential steps to learning Python." +"approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive " +"tutorial teaching basic Python concepts. By fixing assertion statements " +"that fail in a test script, this provides sequential steps to learning " +"Python." msgstr "" -#: ../../intro/learning.rst:108 +#: ../../intro/learning.rst:130 msgid "" -"For those used to languages and figuring out puzzles on their own, this can " -"be a fun, attractive option. For those new to Python and programming, having" -" an additional resource or reference will be helpful." +"For those used to languages and figuring out puzzles on their own, this " +"can be a fun, attractive option. For those new to Python and programming," +" having an additional resource or reference will be helpful." msgstr "" -#: ../../intro/learning.rst:112 +#: ../../intro/learning.rst:134 msgid "`Python Koans `_" msgstr "" -#: ../../intro/learning.rst:114 +#: ../../intro/learning.rst:136 msgid "" "More information about test driven development can be found at these " "resources:" msgstr "" -#: ../../intro/learning.rst:116 +#: ../../intro/learning.rst:138 msgid "" "`Test Driven Development `_" msgstr "" -#: ../../intro/learning.rst:119 +#: ../../intro/learning.rst:142 msgid "A Byte of Python" msgstr "" -#: ../../intro/learning.rst:121 +#: ../../intro/learning.rst:144 msgid "" "A free introductory book that teaches Python at the beginner level, it " "assumes no previous programming experience." msgstr "" -#: ../../intro/learning.rst:124 +#: ../../intro/learning.rst:147 msgid "" "`A Byte of Python for Python 2.x " -"`_ `A Byte of Python " -"for Python 3.x `_" +"`_ `A Byte of Python" +" for Python 3.x `_" +msgstr "" + +#: ../../intro/learning.rst:152 +msgid "Learn to Program in Python with Codeacademy" +msgstr "" + +#: ../../intro/learning.rst:154 +msgid "" +"A Codeacademy course for the absolute Python beginner. This free and " +"interactive course provides and teaches the basics (and beyond) of Python" +" programming whilst testing the user's knowledge in between progress. " +"This course also features a built-in interpreter for receiving instant " +"feedback on your learning." +msgstr "" + +#: ../../intro/learning.rst:157 +msgid "" +"`Learn to Program in Python with Codeacademy " +"`_" msgstr "" -#: ../../intro/learning.rst:129 +#: ../../intro/learning.rst:161 +msgid "Intermediate" +msgstr "" + +#: ../../intro/learning.rst:164 +msgid "Effective Python" +msgstr "" + +#: ../../intro/learning.rst:166 +msgid "" +"This book contains 59 specific ways to improve writing Pythonic code. At " +"227 pages, it is a very brief overview of some of the most commons " +"adapations programmers need to make to become efficient intermediate " +"level Python programmers." +msgstr "" + +#: ../../intro/learning.rst:171 +msgid "`Effective Python `_" +msgstr "" + +#: ../../intro/learning.rst:175 msgid "Advanced" msgstr "" -#: ../../intro/learning.rst:132 +#: ../../intro/learning.rst:178 msgid "Pro Python" msgstr "" -#: ../../intro/learning.rst:134 +#: ../../intro/learning.rst:180 msgid "" -"This book is for intermediate to advanced Python programmers who are looking" -" to understand how and why Python works the way it does and how they can " -"take their code to the next level." +"This book is for intermediate to advanced Python programmers who are " +"looking to understand how and why Python works the way it does and how " +"they can take their code to the next level." msgstr "" -#: ../../intro/learning.rst:137 +#: ../../intro/learning.rst:184 msgid "`Pro Python `_" msgstr "" -#: ../../intro/learning.rst:141 +#: ../../intro/learning.rst:188 msgid "Expert Python Programming" msgstr "" -#: ../../intro/learning.rst:142 +#: ../../intro/learning.rst:189 msgid "" -"Expert Python Programming deals with best practices in programming Python " -"and is focused on the more advanced crowd." +"Expert Python Programming deals with best practices in programming Python" +" and is focused on the more advanced crowd." msgstr "" -#: ../../intro/learning.rst:145 +#: ../../intro/learning.rst:192 msgid "" "It starts with topics like decorators (with caching, proxy, and context " "manager case-studies), method resolution order, using super() and meta-" "programming, and general :pep:`8` best practices." msgstr "" -#: ../../intro/learning.rst:149 +#: ../../intro/learning.rst:196 msgid "" "It has a detailed, multi-chapter case study on writing and releasing a " "package and eventually an application, including a chapter on using " -"zc.buildout. Later chapters detail best practices with writing " -"documentation, test-driven development, version control, and " -"optimization/profiling." +"zc.buildout. Later chapters detail best practices such as writing " +"documentation, test-driven development, version control, optimization and" +" profiling." msgstr "" -#: ../../intro/learning.rst:154 +#: ../../intro/learning.rst:201 msgid "" "`Expert Python Programming `_" msgstr "" -#: ../../intro/learning.rst:158 +#: ../../intro/learning.rst:205 msgid "A Guide to Python's Magic Methods" msgstr "" -#: ../../intro/learning.rst:160 +#: ../../intro/learning.rst:207 msgid "" "This is a collection of blog posts by Rafe Kettler which explain 'magic " -"methods' in Python. Magic methods are surrounded by double underscores " +"methods' in Python. Magic methods are surrounded by double underscores " "(i.e. __init__) and can make classes and objects behave in different and " "magical ways." msgstr "" -#: ../../intro/learning.rst:164 +#: ../../intro/learning.rst:211 msgid "" "`A Guide to Python's Magic Methods " "`_" msgstr "" -#: ../../intro/learning.rst:168 +#: ../../intro/learning.rst:215 msgid "For Engineers and Scientists" msgstr "" -#: ../../intro/learning.rst:171 +#: ../../intro/learning.rst:218 msgid "A Primer on Scientific Programming with Python" msgstr "" -#: ../../intro/learning.rst:173 +#: ../../intro/learning.rst:220 msgid "" "A Primer on Scientific Programming with Python, written by Hans Petter " -"Langtangen, mainly covers Python's usage in scientific field. In the book, " -"examples are chosen from mathematics and the natural sciences." +"Langtangen, mainly covers Python's usage in the scientific field. In the " +"book, examples are chosen from mathematics and the natural sciences." msgstr "" -#: ../../intro/learning.rst:177 +#: ../../intro/learning.rst:224 msgid "" "`A Primer on Scientific Programming with Python " "`_" msgstr "" -#: ../../intro/learning.rst:180 +#: ../../intro/learning.rst:227 msgid "Numerical Methods in Engineering with Python" msgstr "" -#: ../../intro/learning.rst:182 +#: ../../intro/learning.rst:229 msgid "" "Numerical Methods in Engineering with Python, written by Jaan Kiusalaas, " -"attempts to emphasis on numerical methods and how to implement them in " +"puts the emphasis on numerical methods and how to implement them in " "Python." msgstr "" -#: ../../intro/learning.rst:185 +#: ../../intro/learning.rst:232 msgid "" "`Numerical Methods in Engineering with Python " "`_" msgstr "" -#: ../../intro/learning.rst:188 +#: ../../intro/learning.rst:235 msgid "Miscellaneous topics" msgstr "" -#: ../../intro/learning.rst:191 +#: ../../intro/learning.rst:238 msgid "Problem Solving with Algorithms and Data Structures" msgstr "" -#: ../../intro/learning.rst:193 +#: ../../intro/learning.rst:240 msgid "" -"Problem Solving with Algorithms and Data Structures covers a range of data " -"structures and algorithms. All concepts are illustrated with Python code " -"along with interactive samples that can be run directly in the browser." +"Problem Solving with Algorithms and Data Structures covers a range of " +"data structures and algorithms. All concepts are illustrated with Python " +"code along with interactive samples that can be run directly in the " +"browser." msgstr "" -#: ../../intro/learning.rst:197 +#: ../../intro/learning.rst:244 msgid "" "`Problem Solving with Algorithms and Data Structures " "`_" msgstr "" -#: ../../intro/learning.rst:201 +#: ../../intro/learning.rst:248 msgid "Programming Collective Intelligence" msgstr "" -#: ../../intro/learning.rst:203 +#: ../../intro/learning.rst:250 msgid "" -"Programming Collective Intelligence introduces a wide array of basic machine" -" learning and data mining methods. The exposition is not very mathematically" -" formal, but rather focuses on explaining the underlying intuition and shows" -" how to implement the algorithms in Python." +"Programming Collective Intelligence introduces a wide array of basic " +"machine learning and data mining methods. The exposition is not very " +"mathematically formal, but rather focuses on explaining the underlying " +"intuition and shows how to implement the algorithms in Python." msgstr "" -#: ../../intro/learning.rst:207 +#: ../../intro/learning.rst:255 msgid "" "`Programming Collective Intelligence " "`_" msgstr "" -#: ../../intro/learning.rst:210 +#: ../../intro/learning.rst:259 +msgid "Transforming Code into Beautiful, Idiomatic Python" +msgstr "" + +#: ../../intro/learning.rst:261 +msgid "" +"Transforming Code into Beautiful, Idiomatic Python is a video by Raymond " +"Hettinger. Learn to take better advantage of Python's best features and " +"improve existing code through a series of code transformations, \"When " +"you see this, do that instead.\"" +msgstr "" + +#: ../../intro/learning.rst:265 +msgid "" +"`Transforming Code into Beautiful, Idiomatic Python " +"`_" +msgstr "" + +#: ../../intro/learning.rst:269 +msgid "Fullstack Python" +msgstr "" + +#: ../../intro/learning.rst:271 +msgid "" +"Fullstack Python offers a complete top-to-bottom resource for web " +"development using Python." +msgstr "" + +#: ../../intro/learning.rst:274 +msgid "" +"From setting up the webserver, to designing the front-end, choosing a " +"database, optimizing/scaling, etc." +msgstr "" + +#: ../../intro/learning.rst:277 +msgid "" +"As the name suggests, it covers everything you need to build and run a " +"complete web app from scratch." +msgstr "" + +#: ../../intro/learning.rst:280 +msgid "`Fullstack Python `_" +msgstr "" + +#: ../../intro/learning.rst:284 msgid "References" msgstr "" -#: ../../intro/learning.rst:213 +#: ../../intro/learning.rst:287 msgid "Python in a Nutshell" msgstr "" -#: ../../intro/learning.rst:215 +#: ../../intro/learning.rst:289 msgid "" -"Python in a Nutshell, written by Alex Martelli, covers most cross-platform " -"Python's usage, from its syntax to built-in libraries to advanced topics " -"such as writing C extensions." +"Python in a Nutshell, written by Alex Martelli, covers most cross-" +"platform Python's usage, from its syntax to built-in libraries to " +"advanced topics such as writing C extensions." msgstr "" -#: ../../intro/learning.rst:219 -msgid "" -"`Python in a Nutshell `_" +#: ../../intro/learning.rst:293 +msgid "`Python in a Nutshell `_" msgstr "" -#: ../../intro/learning.rst:222 +#: ../../intro/learning.rst:296 msgid "The Python Language Reference" msgstr "" -#: ../../intro/learning.rst:224 +#: ../../intro/learning.rst:298 msgid "" "This is Python's reference manual, it covers the syntax and the core " "semantics of the language." msgstr "" -#: ../../intro/learning.rst:227 +#: ../../intro/learning.rst:301 msgid "" "`The Python Language Reference " "`_" msgstr "" -#: ../../intro/learning.rst:230 +#: ../../intro/learning.rst:304 +msgid "Python Essential Reference" +msgstr "" + +#: ../../intro/learning.rst:306 +msgid "" +"Python Essential Reference, written by David Beazley, is the definitive " +"reference guide to Python. It concisely explains both the core language " +"and the most essential parts of the standard library. It covers Python 3 " +"and 2.6 versions." +msgstr "" + +#: ../../intro/learning.rst:310 +msgid "`Python Essential Reference `_" +msgstr "" + +#: ../../intro/learning.rst:313 msgid "Python Pocket Reference" msgstr "" -#: ../../intro/learning.rst:232 +#: ../../intro/learning.rst:315 msgid "" -"Python Pocket Reference, written by Mark Lutz, is an easy to use reference " -"to the core language, with descriptions of commonly used modules and " -"toolkits. It covers Python 3 and 2.6 versions." +"Python Pocket Reference, written by Mark Lutz, is an easy to use " +"reference to the core language, with descriptions of commonly used " +"modules and toolkits. It covers Python 3 and 2.6 versions." msgstr "" -#: ../../intro/learning.rst:236 +#: ../../intro/learning.rst:319 msgid "" "`Python Pocket Reference " "`_" msgstr "" -#: ../../intro/learning.rst:239 +#: ../../intro/learning.rst:322 msgid "Python Cookbook" msgstr "" -#: ../../intro/learning.rst:241 +#: ../../intro/learning.rst:324 msgid "" -"Python Cookbook, written by David Beazley and Brian K. Jones, is packed with" -" practical recipes. This book covers the core python language as well as " -"tasks common to a wide variety of application domains." +"Python Cookbook, written by David Beazley and Brian K. Jones, is packed " +"with practical recipes. This book covers the core python language as well" +" as tasks common to a wide variety of application domains." msgstr "" -#: ../../intro/learning.rst:245 +#: ../../intro/learning.rst:328 msgid "`Python Cookbook `_" msgstr "" -#: ../../intro/learning.rst:248 +#: ../../intro/learning.rst:331 msgid "Writing Idiomatic Python" msgstr "" -#: ../../intro/learning.rst:250 +#: ../../intro/learning.rst:333 msgid "" "\"Writing Idiomatic Python\", written by Jeff Knupp, contains the most " -"common and important Python idioms in a format that maximizes identification" -" and understanding. Each idiom is presented as a recommendation of a way to " -"write some commonly used piece of code, followed by an explanation of why " -"the idiom is important. It also contains two code samples for each idiom: " -"the \"Harmful\" way to write it and the \"Idiomatic\" way." +"common and important Python idioms in a format that maximizes " +"identification and understanding. Each idiom is presented as a " +"recommendation of a way to write some commonly used piece of code, " +"followed by an explanation of why the idiom is important. It also " +"contains two code samples for each idiom: the \"Harmful\" way to write it" +" and the \"Idiomatic\" way." msgstr "" -#: ../../intro/learning.rst:257 +#: ../../intro/learning.rst:340 msgid "" "`For Python 2.7.3+ `_" msgstr "" -#: ../../intro/learning.rst:259 +#: ../../intro/learning.rst:342 msgid "" "`For Python 3.3+ `_" msgstr "" + +#~ msgid "" +#~ "This is the official tutorial. It " +#~ "covers all the basics, and offers " +#~ "a tour of the language and the " +#~ "standard library. Recommended for those " +#~ "who need a quickstart guide to the" +#~ " language." +#~ msgstr "" + +#~ msgid "`Python for You and Me `_" +#~ msgstr "" + +#~ msgid "" +#~ "It has a detailed, multi-chapter " +#~ "case study on writing and releasing " +#~ "a package and eventually an application," +#~ " including a chapter on using " +#~ "zc.buildout. Later chapters detail best " +#~ "practices with writing documentation, test-" +#~ "driven development, version control, and " +#~ "optimization/profiling." +#~ msgstr "" + +#~ msgid "" +#~ "This is a collection of blog posts" +#~ " by Rafe Kettler which explain 'magic" +#~ " methods' in Python. Magic methods " +#~ "are surrounded by double underscores " +#~ "(i.e. __init__) and can make classes " +#~ "and objects behave in different and " +#~ "magical ways." +#~ msgstr "" + +#~ msgid "" +#~ "A Primer on Scientific Programming with" +#~ " Python, written by Hans Petter " +#~ "Langtangen, mainly covers Python's usage " +#~ "in scientific field. In the book, " +#~ "examples are chosen from mathematics and" +#~ " the natural sciences." +#~ msgstr "" + +#~ msgid "" +#~ "Numerical Methods in Engineering with " +#~ "Python, written by Jaan Kiusalaas, " +#~ "attempts to emphasis on numerical " +#~ "methods and how to implement them " +#~ "in Python." +#~ msgstr "" + +#~ msgid "" +#~ "\"Writing Idiomatic Python\", written by " +#~ "Jeff Knupp, contains the most common " +#~ "and important Python idioms in a " +#~ "format that maximizes identification and " +#~ "understanding. Each idiom is presented " +#~ "as a recommendation of a way to" +#~ " write some commonly used piece of" +#~ " code, followed by an explanation of" +#~ " why the idiom is important. It " +#~ "also contains two code samples for " +#~ "each idiom: the \"Harmful\" way to " +#~ "write it and the \"Idiomatic\" way." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.mo b/docs/locale/ko/LC_MESSAGES/intro/news.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..4774f2df62fa242b8d478a03280bfebb06e5dd31 100644 GIT binary patch literal 3331 zcmeH}O^@3|7{?8i3c`yjgg_t;&k4HP*hyN1mUMTu*>1{)CcDvYTGR@Ob&@B}bRCa7 z9>F zzJ=e5xL(2avw2whee#H9J&ET}!6WcXum%1Bz65SRYFW>N?}F#RyWlh66ubbQfG6O6 z@G0=+$1Lk(@Kw;*eG4Yw58y7i1}9&DAAl?13y)jY4!8xj!4JVz@JG-AAA)7jK5tnS z@HY59w0#5`-RGakbYB3C?z^DT{XJ-O{{mtu>o?Ho`5iR6AAl#|vv6W`e-0YmUxCJM zwUp_86Wqn~H=xn|C%6KBhDk>Ecc9Vz5L^YXKb`4LK%@I>(CGdNv?{6+&h%IYi#rk# z=`qs*4~IfiH+@Y5Ihn+P&@)QLteE16RfN$%E76ZNlN$_aDsdx&e2%TycQp?w;3RUa z1|`hL{*2_5)l_goa+EGKk&&iQhOzIe`Eq7TnOvpCz~?A+9=d~L*JI-;;Ydz+Zo3Ct zpS5OXwI-odh30qC^(^z=>iTZL^EXy^HjqPBuSJyGoE|ViaA~BN=c@BK7-89BG?Inf zAy3(tp$SQUHrKT@c(JSG9Uf@xsgdugOhy;>h`7Bi`_YO6RVEYZ`11WcA!ccc;6=bl z1ZnK#Xe0*0_2+9Q+^0w&3m20lakA7pQh6&5wKVmW;1Mz~7T(y$rL#<@jz>yPQkSO_ zUg#=9m8#61{u!s`0I{oMB?6BIu_`KIk=C-Q3__K#8!w#ki(+OJUJ9Dhw z7&$R%3CQ(4#U2by2`wcC3Bx8_@{~->vOzrQvoc1DTsT&)d@0&_LQOThA}}-amy2XA z5_nS#Swd$oVMYLl>y)(e z@>tA8m@*P+SLHs9oQ1DS>g;dLRp<}XmRl;q%=T3473NvNrhOTuo6gOPo;YP`#!YFb zYH}S}1LX-`-a;lG8N&ytaGvMXZVm05XkD~boial&Mv|%ORGnJsfXz3>?nIs#+S{=g z**#gOQg^>+Usb4ZOtW{8#5!H7*50sdRl8QB>RP>ed9{ik4DAD+3gbSvyVYzQ*qwcQ zr$M{>^-gQ`_WoY8)OI6n_mmq%D1E8wbnQmFO?!<_lh&J^MytKm*x5N~9v*JOH1J}4 z3+r?&iwC>M?!=7Hdb_>l3lp2oQrAc8`SvxbCQ+S&Fnx?RYF8+`-Kds2txj_hfSOY+ zT}2~s05!7^YiPcwD@djYuFzoYs)+SQtVj0R!p^83v9g;1@`v)S(^_BX(pwyG+W7YN stWMi*pMARITy|bBEsmST-TXUucJQ1XJm#Oq*}-ED#j}Iw|99~G1y7Mb;Q#;t delta 113 zcmZpcdcdS}Pl#nI0}wC*u?!HafH**)1EIjQ5l~VW$e-NF7Q$\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../intro/news.rst:2 msgid "News" @@ -20,8 +21,7 @@ msgid "Planet Python" msgstr "" #: ../../intro/news.rst:7 -msgid "" -"This is an aggregate of Python news from a growing number of developers." +msgid "This is an aggregate of Python news from a growing number of developers." msgstr "" #: ../../intro/news.rst:9 @@ -34,8 +34,8 @@ msgstr "" #: ../../intro/news.rst:14 msgid "" -"/r/python is the Reddit Python community where users contribute and vote on " -"Python-related news." +"/r/python is the Reddit Python community where users contribute and vote " +"on Python-related news." msgstr "" #: ../../intro/news.rst:17 @@ -48,8 +48,8 @@ msgstr "" #: ../../intro/news.rst:22 msgid "" -"Pycoder's Weekly is a free weekly Python newsletter for Python developers by" -" Python developers (Projects, Articles, News, and Jobs)." +"Pycoder's Weekly is a free weekly Python newsletter for Python developers" +" by Python developers (Projects, Articles, News, and Jobs)." msgstr "" #: ../../intro/news.rst:25 @@ -62,8 +62,8 @@ msgstr "" #: ../../intro/news.rst:30 msgid "" -"Python Weekly is a free weekly newsletter featuring curated news, articles, " -"new releases, jobs, etc. related to Python." +"Python Weekly is a free weekly newsletter featuring curated news, " +"articles, new releases, jobs, etc. related to Python." msgstr "" #: ../../intro/news.rst:33 @@ -76,10 +76,48 @@ msgstr "" #: ../../intro/news.rst:38 msgid "" -"News section in the official Python web site (www.python.org). It briefly " -"highlights the news from Python community." +"Python News is the news section in the official Python web site " +"(www.python.org). It briefly highlights the news from the Python " +"community." msgstr "" #: ../../intro/news.rst:41 msgid "`Python News `_" msgstr "" + +#: ../../intro/news.rst:44 +msgid "Import Python Weekly" +msgstr "" + +#: ../../intro/news.rst:46 +msgid "" +"Weekly Python Newsletter containing Python Articles, Projects, Videos, " +"Tweets delivered in your inbox. Keep Your Python Programming Skills " +"Updated." +msgstr "" + +#: ../../intro/news.rst:49 +msgid "" +"`Import Python Weekly Newsletter " +"`_" +msgstr "" + +#: ../../intro/news.rst:52 +msgid "Awesome Python Newsletter" +msgstr "" + +#: ../../intro/news.rst:54 +msgid "A weekly overview of the most popular Python news, articles and packages." +msgstr "" + +#: ../../intro/news.rst:56 +msgid "`Awesome Python Newsletter `_" +msgstr "" + +#~ msgid "" +#~ "News section in the official Python " +#~ "web site (www.python.org). It briefly " +#~ "highlights the news from Python " +#~ "community." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/notes/contribute.mo b/docs/locale/ko/LC_MESSAGES/notes/contribute.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..bbf999cf44a75f110a9344b98e0a1250a5589908 100644 GIT binary patch literal 1755 zcmeHH&2Aev5ZDGOd&=X{&KezEp0DmX5Y$<=JZK)sh`a z%Q4m#S=R@7x`5kgiQD6h!9YV6SDR5RBi=*o-re=*u%~zzHYnY6t zq4GyfdLGlvfFWHdPqp+}$v4G0bb+wCLHXC&{u4RX8HdU&Wu?@pfeQAtU|Vobsmv}( zp(HqLgFrUkETBmSF;2EaQZrR8lG^wEA5PID8}(dMHhS3*5} z&CNN&osXlFTe+YiH9BX^H4DS1oR?gg8bgQV5}MsECfp3V;tJ(+9G!*1(l87;nt^}a zYII`FTh6=~<>Cjn4wFo1)7|aAIZ>YMo4H;)TVfK$tj` zo)hYIy1Sy=6;C?U>m|Lt#~mykCR1_Pr=w{y89jb8Jsz~i(s?nn zQoBleV-tG$dOW7%{$xN;2b2D2{Jej7cse*c+lQ+z8dF>imvX1?;#?QsxjbEr`&Q=U`W^$#A ng!WS9TSL}t(J<6lC3GNDuBaD3iFaFH-f#GG`SO1Mr}z62Sx7iP delta 67 zcmcc3`+!O3o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUv?9IdO6W^BU&R5Vy(tEXs@w E05jzYC;$Ke diff --git a/docs/locale/ko/LC_MESSAGES/notes/license.mo b/docs/locale/ko/LC_MESSAGES/notes/license.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..3beae4d4829db82f146eed16751e6ad92fac48f7 100644 GIT binary patch literal 759 zcmdT>&5qMB5Dq^QQjVNC%zfqjwTH?q)n?mlsYu$TO_AWjy2)&6NbSgWSM))60^W=F z;Kqa&Ew8{xpT-`4`sSPQ&zH}?dlb(IuL#5b@=xS+enBV*KL{Jb`zN0Fi*jFo_w-a> zQ}%LMp|a?eJA~Om)(Fx^<^}b z6fIltgu%3xUl9gD1RK?9mSZRc^t#I0K zxY^`6EYc!_%dAM}`BgfduCn!dOjL3x8e}DkJ%>D9%r@zaczJ%+%6{yzU(Ac_ajZCq z{E1c$74NQlfV2kd}!QHdbBd_;zkA`Kc(zR3#htXC#e})PT4NTiO Sa<~>-Y#|8-!O;J&e*ZU2gX)_A delta 66 zcmey)`hZF2o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#N9;^a8SHO!$QZj*VLlo=TS DKKTjF diff --git a/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo b/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..5465d1bf1c397c9cf3514bc94d80b5b7b41c994a 100644 GIT binary patch literal 7075 zcmeHL&u<(_6|VioE@mOHKv+Q}N={&%&2)R54NK_6NgR7(Tk^zS&xBRruv61rGgFzK zuBNKm<5?v3#Gk+gRtUib39Xh3djfGnds!qTBqSt+I4p2LLI@-dNGtKZ>Yf=pB4;jR zjpuW9S699Fz4yLX?LR*E2|dUI5a(H-Y%DxA7%` z?*KmnJohwXZva<-kHf|v1Mgt`6D;~V@Sng}fTIt?HsCLT9|!&lNPhheh!6W0zCHo` z0C*pGW{I&+0~L^-d!rhE8+Zld?*ZQe{s!0tehbDtkNw{Rei7q8KU=Q*ES&x%#%F=s zz!!mU0u7LOI|FjQiRTRPeT@Hpro8@J7^yIR8AdgLKL8S+e*qGo=RgXUV3&Zz=U0Hl z(*eGS&lvbFFa>hp6&OK$-UHISUjsoQ`xB7({40?7Y<{Zb^FEOH{5_EP`~%1!KF?#b zSAgFK5-#aNPOM`5})4%(sMtp#_s@$&-Z|D0Uvw5z2Sh)cgY048F7bBTD;grs5d?1cg z*5`u9Ibc7mPlir$P&>_Wyp6kt_?16r^`p$ zcx1a!iR4mPRo+NcUs_l5c3?keRJR~AEVlz)qzUgS=Pgy4-_jJRv|RTvP?+N;spNgX z=6E1sgvfKFbEAZlA=^08D&Z=N(;^|4oQ5SuJiw*WA#B9)u|@ZRjGe`za5B-^3;0$B zm(mG0GR0!##KFW3FguY)GSxXTHr=AIw0tVMGKEpJgRp!#PE|YvXGSj9_%ay`lr9c= zZe&jyLk}g=#zy5%9m(keE3L*pA8X?VlZ!AF5fDkpZi`IW0quH|?~<6FXs zuCUTxtRa#hU1qW5-3eJsHqkEC%0^mUm{?k5Bitzi(*>V{30Lj~JDoSPD`b^pv`7ot z;`0^;&Jvw9sZ_9jnX#wRlXpZi(wQosD$@-~VEOfdb9uD7YV(20j>BBXT8G;7S7D$F z2X2&}pU=M0c?|~2j4F)W$+VL;WOoU?8?OqJdCvW%i0x;%JmII|@;r_#zx=aGCoBaTUP<+jf%0Wgg5oXnA4qV#5wn z$c@B4X6Ri<-fPNS6tyt8b=tI26?w<$L{}m}rTNI9$YZxkbA4cL4pe`T;@7RywRxNZ z8X{I9Z)+~REJ2hUD#Yg?gfT*PMt;{Ih3Eztc4|I#P$`%Mo$L79s8f_Dq_61C1QV_+lWinx|t|U?^SWYISKXlumHJnhP6J-YNrNX0nqa;Ldrd2xg09#Tu{SVRf zaZ?!#E1$A3!z(9+7a8DtT6empC1;RJtdfqoY*iOjhS)%+N%iJ84`oW)6i--H?ojtq z(jwME?<&=HC}r+5?Q}y!Bbf;s(Nsn}FHBBJeX2gLi!Rur9JtX5SqqV_VtHb}_Wsts zW$jr{J(=?JtKffZ6cP<(Z>udyM@$hr^nt`7e|@fn44D~&6HCKNC(H1b^)~If51ke$ z9OO;MyYuKeq4F#8)iOe*ik;pKIUWepRn7=A2~r*Vq> zYJMHcSbx?)FtNbZ6AOeKyF)cHi7sxDMzv}p^&5E{OZ2!?58yava~UJtIHf?n#xOJ| zC&&KmIXmc<0>}Nz*<;e+AJ$2 zXiswNL19|WQ=zhJJ~^y(>xJtDSLgG{YKUCWz*&Hfq!GUg\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../notes/styleguide.rst:5 msgid "The Guide Style Guide" @@ -18,9 +19,9 @@ msgstr "" #: ../../notes/styleguide.rst:7 msgid "" "As with all documentation, having a consistent format helps make the " -"document more understandable. In order to make The Guide easier to digest, " -"all contributions should fit within the rules of this style guide where " -"appropriate." +"document more understandable. In order to make The Guide easier to " +"digest, all contributions should fit within the rules of this style guide" +" where appropriate." msgstr "" #: ../../notes/styleguide.rst:12 @@ -29,14 +30,14 @@ msgstr "" #: ../../notes/styleguide.rst:14 msgid "" -"Parts of The Guide may not yet match this style guide. Feel free to update " -"those parts to be in sync with The Guide Style Guide" +"Parts of The Guide may not yet match this style guide. Feel free to " +"update those parts to be in sync with The Guide Style Guide" msgstr "" #: ../../notes/styleguide.rst:17 msgid "" -"On any page of the rendered HTML you can click \"Show Source\" to see how " -"authors have styled the page." +"On any page of the rendered HTML you can click \"Show Source\" to see how" +" authors have styled the page." msgstr "" #: ../../notes/styleguide.rst:21 @@ -45,33 +46,33 @@ msgstr "" #: ../../notes/styleguide.rst:23 msgid "" -"Strive to keep any contributions relevant to the :ref:`purpose of The Guide " -"`." +"Strive to keep any contributions relevant to the :ref:`purpose of The " +"Guide `." msgstr "" #: ../../notes/styleguide.rst:26 msgid "" -"Avoid including too much information on subjects that don't directly relate " -"to Python development." +"Avoid including too much information on subjects that don't directly " +"relate to Python development." msgstr "" #: ../../notes/styleguide.rst:28 msgid "" -"Prefer to link to other sources if the information is already out there. Be " -"sure to describe what and why you are linking." +"Prefer to link to other sources if the information is already out there. " +"Be sure to describe what and why you are linking." msgstr "" #: ../../notes/styleguide.rst:30 msgid "" -"`Cite `_ " -"references where needed." +"`Cite `_" +" references where needed." msgstr "" #: ../../notes/styleguide.rst:32 msgid "" -"If a subject isn't directly relevant to Python, but useful in conjunction " -"with Python (e.g., Git, GitHub, Databases), reference by linking to useful " -"resources, and describe why it's useful to Python." +"If a subject isn't directly relevant to Python, but useful in conjunction" +" with Python (e.g., Git, GitHub, Databases), reference by linking to " +"useful resources, and describe why it's useful to Python." msgstr "" #: ../../notes/styleguide.rst:35 @@ -109,98 +110,110 @@ msgstr "" #: ../../notes/styleguide.rst:75 msgid "" "Wrap text lines at 78 characters. Where necessary, lines may exceed 78 " -"characters, especially if wrapping would make the source text more difficult" -" to read." +"characters, especially if wrapping would make the source text more " +"difficult to read." msgstr "" -#: ../../notes/styleguide.rst:81 +#: ../../notes/styleguide.rst:79 +msgid "" +"Use of the `serial comma `_ " +"(also known as the Oxford comma) is 100% non-optional. Any attempt to " +"submit content with a missing serial comma will result in permanent " +"banishment from this project, due to complete and total lack of taste." +msgstr "" + +#: ../../notes/styleguide.rst:84 +msgid "Banishment? Is this a joke? Hopefully we will never have to find out." +msgstr "" + +#: ../../notes/styleguide.rst:87 msgid "Code Examples" msgstr "" -#: ../../notes/styleguide.rst:83 -msgid "" -"Wrap all code examples at 70 characters to avoid horizontal scrollbars." +#: ../../notes/styleguide.rst:89 +msgid "Wrap all code examples at 70 characters to avoid horizontal scrollbars." msgstr "" -#: ../../notes/styleguide.rst:85 +#: ../../notes/styleguide.rst:91 msgid "Command line examples:" msgstr "" -#: ../../notes/styleguide.rst:94 +#: ../../notes/styleguide.rst:100 msgid "Be sure to include the ``$`` prefix before each line." msgstr "" -#: ../../notes/styleguide.rst:96 +#: ../../notes/styleguide.rst:102 msgid "Python interpreter examples:" msgstr "" -#: ../../notes/styleguide.rst:106 +#: ../../notes/styleguide.rst:112 msgid "Python examples:" msgstr "" -#: ../../notes/styleguide.rst:118 +#: ../../notes/styleguide.rst:124 msgid "Externally Linking" msgstr "" -#: ../../notes/styleguide.rst:120 +#: ../../notes/styleguide.rst:126 msgid "Prefer labels for well known subjects (ex: proper nouns) when linking:" msgstr "" -#: ../../notes/styleguide.rst:128 +#: ../../notes/styleguide.rst:134 msgid "" -"Prefer to use descriptive labels with inline links instead of leaving bare " -"links:" +"Prefer to use descriptive labels with inline links instead of leaving " +"bare links:" msgstr "" -#: ../../notes/styleguide.rst:135 +#: ../../notes/styleguide.rst:141 msgid "" "Avoid using labels such as \"click here\", \"this\", etc. preferring " "descriptive labels (SEO worthy) instead." msgstr "" -#: ../../notes/styleguide.rst:139 +#: ../../notes/styleguide.rst:145 msgid "Linking to Sections in The Guide" msgstr "" -#: ../../notes/styleguide.rst:141 +#: ../../notes/styleguide.rst:147 msgid "" "To cross-reference other parts of this documentation, use the `:ref: " "`_ keyword and labels." msgstr "" -#: ../../notes/styleguide.rst:145 +#: ../../notes/styleguide.rst:151 msgid "" "To make reference labels more clear and unique, always add a ``-ref`` " "suffix:" msgstr "" -#: ../../notes/styleguide.rst:155 +#: ../../notes/styleguide.rst:161 msgid "Notes and Warnings" msgstr "" -#: ../../notes/styleguide.rst:157 +#: ../../notes/styleguide.rst:163 msgid "" "Make use of the appropriate `admonitions directives " "`_ when making notes." msgstr "" -#: ../../notes/styleguide.rst:160 +#: ../../notes/styleguide.rst:166 msgid "Notes:" msgstr "" -#: ../../notes/styleguide.rst:169 +#: ../../notes/styleguide.rst:175 msgid "Warnings:" msgstr "" -#: ../../notes/styleguide.rst:176 +#: ../../notes/styleguide.rst:182 msgid "TODOs" msgstr "" -#: ../../notes/styleguide.rst:178 +#: ../../notes/styleguide.rst:184 msgid "" "Please mark any incomplete areas of The Guide with a `todo directive " -"`_. To " -"avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for stub " -"documents or large incomplete sections." +"`_. " +"To avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for " +"stub documents or large incomplete sections." msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo b/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..b8d8fc66ac4dffd91bbeddd62623a864a56b7c1b 100644 GIT binary patch literal 18391 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 TZl194kZ|*ag(p^PPgwp3^Up1i delta 114 zcmccK&-j2z=bjMDR0bem1Y#K=RsnHk3&wTUVc%!-DD{>Q|8bRx5+_j%8U#E75^1~ diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po index 489e886c9..b719989d4 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/admin.rst:2 msgid "Systems Administration" @@ -23,8 +24,8 @@ msgstr "" msgid "" "`Fabric `_ is a library for simplifying system " "administration tasks. While Chef and Puppet tend to focus on managing " -"servers and system libraries, Fabric is more focused on application level " -"tasks such as deployment." +"servers and system libraries, Fabric is more focused on application level" +" tasks such as deployment." msgstr "" #: ../../scenarios/admin.rst:12 @@ -33,11 +34,11 @@ msgstr "" #: ../../scenarios/admin.rst:18 msgid "" -"The following code will create two tasks that we can use: ``memory_usage`` " -"and ``deploy``. The former will output the memory usage on each machine. The" -" latter will ssh into each server, cd to our project directory, activate the" -" virtual environment, pull the newest codebase, and restart the application " -"server." +"The following code will create two tasks that we can use: " +"``memory_usage`` and ``deploy``. The former will output the memory usage " +"on each machine. The latter will ssh into each server, cd to our project " +"directory, activate the virtual environment, pull the newest codebase, " +"and restart the application server." msgstr "" #: ../../scenarios/admin.rst:41 @@ -66,244 +67,402 @@ msgstr "" #: ../../scenarios/admin.rst:75 msgid "" -"`Salt `_ is an open source infrastructure management " -"tool. It supports remote command execution from a central point (master " -"host) to multiple hosts (minions). It also supports system states which can " -"be used to configure multiple servers using simple template files." +"`Salt `_ is an open source infrastructure " +"management tool. It supports remote command execution from a central " +"point (master host) to multiple hosts (minions). It also supports system " +"states which can be used to configure multiple servers using simple " +"template files." msgstr "" #: ../../scenarios/admin.rst:80 -msgid "" -"Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" +msgid "Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" #: ../../scenarios/admin.rst:86 msgid "" -"After configuring a master server and any number of minion hosts, we can run" -" arbitrary shell commands or use pre-built modules of complex commands on " -"our minions." +"After configuring a master server and any number of minion hosts, we can " +"run arbitrary shell commands or use pre-built modules of complex commands" +" on our minions." msgstr "" -#: ../../scenarios/admin.rst:89 +#: ../../scenarios/admin.rst:90 msgid "" "The following command lists all available minion hosts, using the ping " "module." msgstr "" -#: ../../scenarios/admin.rst:95 +#: ../../scenarios/admin.rst:96 msgid "" -"The host filtering is accomplished by matching the minion id, or using the " -"grains system. The `grains " -"`_ system " -"uses static host information like the operating system version or the CPU " -"architecture to provide a host taxonomy for the Salt modules." +"The host filtering is accomplished by matching the minion id, or using " +"the grains system. The `grains " +"`_ " +"system uses static host information like the operating system version or " +"the CPU architecture to provide a host taxonomy for the Salt modules." msgstr "" -#: ../../scenarios/admin.rst:100 +#: ../../scenarios/admin.rst:102 msgid "" -"The following command lists all available minions running CentOS using the " -"grains system:" +"The following command lists all available minions running CentOS using " +"the grains system:" msgstr "" -#: ../../scenarios/admin.rst:106 +#: ../../scenarios/admin.rst:109 msgid "" "Salt also provides a state system. States can be used to configure the " "minion hosts." msgstr "" -#: ../../scenarios/admin.rst:108 +#: ../../scenarios/admin.rst:112 msgid "" -"For example, when a minion host is ordered to read the following state file," -" it will install and start the Apache server:" +"For example, when a minion host is ordered to read the following state " +"file, it will install and start the Apache server:" msgstr "" -#: ../../scenarios/admin.rst:122 +#: ../../scenarios/admin.rst:126 msgid "" -"State files can be written using YAML, the Jinja2 template system or pure " -"Python." +"State files can be written using YAML, the Jinja2 template system or pure" +" Python." msgstr "" -#: ../../scenarios/admin.rst:124 +#: ../../scenarios/admin.rst:128 msgid "`Salt Documentation `_" msgstr "" -#: ../../scenarios/admin.rst:128 +#: ../../scenarios/admin.rst:132 msgid "Psutil" msgstr "" -#: ../../scenarios/admin.rst:130 +#: ../../scenarios/admin.rst:134 msgid "" -"`Psutil `_ is an interface to different " -"system information (e.g. CPU, memory, disks, network, users and processes)." +"`Psutil `_ is an interface to " +"different system information (e.g. CPU, memory, disks, network, users and" +" processes)." msgstr "" -#: ../../scenarios/admin.rst:133 +#: ../../scenarios/admin.rst:137 msgid "" -"Here is an example to be aware of some server overload. If any of the tests " -"(net, CPU) fail, it will send an email." +"Here is an example to be aware of some server overload. If any of the " +"tests (net, CPU) fail, it will send an email." msgstr "" -#: ../../scenarios/admin.rst:179 +#: ../../scenarios/admin.rst:183 msgid "" "A full terminal application like a widely extended top which is based on " "psutil and with the ability of a client-server monitoring is `glance " "`_." msgstr "" -#: ../../scenarios/admin.rst:184 +#: ../../scenarios/admin.rst:188 msgid "Ansible" msgstr "" -#: ../../scenarios/admin.rst:186 +#: ../../scenarios/admin.rst:190 msgid "" -"`Ansible `_ is an open source system automation tool. " -"The biggest advantage over Puppet or Chef is it does not require an agent on" -" the client machine. Playbooks are Ansible’s configuration, deployment, and " -"orchestration language and are written in in YAML with Jinja2 for " -"templating." +"`Ansible `_ is an open source system automation " +"tool. The biggest advantage over Puppet or Chef is it does not require an" +" agent on the client machine. Playbooks are Ansible’s configuration, " +"deployment, and orchestration language and are written in YAML with " +"Jinja2 for templating." msgstr "" -#: ../../scenarios/admin.rst:191 -msgid "" -"Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" +#: ../../scenarios/admin.rst:195 +msgid "Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" -#: ../../scenarios/admin.rst:197 +#: ../../scenarios/admin.rst:201 msgid "" -"Ansible requires an inventory file that describes the hosts to which it has " -"access. Below is an example of a host and playbook that will ping all the " -"hosts in the inventory file." +"Ansible requires an inventory file that describes the hosts to which it " +"has access. Below is an example of a host and playbook that will ping all" +" the hosts in the inventory file." msgstr "" -#: ../../scenarios/admin.rst:201 +#: ../../scenarios/admin.rst:205 msgid "Here is an example inventory file: :file:`hosts.yml`" msgstr "" -#: ../../scenarios/admin.rst:209 +#: ../../scenarios/admin.rst:213 msgid "Here is an example playbook: :file:`ping.yml`" msgstr "" -#: ../../scenarios/admin.rst:221 +#: ../../scenarios/admin.rst:225 msgid "To run the playbook:" msgstr "" -#: ../../scenarios/admin.rst:227 +#: ../../scenarios/admin.rst:231 msgid "" -"The Ansible playbook will ping all of the servers in the :file:`hosts.yml` " -"file. You can also select groups of servers using Ansible. For more " -"information about Ansible, read the `Ansible Docs " +"The Ansible playbook will ping all of the servers in the " +":file:`hosts.yml` file. You can also select groups of servers using " +"Ansible. For more information about Ansible, read the `Ansible Docs " "`_." msgstr "" -#: ../../scenarios/admin.rst:233 +#: ../../scenarios/admin.rst:235 +msgid "" +"`An Ansible tutorial `_ is also a great and detailed introduction to getting started" +" with Ansible." +msgstr "" + +#: ../../scenarios/admin.rst:240 msgid "Chef" msgstr "" -#: ../../scenarios/admin.rst:235 -msgid "Write about Chef" +#: ../../scenarios/admin.rst:241 +msgid "" +"`Chef `_ is a systems and cloud " +"infrastructure automation framework that makes it easy to deploy servers " +"and applications to any physical, virtual, or cloud location. In case " +"this is your choice for configuration management, you will primarily use " +"Ruby to write your infrastructure code." msgstr "" -#: ../../scenarios/admin.rst:237 +#: ../../scenarios/admin.rst:246 msgid "" -"`Chef Documentation `_" +"Chef clients run on every server that is part of your infrastructure and " +"these regularly check with your Chef server to ensure your system is " +"always aligned and represents the desired state. Since each individual " +"server has its own distinct Chef client, each server configures itself " +"and this distributed approach makes Chef a scalable automation platform." msgstr "" -#: ../../scenarios/admin.rst:241 +#: ../../scenarios/admin.rst:251 +msgid "" +"Chef works by using custom recipes (configuration elements), implemented " +"in cookbooks. Cookbooks, which are basically packages for infrastructure " +"choices, are usually stored in your Chef server. Read the `Digital Ocean " +"tutorial series `_ " +"on chef to learn how to create a simple Chef Server." +msgstr "" + +#: ../../scenarios/admin.rst:257 +msgid "" +"To create a simple cookbook the `knife " +"`_ command is used:" +msgstr "" + +#: ../../scenarios/admin.rst:263 +msgid "" +"`Getting started with Chef `_ is a good starting point for Chef Beginners and " +"many community maintained cookbooks that can serve as a good reference or" +" tweaked to serve your infrastructure configuration needs can be found on" +" the `Chef Supermarket `_." +msgstr "" + +#: ../../scenarios/admin.rst:268 +msgid "`Chef Documentation `_" +msgstr "" + +#: ../../scenarios/admin.rst:271 msgid "Puppet" msgstr "" -#: ../../scenarios/admin.rst:243 +#: ../../scenarios/admin.rst:273 msgid "" -"`Puppet `_ is an IT Automation and configuration " -"management software from Puppet Labs that allows System Administrators to " -"define the state of their IT Infrastructure, thereby providing an elegant " -"way to manage their fleet of physical and virtual machines." +"`Puppet `_ is IT Automation and configuration " +"management software from Puppet Labs that allows System Administrators to" +" define the state of their IT Infrastructure, thereby providing an " +"elegant way to manage their fleet of physical and virtual machines." msgstr "" -#: ../../scenarios/admin.rst:248 +#: ../../scenarios/admin.rst:278 msgid "" "Puppet is available both as an Open Source and an Enterprise variant. " -"Modules are small,shareable units of code written to automate or define the " -"state of a system. `Puppet Forge `_ is a " -"repository for modules written by the community for Open Source and " +"Modules are small, shareable units of code written to automate or define " +"the state of a system. `Puppet Forge `_ " +"is a repository for modules written by the community for Open Source and " "Enterprise Puppet." msgstr "" -#: ../../scenarios/admin.rst:253 +#: ../../scenarios/admin.rst:283 msgid "" -"Puppet Agents are installed on nodes whose state needs to be monitored or " -"changed. A desginated server known as the Puppet Master is responsible for " -"orchastrating the agent nodes." +"Puppet Agents are installed on nodes whose state needs to be monitored or" +" changed. A designated server known as the Puppet Master is responsible " +"for orchestrating the agent nodes." msgstr "" -#: ../../scenarios/admin.rst:257 +#: ../../scenarios/admin.rst:287 msgid "" "Agent nodes send basic facts about the system such as to the operating " "system, kernel, architecture, ip address, hostname etc. to the Puppet " -"Master. The Puppet Master then compiles a catalog with information provided " -"by the agents on how each node should be configured and sends it to the " -"agent. The agent enforces the change as prescribed in the catalog and sends " -"a report back to the Puppet Master." +"Master. The Puppet Master then compiles a catalog with information " +"provided by the agents on how each node should be configured and sends it" +" to the agent. The agent enforces the change as prescribed in the catalog" +" and sends a report back to the Puppet Master." msgstr "" -#: ../../scenarios/admin.rst:263 +#: ../../scenarios/admin.rst:294 msgid "" -"Facter is an interesting tool that ships with Puppet that pulls basic facts " -"about the System. These facts can be referenced as a variable while writing " -"your Puppet modules." +"Facter is an interesting tool that ships with Puppet that pulls basic " +"facts about the system. These facts can be referenced as a variable while" +" writing your Puppet modules." msgstr "" -#: ../../scenarios/admin.rst:276 +#: ../../scenarios/admin.rst:307 msgid "" "Writing Modules in Puppet is pretty straight forward. Puppet Manifests " "together form Puppet Modules. Puppet manifest end with an extension of " "``.pp``. Here is an example of 'Hello World' in Puppet." msgstr "" -#: ../../scenarios/admin.rst:288 +#: ../../scenarios/admin.rst:319 msgid "" -"Here is another example with system based logic. Note how the " -"operatingsystem fact is being used as a variable prepended with the ``$`` " -"sign. Similarly, this holds true for other facts such as hostname which can " -"be referenced by ``$hostname``" +"Here is another example with system based logic. Note how the operating " +"system fact is being used as a variable prepended with the ``$`` sign. " +"Similarly, this holds true for other facts such as hostname which can be " +"referenced by ``$hostname``" msgstr "" -#: ../../scenarios/admin.rst:301 +#: ../../scenarios/admin.rst:333 msgid "" "There are several resource types for Puppet but the package-file-service " "paradigm is all you need for undertaking majority of the configuration " "management. The following Puppet code makes sure that the OpenSSH-Server " -"package is installed in a system and the sshd service is notified to restart" -" everytime the sshd configuration file is changed." +"package is installed in a system and the sshd service is notified to " +"restart everytime the sshd configuration file is changed." msgstr "" -#: ../../scenarios/admin.rst:331 +#: ../../scenarios/admin.rst:364 msgid "" -"For more information checkout `Puppet Labs Documentation " +"For more information, refer to the `Puppet Labs Documentation " "`_" msgstr "" -#: ../../scenarios/admin.rst:334 +#: ../../scenarios/admin.rst:367 msgid "Blueprint" msgstr "" -#: ../../scenarios/admin.rst:336 +#: ../../scenarios/admin.rst +msgid "Todo" +msgstr "" + +#: ../../scenarios/admin.rst:369 msgid "Write about Blueprint" msgstr "" -#: ../../scenarios/admin.rst:339 +#: ../../scenarios/admin.rst:372 msgid "Buildout" msgstr "" -#: ../../scenarios/admin.rst:341 -msgid "Write about Buildout" +#: ../../scenarios/admin.rst:374 +msgid "" +"`Buildout `_ is an open source software build " +"tool. Buildout is created using the Python programming language. It " +"implements a principle of separation of configuration from the scripts " +"that do the setting up. Buildout is primarily used to download and set up" +" dependencies in Python eggs format of the software being developed or " +"deployed. Recipes for build tasks in any environment can be created, and " +"many are already available." msgstr "" -#: ../../scenarios/admin.rst:343 -msgid "`Buildout Website `_" +#: ../../scenarios/admin.rst:382 +msgid "Shinken" msgstr "" -#: ../../scenarios/admin.rst:0 ../../scenarios/admin.rst:0 -#: ../../scenarios/admin.rst:0 -msgid "Todo" +#: ../../scenarios/admin.rst:384 +msgid "" +"`Shinken `_ is a modern, Nagios " +"compatible monitoring framework written in Python. Its main goal is to " +"give users a flexible architecture for their monitoring system that is " +"designed to scale to large environments." msgstr "" + +#: ../../scenarios/admin.rst:389 +msgid "" +"Shinken is backwards-compatible with the Nagios configuration standard, " +"and plugins.It works on any operating system, and architecture that " +"supports Python which includes Windows, GNU/Linux, and FreeBSD." +msgstr "" + +#~ msgid "" +#~ "`Salt `_ is an open " +#~ "source infrastructure management tool. It " +#~ "supports remote command execution from a" +#~ " central point (master host) to " +#~ "multiple hosts (minions). It also " +#~ "supports system states which can be " +#~ "used to configure multiple servers using" +#~ " simple template files." +#~ msgstr "" + +#~ msgid "" +#~ "`Ansible `_ is an open" +#~ " source system automation tool. The " +#~ "biggest advantage over Puppet or Chef" +#~ " is it does not require an " +#~ "agent on the client machine. Playbooks" +#~ " are Ansible’s configuration, deployment, " +#~ "and orchestration language and are " +#~ "written in in YAML with Jinja2 for" +#~ " templating." +#~ msgstr "" + +#~ msgid "Write about Chef" +#~ msgstr "" + +#~ msgid "" +#~ "`Chef Documentation " +#~ "`_" +#~ msgstr "" + +#~ msgid "" +#~ "`Puppet `_ is an IT " +#~ "Automation and configuration management " +#~ "software from Puppet Labs that allows" +#~ " System Administrators to define the " +#~ "state of their IT Infrastructure, " +#~ "thereby providing an elegant way to " +#~ "manage their fleet of physical and " +#~ "virtual machines." +#~ msgstr "" + +#~ msgid "" +#~ "Puppet is available both as an " +#~ "Open Source and an Enterprise variant." +#~ " Modules are small,shareable units of " +#~ "code written to automate or define " +#~ "the state of a system. `Puppet " +#~ "Forge `_ is a " +#~ "repository for modules written by the" +#~ " community for Open Source and " +#~ "Enterprise Puppet." +#~ msgstr "" + +#~ msgid "" +#~ "Puppet Agents are installed on nodes " +#~ "whose state needs to be monitored " +#~ "or changed. A desginated server known" +#~ " as the Puppet Master is responsible" +#~ " for orchastrating the agent nodes." +#~ msgstr "" + +#~ msgid "" +#~ "Facter is an interesting tool that " +#~ "ships with Puppet that pulls basic " +#~ "facts about the System. These facts " +#~ "can be referenced as a variable " +#~ "while writing your Puppet modules." +#~ msgstr "" + +#~ msgid "" +#~ "Here is another example with system " +#~ "based logic. Note how the " +#~ "operatingsystem fact is being used as" +#~ " a variable prepended with the ``$``" +#~ " sign. Similarly, this holds true for" +#~ " other facts such as hostname which" +#~ " can be referenced by ``$hostname``" +#~ msgstr "" + +#~ msgid "" +#~ "For more information checkout `Puppet " +#~ "Labs Documentation `_" +#~ msgstr "" + +#~ msgid "Write about Buildout" +#~ msgstr "" + +#~ msgid "`Buildout Website `_" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo b/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..dcecf97dcaa29f66029b80d56e72cf8c1d3bce91 100644 GIT binary patch literal 6077 zcmeHL&u=8f6>ffnz(Ar65Dp{~?-DH$(>>z_MXP3a!Rz(HBpz&ez2S#IxTd?hyKr|` zQ&nxd#ex5T8z{Hr!VM{xC`v9lB!^t`4{*spkuy@hS2Z*CM$0AV8OeUrt*Tewd+&SS zEBoKiKK^Bd&vW?sIez}c50^fBk3>XL45B6WMFTnod(J1;B-*3Ra$nPGH zq5|)?eh@`Jg#8`t-(dd$yAS*E6H)Xb*8LIoF+4v5r%%CNfyLJ7McB__UxNJz_V=)V z!TRrDufYC!6h)uG{`2X8Yv)G+*I!{7*WY0o*Ux?&a9x9CT+dtyxUT*r;Q9iVaeW2L zxb8n2aD5HSxE_5z;CcdU^PHv{T9Kgjc&tIO;@pB1&mVwbqHcrc4_nGgl9Erd&n2Dhg?2>*!!` z70@sgpaOUttN_z=M&h@P9uEI|UX$YRtuEY|Fp_e4Dr?;}d{AcuGL%U=t8g-cYZh=% zy1)h}MdMH9o8bzn(r5S@lIzj=Vt@*jwCYq|l&R4uh!LI2>mi9| zEoqY@HQ2)?JM|?Agrhxmk&kIYY+u`2EF9C9YWw(d6nZq z-jG`jfC=3-x}jE|k#5K9t&IOFQj5?maG*;T*w!QbmOxxHP}kdvT?A+krlypR&|3zS z7?a46a7r0WdYpuKlcA}PQC8rC3ybc9G;72{_l}Mq-k>4-NPgp;6y8UY>1M*uSuO2^4-CRIyU?Yi za!t)8df8UmxD@Kc+(xu$+kpBv+|IWlH)Al~W=1U_G+cicDiB$F=B3eL-?qO0e1Z{( zZ(KAyua)hof=aS9Km!4#P-Sm;xz7|A1;^@|1tP07gd;lQzVLP8+&@4FUXEr!;aKe0 zf35tR|CKj1Gb$WlVO5DffD|K!4pip0@&0v-4hwzGz8a_sf?pWXW|b!<_{I7rsMd~r z`{<5U-7+jfiy}UOUK|6*i3IbU?_9rR44R>hg2s!2J;Qw$$lLU2d3NZJL0hd`D%Y7^ z7uA=3$usnu?<-#5n@gT!h9KRXijZw9X^Afc$=E%?q5VepWtBun`aC)chwaRwcdOxz z=y)|;*2nS@iO&m0PSQ#@$$HF{*7s{;OYXo!g~Z#IC2yyR5W zDrc3+bdFz@Xfe8y=y=%&%qy=YVDl%THI^|mPx(}&`y9RFMb-Dwa^7ARN7+JdkkQjZzxtK~k>UbC;7pygBN9z(LCjTD@ZeQssZR9%ih9iHNe;FEM79&Y zL)i;fB86dm^KAF35^BJ56Rt}52AtT#uQ=bi>}oxP)D^3WtS>f3m6hXb9w-ihfP7gE zE+aQsRsCG~U{x>GgE_>MK)xurNN981EPB-rwCmjOY9Doo#x1Kb_BB`C$K@ z-O(PzGDdH;7Ddn|rMvg{_UN7M`7Yhqoo~fVStzN<}RQ))Z^Xm4)4PT}j#>1aNi?_MNeE18a%K@g|-Xy|Z; zgGNleGQQ6IHn=q0>|GIGzgWkpaW9T{TTmEDPU-qWxzSr(K%@qF8&bM07P6*m$*ak0 zqs^_~|1INbzHW}qt$%at-`x5)w|>50Y;OITAFcQsXLIWh*PP9*fBCv4Mh-k(H6f zWF4LuY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$!B>?nL|U|CbRM?Gco`G_=Oc} diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po index 4301ebe05..047d68838 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/ci.rst:2 msgid "Continuous Integration" @@ -22,19 +23,19 @@ msgstr "" #: ../../scenarios/ci.rst:8 msgid "" "Martin Fowler, who first wrote about `Continuous Integration " -"`_ (short: CI) " -"together with Kent Beck, describes the CI as follows:" +"`_ (short: " +"CI) together with Kent Beck, describes the CI as follows:" msgstr "" #: ../../scenarios/ci.rst:11 msgid "" -"Continuous Integration is a software development practice where members of a" -" team integrate their work frequently, usually each person integrates at " -"least daily - leading to multiple integrations per day. Each integration is " -"verified by an automated build (including test) to detect integration errors" -" as quickly as possible. Many teams find that this approach leads to " -"significantly reduced integration problems and allows a team to develop " -"cohesive software more rapidly." +"Continuous Integration is a software development practice where members " +"of a team integrate their work frequently, usually each person integrates" +" at least daily - leading to multiple integrations per day. Each " +"integration is verified by an automated build (including test) to detect " +"integration errors as quickly as possible. Many teams find that this " +"approach leads to significantly reduced integration problems and allows a" +" team to develop cohesive software more rapidly." msgstr "" #: ../../scenarios/ci.rst:20 @@ -57,85 +58,101 @@ msgid "" "automate the compile/test cycle to validate code changes." msgstr "" -#: ../../scenarios/ci.rst:35 -msgid "Mule" -msgstr "" - -#: ../../scenarios/ci.rst:37 -msgid "" -"`Mule " -"`_ " -"is a lightweight integration platform that enables you to connect anything, " -"anywhere. You can use Mule to intelligently manage message routing, data " -"mapping, orchestration, reliability, security and scalability between nodes." -" Plug other systems and applications into Mule and let it handle all the " -"communication between systems, enabling you to track and monitor everything " -"that happens." -msgstr "" - -#: ../../scenarios/ci.rst:47 +#: ../../scenarios/ci.rst:36 msgid "Tox" msgstr "" -#: ../../scenarios/ci.rst:49 +#: ../../scenarios/ci.rst:38 msgid "" -"`tox `_ is an automation tool " -"providing packaging, testing and deployment of Python software right from " -"the console or CI server. It is a generic virtualenv management and test " -"command line tool which provides the following features:" +"`tox `_ is an automation tool " +"providing packaging, testing and deployment of Python software right from" +" the console or CI server. It is a generic virtualenv management and test" +" command line tool which provides the following features:" msgstr "" -#: ../../scenarios/ci.rst:54 +#: ../../scenarios/ci.rst:43 msgid "" -"Checking that packages install correctly with different Python versions and " -"interpreters" +"Checking that packages install correctly with different Python versions " +"and interpreters" msgstr "" -#: ../../scenarios/ci.rst:56 +#: ../../scenarios/ci.rst:45 msgid "" "Running tests in each of the environments, configuring your test tool of " "choice" msgstr "" -#: ../../scenarios/ci.rst:58 +#: ../../scenarios/ci.rst:47 msgid "" "Acting as a front-end to Continuous Integration servers, reducing " "boilerplate and merging CI and shell-based testing." msgstr "" -#: ../../scenarios/ci.rst:63 +#: ../../scenarios/ci.rst:52 msgid "Travis-CI" msgstr "" -#: ../../scenarios/ci.rst:65 +#: ../../scenarios/ci.rst:54 msgid "" "`Travis-CI `_ is a distributed CI server which " -"builds tests for open source projects for free. It provides multiple workers" -" to run Python tests on and seamlessly integrates with GitHub. You can even " -"have it comment on your Pull Requests whether this particular changeset " -"breaks the build or not. So if you are hosting your code on GitHub, travis-" -"ci is a great and easy way to get started with Continuous Integration." +"builds tests for open source projects for free. It provides multiple " +"workers to run Python tests on and seamlessly integrates with GitHub. You" +" can even have it comment on your Pull Requests whether this particular " +"changeset breaks the build or not. So if you are hosting your code on " +"GitHub, travis-ci is a great and easy way to get started with Continuous " +"Integration." msgstr "" -#: ../../scenarios/ci.rst:72 +#: ../../scenarios/ci.rst:61 msgid "" -"In order to get started, add a :file:`.travis.yml` file to your repository " -"with this example content::" +"In order to get started, add a :file:`.travis.yml` file to your " +"repository with this example content::" msgstr "" -#: ../../scenarios/ci.rst:88 +#: ../../scenarios/ci.rst:77 msgid "" "This will get your project tested on all the listed Python versions by " -"running the given script, and will only build the master branch. There are a" -" lot more options you can enable, like notifications, before and after steps" -" and much more. The `travis-ci docs `_ " -"explain all of these options, and are very thorough." +"running the given script, and will only build the master branch. There " +"are a lot more options you can enable, like notifications, before and " +"after steps and much more. The `travis-ci docs `_ explain all of these options, and are very thorough." msgstr "" -#: ../../scenarios/ci.rst:94 +#: ../../scenarios/ci.rst:83 msgid "" "In order to activate testing for your project, go to `the travis-ci site " -"`_ and login with your GitHub account. Then activate" -" your project in your profile settings and you're ready to go. From now on, " -"your project's tests will be run on every push to GitHub." -msgstr "" +"`_ and login with your GitHub account. Then " +"activate your project in your profile settings and you're ready to go. " +"From now on, your project's tests will be run on every push to GitHub." +msgstr "" + +#~ msgid "Mule" +#~ msgstr "" + +#~ msgid "" +#~ "`Mule " +#~ "`_" +#~ " is a lightweight integration platform " +#~ "that enables you to connect anything," +#~ " anywhere. You can use Mule to " +#~ "intelligently manage message routing, data " +#~ "mapping, orchestration, reliability, security " +#~ "and scalability between nodes. Plug " +#~ "other systems and applications into Mule" +#~ " and let it handle all the " +#~ "communication between systems, enabling you" +#~ " to track and monitor everything that" +#~ " happens." +#~ msgstr "" + +#~ msgid "" +#~ "`tox `_ is an" +#~ " automation tool providing packaging, " +#~ "testing and deployment of Python " +#~ "software right from the console or " +#~ "CI server. It is a generic " +#~ "virtualenv management and test command " +#~ "line tool which provides the following" +#~ " features:" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo b/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..90c8042f6d51154352fcbaeb8b18266160be6e06 100644 GIT binary patch literal 6069 zcmeHL%Z?jG6m8yM6!8WjAyEq!M44`T5P>#2yK;$bv86130(Z?eRduV{dEh>*}tqd+OeE&n?ey&p!NR zfY)<)zk>I7G+1~I9|(d+Fy5Tm-I=`w`!cTIf&CWmDc%ob96l5TUD(sGpX1sX_6Ej( z;O2`D2EjTOJAv!B9}9w$u=(RbFu?sUo(O{PVSj~PhyAh>1P1mOSPeUTG6)`p{Q>r4 zJoh6k;d=W-V>f2@IxOLO7nX4C!xFAnpK5Tu21~g1UnB*kb@8PJ*Eg`ix{~oeeWodWmM&P=MZwD?#6YmMs=@^Bq%Q68 zJAC2J3ggOZW<)BC5eajeamz;Qcu1?`i?H*#b5+0F6=gJ$`?3;=R z_A$|BpQYHyxRxqG{EmBV6Bx09qpVqGg{v#4wXzIBGE<;M@+>h4lMiGfC?-cC(X~Tl z$wk2(MGa9Z6Q*4bejxS0N|cS*UM?0O0bwC{>1f@SF!&l9!JS}5t(*)MZLP%%WHaKx z{Q>-7RqrX2ZiP+YO)&Um1(#*ZOO^wQqD@iQ$K1+zo_>ZrTZ#vv#e*d%a-jDynJ*@t z@Fm)>OreZ|(N!a=c|z`8J2Zvz5VAE^DF6z65hUDUZNUu+pmtJ8Hw{Kai)J~CTCAp( zjH;>2b?LK9<1UtnX*r)&D~k%1JTV{)BCHV#k8ayP#6XNP;U-~9jtxipM&LVbRm?Ga z5-s>R-JQ+two{|r6$&0Ht`cB#WF7g^)}dsW1RIclpg6=1*mw%!_&`DhV(=Oobs&x^ zzVG3+Rp-MF$k>Z4XCj3sh%64-!oDO}R3he+l9tA9MYE!s5{HO4I;jx>hb0A|2wRC* z`kJqyauudH5=tl#2u*yPk-YE&JGCKC3R&WYjU_ma`A9lg0ODk#ggeD5p_?d6M_Y5b z(UXu*_!Q3=S>XYyDZnnQPzM5QO>(d|*BXI7;xTX8+i3V)1wr|k107;Xk@&EN^m_*We6_x)UV~QO**aA))#i2S?tbz$Z7-Ku4n>Z2 znaZp--qjeI0neb7cbI9NfIcZl;X^lZ6GWqO9_zy<8juPfjr&#!VpKXWe{jj$c+AMs z@EA8zsT7#uouYJzyCSU>az=_rQJV?s-{Q6?&|WTWT~*o;6|m#lkjyj+b&jnM2iTp` z=phZUlBVIzikGfcdV-D!&zM&iBw0Q&E1(1so)nu?7xm;7)?(PMhSHNUm@}^_FLMA) zk*dv6N2NiO^TWf)3LhB~B-&}SQIaEPcxh3GO+;?)44Ivljvodi$OL-aoPy2p82g|x zS?(r+K3Cc-H#~&UwoF7>1FBMb0@?87_yzZ;6xFO=x8Ko zl1YriI(a?z%Y4B1>#@-vIUP&YZ6>y24>#1&5g44~Rp9&scde|V;+q5oO+JHdqdyR_3kON~ zUei?jtmzF|O})Ms^`h0zjv%Ion>Le4c&W~8xTpK9v%R$!w)GxfhUE6y>E7yF;c72j zU1hzq{oa{VJ-je6+z|(odiHGIt&O#vaC0lXyvD9=^*0BnZg1V#=nT1a;T};^Q3>?f zm7BvMyRo*p!Om}Nt__CotX;mmv$4B-5mU>oM)vz`U(W~Op5O&tVdsa#ca$W$UhHfu zh>i-c;D}=TtgQUdURXVc=1g}k^g5e^&5fe~tVX>K&cEnGKr^l2gZel1VOgGo%2PXa z7iyP=XOHI13Mt$up_wSgK07;>u5;CQ6mTuPH0`rXe2gQ_>F7-KMrV2AzxU~BdE!sg xxd!;d+VaG|Jn=72{L2$RohFwje)<=c|6RO1@h?yO_|MYv#6SPx@?TE;e*&ajL6HCe delta 113 zcmdn0|A0y7o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#klcL=YEuA!l>v4Mh-k(H6f zWDTAeY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$tQVCnL|U|CNuIXGco`G^92=B diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po index ca055059c..b9cc5d2c6 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/cli.rst:2 msgid "Command-line Applications" @@ -18,12 +19,12 @@ msgstr "" #: ../../scenarios/cli.rst:4 msgid "" "Command-line applications, also referred to as `Console Applications " -"`_, are computer programs " -"designed to be used from a text interface, such as a `shell " +"`_, are computer " +"programs designed to be used from a text interface, such as a `shell " "`_. Command-line " -"applications usually accept various inputs as arguments, often referred to " -"as parameters or sub-commands, as well as options, often referred to as " -"flags or switches." +"applications usually accept various inputs as arguments, often referred " +"to as parameters or sub-commands, as well as options, often referred to " +"as flags or switches." msgstr "" #: ../../scenarios/cli.rst:12 @@ -37,14 +38,13 @@ msgid "" msgstr "" #: ../../scenarios/cli.rst:15 -msgid "" -"`curl `_ - A tool for data transfer with URL syntax" +msgid "`curl `_ - A tool for data transfer with URL syntax" msgstr "" #: ../../scenarios/cli.rst:16 msgid "" -"`httpie `_ - A command line HTTP " -"client, a user-friendly cURL replacement" +"`httpie `_ - A command line HTTP" +" client, a user-friendly cURL replacement" msgstr "" #: ../../scenarios/cli.rst:18 @@ -53,8 +53,8 @@ msgstr "" #: ../../scenarios/cli.rst:19 msgid "" -"`mercurial `_ - A distributed version control" -" system primarily written in Python" +"`mercurial `_ - A distributed version " +"control system primarily written in Python" msgstr "" #: ../../scenarios/cli.rst:23 @@ -63,10 +63,11 @@ msgstr "" #: ../../scenarios/cli.rst:25 msgid "" -"`clint `_ is a Python module which is " -"filled with very useful tools for developing command-line applications. It " -"supports features such as; CLI colors and indents, simple and powerful " -"column printer, iterator based progress bars and implicit argument handling." +"`clint `_ is a Python module which " +"is filled with very useful tools for developing command-line " +"applications. It supports features such as; CLI colors and indents, " +"simple and powerful column printer, iterator based progress bars and " +"implicit argument handling." msgstr "" #: ../../scenarios/cli.rst:31 @@ -76,9 +77,9 @@ msgstr "" #: ../../scenarios/cli.rst:33 msgid "" "`click `_ is an upcoming Python package for " -"creating command-line interfaces in a composable way with as little code as " -"possible. This “Command-line Interface Creation Kit” is highly configurable " -"but comes with good defaults out of the box." +"creating command-line interfaces in a composable way with as little code " +"as possible. This “Command-line Interface Creation Kit” is highly " +"configurable but comes with good defaults out of the box." msgstr "" #: ../../scenarios/cli.rst:39 @@ -100,12 +101,12 @@ msgstr "" msgid "" "`Plac `_ is a simple wrapper over the " "Python standard library `argparse " -"`_, which hides most of its " -"complexity by using a declarative interface: the argument parser is inferred" -" rather than written down by imperatively. This module targets especially " -"unsophisticated users, programmers, sys-admins, scientists and in general " -"people writing throw-away scripts for themselves, who choose to create a " -"command-line interface because it is quick and simple." +"`_, which hides most of " +"its complexity by using a declarative interface: the argument parser is " +"inferred rather than written down by imperatively. This module targets " +"especially unsophisticated users, programmers, sys-admins, scientists and" +" in general people writing throw-away scripts for themselves, who choose " +"to create a command-line interface because it is quick and simple." msgstr "" #: ../../scenarios/cli.rst:57 @@ -114,10 +115,25 @@ msgstr "" #: ../../scenarios/cli.rst:59 msgid "" -"`Cliff `_ is a framework for " -"building command-line programs. It uses setuptools entry points to provide " -"subcommands, output formatters, and other extensions. The framework is meant" -" to be used to create multi-level commands such as subversion and git, where" -" the main program handles some basic argument parsing and then invokes a " -"sub-command to do the work." -msgstr "" +"`Cliff `_ is a framework for" +" building command-line programs. It uses setuptools entry points to " +"provide subcommands, output formatters, and other extensions. The " +"framework is meant to be used to create multi-level commands such as " +"subversion and git, where the main program handles some basic argument " +"parsing and then invokes a sub-command to do the work." +msgstr "" + +#~ msgid "" +#~ "`Cliff `_ is " +#~ "a framework for building command-line" +#~ " programs. It uses setuptools entry " +#~ "points to provide subcommands, output " +#~ "formatters, and other extensions. The " +#~ "framework is meant to be used to" +#~ " create multi-level commands such as" +#~ " subversion and git, where the main" +#~ " program handles some basic argument " +#~ "parsing and then invokes a sub-" +#~ "command to do the work." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo b/docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo new file mode 100644 index 0000000000000000000000000000000000000000..65f2fc83ea03ba2b71403249b75c41f789ae9721 GIT binary patch literal 6255 zcmeHKzi%W-6>hi#aTdSsAh_U=UV`Ms(>>!|4(-kD9_Jm~$4KL|<@K=wA=x$EHPf}* zUDZ@od)y)=AV4Czl!zR`|3FTFL`F)6goKFsURBT7mR6S|jiu4^^i;q4-h1EsUe!O| zdGqrGe{bXS9zK8IFL(Y1Uy8q_uQ&R3r>H9-@gsZ7=QbX z`2O!<8ONVs`T1X98OPsY8OJ|i8OMKM8OPh-j5vm{jN=TJaeM~LI7(Q?@i#bO9KVKB z#__N3MjYk4SUg^+N{+8ix=AIR%gU?UC(pfYbN{+WO}ANAcX@bGT_p$4rZm-FT9JEY zbn?s?=d-iUm-sTFV`HUSYC3Lp_&u&&h+HN|H==F;gHErdt&Av?Uee{Im5sf;OoC6W zj!NfMTgW>;R#r5Pw2prjc`lu!v+gvYaahja1_0_qeUMA`o>Ko-58DmG zR`MEK$$Bn}fDTbR#v5x1U)Z5Dtqt+!rjS{3H90<>#vD5&IbSSPW~C?q8Yy;}GDE3{ zmGIK}AtyD)9+K)5SD#_G$YCw>QfTFBS{TcFNqevOw6Lb8xnUyofH*s6-C38>)RSwQ z##jLMD}!1U(v1-l992q7Vv^>jZiH8J#ia>LXjeuGu3;54mz7yP7|^Ozc}b{`Svd}x zVHTYhwaW3ZBc^M}nQir^=q`ekH!^R1s5XGK6{6imSwKz|-VLl_THlubE^A0Qn!$Z! zdPhh{QJF?+z~Yb*)xp^`1n_#C^Hx;_O}OY%JM<*4Wf-Ve;MU!qa4WUU&=M#P2v(YQ zS&}x$r?)Eih_p}k!sIAZLA#*yCf9;0VV9D03({ETip#BPJO@_^y==u&I=}}11u|%= zP~4@|P>Zl=t~65(iCY)FvC?Ck&D$}hvG+?b3)`@ExlnZYWoFA-0_Z(HjYD#Cqg`9$ zmGE0fTFN3cN+B0ai$IXbH1r?b(rzKWz&{1I4%f%G-dNNvq#m4xJM94;o;k3-9eHKY z3#UBvAShKt+qV|egcrrygj9&7P}+HZTxay6oxrZ31}# z+k?jC$j}^l3JM67oh5P0Bp5Jf=hxf3{@GYIaqzHVy;iFJLzdzyaC5Sj`6 zGtf+i$tCeAUaKYeUm({&0xeh9%qlBWXgA8l36wXv1iMjt_J_pe!b7%L*XQd_!RtOp zr{%tDfG6}CYh%#ECX5*Fx8WlmIv8c$Fs{r>Uso)VAT=`uRe%6un||4Ci`>)2K((Na zy)4G!-mMU~v(boU(SjKLjDTa_MT5$q+GL}+VM5gy;h1$V(UdV)+|aIbpbBeQw#)|f zN?I+eM-SneUZ4~Z$^mN?;O6}77eCPI23+A0C@N=e8Pm&02xvX_xe)7;@n(S-z2Np4 zz|0?j)-2184repWCNy>_ESfb=U)0kRI?bzE27L&)YJ63rsvz917l_Nf?@bxjvJHY%?9M zBC;=FZT9|#w{h);w{ghCjzv-E?#S!Mei12%t-ZxC;D$sAR`FC(2#+BVng-HDIIw8P zx)g|Ef*OWYAc}Rz32Ja+qRH;w-h;kO`P7h}xTPx6XYJCZ7iLU5XQvnGgcSv^rH249riY{bAEo=Fbbp^lkH@1&dn5c| zVR|mF6}#`({p{%AJUuy04-e=kr{k09-p@}zJ=&Q;Leh&qBxA>P{Ml?qpB|hX(UYT- zgX!$!gTuq~qvy{*!qPZ6$MniB-S;0`{}f&IH*9Wzq|z8ex9b@7LfZ65 zV>W<`V|t9E;m#*Kenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../scenarios/clibs.rst:2 +msgid "Interfacing with C/C++ Libraries" +msgstr "" + +#: ../../scenarios/clibs.rst:5 +msgid "C Foreign Function Interface" +msgstr "" + +#: ../../scenarios/clibs.rst:7 +msgid "" +"`CFFI `_ provides a simple to use" +" mechanism for interfacing with C from both CPython and PyPy. It supports" +" two modes: an inline ABI compatibility mode (example provided below), " +"which allows you to dynamically load and run functions from executable " +"modules (essentially exposing the same functionality as LoadLibrary or " +"dlopen), and an API mode, which allows you to build C extension modules." +msgstr "" + +#: ../../scenarios/clibs.rst:15 +msgid "ABI Interaction" +msgstr "" + +#: ../../scenarios/clibs.rst:29 +msgid "ctypes" +msgstr "" + +#: ../../scenarios/clibs.rst:31 +msgid "" +"`ctypes `_ is the de facto" +" library for interfacing with C/C++ from CPython, and it provides not " +"only full access to the native C interface of most major operating " +"systems (e.g., kernel32 on Windows, or libc on \\*nix), but also provides" +" support for loading and interfacing with dynamic libraries, such as DLLs" +" or shared objects at runtime. It does bring along with it a whole host " +"of types for interacting with system APIs, and allows you to rather " +"easily define your own complex types, such as structs and unions, and " +"allows you to modify things such as padding and alignment, if needed. It " +"can be a bit crufty to use, but in conjunction with the `struct " +"`_ module, you are " +"essentially provided full control over how your data types get translated" +" into something usable by a pure C(++) method." +msgstr "" + +#: ../../scenarios/clibs.rst:45 +msgid "Struct Equivalents" +msgstr "" + +#: ../../scenarios/clibs.rst:47 +msgid ":file:`MyStruct.h`" +msgstr "" + +#: ../../scenarios/clibs.rst:57 +msgid ":file:`MyStruct.py`" +msgstr "" + +#: ../../scenarios/clibs.rst:68 +msgid "SWIG" +msgstr "" + +#: ../../scenarios/clibs.rst:70 +msgid "" +"`SWIG `_, though not strictly Python focused (it " +"supports a large number of scripting languages), is a tool for generating" +" bindings for interpreted languages from C/C++ header files. It is " +"extremely simple to use: the consumer simply needs to define an interface" +" file (detailed in the tutorial and documentations), include the " +"requisite C/C++ headers, and run the build tool against them. While it " +"does have some limits, (it currently seems to have issues with a small " +"subset of newer C++ features, and getting template-heavy code to work can" +" be a bit verbose), it provides a great deal of power and exposes lots of" +" features to Python with little effort. Additionally, you can easily " +"extend the bindings SWIG creates (in the interface file) to overload " +"operators and built-in methods, effectively re- cast C++ exceptions to be" +" catchable by Python, etc." +msgstr "" + +#: ../../scenarios/clibs.rst:84 +msgid "Example: Overloading __repr__" +msgstr "" + +#: ../../scenarios/clibs.rst:86 +msgid ":file:`MyClass.h`" +msgstr "" + +#: ../../scenarios/clibs.rst:99 +msgid ":file:`myclass.i`" +msgstr "" + +#: ../../scenarios/clibs.rst:123 +msgid "Boost.Python" +msgstr "" + +#: ../../scenarios/clibs.rst:125 +msgid "" +"`Boost.Python `_ " +"requires a bit more manual work to expose C++ object functionality, but " +"it is capable of providing all the same features SWIG does and then some," +" to include providing wrappers to access PyObjects in C++, extracting " +"SWIG- wrapper objects, and even embedding bits of Python into your C++ " +"code." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.mo b/docs/locale/ko/LC_MESSAGES/scenarios/client.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..47618612f3b0aebbe2adc56e3a16bc540d6e235b 100644 GIT binary patch literal 4349 zcmeHJO^+Kz5FI`R=1U12b0`j=M0jTH1VQ9{fRo*1SFE$%jYA+DNPDJjcXpecJ{<@lptB={Y} zbpqGdJUH}gKa?cTW1PZ13fqT$0rm>)F;Utl`pTqL_r$>_H9LB%Feuwdk zk0r_Duz$c_h5ZZmRoK_@@EmLj`!eh|uo>(Ru@IS-h@-e@#B*b$M3L=<4;(| z@lY$qeg3J4;{+_@_~hw`<5Sr0F#i6Th~u+oBaSa%8OP7CjN|xo5yv%H#?insj;~>p zb>+NO+ut(mJrI*gqsGa)~d#2zUZwHT{Xd4;!2(~y?3XcJDP}xC%}2&#X^q5QY$}bltoCPNor#& z)8HQeSPXb!lPBd|YN{lH7i8wrTHeAb@`h?@5wZ#povP|muC^uIzRQw5F&-;F*gd%6 zJs^^);n11J<`RCL6H^)YWASw27s5)o6rO_13OnJgOX?SMp>q^tuv)a+$VTZY4XyDe zHzl3y4|a#AGNKWt-wRJpTEOPu3#+_GaHWI84O(syP37*?=jQeX)y)P$efVqsyh@nt%^hSS~XXs5GWd1oE&@ zeikr=!lI1GftX{l7=t*Wuw_Y=xPuV?g_qNfVxj=<;D)@|=h|Z7ifaL-0jV&Ke2w&D zj#OfwL4$lq6>uRXOzemZgb8U>IUG7EDwNt~oMtNn<+TZv80+Ypp z03$Pgf=)yxxD2Qm=LFuWs?jUe3B=%uH;pX|x{1!Do9ON2mb37*!~Ay>YC20- z0>`RD!Yy?^vqrNiiPYgrg}-hSuCcPo`T%`nI$V zeC<)>*R)|ycCt>^ZSBe0Sf38uR2Au^X6n+B=}~LAGfFR88TgT|16+?zce<~o-A>x= zQs->1bLN!}ewdi<$+=?pt9kEk^!L)iPP*Qw&7Iz0>y=wO*EU+)!ud3`F34Saei2in-1lhT91PMC1dgB3`R(mDOT}cm*cz6N6=iw_ z9qW3e>o9Z|y5}g~Ug)$2TZ4`J3Fu~>)@6edX`n&V_lPxRtuBSq=O~{E>!iQX_(^*9 z{=Ajoq#G=V;8%~%;tXwFm0ChTB=WZG(IqjKC7sUBWUsc4zEY09QjWe-j=oZkzEY09 MQjWe-{`V{8AKNL+z5oCK delta 113 zcmeyX_<%|0o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUu$$BZSvP*U(Vc*g(O^$jZoK z@*a*DY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$+4WK%%LG}lc#bjGco`G2lf@t diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.po b/docs/locale/ko/LC_MESSAGES/scenarios/client.po index 05a96105b..f7c460ef7 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/client.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/client.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/client.rst:2 msgid "Network Applications" @@ -32,24 +33,23 @@ msgstr "" #: ../../scenarios/client.rst:16 msgid "" -"Python’s standard urllib2 module provides most of the HTTP capabilities you " -"need, but the API is thoroughly broken. It was built for a different time — " -"and a different web. It requires an enormous amount of work (even method " -"overrides) to perform the simplest of tasks." +"Python’s standard urllib2 module provides most of the HTTP capabilities " +"you need, but the API is thoroughly broken. It was built for a different " +"time — and a different web. It requires an enormous amount of work (even " +"method overrides) to perform the simplest of tasks." msgstr "" #: ../../scenarios/client.rst:21 msgid "" -"Requests takes all of the work out of Python HTTP — making your integration " -"with web services seamless. There’s no need to manually add query strings to" -" your URLs, or to form-encode your POST data. Keep-alive and HTTP connection" -" pooling are 100% automatic, powered by urllib3, which is embedded within " -"Requests." +"Requests takes all of the work out of Python HTTP — making your " +"integration with web services seamless. There’s no need to manually add " +"query strings to your URLs, or to form-encode your POST data. Keep-alive " +"and HTTP connection pooling are 100% automatic, powered by urllib3, which" +" is embedded within Requests." msgstr "" #: ../../scenarios/client.rst:27 -msgid "" -"`Documentation `_" +msgid "`Documentation `_" msgstr "" #: ../../scenarios/client.rst:28 @@ -84,16 +84,31 @@ msgstr "" #: ../../scenarios/client.rst:48 msgid "" "RabbitMQ is an open source message broker software that implements the " -"Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written in " -"the Erlang programming language and is built on the Open Telecom Platform " -"framework for clustering and failover. Client libraries to interface with " -"the broker are available for all major programming languages." +"Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written" +" in the Erlang programming language and is built on the Open Telecom " +"Platform framework for clustering and failover. Client libraries to " +"interface with the broker are available for all major programming " +"languages." msgstr "" -#: ../../scenarios/client.rst:53 +#: ../../scenarios/client.rst:54 msgid "`Homepage `_" msgstr "" -#: ../../scenarios/client.rst:54 +#: ../../scenarios/client.rst:55 msgid "`GitHub Organization `_" msgstr "" + +#~ msgid "" +#~ "RabbitMQ is an open source message " +#~ "broker software that implements the " +#~ "Advanced Message Queuing Protocol (AMQP). " +#~ "The RabbitMQ server is written in " +#~ "the Erlang programming language and is" +#~ " built on the Open Telecom Platform" +#~ " framework for clustering and failover. " +#~ "Client libraries to interface with the" +#~ " broker are available for all major" +#~ " programming languages." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..6a6bbb3363b7c74531ab89194eac11a33c47a6c1 100644 GIT binary patch literal 1959 zcmeHH&2AGh5MH4CMVvTr;xG~yQ0vVmMWx#QsA-!*q@<17fCLxn?mD{$$6ndqq+6Z? zi6aj{UjQUtf@1~eUO8}QoTW`F^#M3^rP1f{jz51hWBb?rnU5ZRchMfA#m<@fzTo&C z+A-Qsw6AEl(LP=Cyb$p-qWgb>cn9$m@f+fA#P5j5*FEn8j>U~K?sTT)`Ge?qe%vg1 zP7oc>gIgufBSgnDhv;}t5xosvWL71bW@&N30d64XLmsmjxU>rFNP(aQ(*{%@G>dq~ z3{V+EN{^_HRc>HFEz_I|1CMbMy(d0EFJNDvogqXjW{?{$ z6G(ZILb?9Z&C6^lS74y#47S!g6YDX2NQ9N=e~!Rb{e@E19v?)%~}w zycDyFoH$WH?8IaCF$jL3sV=~#)J_tdBEz(%t3Q<@v@DoB%apbTx`j=#Zgqcw)ct33 zXa2lDKRYgFx9AqWw||z!ME7Vk@?*j6kuRC88r8QWs#!HFN(~eB3j3kY^v=O3_Q*DsSoKbM%OlI3|BQqA3IneMJgl;$=a82_>)hIs1SA*lN`tczATwhI&Sy{=a8 zSY$~nCa=nv5VCRNNscEB0zdF;m0jjaLOLelFqj7|hQG_+cQ~Wkc>H{EK_tZ0wTG4%uwLi=D93ntijg-K?~!v81P|G}vgR zL)d!RZo_t?(}d+_r_pM!H8wYQn|ph!7%G#TCb;E$b?%TJqXRbs%kB1>;J(tyYNac3 zO$FIfdSF73+1NEJwIwKrD?z2x>NF<>sQE!?Cg38Iv0!|Y0K z`($wv=T!HZCQXU=0`Ei!iwE3Ro-@fbmImuqgs@Hz@QT&3@=q%lUW*IP)zdL`vag\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/crypto.rst:2 ../../scenarios/crypto.rst:5 msgid "Cryptography" @@ -19,14 +20,15 @@ msgstr "" msgid "" "`Cryptography `_ is an actively " "developed library that provides cryptographic recipes and primitives. It " -"supports Python 2.6-2.7, Python 3.2+ and PyPy." +"supports Python 2.6-2.7, Python 3.3+ and PyPy." msgstr "" #: ../../scenarios/crypto.rst:12 msgid "" -"Cryptography is divided into two layers of recipes and hazardous materials " -"(hazmat). The recipes layer provides simple API for proper symmetric " -"encryption and the hazmat layer provides low-level cryptographic primitives." +"Cryptography is divided into two layers of recipes and hazardous " +"materials (hazmat). The recipes layer provides simple API for proper " +"symmetric encryption and the hazmat layer provides low-level " +"cryptographic primitives." msgstr "" #: ../../scenarios/crypto.rst:19 ../../scenarios/crypto.rst:49 @@ -47,7 +49,25 @@ msgstr "" #: ../../scenarios/crypto.rst:44 msgid "" -"`PyCrypto `_ is another library, " -"which provides secure hash functions and various encryption algorithms. It " -"supports Python version 2.1 through 3.3." +"`PyCrypto `_ is another " +"library, which provides secure hash functions and various encryption " +"algorithms. It supports Python version 2.1 through 3.3." msgstr "" + +#~ msgid "" +#~ "`Cryptography `_ is" +#~ " an actively developed library that " +#~ "provides cryptographic recipes and primitives." +#~ " It supports Python 2.6-2.7, Python " +#~ "3.2+ and PyPy." +#~ msgstr "" + +#~ msgid "" +#~ "Cryptography is divided into two layers" +#~ " of recipes and hazardous materials " +#~ "(hazmat). The recipes layer provides " +#~ "simple API for proper symmetric " +#~ "encryption and the hazmat layer provides" +#~ " low-level cryptographic primitives." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.mo b/docs/locale/ko/LC_MESSAGES/scenarios/db.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..45440de18de2d2bb01856438a0b8e21251f0d65f 100644 GIT binary patch literal 6611 zcmeHLO>87b6>dTZ;2;R$CyK=3NfE#6?it(5%FO;K_KpLVJZob+AmFf5(_J%NneMJh zRkg>x91usOAPxkH6L3UA;y|u&MnYVWxS%LGazV<06XL}8s=CJx3sT@bmh3m(Q$OE( z?|a{?^4rfo`I87g&*Aqo`290KT>E+LeNl7=&p(8H3ic1MABO!C>;~+cus??VE9@@p zqbH(h2>S-?&td-o`$5>BzCYMs!1BCb!ty$Az!tE-gMA0~OHW48)3DEfAc~&BnxBPT z!rsE>Z{hu~vDlliuYD+rp1}JYi+m4z%&{or``bsN=(~9TcUZ< z4av)eHcnMDI{W$&Wx|Oh8t%t?Cx_7x4-;XfjfSs?YNqM%S;&WNaduNid0g~?oApR zw}X7fkg(-)`FOqnoG~GT7YM~w)B_C?zgZjVj$_OX`a&Sy7b%ldkd!lK9VjadD7=Eg ztZiqn^4Ss$!K({t6Y@C$nd%am=K`o`u#k(vc>Cs8#tA);!W0dGu8*zME`h`|r!0-_ ztA%oMXS_+{g>6#3n2nK?49RWqRlM+&8Kb%?04v#Vmm_>Dyun@Y1JoTv=O`7UMA6a< z)mI3B%k`3HF14A{Qn{ST%bo-h{@1lBMfFW23b|%Pxim764VlSBF-^6e%gmQhTLq|6 zUD=+tS-Rct-|7YU54%9xBzI-ORTX@E*NRIyNrXvrlzyVktcT~`c7JQTzq|G2t)2ev z&6_>0hMOe8MMilryS!g=nal+|5}869}Wkm&gos z!*aAXTauv6TW!NQ+f+_mGCD4egit_6VgypFdGVPMi<}jaEZ3SKnJJ{cO(+j&Ws@f`8(6zZqXwVgfVOT1 zf9P{`3@IsOG;ZbKN}OikT|Mz}pGz#{awC;{)H6Xh+FX>XQl%)Ab-V`^YGQPH0RmHQK}%>JfZl)#HG5tn7A<#jHZgR0?EJ zP?iLZ72s9yEvWXtyQaOCU-zt$*cQ-0PA;K$Q%Yc6EY2B`uHjgA+uH%%$7uomrh5av zql8NP7@=4S0SjdFv@A6wNM34&-c9kLJKH;<;r=F_HT!6le(dOs{b82-z&%EFni^eR zBR-dlmRAd#0ps@m>PeDbvIgw1)Ld|lw zl>9f0Xd(F&wFS2-z@23K1}#zI`BjmIK(tjC%Csvy^iFg&Q5Rqnw4yy5Kzh*VuWB&( zkQj&+a^~GqnvXxNE8%+_e^fe0Yc$R)=?me|;JYRyL|3iHR+Xv{{(RsMGsrMjz24_J zdmwMljSk?09F{13on1SX{hz3e#EDE^AhI#jh(UD{?Rk~ZH*;0UmOlS6Y65I(lYnYL z3B-CD!-sgHFE`m4e9sMn#;Gm}Xdj=E;HJp37|Q)W2NvD9L8Vz4;<|cd?BYTonv+5% zQ3yzM5{{_xVHSTw8txSX3JrBub7l3DezLW3Dp|qfk)5e5-mhmiKGy@s(9tu5;B4*EMc`uM@X_!Lp(<=b)JI@mjnN5}DSkG^(17#-gD_VI&* zjU!=Qd~QT#K^AQW^wP^mNAzHCbU=3wMtg@xFYXP8rw3LEUtqU1Mp z=jiCgLa~nA+c+s|BZ~MXloeE=TKGqMck4EVk9YeUqr=g`RRFe<{>FWcQ&$Bv%>r&Y zdFguooO7GfTo^0e-P%p#-K%ko8tptjsGxTs%z$<$%58kLyGq3S&4BjB1PA)kCe}1h+TG)s5yoU2y&d Dh(EyU delta 113 zcmca?{D4X4o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#k&PYADxuA!l>v4Mh-k(H6f z\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/db.rst:2 msgid "Databases" @@ -22,17 +23,17 @@ msgstr "" #: ../../scenarios/db.rst:7 msgid "" "The Python Database API (DB-API) defines a standard interface for Python " -"database access modules. It's documented in :pep:`249`. Nearly all Python " -"database modules such as `sqlite3`, `psycopg` and `mysql-python` conform to " -"this interface." +"database access modules. It's documented in :pep:`249`. Nearly all Python" +" database modules such as `sqlite3`, `psycopg` and `mysql-python` conform" +" to this interface." msgstr "" #: ../../scenarios/db.rst:12 msgid "" "Tutorials that explain how to work with modules that conform to this " "interface can be found `here " -"`__ and " -"`here " +"`__ " +"and `here " "`__." msgstr "" @@ -44,41 +45,111 @@ msgstr "" #: ../../scenarios/db.rst:19 msgid "" "`SQLAlchemy `_ is a commonly used database " -"toolkit. Unlike many database libraries it not only provides an ORM layer " -"but also a generalized API for writing database-agnostic code without SQL." +"toolkit. Unlike many database libraries it not only provides an ORM layer" +" but also a generalized API for writing database-agnostic code without " +"SQL." msgstr "" #: ../../scenarios/db.rst:28 -msgid "Django ORM" +msgid "Records" msgstr "" #: ../../scenarios/db.rst:30 msgid "" +"`Records `_ is minimalist SQL " +"library, designed for sending raw SQL queries to various databases. Data " +"can be used programmatically, or exported to a number of useful data " +"formats." +msgstr "" + +#: ../../scenarios/db.rst:38 +msgid "Also included is a command-line tool for exporting SQL data." +msgstr "" + +#: ../../scenarios/db.rst:41 +msgid "Django ORM" +msgstr "" + +#: ../../scenarios/db.rst:43 +msgid "" "The Django ORM is the interface used by `Django " "`_ to provide database access." msgstr "" -#: ../../scenarios/db.rst:33 +#: ../../scenarios/db.rst:46 msgid "" -"It's based on the idea of `models `_, an abstraction that makes it easier to manipulate data" -" in Python." +"It's based on the idea of `models `_, an abstraction that makes it easier to manipulate " +"data in Python." msgstr "" -#: ../../scenarios/db.rst:36 +#: ../../scenarios/db.rst:50 msgid "The basics:" msgstr "" -#: ../../scenarios/db.rst:38 +#: ../../scenarios/db.rst:52 msgid "Each model is a Python class that subclasses django.db.models.Model." msgstr "" -#: ../../scenarios/db.rst:39 +#: ../../scenarios/db.rst:53 msgid "Each attribute of the model represents a database field." msgstr "" -#: ../../scenarios/db.rst:40 +#: ../../scenarios/db.rst:54 +msgid "" +"Django gives you an automatically-generated database-access API; see " +"`Making queries " +"`__." +msgstr "" + +#: ../../scenarios/db.rst:58 +msgid "peewee" +msgstr "" + +#: ../../scenarios/db.rst:60 +msgid "" +"`peewee `_ is another ORM with a " +"focus on being lightweight with support for Python 2.6+ and 3.2+ which " +"supports SQLite, MySQL and Postgres by default. The `model layer " +"`_ is similar to that of the Django ORM and it has `SQL-like " +"methods `_ to query data. While SQLite, MySQL and Postgres are " +"supported out-of-the-box, there is a `collection of add-ons " +"`_" +" available." +msgstr "" + +#: ../../scenarios/db.rst:71 +msgid "PonyORM" +msgstr "" + +#: ../../scenarios/db.rst:73 msgid "" -"Django gives you an automatically-generated database-access API; see `Making" -" queries `__." +"`PonyORM `_ is an ORM that takes a different " +"approach to querying the database. Instead of writing an SQL-like " +"language or boolean expressions, Python's generator syntax is used. " +"There's also an graphical schema editor that can generate PonyORM " +"entities for you. It supports Python 2.6+ and Python 3.3+ and can connect" +" to SQLite, MySQL, Postgres & Oracle" msgstr "" + +#: ../../scenarios/db.rst:82 +msgid "SQLObject" +msgstr "" + +#: ../../scenarios/db.rst:84 +msgid "" +"`SQLObject `_ is yet another ORM. It supports " +"a wide variety of databases: Common database systems MySQL, Postgres and " +"SQLite and more exotic systems like SAP DB, SyBase and MSSQL. It only " +"supports Python 2 from Python 2.6 upwards." +msgstr "" + +#~ msgid "" +#~ "It's based on the idea of `models" +#~ " `_, an abstraction that makes it" +#~ " easier to manipulate data in Python." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo b/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..e18d973471c0d2032fe469acfec1699cb663d968 100644 GIT binary patch literal 9173 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\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/gui.rst:2 msgid "GUI Applications" @@ -25,9 +26,9 @@ msgstr "" #: ../../scenarios/gui.rst:8 msgid "" -"`Camelot `_ provides components for building " -"applications on top of Python, SQLAlchemy and Qt. It is inspired by the " -"Django admin interface." +"`Camelot `_ provides components for " +"building applications on top of Python, SQLAlchemy and Qt. It is " +"inspired by the Django admin interface." msgstr "" #: ../../scenarios/gui.rst:12 @@ -43,7 +44,7 @@ msgstr "" #: ../../scenarios/gui.rst:18 msgid "" -"The Cocoa framework is only available on OS X. Don't pick this if you're " +"The Cocoa framework is only available on OS X. Don't pick this if you're " "writing a cross-platform application!" msgstr "" @@ -53,157 +54,196 @@ msgstr "" #: ../../scenarios/gui.rst:22 msgid "" -"PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ library " -"itself, it is currently licensed under the GNU LGPL. It is worth noting that" -" PyGTK only currently supports the Gtk-2.X API (NOT Gtk-3.0). It is " -"currently recommended that PyGTK not be used for new projects and that " -"existing applications be ported from PyGTK to PyGObject." +"PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ " +"library itself, it is currently licensed under the GNU LGPL. It is worth " +"noting that PyGTK only currently supports the Gtk-2.X API (NOT Gtk-3.0). " +"It is currently recommended that PyGTK not be used for new projects and " +"that existing applications be ported from PyGTK to PyGObject." msgstr "" #: ../../scenarios/gui.rst:29 -msgid "Kivy" +msgid "PyGObject aka (PyGi)" msgstr "" #: ../../scenarios/gui.rst:30 msgid "" -"`Kivy `_ is a Python library for development of multi-touch" -" enabled media rich applications. The aim is to allow for quick and easy " -"interaction design and rapid prototyping, while making your code reusable " -"and deployable." +"`PyGObject `_ provides Python " +"bindings, which gives access to the entire GNOME software platform. It is" +" fully compatible with GTK+ 3. Here is a tutorial to get started with " +"`Python GTK+ 3 Tutorial `_." +msgstr "" + +#: ../../scenarios/gui.rst:33 +msgid "`API Reference `_" +msgstr "" + +#: ../../scenarios/gui.rst:36 +msgid "Kivy" msgstr "" -#: ../../scenarios/gui.rst:35 +#: ../../scenarios/gui.rst:37 +msgid "" +"`Kivy `_ is a Python library for development of multi-" +"touch enabled media rich applications. The aim is to allow for quick and " +"easy interaction design and rapid prototyping, while making your code " +"reusable and deployable." +msgstr "" + +#: ../../scenarios/gui.rst:42 msgid "" "Kivy is written in Python, based on OpenGL and supports different input " "devices such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, " "Apple's products and so on." msgstr "" -#: ../../scenarios/gui.rst:38 +#: ../../scenarios/gui.rst:46 msgid "" -"Kivy is actively being developed by a community and free to use. It operates" -" on all major platforms (Linux, OSX, Windows, Android)." +"Kivy is actively being developed by a community and is free to use. It " +"operates on all major platforms (Linux, OSX, Windows, Android)." msgstr "" -#: ../../scenarios/gui.rst:41 +#: ../../scenarios/gui.rst:49 msgid "The main resource for information is the website: http://kivy.org" msgstr "" -#: ../../scenarios/gui.rst:44 +#: ../../scenarios/gui.rst:52 msgid "PyObjC" msgstr "" -#: ../../scenarios/gui.rst:45 +#: ../../scenarios/gui.rst:53 msgid "" -"Only available on OS X. Don't pick this if you're writing a cross-platform " -"application." +"Only available on OS X. Don't pick this if you're writing a cross-" +"platform application." msgstr "" -#: ../../scenarios/gui.rst:48 +#: ../../scenarios/gui.rst:56 msgid "PySide" msgstr "" -#: ../../scenarios/gui.rst:49 +#: ../../scenarios/gui.rst:57 msgid "PySide is a Python binding of the cross-platform GUI toolkit Qt." msgstr "" -#: ../../scenarios/gui.rst:51 -msgid "http://developer.qt.nokia.com/wiki/PySideDownloads/" +#: ../../scenarios/gui.rst:59 +msgid "pip install pyside" +msgstr "" + +#: ../../scenarios/gui.rst:61 +msgid "https://wiki.qt.io/Category:LanguageBindings::PySide::Downloads" msgstr "" -#: ../../scenarios/gui.rst:54 +#: ../../scenarios/gui.rst:64 msgid "PyQt" msgstr "" -#: ../../scenarios/gui.rst:55 +#: ../../scenarios/gui.rst:65 msgid "" "If your software does not fully comply with the GPL you will need a " "commercial license!" msgstr "" -#: ../../scenarios/gui.rst:57 +#: ../../scenarios/gui.rst:67 msgid "PyQt provides Python bindings for the Qt Framework (see below)." msgstr "" -#: ../../scenarios/gui.rst:59 +#: ../../scenarios/gui.rst:69 msgid "http://www.riverbankcomputing.co.uk/software/pyqt/download" msgstr "" -#: ../../scenarios/gui.rst:62 +#: ../../scenarios/gui.rst:72 msgid "PyjamasDesktop (pyjs Desktop)" msgstr "" -#: ../../scenarios/gui.rst:63 +#: ../../scenarios/gui.rst:73 msgid "" -"PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget " -"set for desktop and a cross-platform framework. (After release v0.6 " -"PyjamasDesktop is a part of Pyjamas (Pyjs)). Briefly, it allows the exact " -"same Python web application source code to be executed as a standalone " +"PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget" +" set for desktop and a cross-platform framework. (After release v0.6 " +"PyjamasDesktop is a part of Pyjamas (Pyjs)). Briefly, it allows the exact" +" same Python web application source code to be executed as a standalone " "desktop application." msgstr "" -#: ../../scenarios/gui.rst:68 +#: ../../scenarios/gui.rst:78 msgid "" "`Python Wiki for PyjamasDesktop " "`_." msgstr "" -#: ../../scenarios/gui.rst:70 +#: ../../scenarios/gui.rst:80 msgid "The main website; `pyjs Desktop `_." msgstr "" -#: ../../scenarios/gui.rst:73 +#: ../../scenarios/gui.rst:83 msgid "Qt" msgstr "" -#: ../../scenarios/gui.rst:74 +#: ../../scenarios/gui.rst:84 msgid "" "`Qt `_ is a cross-platform application framework " -"that is widely used for developing software with a GUI but can also be used " -"for non-GUI applications." +"that is widely used for developing software with a GUI but can also be " +"used for non-GUI applications." msgstr "" -#: ../../scenarios/gui.rst:79 +#: ../../scenarios/gui.rst:89 msgid "Tk" msgstr "" -#: ../../scenarios/gui.rst:80 +#: ../../scenarios/gui.rst:90 msgid "" "Tkinter is a thin object-oriented layer on top of Tcl/Tk. **It has the " -"advantage of being included with the Python standard library, making it the " -"most convenient and compatible toolkit to program with.**" +"advantage of being included with the Python standard library, making it " +"the most convenient and compatible toolkit to program with.**" msgstr "" -#: ../../scenarios/gui.rst:84 +#: ../../scenarios/gui.rst:94 msgid "" "Both Tk and Tkinter are available on most Unix platforms, as well as on " "Windows and Macintosh systems. Starting with the 8.0 release, Tk offers " "native look and feel on all platforms." msgstr "" -#: ../../scenarios/gui.rst:88 +#: ../../scenarios/gui.rst:98 msgid "" -"There's a good multi-language Tk tutorial with Python examples at `TkDocs " -"`_. There's more information " +"There's a good multi-language Tk tutorial with Python examples at `TkDocs" +" `_. There's more information " "available on the `Python Wiki `_." msgstr "" -#: ../../scenarios/gui.rst:93 +#: ../../scenarios/gui.rst:103 msgid "wxPython" msgstr "" -#: ../../scenarios/gui.rst:94 +#: ../../scenarios/gui.rst:104 msgid "" "wxPython is a GUI toolkit for the Python programming language. It allows " "Python programmers to create programs with a robust, highly functional " -"graphical user interface, simply and easily. It is implemented as a Python " -"extension module (native code) that wraps the popular wxWidgets cross " -"platform GUI library, which is written in C++." +"graphical user interface, simply and easily. It is implemented as a " +"Python extension module (native code) that wraps the popular wxWidgets " +"cross platform GUI library, which is written in C++." msgstr "" -#: ../../scenarios/gui.rst:100 +#: ../../scenarios/gui.rst:110 msgid "" "**Install (Stable) wxPython** *go to " "http://www.wxpython.org/download.php#stable and download the appropriate " "package for your OS.*" msgstr "" + +#~ msgid "" +#~ "The Cocoa framework is only available" +#~ " on OS X. Don't pick this if " +#~ "you're writing a cross-platform " +#~ "application!" +#~ msgstr "" + +#~ msgid "" +#~ "Kivy is actively being developed by " +#~ "a community and free to use. It" +#~ " operates on all major platforms " +#~ "(Linux, OSX, Windows, Android)." +#~ msgstr "" + +#~ msgid "http://developer.qt.nokia.com/wiki/PySideDownloads/" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..d944fcd30f6aa222eff504c0295a3a47822c729b 100644 GIT binary patch literal 4493 zcmeHK&u<$=7+s+Jkonz155VC=9NMbhwUbmRxM@{4af^}NSVDo$bu5 z9Sd;=i3=Bw2nliI!XJQy#F+~hZgAu8;C;Jx;+9fz;bu$r%k0d~yzkBXzM1@S{@m9d zKCk2Z7QWweW9d_U%JZ(E?E~Ki-Ut2;{1o^+aQ|t~I}iK_7~)w9dk23on#weG6nBZ&pekcYw@8 z0hveh#ga!G$UHsBWe7H>S#rH1a{Nta8!@bX%nnRw}15 zdC0shVRD|xP?iW@bc}h5QT=k6#k8UbgIS!ux;1hxvyECUD+mQfiU{*ZI<$e(HJR2n zf_hM|&8ZhN1S2<2ZuE}=uXQ5ESt7mmSPUg~MXItK6hO*rr_`IdkxrpW(VH0^N^3dz zy!hSCWV(IGYAT*&EK?_=c^`+^?}wB1exC$F?)UHJ%moiR&%-2Mv25COlPn_p=-^FK_ZWId=zR>OWo0b?=2*H zr)8Vl5!vCo*)WJ8fkW2hh0i zQz>{S506zcTMVi4dq%=SA|-)t&+*%NMsA4nf$Nb#iR0#ctX>%d~NJ?hx7tysozH zpGM)WA1}FzoD4^)dXP&C(wu+*gG7x;=Z<6?L!=_og^#A15;ZUaV{Buw9@~{kb&8%D zU4jUgsi4M=*+(jclD73Y%Q>?Tk$nj068CK%UJks%iwgpgo~DTw5o>DnxY(}J`P38P zF(*bljpWIt-mKTY-0=Q=g(q}X;d>O2P>;tt#U>x8Se1mGI~+NNeJ;m{Xd==OY|6BI zNIuqcDG#lV9SRgG&j?~dgn-%(wa7wPl(*%yL_x9eju8nZA|2)ki=Bm4EKT8FaLTQW z0&gDrBNBT>vOd0#7Ji#fr$OmCCKVvq8pv`sS}srQyDA~8*|MD7$R5Kbm+dCm%bY18 z>vX#1#kj`^fpAJP0o_Y6m&;S(5Cj)+i=tm-30I^-4P@Dn`=csi+nIHqW z8q<2c{$9XgVtJOd*spR8e_2RbmP~Mt7v%|WyAh)3hZ=cU)Se=mMO7*V;v$WFLhbTP zk$jXbqfxaUQ?yZprFFGzc63(TmK$d!{1L{>^jOaM0a6M&<3Rc8qEaj-KV$gBW8|a; zpG5<$k55bP8IfLD;{0~xA4`7UF>h3jbqlaG=3`$b%Z+Cpv{4Dl{+%!YAm7KtU+s^8?^FQ8p{su9{2!a3r delta 113 zcmeBGe!!%2Pl#nI0}wC*u?!HafH**)1EIjQ5l~VW$e%oqBZSvP*U(Vc*g(O^$jZoK zG7D#nv~EahVy=~fkE5S^sH3~9f{l-lLr$h%eo?yJ\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/imaging.rst:3 msgid "Image Manipulation" msgstr "" -#: ../../scenarios/imaging.rst:6 -msgid "Add introduction about image manipulation and its Python libraries." +#: ../../scenarios/imaging.rst:5 +msgid "" +"Most image processing and manipulation techniques can be carried out " +"effectively using two libraries: Python Imaging Library (PIL) and " +"OpenSource Computer Vision (OpenCV)." msgstr "" #: ../../scenarios/imaging.rst:9 +msgid "A brief description of both is given below." +msgstr "" + +#: ../../scenarios/imaging.rst:12 msgid "Python Imaging Library" msgstr "" -#: ../../scenarios/imaging.rst:11 +#: ../../scenarios/imaging.rst:14 msgid "" -"The `Python Imaging Library `_, or " -"PIL for short, is *the* library for image manipulation in Python. " -"Unfortunately, its development has stagnated, with its last release in 2009." +"The `Python Imaging Library `_, " +"or PIL for short, is one of the core libraries for image manipulation in " +"Python. Unfortunately, its development has stagnated, with its last " +"release in 2009." msgstr "" -#: ../../scenarios/imaging.rst:15 +#: ../../scenarios/imaging.rst:18 msgid "" -"Luckily for you, there's an actively-developed fork of PIL called `Pillow " -"`_ - it's easier to install, runs on all " -"operating systems, and supports Python 3." +"Luckily for you, there's an actively-developed fork of PIL called `Pillow" +" `_ - it's easier to install, runs on " +"all operating systems, and supports Python 3." msgstr "" -#: ../../scenarios/imaging.rst:19 +#: ../../scenarios/imaging.rst:23 ../../scenarios/imaging.rst:71 msgid "Installation" msgstr "" -#: ../../scenarios/imaging.rst:21 +#: ../../scenarios/imaging.rst:25 msgid "" "Before installing Pillow, you'll have to install Pillow's prerequisites. " -"Find the instructions for your platform `here " -"`_." +"Find the instructions for your platform in the `Pillow installation " +"instructions " +"`_." msgstr "" -#: ../../scenarios/imaging.rst:24 +#: ../../scenarios/imaging.rst:29 msgid "After that, it's straightforward:" msgstr "" -#: ../../scenarios/imaging.rst:0 -msgid "Todo" +#: ../../scenarios/imaging.rst:36 ../../scenarios/imaging.rst:86 +msgid "Example" +msgstr "" + +#: ../../scenarios/imaging.rst:59 +msgid "" +"There are more examples of the Pillow library in the `Pillow tutorial " +"`_." +msgstr "" + +#: ../../scenarios/imaging.rst:64 +msgid "OpenSource Computer Vision" +msgstr "" + +#: ../../scenarios/imaging.rst:66 +msgid "" +"OpenSource Computer Vision, more commonly known as OpenCV, is a more " +"advanced image manipulation and processing software than PIL. It has been" +" implemented in several languages and is widely used." +msgstr "" + +#: ../../scenarios/imaging.rst:73 +msgid "" +"In Python, image processing using OpenCV is implemented using the ``cv2``" +" and ``NumPy`` modules. The `installation instructions for OpenCV " +"`_ should guide you through configuring " +"the project for yourself." +msgstr "" + +#: ../../scenarios/imaging.rst:78 +msgid "NumPy can be downloaded from the Python Package Index(PyPI):" +msgstr "" + +#: ../../scenarios/imaging.rst:105 +msgid "" +"There are more Python-implemented examples of OpenCV in this `collection " +"of tutorials `_." msgstr "" + +#~ msgid "Add introduction about image manipulation and its Python libraries." +#~ msgstr "" + +#~ msgid "" +#~ "The `Python Imaging Library " +#~ "`_, or PIL " +#~ "for short, is *the* library for " +#~ "image manipulation in Python. Unfortunately," +#~ " its development has stagnated, with " +#~ "its last release in 2009." +#~ msgstr "" + +#~ msgid "" +#~ "Before installing Pillow, you'll have to" +#~ " install Pillow's prerequisites. Find the" +#~ " instructions for your platform `here " +#~ "`_." +#~ msgstr "" + +#~ msgid "Todo" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/json.mo b/docs/locale/ko/LC_MESSAGES/scenarios/json.mo new file mode 100644 index 0000000000000000000000000000000000000000..28b599d0472d68adb3c4e7df0caf1f7105fc28ee GIT binary patch literal 2661 zcmeHIO^@3|7&f#5YCuR_;qcx#EVh#^Dl2z))oeF~pkx#62BdOfC-FF$?!*(#jFU!4 zT!1^5{s*qyIUs%q;(|BnD`{n0-X8h~hx1R-g-o$tp;~QRF zd;Y}SWBi5j4#w!EAh-?u3it-_YhVKW4)`u-Ua=LaC? z`4JejaxX2Z+1yyKiU~PPwS3}CLBbK^`{bvR#K2@KfV`J zr>g(GZS^Qm3ab^!+1QzU?OZc*d5x;WsrPf2CdqCuwo+u^ATwhZE0f3~(ZWmTljF-T zwxualwh&5-k(RVj0vQIKxcY?4stMc3Rh)TMd~EC_*-zGVCTtf^{Y+mE%=}j5)>P!y z%+L*H&5^N`D|9g?rfMCgwsy6-D!>#MQ*o84u?JCT9lL7fJou_xD6})&25{v6Wv(EU zwF3mgA*;5m%ZP)=5DeG(LJ*eCuF-3sbZZMmAycie9oe*;%A!(SMcU?*z;0puHHJs4 z|CV}LWN5UYOyxNgTzD$POr`QdH<{( zc7^lN(2Bz06O2vi(Wl)mowa&xI&Ak^o$iCy>FIg<;^G*l#iSGyq`WfQMKqLR#yfP_ z?LN?o&&hE((4`eRdW4R-l!|$^bVtqmR8Nl@VXxC`?+9qdjqo9E7RVqPuI9+$Kenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../scenarios/json.rst:2 +msgid "JSON" +msgstr "" + +#: ../../scenarios/json.rst:4 +msgid "" +"The `json `_ library can " +"parse JSON from strings or files. The library parses JSON into a Python " +"dictionary or list. It can also convert Python dictionaries or lists into" +" JSON strings." +msgstr "" + +#: ../../scenarios/json.rst:9 +msgid "Parsing JSON" +msgstr "" + +#: ../../scenarios/json.rst:11 +msgid "Take the following string containing JSON data:" +msgstr "" + +#: ../../scenarios/json.rst:17 +msgid "It can be parsed like this:" +msgstr "" + +#: ../../scenarios/json.rst:24 +msgid "and can now be used as a normal dictionary:" +msgstr "" + +#: ../../scenarios/json.rst:31 +msgid "You can also convert the following to JSON:" +msgstr "" + +#: ../../scenarios/json.rst:46 +msgid "simplejson" +msgstr "" + +#: ../../scenarios/json.rst:48 +msgid "" +"The JSON library was added to Python in version 2.6. If you're using an " +"earlier version of Python, the `simplejson " +"`_ library is available via" +" PyPI." +msgstr "" + +#: ../../scenarios/json.rst:53 +msgid "" +"simplejson mimics the json standard library. It is available so that " +"developers that use older versions of Python can use the latest features " +"available in the json lib." +msgstr "" + +#: ../../scenarios/json.rst:57 +msgid "" +"You can start using simplejson when the json library is not available by " +"importing simplejson under a different name:" +msgstr "" + +#: ../../scenarios/json.rst:64 +msgid "" +"After importing simplejson as json, the above examples will all work as " +"if you were using the standard json library." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.mo b/docs/locale/ko/LC_MESSAGES/scenarios/network.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..a4b0a79537757ccff474634d8fb551b40683e186 100644 GIT binary patch literal 3223 zcmeHI%W~sH6csQ$%CLbQRV?musEK4JnMLpnVLTI0#*`g9v4<*VL)xvj)I{o5x?A=* z1z$n&6%;%6Y+%VB09*cmVh5*X#j%T`_<^XZeJ!c`+;h)8>i+$`JKqMl-of|)<12r& zas7(_BaGiL8W_C#dz ztYwLZ&g9fEvy5n{1SJr_5sT+cIaEe^Mzs(XFT9hEI0G?3r4?~SY=tGDq$oY&0(I#U zFm)C|Q=>10iD&|4r_4%D1#?aqWh(%edd5bygY#OkwN!4UV9uP8FDt2>VfWRf!{HApa{OBEAzT2d@$GhqO_iB=fxG}oEk zA*py)R!#AyAS=vV7(ie>&m`7i&K7uSy(r_sWVA!0;b?z{dV|i0(9!Yu8EqlMg~)r; z8xMM(muP9O&5aHJLzIQQkj*2_%N#7K$|_f$CzVEPNxg4Yk17Y(renl4RB#Y2M2pbc z+JYOJ)>eT*VFa|_dcO#j2?x_^U&`EnEw%SDq|Ip4be&O;U}~oeZ!G_r0a46XJ)}(Q zA_`W_f})&e(x#y;r?&vwQ$lD zb%IE3!U)-rswlIJ?xHP)EJOw!KHSKubc}MPLY5g*p|^Ll`iDm~%t{vjainZ6C@(W7 zi%ei^5ry{zdg)8t;#4q$%>yzyW-qqMRff`d$+x*0f$z+^(1;>iZZKSzU%PNy61Y@y zv6b71Tsz^r#zkDhUK~^^n*S!VR%&GQmtYk3;_x%*4i(!}RD0EGr))*7Xt!}D3T<3C zu!)Sr$7N!}iEdM4G@OJ_{0@U<;SqCa>RxO2ez?0E?zd=fuf2D0uZ0T}!!t3L9=@LU zdAD;G4u;`Thn@}FgWkOt!;@~K&mhFaFl965v}x1R=lwpNbOv2|*d26w{YRanqqFXK ze2A$kDY2!66T$K}^*blW&pXGM*Y7{dr2i5Q8-w1UdsEhK)M`A@%K80evMfN>iI=Wf zWK60D#8YNq!;ech3lDDQc`n#K!mi@lZxU@fm`c|;7D^Zt3^mZR$83t0??wC3{l@Jn WbbAWjo~Epc)g+ZyK35Vy&y?8=M` E03xuyf{)`d#Q0H+&tv=;#w!>f&if8N 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 F{~uieqqP74 delta 113 zcmaDI_kc;~o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUyDMB81mO*U(Vc*g(O^$jZoK ya\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/scientific.rst:3 msgid "Scientific Applications" @@ -21,20 +22,21 @@ msgstr "" #: ../../scenarios/scientific.rst:8 msgid "" -"Python is frequently used for high-performance scientific applications. It " -"is widely used in academia and scientific projects because it is easy to " -"write and performs well." +"Python is frequently used for high-performance scientific applications. " +"It is widely used in academia and scientific projects because it is easy " +"to write and performs well." msgstr "" #: ../../scenarios/scientific.rst:12 msgid "" "Due to its high performance nature, scientific computing in Python often " -"utilizes external libraries, typically written in faster languages (like C, " -"or FORTRAN for matrix operations). The main libraries used are `NumPy`_, " -"`SciPy`_ and `Matplotlib`_. Going into detail about these libraries is " -"beyond the scope of the Python guide. However, a comprehensive introduction " -"to the scientific Python ecosystem can be found in the `Python Scientific " -"Lecture Notes `_" +"utilizes external libraries, typically written in faster languages (like " +"C, or FORTRAN for matrix operations). The main libraries used are " +"`NumPy`_, `SciPy`_ and `Matplotlib`_. Going into detail about these " +"libraries is beyond the scope of the Python guide. However, a " +"comprehensive introduction to the scientific Python ecosystem can be " +"found in the `Python Scientific Lecture Notes `_" msgstr "" #: ../../scenarios/scientific.rst:22 @@ -48,13 +50,13 @@ msgstr "" #: ../../scenarios/scientific.rst:27 msgid "" "`IPython `_ is an enhanced version of Python " -"interpreter, which provides features of great interest to scientists. The " -"`inline mode` allow graphics and plots to be displayed in the terminal (Qt " -"based version). Moreover, the `notebook` mode supports literate programming " -"and reproducible science generating a web-based Python notebook. This " -"notebook allows you to store chunks of Python code along side the results " -"and additional comments (HTML, LaTeX, Markdown). The notebook can then be " -"shared and exported in various file formats." +"interpreter, which provides features of great interest to scientists. The" +" `inline mode` allows graphics and plots to be displayed in the terminal " +"(Qt based version). Moreover, the `notebook` mode supports literate " +"programming and reproducible science generating a web-based Python " +"notebook. This notebook allows you to store chunks of Python code along " +"side the results and additional comments (HTML, LaTeX, Markdown). The " +"notebook can then be shared and exported in various file formats." msgstr "" #: ../../scenarios/scientific.rst:38 @@ -67,24 +69,23 @@ msgstr "" #: ../../scenarios/scientific.rst:43 msgid "" -"`NumPy `_ is a low level library written in C (and " -"FORTRAN) for high level mathematical functions. NumPy cleverly overcomes the" -" problem of running slower algorithms on Python by using multidimensional " -"arrays and functions that operate on arrays. Any algorithm can then be " -"expressed as a function on arrays, allowing the algorithms to be run " -"quickly." +"`NumPy `_ is a low level library written in C " +"(and FORTRAN) for high level mathematical functions. NumPy cleverly " +"overcomes the problem of running slower algorithms on Python by using " +"multidimensional arrays and functions that operate on arrays. Any " +"algorithm can then be expressed as a function on arrays, allowing the " +"algorithms to be run quickly." msgstr "" #: ../../scenarios/scientific.rst:49 msgid "" -"NumPy is part of the SciPy project, and is released as a separate library so" -" people who only need the basic requirements can use it without installing " -"the rest of SciPy." +"NumPy is part of the SciPy project, and is released as a separate library" +" so people who only need the basic requirements can use it without " +"installing the rest of SciPy." msgstr "" #: ../../scenarios/scientific.rst:53 -msgid "" -"NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." +msgid "NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." msgstr "" #: ../../scenarios/scientific.rst:56 @@ -93,11 +94,11 @@ msgstr "" #: ../../scenarios/scientific.rst:58 msgid "" -"`Numba `_ is an Numpy aware Python compiler (just-" -"in-time (JIT) specializing compiler) which compiles annotated Python (and " -"Numpy) code to LLVM (Low Level Virtual Machine) through special decorators. " -"Briefly, Numba uses a system that compiles Python code with LLVM to code " -"which can be natively executed at runtime." +"`Numba `_ is a NumPy aware Python compiler " +"(just-in-time (JIT) specializing compiler) which compiles annotated " +"Python (and NumPy) code to LLVM (Low Level Virtual Machine) through " +"special decorators. Briefly, Numba uses a system that compiles Python " +"code with LLVM to code which can be natively executed at runtime." msgstr "" #: ../../scenarios/scientific.rst:65 @@ -107,10 +108,10 @@ msgstr "" #: ../../scenarios/scientific.rst:67 msgid "" "`SciPy `_ is a library that uses NumPy for more " -"mathematical functions. SciPy uses NumPy arrays as the basic data structure," -" and comes with modules for various commonly used tasks in scientific " -"programming, including linear algebra, integration (calculus), ordinary " -"differential equation solving and signal processing." +"mathematical functions. SciPy uses NumPy arrays as the basic data " +"structure, and comes with modules for various commonly used tasks in " +"scientific programming, including linear algebra, integration (calculus)," +" ordinary differential equation solving and signal processing." msgstr "" #: ../../scenarios/scientific.rst:74 @@ -119,12 +120,12 @@ msgstr "" #: ../../scenarios/scientific.rst:76 msgid "" -"`Matplotlib `_ is a flexible plotting " -"library for creating interactive 2D and 3D plots that can also be saved as " -"manuscript-quality figures. The API in many ways reflects that of `MATLAB " -"`_, easing transition of MATLAB " -"users to Python. Many examples, along with the source code to re-create " -"them, are available in the `matplotlib gallery " +"`Matplotlib `_ is a flexible plotting" +" library for creating interactive 2D and 3D plots that can also be saved " +"as manuscript-quality figures. The API in many ways reflects that of " +"`MATLAB `_, easing transition " +"of MATLAB users to Python. Many examples, along with the source code to " +"re-create them, are available in the `matplotlib gallery " "`_." msgstr "" @@ -134,12 +135,12 @@ msgstr "" #: ../../scenarios/scientific.rst:87 msgid "" -"`Pandas `_ is data manipulation library based on " -"Numpy which provides many useful functions for accessing, indexing, merging " -"and grouping data easily. The main data structure (DataFrame) is close to " -"what could be found in the R statistical package; that is, heterogeneous " -"data tables with name indexing, time series operations and auto-alignment of" -" data." +"`Pandas `_ is data manipulation library based " +"on Numpy which provides many useful functions for accessing, indexing, " +"merging and grouping data easily. The main data structure (DataFrame) is " +"close to what could be found in the R statistical package; that is, " +"heterogeneous data tables with name indexing, time series operations and " +"auto-alignment of data." msgstr "" #: ../../scenarios/scientific.rst:95 @@ -148,76 +149,136 @@ msgstr "" #: ../../scenarios/scientific.rst:97 msgid "" -"`Rpy2 `_ is a Python binding for the R" -" statistical package allowing the execution of R functions from Python and " -"passing data back and forth between the two environments. Rpy2 is the object" -" oriented implementation of the `Rpy `_" -" bindings." +"`Rpy2 `_ is a Python binding for the R " +"statistical package allowing the execution of R functions from Python and" +" passing data back and forth between the two environments. Rpy2 is the " +"object oriented implementation of the `Rpy " +"`_ bindings." msgstr "" -#: ../../scenarios/scientific.rst:103 +#: ../../scenarios/scientific.rst:104 msgid "PsychoPy" msgstr "" -#: ../../scenarios/scientific.rst:105 +#: ../../scenarios/scientific.rst:106 msgid "" -"`PsychoPy `_ is a library for cognitive scientists" -" allowing the creation of cognitive psychology and neuroscience experiments." -" The library handles presentation of stimuli, scripting of experimental " -"design and data collection." +"`PsychoPy `_ is a library for cognitive " +"scientists allowing the creation of cognitive psychology and neuroscience" +" experiments. The library handles presentation of stimuli, scripting of " +"experimental design and data collection." msgstr "" -#: ../../scenarios/scientific.rst:112 +#: ../../scenarios/scientific.rst:113 msgid "Resources" msgstr "" -#: ../../scenarios/scientific.rst:114 +#: ../../scenarios/scientific.rst:115 msgid "" -"Installation of scientific Python packages can be troublesome, as many of " -"these packages are implemented as Python C extensions which need to be " +"Installation of scientific Python packages can be troublesome, as many of" +" these packages are implemented as Python C extensions which need to be " "compiled. This section lists various so-called scientific Python " -"distributions which provide precompiled and easy-to-install collections of " -"scientific Python packages." +"distributions which provide precompiled and easy-to-install collections " +"of scientific Python packages." msgstr "" -#: ../../scenarios/scientific.rst:121 +#: ../../scenarios/scientific.rst:122 msgid "Unofficial Windows Binaries for Python Extension Packages" msgstr "" -#: ../../scenarios/scientific.rst:123 +#: ../../scenarios/scientific.rst:124 msgid "" "Many people who do scientific computing are on Windows, yet many of the " -"scientific computing packages are notoriously difficult to build and install" -" on this platform. `Christoph Gohlke " -"`_ however, has compiled a list " -"of Windows binaries for many useful Python packages. The list of packages " -"has grown from a mainly scientific Python resource to a more general list. " -"If you're on Windows, you may want to check it out." +"scientific computing packages are notoriously difficult to build and " +"install on this platform. `Christoph Gohlke " +"`_ however, has compiled a " +"list of Windows binaries for many useful Python packages. The list of " +"packages has grown from a mainly scientific Python resource to a more " +"general list. If you're on Windows, you may want to check it out." msgstr "" -#: ../../scenarios/scientific.rst:131 +#: ../../scenarios/scientific.rst:133 msgid "Anaconda" msgstr "" -#: ../../scenarios/scientific.rst:133 +#: ../../scenarios/scientific.rst:135 msgid "" -"`Continuum Analytics `_ offers the `Anaconda Python " -"Distribution `_ which includes " -"all the common scientific Python packages as well as many packages related " -"to data analytics and big data. Anaconda itself is free, and Continuum sells" -" a number of proprietary add-ons. Free licenses for the add-ons are " -"available for academics and researchers." +"`Continuum Analytics `_ offers the `Anaconda Python" +" Distribution `_ which " +"includes all the common scientific Python packages as well as many " +"packages related to data analytics and big data. Anaconda itself is free," +" and Continuum sells a number of proprietary add-ons. Free licenses for " +"the add-ons are available for academics and researchers." msgstr "" -#: ../../scenarios/scientific.rst:141 +#: ../../scenarios/scientific.rst:143 msgid "Canopy" msgstr "" -#: ../../scenarios/scientific.rst:143 +#: ../../scenarios/scientific.rst:145 msgid "" -"`Canopy `_ is another scientific" -" Python distribution, produced by `Enthought `_." -" A limited 'Canopy Express' variant is available for free, but Enthought " -"charges for the full distribution. Free licenses are available for " -"academics." -msgstr "" +"`Canopy `_ is another " +"scientific Python distribution, produced by `Enthought " +"`_. A limited 'Canopy Express' variant is " +"available for free, but Enthought charges for the full distribution. Free" +" licenses are available for academics." +msgstr "" + +#~ msgid "" +#~ "`IPython `_ is an " +#~ "enhanced version of Python interpreter, " +#~ "which provides features of great " +#~ "interest to scientists. The `inline " +#~ "mode` allow graphics and plots to " +#~ "be displayed in the terminal (Qt " +#~ "based version). Moreover, the `notebook` " +#~ "mode supports literate programming and " +#~ "reproducible science generating a web-" +#~ "based Python notebook. This notebook " +#~ "allows you to store chunks of " +#~ "Python code along side the results " +#~ "and additional comments (HTML, LaTeX, " +#~ "Markdown). The notebook can then be " +#~ "shared and exported in various file " +#~ "formats." +#~ msgstr "" + +#~ msgid "" +#~ "`Numba `_ is an Numpy" +#~ " aware Python compiler (just-in-time" +#~ " (JIT) specializing compiler) which " +#~ "compiles annotated Python (and Numpy) " +#~ "code to LLVM (Low Level Virtual " +#~ "Machine) through special decorators. Briefly," +#~ " Numba uses a system that compiles" +#~ " Python code with LLVM to code " +#~ "which can be natively executed at " +#~ "runtime." +#~ msgstr "" + +#~ msgid "" +#~ "`Rpy2 `_ is a" +#~ " Python binding for the R statistical" +#~ " package allowing the execution of R" +#~ " functions from Python and passing " +#~ "data back and forth between the " +#~ "two environments. Rpy2 is the object " +#~ "oriented implementation of the `Rpy " +#~ "`_ bindings." +#~ msgstr "" + +#~ msgid "" +#~ "Many people who do scientific computing" +#~ " are on Windows, yet many of " +#~ "the scientific computing packages are " +#~ "notoriously difficult to build and " +#~ "install on this platform. `Christoph " +#~ "Gohlke `_ " +#~ "however, has compiled a list of " +#~ "Windows binaries for many useful Python" +#~ " packages. The list of packages has" +#~ " grown from a mainly scientific " +#~ "Python resource to a more general " +#~ "list. If you're on Windows, you " +#~ "may want to check it out." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..decaf70b569e67137682a2ad9ab2a87d083a1243 100644 GIT binary patch literal 6135 zcmeHK&u=6-6*jOe(EMJO9|u^OQ-d~D=}gdS)bm4|&1Be!WF{nmo#nFSu5wp-##OGd zU0rFAH~|t8AaOt(5fTTG77lwxXfJy~;>-mhF8m8f-1wed)tUVZxOAk%sj~h2-uJ%u zJ=Z^9cxjPGH59{YasVaEQ0=bt~%*e5Xl=p&4Ay#FP}zu@_uk23Zr zj88wt*dOqoPZ;|wp8xuB#(se3e_$kk9^r8E=kFNFpC5lJ`t!R_M}OYINdCO|ndr|x zM)K#|7~jSCFO1~RZ(*GL`8@z2e}411=+E02$)CTy82$O#=c7Njz7YNS_ZKnwwKpVh zq%62MymOLgSu0AJ=BDwo@ma>L@RhXOSE3mwy}Y8Ch0I0VQu$h^OKWQ9t!hflsk+rF zS6;8VylQ3c9X2o4UOG$)$5qpIKK(j7Sb7*2{As81CtNf_ubpx`yqDZbNvC?O<)*Wo z{K5;#3*iM6PZ!-<+N2S+oZ>iy z4TB~`7?!&hVTSd&7S8dh^0H1^t8zJ=vqRIAz@yW`E7Q2Ia)4Kf6@2aTTspVxGy-NSy;@Twm2XICL(bcG7v5Zj39>oi{edSLFg+ob!}r33bDgok!7Kri(b(QCmoY5m=i}0V_VjnzfUUcWp&;TIG=tg&x3rYEbu0ljfjrt|EEpq75)*fjMGK!dDALj_ zqmqD)+7#Ug8-YoaR=Q3jJ78^=c`Id>&Dn*iB~}C2kTF$AO0l6x8x+REbepz8f(c(ze7p4vbV}_OpBIEI52$_ z2iTUPaD0i?0MeQjNa&kEl{l7F<Iuh}Zzraf35+ltjvpmwauyDNcX~ z>>R#R)~T|ed5y&(KNhrw%uv2!EP{4GCLxf38p2ak9-LYt-$Rn0krAq$615VvdJxGV zp9DovcygOitx+qraa8pZibY0gO<#oqC*u$_2qYvEe_GI0+SQmhD14Xu4uB85q8dmU zMYO5>5FYpl{lz*W6?(}K6lnzHy;4YaEk#4Y!yhT|OlSp_2P6WbHJnsH)bfs$J>^s; zXhXatS)n*0$G9Vwgfi55ueV0z=^H3-+XgWkgMBgpOu5&FgfWYADk^cLz9RTJ234u$3Hjr|LvFG}-v z<$XKf-R=86?e|@Li~e8lUOBxRb8WCG{`OhpATMB@(wR9E+7^;vU7}nPjxn^Shy|( z9bbYd5ILHTsgM@#hE_7hNe^iucPW&R0g%Fbx~71nPC=u!T3CT@G!hpH2^vr7A*jij z5aI@N4)53T4x`sQ91Wwvy`U*HZ2?&wWU_0y7iCa=at=(Q8$;;w!S$e;;Bu^eT9S=d zflZEZpiA4(rISswGPc~6%`WaFxHg2ahNhz$=ONc)p$bjnz2=KfX`di7oz)2S#@M5Z z4p}mzuE&cMF_7dv#7x`8LTTmKDSvYiShOjHI}e>j_nigqQbP#1Nvd`;L9n9?2)p-B zjB!w1ghbJjF>-ch&10lIIWCg#O6yP+a~=UGJ1WFkI!pH^=aQOwa_UM|BwA`U}17DSBlIJ>)t#%I8RO=Cif2b z>ksFr$1i{H;e(^eiEuu-v`{UeZS0)i|IWz?e{gVm#BU#+9vq*%dT{UF`O(G2T`XICllxF+5WZ={qr0p6c-ETrZ)(*5)slkKMgYH<5$u>CZk>-?xv>Gsorn&$S?VEbvX{WREq8dTd) PgYBmQ?(6@LPlNvfc_%)_ delta 113 zcmeya|A0y7o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#l0cL=YEuA!l>v4Mh-k(H6f zWJjJDY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$&YwUnL|U|CQI=uGco`G9E274 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po index 7a72cf258..33a613cb2 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/scrape.rst:2 msgid "HTML Scraping" @@ -22,17 +23,18 @@ msgstr "" #: ../../scenarios/scrape.rst:7 msgid "" "Web sites are written using HTML, which means that each web page is a " -"structured document. Sometimes it would be great to obtain some data from " -"them and preserve the structure while we're at it. Web sites don't always " -"provide their data in comfortable formats such as ``csv`` or ``json``." +"structured document. Sometimes it would be great to obtain some data from" +" them and preserve the structure while we're at it. Web sites don't " +"always provide their data in comfortable formats such as ``csv`` or " +"``json``." msgstr "" #: ../../scenarios/scrape.rst:12 msgid "" -"This is where web scraping comes in. Web scraping is the practice of using a" -" computer program to sift through a web page and gather the data that you " -"need in a format most useful to you while at the same time preserving the " -"structure of the data." +"This is where web scraping comes in. Web scraping is the practice of " +"using a computer program to sift through a web page and gather the data " +"that you need in a format most useful to you while at the same time " +"preserving the structure of the data." msgstr "" #: ../../scenarios/scrape.rst:18 @@ -41,74 +43,90 @@ msgstr "" #: ../../scenarios/scrape.rst:20 msgid "" -"`lxml `_ is a pretty extensive library written for parsing " -"XML and HTML documents very quickly, even handling messed up tags in the " -"process. We will also be using the `Requests `_ module instead of the already built-in urllib2 " -"module due to improvements in speed and readability. You can easily install " -"both using ``pip install lxml`` and ``pip install requests``." +"`lxml `_ is a pretty extensive library written for " +"parsing XML and HTML documents very quickly, even handling messed up tags" +" in the process. We will also be using the `Requests `_ module instead of the already built-in urllib2" +" module due to improvements in speed and readability. You can easily " +"install both using ``pip install lxml`` and ``pip install requests``." msgstr "" -#: ../../scenarios/scrape.rst:27 +#: ../../scenarios/scrape.rst:28 msgid "Let's start with the imports:" msgstr "" -#: ../../scenarios/scrape.rst:34 +#: ../../scenarios/scrape.rst:35 msgid "" -"Next we will use ``requests.get`` to retrieve the web page with our data, " -"parse it using the ``html`` module and save the results in ``tree``:" +"Next we will use ``requests.get`` to retrieve the web page with our data," +" parse it using the ``html`` module and save the results in ``tree``:" msgstr "" -#: ../../scenarios/scrape.rst:42 +#: ../../scenarios/scrape.rst:43 msgid "" -"``tree`` now contains the whole HTML file in a nice tree structure which we " -"can go over two different ways: XPath and CSSSelect. In this example, we " -"will focus on the former." +"(We need to use ``page.content`` rather than ``page.text`` because " +"``html.fromstring`` implicitly expects ``bytes`` as input.)" msgstr "" #: ../../scenarios/scrape.rst:46 msgid "" -"XPath is a way of locating information in structured documents such as HTML " -"or XML documents. A good introduction to XPath is on `W3Schools " -"`_ ." +"``tree`` now contains the whole HTML file in a nice tree structure which " +"we can go over two different ways: XPath and CSSSelect. In this example, " +"we will focus on the former." msgstr "" #: ../../scenarios/scrape.rst:50 msgid "" +"XPath is a way of locating information in structured documents such as " +"HTML or XML documents. A good introduction to XPath is on `W3Schools " +"`_ ." +msgstr "" + +#: ../../scenarios/scrape.rst:54 +msgid "" "There are also various tools for obtaining the XPath of elements such as " -"FireBug for Firefox or the Chrome Inspector. If you're using Chrome, you can" -" right click an element, choose 'Inspect element', highlight the code, right" -" click again and choose 'Copy XPath'." +"FireBug for Firefox or the Chrome Inspector. If you're using Chrome, you " +"can right click an element, choose 'Inspect element', highlight the code," +" right click again and choose 'Copy XPath'." msgstr "" -#: ../../scenarios/scrape.rst:55 +#: ../../scenarios/scrape.rst:59 msgid "" -"After a quick analysis, we see that in our page the data is contained in two" -" elements - one is a div with title 'buyer-name' and the other is a span " -"with class 'item-price':" +"After a quick analysis, we see that in our page the data is contained in " +"two elements - one is a div with title 'buyer-name' and the other is a " +"span with class 'item-price':" msgstr "" -#: ../../scenarios/scrape.rst:64 +#: ../../scenarios/scrape.rst:68 msgid "" "Knowing this we can create the correct XPath query and use the lxml " "``xpath`` function like this:" msgstr "" -#: ../../scenarios/scrape.rst:74 +#: ../../scenarios/scrape.rst:78 msgid "Let's see what we got exactly:" msgstr "" -#: ../../scenarios/scrape.rst:94 +#: ../../scenarios/scrape.rst:98 msgid "" -"Congratulations! We have successfully scraped all the data we wanted from a " -"web page using lxml and Requests. We have it stored in memory as two lists. " -"Now we can do all sorts of cool stuff with it: we can analyze it using " -"Python or we can save it to a file and share it with the world." +"Congratulations! We have successfully scraped all the data we wanted from" +" a web page using lxml and Requests. We have it stored in memory as two " +"lists. Now we can do all sorts of cool stuff with it: we can analyze it " +"using Python or we can save it to a file and share it with the world." msgstr "" -#: ../../scenarios/scrape.rst:99 +#: ../../scenarios/scrape.rst:103 msgid "" "Some more cool ideas to think about are modifying this script to iterate " "through the rest of the pages of this example dataset, or rewriting this " "application to use threads for improved speed." msgstr "" + +#~ msgid "" +#~ "XPath is a way of locating " +#~ "information in structured documents such " +#~ "as HTML or XML documents. A good" +#~ " introduction to XPath is on " +#~ "`W3Schools `_ " +#~ "." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo b/docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo new file mode 100644 index 0000000000000000000000000000000000000000..bc4abd4b9b207b96981df9d7466f99d6fd3064fa GIT binary patch literal 1989 zcmeHH%Wm8@6jj^w5iPUmrd`}cfgo_G(Ktb2D7KqPJV^$ai3j$iMZ1YP5=UZ9kqSxK zndCeA5d{*UpV05cN8^TeO_ z;}awY9tR9O-+bQlYykt$U0~q(6&M|G&*@lL$(4M?y)?T2Bv`ta-(z6crvTd zJrmYTU6S**&3$V{K}BGb+8g4uGPdR(d3bT9%()|pp`oQ9SMd;TERs#=NlmWJE2N$C zb)O@>Lx3!$=IU~e4S^N8!Th2~Xo6HzLmYR)-R^Wc{M7}w>!3yGP*u>}se8XLL$%bh zmajyg96E>&1z!YTly+W8h{PZLF2_+J-6^?-=SZ`(gJv za%nsNI>n|57ADbL=BG+T7sSy57HOzF6aVGyMtG=czV;Q?0NW_XR)Cu)J=GOyCU;5G zg(b$8gYCga!l3CUO)6h2C`+Orf)QYPe>J}g%6=BPXOn_`k4hjqqn@;EWg#d{(qtGP ziC`d`xl$JFL0dYuFd4=3!v%Y2Mdv!hxeys`r^9dAFlECbr8`-AXDh{nKz1a~WT4-~ z{Wu;SvDqOz7}1l%Y&O~Y>G0_|o^t2e!gB2t$2QOC(X;84o{nZ?+8xhElj;4@!NJk^ z_;??o{Q_omYTgalLhw3#q21~9zLLS1{dlfg%N2WsS`ok8&JEC;VRPS8V4pE~v(4U}K$|0$Veqou%~gW1)qG fHSlen(F48|infzG$=&$FO%krA4>!sGKenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../scenarios/serialization.rst:3 +msgid "Data Serialization" +msgstr "" + +#: ../../scenarios/serialization.rst:6 +msgid "What is data serialization?" +msgstr "" + +#: ../../scenarios/serialization.rst:8 +msgid "" +"Data serialization is the concept of converting structured data into a " +"format that allows it to be shared or stored in such a way that its " +"original structure to be recovered. In some cases, the secondary " +"intention of data serialization is to minimize the size of the serialized" +" data which then minimizes disk space or bandwidth requirements." +msgstr "" + +#: ../../scenarios/serialization.rst:15 +msgid "Pickle" +msgstr "" + +#: ../../scenarios/serialization.rst:17 +msgid "" +"The native data serialization module for Python is called `Pickle " +"`_." +msgstr "" + +#: ../../scenarios/serialization.rst:20 +msgid "Here's an example:" +msgstr "" + +#: ../../scenarios/serialization.rst:36 +msgid "Protobuf" +msgstr "" + +#: ../../scenarios/serialization.rst:38 +msgid "" +"If you're looking for a serialization module that has support in multiple" +" languages, Google's `Protobuf `_ library is an option." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo b/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..abf33ebeaafd12391ac06181735815aa64f721c1 100644 GIT binary patch literal 16401 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\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/speed.rst:2 msgid "Speed" @@ -17,15 +18,15 @@ msgstr "" #: ../../scenarios/speed.rst:4 msgid "" -"CPython, the most commonly used implementation of Python, is slow for CPU " -"bound tasks. `PyPy`_ is fast." +"CPython, the most commonly used implementation of Python, is slow for CPU" +" bound tasks. `PyPy`_ is fast." msgstr "" #: ../../scenarios/speed.rst:7 msgid "" -"Using a slightly modified version of `David Beazleys`_ CPU bound test code " -"(added loop for multiple tests), you can see the difference between CPython " -"and PyPy's processing." +"Using a slightly modified version of `David Beazley's`_ CPU bound test " +"code (added loop for multiple tests), you can see the difference between " +"CPython and PyPy's processing." msgstr "" #: ../../scenarios/speed.rst:37 @@ -38,19 +39,19 @@ msgstr "" #: ../../scenarios/speed.rst:43 msgid "" -"`The GIL`_ (Global Interpreter Lock) is how Python allows multiple threads " -"to operate at the same time. Python's memory management isn't entirely " -"thread-safe, so the GIL is required to prevent multiple threads from running" -" the same Python code at once." +"`The GIL`_ (Global Interpreter Lock) is how Python allows multiple " +"threads to operate at the same time. Python's memory management isn't " +"entirely thread-safe, so the GIL is required to prevent multiple threads " +"from running the same Python code at once." msgstr "" #: ../../scenarios/speed.rst:48 msgid "" -"David Beazley has a great `guide`_ on how the GIL operates. He also covers " -"the `new GIL`_ in Python 3.2. His results show that maximizing performance " -"in a Python application requires a strong understanding of the GIL, how it " -"affects your specific application, how many cores you have, and where your " -"application bottlenecks are." +"David Beazley has a great `guide`_ on how the GIL operates. He also " +"covers the `new GIL`_ in Python 3.2. His results show that maximizing " +"performance in a Python application requires a strong understanding of " +"the GIL, how it affects your specific application, how many cores you " +"have, and where your application bottlenecks are." msgstr "" #: ../../scenarios/speed.rst:55 ../../scenarios/speed.rst:65 @@ -69,10 +70,11 @@ msgstr "" #: ../../scenarios/speed.rst:71 msgid "" -"`Cython `_ implements a superset of the Python language " -"with which you are able to write C and C++ modules for Python. Cython also " -"allows you to call functions from compiled C libraries. Using Cython allows " -"you to take advantage of Python's strong typing of variables and operations." +"`Cython `_ implements a superset of the Python " +"language with which you are able to write C and C++ modules for Python. " +"Cython also allows you to call functions from compiled C libraries. Using" +" Cython allows you to take advantage of Python's strong typing of " +"variables and operations." msgstr "" #: ../../scenarios/speed.rst:76 @@ -82,24 +84,25 @@ msgstr "" #: ../../scenarios/speed.rst:103 msgid "" "This implementation of an algorithm to find prime numbers has some " -"additional keywords compared to the next one, which is implemented in pure " -"Python:" +"additional keywords compared to the next one, which is implemented in " +"pure Python:" msgstr "" #: ../../scenarios/speed.rst:128 msgid "" -"Notice that in the Cython version you declare integers and integer arrays to" -" be compiled into C types while also creating a Python list:" +"Notice that in the Cython version you declare integers and integer arrays" +" to be compiled into C types while also creating a Python list:" msgstr "" #: ../../scenarios/speed.rst:151 msgid "" "What is the difference? In the upper Cython version you can see the " -"declaration of the variable types and the integer array in a similar way as " -"in standard C. For example `cdef int n,k,i` in line 3. This additional type " -"declaration (i.e. integer) allows the Cython compiler to generate more " -"efficient C code from the second version. While standard Python code is " -"saved in :file:`*.py` files, Cython code is saved in :file:`*.pyx` files." +"declaration of the variable types and the integer array in a similar way " +"as in standard C. For example `cdef int n,k,i` in line 3. This additional" +" type declaration (i.e. integer) allows the Cython compiler to generate " +"more efficient C code from the second version. While standard Python code" +" is saved in :file:`*.py` files, Cython code is saved in :file:`*.pyx` " +"files." msgstr "" #: ../../scenarios/speed.rst:158 @@ -114,13 +117,13 @@ msgstr "" msgid "" "The `pyximport` module allows you to import :file:`*.pyx` files (e.g., " ":file:`primesCy.pyx`) with the Cython-compiled version of the `primes` " -"function. The `pyximport.install()` command allows the Python interpreter to" -" start the Cython compiler directly to generate C-code, which is " -"automatically compiled to a :file:`*.so` C-library. Cython is then able to " -"import this library for you in your Python code, easily and efficiently. " -"With the `time.time()` function you are able to compare the time between " -"these 2 different calls to find 500 prime numbers. On a standard notebook " -"(dual core AMD E-450 1.6 GHz), the measured values are:" +"function. The `pyximport.install()` command allows the Python interpreter" +" to start the Cython compiler directly to generate C-code, which is " +"automatically compiled to a :file:`*.so` C-library. Cython is then able " +"to import this library for you in your Python code, easily and " +"efficiently. With the `time.time()` function you are able to compare the " +"time between these 2 different calls to find 500 prime numbers. On a " +"standard notebook (dual core AMD E-450 1.6 GHz), the measured values are:" msgstr "" #: ../../scenarios/speed.rst:209 @@ -141,22 +144,229 @@ msgstr "" msgid "Numba" msgstr "" +#: ../../scenarios/speed.rst +msgid "Todo" +msgstr "" + #: ../../scenarios/speed.rst:227 msgid "Write about Numba and the autojit compiler for NumPy" msgstr "" -#: ../../scenarios/speed.rst:230 ../../scenarios/speed.rst:234 +#: ../../scenarios/speed.rst:230 +msgid "Concurrency" +msgstr "" + +#: ../../scenarios/speed.rst:234 +msgid "Concurrent.futures" +msgstr "" + +#: ../../scenarios/speed.rst:236 +msgid "" +"The `concurrent.futures`_ module is a module in the standard library that" +" provides a \"high-level interface for asynchronously executing " +"callables\". It abstracts away a lot of the more complicated details " +"about using multiple threads or processes for concurrency, and allows the" +" user to focus on accomplishing the task at hand." +msgstr "" + +#: ../../scenarios/speed.rst:242 +msgid "" +"The `concurrent.futures`_ module exposes two main classes, the " +"`ThreadPoolExecutor` and the `ProcessPoolExecutor`. The " +"ThreadPoolExecutor will create a pool of worker threads that a user can " +"submit jobs to. These jobs will then be executed in another thread when " +"the next worker thread becomes available." +msgstr "" + +#: ../../scenarios/speed.rst:248 +msgid "" +"The ProcessPoolExecutor works in the same way, except instead of using " +"multiple threads for its workers, it will use multiple processes. This " +"makes it possible to side-step the GIL, however because of the way things" +" are passed to worker processes, only picklable objects can be executed " +"and returned." +msgstr "" + +#: ../../scenarios/speed.rst:253 +msgid "" +"Because of the way the GIL works, a good rule of thumb is to use a " +"ThreadPoolExecutor when the task being executed involves a lot of " +"blocking (i.e. making requests over the network) and to use a " +"ProcessPoolExecutor executor when the task is computationally expensive." +msgstr "" + +#: ../../scenarios/speed.rst:258 +msgid "" +"There are two main ways of executing things in parallel using the two " +"Executors. One way is with the `map(func, iterables)` method. This works " +"almost exactly like the builtin `map()` function, except it will execute " +"everything in parallel. :" +msgstr "" + +#: ../../scenarios/speed.rst:280 +msgid "" +"For even more control, the `submit(func, *args, **kwargs)` method will " +"schedule a callable to be executed ( as `func(*args, **kwargs)`) and " +"returns a `Future`_ object that represents the execution of the callable." +msgstr "" + +#: ../../scenarios/speed.rst:284 +msgid "" +"The Future object provides various methods that can be used to check on " +"the progress of the scheduled callable. These include:" +msgstr "" + +#: ../../scenarios/speed.rst:287 +msgid "cancel()" +msgstr "" + +#: ../../scenarios/speed.rst:288 +msgid "Attempt to cancel the call." +msgstr "" + +#: ../../scenarios/speed.rst:289 +msgid "cancelled()" +msgstr "" + +#: ../../scenarios/speed.rst:290 +msgid "Return True if the call was successfully cancelled." +msgstr "" + +#: ../../scenarios/speed.rst:292 +msgid "running()" +msgstr "" + +#: ../../scenarios/speed.rst:292 +msgid "" +"Return True if the call is currently being executed and cannot be " +"cancelled." +msgstr "" + +#: ../../scenarios/speed.rst:294 +msgid "done()" +msgstr "" + +#: ../../scenarios/speed.rst:295 +msgid "Return True if the call was successfully cancelled or finished running." +msgstr "" + +#: ../../scenarios/speed.rst:297 +msgid "result()" +msgstr "" + +#: ../../scenarios/speed.rst:297 +msgid "" +"Return the value returned by the call. Note that this call will block " +"until the scheduled callable returns by default." +msgstr "" + +#: ../../scenarios/speed.rst:300 +msgid "exception()" +msgstr "" + +#: ../../scenarios/speed.rst:300 +msgid "" +"Return the exception raised by the call. If no exception was raised then " +"this returns `None`. Note that this will block just like `result()`." +msgstr "" + +#: ../../scenarios/speed.rst:305 +msgid "add_done_callback(fn)" +msgstr "" + +#: ../../scenarios/speed.rst:303 +msgid "" +"Attach a callback function that will be executed (as `fn(future)`) when " +"the scheduled callable returns." +msgstr "" + +#: ../../scenarios/speed.rst:344 +msgid "" +"The `concurrent.futures`_ module contains two helper functions for " +"working with Futures. The `as_completed(futures)` function returns an " +"iterator over the list of futures, yielding the futures as they complete." +msgstr "" + +#: ../../scenarios/speed.rst:348 +msgid "" +"The `wait(futures)` function will simply block until all futures in the " +"list of futures provided have completed." +msgstr "" + +#: ../../scenarios/speed.rst:351 +msgid "" +"For more information, on using the `concurrent.futures`_ module, consult " +"the official documentation." +msgstr "" + +#: ../../scenarios/speed.rst:355 msgid "Threading" msgstr "" -#: ../../scenarios/speed.rst:238 +#: ../../scenarios/speed.rst:357 +msgid "" +"The standard library comes with a `threading`_ module that allows a user " +"to work with multiple threads manually." +msgstr "" + +#: ../../scenarios/speed.rst:360 +msgid "" +"Running a function in another thread is as simple as passing a callable " +"and it's arguments to `Thread`'s constructor and then calling `start()`:" +msgstr "" + +#: ../../scenarios/speed.rst:375 +msgid "To wait until the thread has terminated, call `join()`:" +msgstr "" + +#: ../../scenarios/speed.rst:381 +msgid "" +"After calling `join()`, it is always a good idea to check whether the " +"thread is still alive (because the join call timed out):" +msgstr "" + +#: ../../scenarios/speed.rst:391 +msgid "" +"Because multiple threads have access to the same section of memory, " +"sometimes there might be situations where two or more threads are trying " +"to write to the same resource at the same time or where the output is " +"dependent on the sequence or timing of certain events. This is called a " +"`data race`_ or race condition. When this happens, the output will be " +"garbled or you may encounter problems which are difficult to debug. A " +"good example is this `stackoverflow post`_." +msgstr "" + +#: ../../scenarios/speed.rst:398 +msgid "" +"The way this can be avoided is by using a `Lock`_ that each thread needs " +"to acquire before writing to a shared resource. Locks can be acquired and" +" released through either the contextmanager protocol (`with` statement), " +"or by using `acquire()` and `release()` directly. Here is a (rather " +"contrived) example:" +msgstr "" + +#: ../../scenarios/speed.rst:430 +msgid "" +"Here, we have a bunch of threads checking for changes on a list of sites " +"and whenever there are any changes, they attempt to write those changes " +"to a file by calling `log(changes)`. When `log()` is called, it will wait" +" to acquire the lock with `with file_lock:`. This ensures that at any one" +" time, only one thread is writing to the file." +msgstr "" + +#: ../../scenarios/speed.rst:437 msgid "Spawning Processes" msgstr "" -#: ../../scenarios/speed.rst:242 +#: ../../scenarios/speed.rst:441 msgid "Multiprocessing" msgstr "" -#: ../../scenarios/speed.rst:0 -msgid "Todo" -msgstr "" +#~ msgid "" +#~ "Using a slightly modified version of " +#~ "`David Beazleys`_ CPU bound test code" +#~ " (added loop for multiple tests), you" +#~ " can see the difference between " +#~ "CPython and PyPy's processing." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..a7b04560bf97976b6ecc91d738bafb1f26fb9c93 100644 GIT binary patch literal 27977 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 Y`PriR*&_SDY?+@e(%+8ye>hw8KRx^|ga7~l delta 114 zcmX?ki}3-I&OITPsSH5C2*ff#tODWyfewTM(?&o^T_At*8;cNL6J0|?U1I|UBO@y# zi^)NjG19srsfoE(3O\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/web.rst:3 msgid "Web Applications" @@ -17,8 +18,8 @@ msgstr "" #: ../../scenarios/web.rst:5 msgid "" -"As a powerful scripting language adapted to both fast prototyping and bigger" -" projects, Python is widely used in Web applications development." +"As a powerful scripting language adapted to both fast prototyping and " +"bigger projects, Python is widely used in web application development." msgstr "" #: ../../scenarios/web.rst:10 @@ -33,10 +34,10 @@ msgstr "" msgid "" "The Web Server Gateway Interface (or \"WSGI\" for short) is a standard " "interface between web servers and Python web application frameworks. By " -"standardizing behavior and communication between web servers and Python web " -"frameworks, WSGI makes it possible to write portable Python web code that " -"can be deployed in any :ref:`WSGI-compliant web server `. " -"WSGI is documented in :pep:`3333`." +"standardizing behavior and communication between web servers and Python " +"web frameworks, WSGI makes it possible to write portable Python web code " +"that can be deployed in any :ref:`WSGI-compliant web server `. WSGI is documented in :pep:`3333`." msgstr "" #: ../../scenarios/web.rst:25 @@ -45,26 +46,42 @@ msgstr "" #: ../../scenarios/web.rst:27 msgid "" -"Broadly speaking, a web framework consists of a set of libraries and a main " -"handler within which you can build custom code to implement a web " +"Broadly speaking, a web framework consists of a set of libraries and a " +"main handler within which you can build custom code to implement a web " "application (i.e. an interactive web site). Most web frameworks include " "patterns and utilities to accomplish at least the following:" msgstr "" +#: ../../scenarios/web.rst:34 +msgid "URL Routing" +msgstr "" + #: ../../scenarios/web.rst:33 msgid "" -"Matches an incoming HTTP request to a particular piece of Python code to be " -"invoked" +"Matches an incoming HTTP request to a particular piece of Python code to " +"be invoked" +msgstr "" + +#: ../../scenarios/web.rst:37 +msgid "Request and Response Objects" msgstr "" #: ../../scenarios/web.rst:37 msgid "Encapsulate the information received from or sent to a user's browser" msgstr "" +#: ../../scenarios/web.rst:41 +msgid "Template Engine" +msgstr "" + #: ../../scenarios/web.rst:40 msgid "" -"Allows for separating Python code implementing an application's logic from " -"the HTML (or other) output that it produces" +"Allows for separating Python code implementing an application's logic " +"from the HTML (or other) output that it produces" +msgstr "" + +#: ../../scenarios/web.rst:46 +msgid "Development Web Server" msgstr "" #: ../../scenarios/web.rst:44 @@ -80,17 +97,18 @@ msgstr "" #: ../../scenarios/web.rst:51 msgid "" "`Django `_ is a \"batteries included\" web " -"application framework. By providing many utilities and patterns out of the " -"box, Django aims to make it possible to build complex, database-backed web " -"applications quickly, while encouraging best practices in code written using" -" it." +"application framework, and is an excellent choice for creating content-" +"oriented websites. By providing many utilities and patterns out of the " +"box, Django aims to make it possible to build complex, database-backed " +"web applications quickly, while encouraging best practices in code " +"written using it." msgstr "" #: ../../scenarios/web.rst:57 msgid "" "Django has a large and active community, and many pre-built `re-usable " -"modules `_ that can be incorporated into a new " -"project as-is, or customized to fit your needs." +"modules `_ that can be incorporated into a " +"new project as-is, or customized to fit your needs." msgstr "" #: ../../scenarios/web.rst:61 @@ -99,63 +117,70 @@ msgid "" "`_ and `in Europe `_." msgstr "" -#: ../../scenarios/web.rst:66 +#: ../../scenarios/web.rst:64 +msgid "The majority of new Python web applications today are built with Django." +msgstr "" + +#: ../../scenarios/web.rst:67 msgid "Flask" msgstr "" -#: ../../scenarios/web.rst:68 +#: ../../scenarios/web.rst:69 msgid "" -"`Flask `_ is a \"microframework\" for Python. " -"Rather than aiming to provide everything you could possibly need, Flask " -"implements the most commonly-used core components of a web application " -"framework, like URL routing, request and response objects, and templates. As" -" a user of Flask, it is therefore up to you to choose and integrate other " -"components you may need, such as database access or form generation and " -"validation. For many popular modules, `Extensions " -"`_ may already exist to suit your needs." +"`Flask `_ is a \"microframework\" for Python, " +"and is an excellent choice for building smaller applications, APIs, and " +"web services." +msgstr "" + +#: ../../scenarios/web.rst:72 +msgid "" +"Building an app with Flask is a lot like writing standard Python modules," +" except some functions have routes attached to them. It's really " +"beautiful." msgstr "" -#: ../../scenarios/web.rst:77 +#: ../../scenarios/web.rst:75 msgid "" -"**Support** for flask can best be found in its mailing list. Just shoot an " -"email to flask@librelist.com and reply to the confirmation email." +"Rather than aiming to provide everything you could possibly need, Flask " +"implements the most commonly-used core components of a web application " +"framework, like URL routing, request and response objects, and templates." msgstr "" -#: ../../scenarios/web.rst:82 -msgid "Werkzeug" +#: ../../scenarios/web.rst:79 +msgid "" +"If you use Flask, it is up to you to choose other components for your " +"application, if any. For example, database access or form generation and " +"validation are not built-in functions of Flask." msgstr "" -#: ../../scenarios/web.rst:84 +#: ../../scenarios/web.rst:83 msgid "" -"`Werkzeug `_ is not actually a real framework, " -"but rather a very powerful set of tools for building web applications. It " -"provides URL routing utilities, request and response objects and a basic " -"development server. It is mostly used where users need bigger flexibility " -"for their application that is not commonly found in other web frameworks." +"This is great, because many web applications don't need those features. " +"For those that do, there are many `Extensions " +"`_ available that may suit your " +"needs. Or, you can easily use any library you want yourself!" msgstr "" -#: ../../scenarios/web.rst:90 +#: ../../scenarios/web.rst:88 msgid "" -"Support can be found on its `mailing list " -"`_." +"Flask is default choice for any Python web application that isn't a good " +"fit for Django." msgstr "" -#: ../../scenarios/web.rst:94 +#: ../../scenarios/web.rst:93 msgid "Tornado" msgstr "" #: ../../scenarios/web.rst:95 msgid "" -"`Tornado `_ is a scalable, non-blocking web " -"server and web application framework with a relative simple usage. Tornado " -"is known for its high performance. It was initially developed for " -"`friendfeed `_ , a real time chat and blog system." +"`Tornado `_ is an asyncronous web framework " +"for Python that has its own event loop. This allows it to natively " +"support WebSockets, for example. Well-written Tornado applications are " +"known to have excellent performance characteristics." msgstr "" -#: ../../scenarios/web.rst:99 -msgid "" -"In the Jinja2 template engine example it is used to serve the rendered " -"pages." +#: ../../scenarios/web.rst:100 +msgid "I do not recommend using Tornado unless you think you need it." msgstr "" #: ../../scenarios/web.rst:103 @@ -164,338 +189,682 @@ msgstr "" #: ../../scenarios/web.rst:105 msgid "" -"`Pyramid `_ lies somewhere between a big " -"framework like Django and the microframeworks: It comes with a lot of " -"libraries and functionality and can thus not be considered lightweight. On " -"the other hand, it does not provide all the functionality Django does. " -"Instead Pyramid brings basic support for most regular tasks and provides a " -"great deal of extensibility. Additionally, Pyramid has a huge focus on " -"complete `documentation " -"`__. As a little " -"extra it comes with the Werkzeug Debugger which allows you to debug a " -"running web application in the browser." +"`Pyramid `_ is a very flexible framework with a " +"heavy focus on modularity. It comes with a small number of libraries " +"(\"batteries\") built-in, and encourages users to extend its base " +"functionality." msgstr "" -#: ../../scenarios/web.rst:115 +#: ../../scenarios/web.rst:109 msgid "" -"**Support** can also be found in the `documentation " -"`__." +"Pyramid does not have a large user base, unlike Django and Flask. It's a " +"capable framework, but not a very popular choice for new Python web " +"applications today." msgstr "" -#: ../../scenarios/web.rst:120 +#: ../../scenarios/web.rst:114 msgid "Web Servers" msgstr "" -#: ../../scenarios/web.rst:125 +#: ../../scenarios/web.rst:119 msgid "Nginx" msgstr "" -#: ../../scenarios/web.rst:127 +#: ../../scenarios/web.rst:121 msgid "" -"`Nginx `_ (pronounced \"engine-x\") is a web server and " -"reverse-proxy for HTTP, SMTP and other protocols. It is known for its high " -"performance, relative simplicity, and compatibility with many application " -"servers (like WSGI servers). It also includes handy features like load-" -"balancing, basic authentication, streaming, and others. Designed to serve " -"high-load websites, Nginx is gradually becoming quite popular." +"`Nginx `_ (pronounced \"engine-x\") is a web server " +"and reverse-proxy for HTTP, SMTP and other protocols. It is known for its" +" high performance, relative simplicity, and compatibility with many " +"application servers (like WSGI servers). It also includes handy features " +"like load-balancing, basic authentication, streaming, and others. " +"Designed to serve high-load websites, Nginx is gradually becoming quite " +"popular." msgstr "" -#: ../../scenarios/web.rst:138 +#: ../../scenarios/web.rst:132 msgid "WSGI Servers" msgstr "" -#: ../../scenarios/web.rst:140 +#: ../../scenarios/web.rst:134 msgid "" -"Stand-alone WSGI servers typically use less resources than traditional web " -"servers and provide top performance [3]_." +"Stand-alone WSGI servers typically use less resources than traditional " +"web servers and provide top performance [3]_." msgstr "" -#: ../../scenarios/web.rst:146 +#: ../../scenarios/web.rst:140 msgid "Gunicorn" msgstr "" -#: ../../scenarios/web.rst:148 +#: ../../scenarios/web.rst:142 msgid "" -"`Gunicorn `_ (Green Unicorn) is a WSGI server used to " -"serve Python applications. It is a Python interpretation of the Ruby " -"`Unicorn `_ server. Unicorn is designed to be " -"lightweight, easy to use, and uses many UNIX idioms. Gunicorn is not " -"designed to face the internet -- it was designed to run behind Nginx which " -"buffers slow requests and takes care of other important considerations. A " -"sample setup for Nginx + Gunicorn can be found in the `Gunicorn help " -"`_." +"`Gunicorn `_ (Green Unicorn) is a pure-python WSGI " +"server used to serve Python applications. Unlike other Python web " +"servers, it has a thoughtful user-interface, and is extremely easy to use" +" and configure." msgstr "" -#: ../../scenarios/web.rst:160 -msgid "uWSGI" -msgstr "" - -#: ../../scenarios/web.rst:162 +#: ../../scenarios/web.rst:147 msgid "" -"`uWSGI `_ is a full stack for building " -"hosting services. In addition to process management, process monitoring, " -"and other functionality, uWSGI acts as an application server for various " -"programming languages and protocols - including Python and WSGI. uWSGI can " -"either be run as a stand-alone web router, or be run behind a full web " -"server (such as Nginx or Apache). In the latter case, a web server can " -"configure uWSGI and an application's operation over the `uwsgi `_ protocol. uWSGI's " -"web server support allows for dynamically configuring Python, passing " -"environment variables and further tuning. For full details, see `uWSGI " -"magic variables `_." +"Gunicorn has sane and reasonable defaults for configurations. However, " +"some other servers, like uWSGI, are tremendously more customizable, and " +"therefore, are much more difficult to effectively use." msgstr "" -#: ../../scenarios/web.rst:180 -msgid "Server Best Practices" +#: ../../scenarios/web.rst:151 +msgid "Gunicorn is the recommended choice for new Python web applications today." msgstr "" -#: ../../scenarios/web.rst:182 -msgid "" -"The majority of self hosted Python applications today are hosted with a WSGI" -" server such as :ref:`Gunicorn `, either directly or behind a " -"lightweight web server such as :ref:`nginx `." +#: ../../scenarios/web.rst:155 +msgid "Waitress" msgstr "" -#: ../../scenarios/web.rst:186 +#: ../../scenarios/web.rst:157 msgid "" -"The WSGI servers serve the Python applications while the web server handles " -"tasks better suited for it such as static file serving, request routing, " -"DDoS protection, and basic authentication." +"`Waitress `_ is a pure-python WSGI " +"server that claims \"very acceptable performance\". Its documentation is " +"not very detailed, but it does offer some nice functionality that " +"Gunicorn doesn't have (e.g. HTTP request buffering)." msgstr "" -#: ../../scenarios/web.rst:191 -msgid "Hosting" +#: ../../scenarios/web.rst:162 +msgid "" +"Waitress is gaining popularity within the Python web development " +"community." msgstr "" -#: ../../scenarios/web.rst:194 -msgid "Platform-as-a-Service" +#: ../../scenarios/web.rst:167 +msgid "uWSGI" msgstr "" -#: ../../scenarios/web.rst:196 +#: ../../scenarios/web.rst:169 msgid "" -"Platform-as-a-Service (PaaS) is a type of cloud computing infrastructure " -"which abstracts and manages infrastructure, routing, and scaling of web " -"applications. When using PaaS, application developers can focus on writing " -"application code rather than needing to be concerned with deployment " -"details." +"`uWSGI `_ is a full stack for building" +" hosting services. In addition to process management, process " +"monitoring, and other functionality, uWSGI acts as an application server " +"for various programming languages and protocols - including Python and " +"WSGI. uWSGI can either be run as a stand-alone web router, or be run " +"behind a full web server (such as Nginx or Apache). In the latter case, " +"a web server can configure uWSGI and an application's operation over the " +"`uwsgi protocol `_. uWSGI's web server " +"support allows for dynamically configuring Python, passing environment " +"variables and further tuning. For full details, see `uWSGI magic " +"variables `_." msgstr "" -#: ../../scenarios/web.rst:202 -msgid "" -"Most PaaS services offer a command-line interface that developers can use to" -" set up and interrogate configuration, and to deploy new releases of an " -"application to the service." +#: ../../scenarios/web.rst:182 +msgid "I do not recommend using uWSGI unless you know why you need it." msgstr "" -#: ../../scenarios/web.rst:206 -msgid "" -"PaaS services and their partners offer add-on functionality which is well " -"integrated into the platform, such as database hosting, email services, " -"logging, scheduled and background tasks, billing and payment, etc." +#: ../../scenarios/web.rst:188 +msgid "Server Best Practices" msgstr "" -#: ../../scenarios/web.rst:212 -msgid "Heroku" +#: ../../scenarios/web.rst:190 +msgid "" +"The majority of self-hosted Python applications today are hosted with a " +"WSGI server such as :ref:`Gunicorn `, either directly or " +"behind a lightweight web server such as :ref:`nginx `." msgstr "" -#: ../../scenarios/web.rst:214 +#: ../../scenarios/web.rst:194 msgid "" -"`Heroku `_'s `Cedar stack " -"`_ offers first class support " -"for Python 2.7 applications." +"The WSGI servers serve the Python applications while the web server " +"handles tasks better suited for it such as static file serving, request " +"routing, DDoS protection, and basic authentication." msgstr "" -#: ../../scenarios/web.rst:218 -msgid "" -"Heroku allows you to run as many Python web applications as you like, 24/7 " -"and free of charge. Heroku is best described as a horizontal scaling " -"platform. They start to charge you once you \"scale\" your application to " -"run on more than one Dyno (abstracted servers) at a time." +#: ../../scenarios/web.rst:199 +msgid "Hosting" msgstr "" -#: ../../scenarios/web.rst:223 +#: ../../scenarios/web.rst:201 msgid "" -"Heroku maintains `articles " -"`_ on using Python with " -"Heroku as well as `step-by-step instructions " -"`_ on how" -" to set up your first application." +"Platform-as-a-Service (PaaS) is a type of cloud computing infrastructure " +"which abstracts and manages infrastructure, routing, and scaling of web " +"applications. When using a PaaS, application developers can focus on " +"writing application code rather than needing to be concerned with " +"deployment details." msgstr "" -#: ../../scenarios/web.rst:230 -msgid "DotCloud" +#: ../../scenarios/web.rst:208 +msgid "Heroku" msgstr "" -#: ../../scenarios/web.rst:232 +#: ../../scenarios/web.rst:210 msgid "" -"`DotCloud `_ supports WSGI applications and " -"background/worker tasks natively on their platform. Web applications run " -"Python version 2.6, use :ref:`nginx ` and :ref:`uWSGI `, and allow custom configuration of both for advanced users." +"`Heroku `_ offers first-class support for " +"Python 2.7–3.5 applications." msgstr "" -#: ../../scenarios/web.rst:237 +#: ../../scenarios/web.rst:213 msgid "" -"DotCloud uses a custom command-line API client which can work with " -"applications managed in git repositories or any other version control " -"system." +"Heroku supports all types of Python web applications, servers, and " +"frameworks. Applications can be developed on Heroku for free. Once your " +"application is ready for production, you can upgrade to a Hobby or " +"Professional application." msgstr "" -#: ../../scenarios/web.rst:241 +#: ../../scenarios/web.rst:217 msgid "" -"DotCloud has a free plan with limited database size, and without extra " -"services (caching…)." +"Heroku maintains `detailed articles " +"`_ on using Python with " +"Heroku, as well as `step-by-step instructions " +"`_ on " +"how to set up your first application." msgstr "" -#: ../../scenarios/web.rst:244 +#: ../../scenarios/web.rst:222 msgid "" -"See the `DotCloud documentation on Python " -"`_ for more information and help " -"getting started." +"Heroku is the recommended PaaS for deploying Python web applications " +"today." msgstr "" -#: ../../scenarios/web.rst:250 +#: ../../scenarios/web.rst:225 msgid "Gondor" msgstr "" -#: ../../scenarios/web.rst:252 +#: ../../scenarios/web.rst:227 msgid "" -"`Gondor `_ is a PaaS specialized for deploying Django " -"and Pinax applications. Gondor recommends Django version 1.6 and supports " -"any WSGI application on Python version 2.7. Gondor can automatically " -"configure your Django site if you use :file:`local_settings.py` for site-" -"specific configuration information." +"`Gondor `_ is a PaaS specialized for deploying Django" +" and Pinax applications. Gondor recommends Django version 1.6 and " +"supports any WSGI application on Python version 2.7. Gondor can " +"automatically configure your Django site if you use " +":file:`local_settings.py` for site-specific configuration information." msgstr "" -#: ../../scenarios/web.rst:257 +#: ../../scenarios/web.rst:233 msgid "" "Gondor has a guide on deploying `Django projects " "`_." msgstr "" -#: ../../scenarios/web.rst:261 +#: ../../scenarios/web.rst:235 +msgid "" +"Gondor is run by a small company and focuses on helping businesses find " +"success with Python and Django." +msgstr "" + +#: ../../scenarios/web.rst:239 msgid "Templating" msgstr "" -#: ../../scenarios/web.rst:263 +#: ../../scenarios/web.rst:241 msgid "" -"Most WSGI applications are responding to HTTP requests to serve content in " -"HTML or other markup languages. Instead of generating directly textual " -"content from Python, the concept of separation of concerns advises us to use" -" templates. A template engine manages a suite of template files, with a " -"system of hierarchy and inclusion to avoid unnecessary repetition, and is in" -" charge of rendering (generating) the actual content, filling the static " -"content of the templates with the dynamic content generated by the " -"application." +"Most WSGI applications are responding to HTTP requests to serve content " +"in HTML or other markup languages. Instead of generating directly textual" +" content from Python, the concept of separation of concerns advises us to" +" use templates. A template engine manages a suite of template files, with" +" a system of hierarchy and inclusion to avoid unnecessary repetition, and" +" is in charge of rendering (generating) the actual content, filling the " +"static content of the templates with the dynamic content generated by the" +" application." msgstr "" -#: ../../scenarios/web.rst:273 +#: ../../scenarios/web.rst:249 msgid "" "As template files are sometimes written by designers or front-end " "developers, it can be difficult to handle increasing complexity." msgstr "" -#: ../../scenarios/web.rst:277 +#: ../../scenarios/web.rst:253 msgid "" "Some general good practices apply to the part of the application passing " "dynamic content to the template engine, and to the templates themselves." msgstr "" -#: ../../scenarios/web.rst:281 +#: ../../scenarios/web.rst:256 msgid "" -"Template files should be passed only the dynamic content that is needed for " -"rendering the template. Avoid the temptation to pass additional content " -"\"just in case\": it is easier to add some missing variable when needed than" -" to remove a likely unused variable later." +"Template files should be passed only the dynamic content that is needed " +"for rendering the template. Avoid the temptation to pass additional " +"content \"just in case\": it is easier to add some missing variable when " +"needed than to remove a likely unused variable later." msgstr "" -#: ../../scenarios/web.rst:287 +#: ../../scenarios/web.rst:262 msgid "" "Many template engines allow for complex statements or assignments in the " "template itself, and many allow some Python code to be evaluated in the " -"templates. This convenience can lead to uncontrolled increase in complexity," -" and often make it harder to find bugs." +"templates. This convenience can lead to uncontrolled increase in " +"complexity, and often make it harder to find bugs." msgstr "" -#: ../../scenarios/web.rst:293 +#: ../../scenarios/web.rst:268 msgid "" "It is often necessary to mix JavaScript templates with HTML templates. A " -"sane approach to this design is to isolate the parts where the HTML template" -" passes some variable content to the JavaScript code." +"sane approach to this design is to isolate the parts where the HTML " +"template passes some variable content to the JavaScript code." msgstr "" -#: ../../scenarios/web.rst:301 +#: ../../scenarios/web.rst:276 msgid "Jinja2" msgstr "" -#: ../../scenarios/web.rst:302 +#: ../../scenarios/web.rst:277 +msgid "" +"`Jinja2 `_ is a very well-regarded template " +"engine." +msgstr "" + +#: ../../scenarios/web.rst:279 msgid "" -"`Jinja2 `_ is a template engine which is similar to" -" the Django template system with some extra features. It is a text-based " -"template language and thus can be used to generate any markup. It allows " -"customization of filters, tags, tests and globals, and unlike the template " -"system implemented in the Django Framework, also allows calling functions. " -"Jinja2 is released under the BSD license." +"It uses a text-based template language and can thus be used to generate " +"any type markup, not just HTML. It allows customization of filters, tags," +" tests and globals. It features many improvements over Django's " +"templating system." msgstr "" -#: ../../scenarios/web.rst:309 +#: ../../scenarios/web.rst:283 msgid "Here some important html tags in Jinja2:" msgstr "" -#: ../../scenarios/web.rst:330 +#: ../../scenarios/web.rst:303 msgid "" "The next listings is an example of a web site in combination with the " -"tornado web server. Tornado is not very complicate to use." +"Tornado web server. Tornado is not very complicated to use." +msgstr "" + +#: ../../scenarios/web.rst:344 +msgid "" +"The :file:`base.html` file can be used as base for all site pages which " +"are for example implemented in the content block." +msgstr "" + +#: ../../scenarios/web.rst:369 +msgid "" +"The next listing is our site page (:file:`site.html`) loaded in the " +"Python app which extends :file:`base.html`. The content block is " +"automatically set into the corresponding block in the :file:`base.html` " +"page." msgstr "" -#: ../../scenarios/web.rst:371 +#: ../../scenarios/web.rst:391 msgid "" -"The :file:`base.html` file can be used as base for all site pages which are " -"for example implemented in the content block." +"Jinja2 is the recommended templating library for new Python web " +"applications." +msgstr "" + +#: ../../scenarios/web.rst:394 +msgid "Chameleon" msgstr "" #: ../../scenarios/web.rst:396 msgid "" -"The next listing is our site page (:file:`site.html`) loaded in the Python " -"app which extends :file:`base.html`. The content block is automatically set " -"into the corresponding block in the :file:`base.html` page." +"`Chameleon `_ Page Templates are an " +"HTML/XML template engine implementation of the `Template Attribute " +"Language (TAL) " +"`_, `TAL " +"Expression Syntax (TALES) " +"`_, and `Macro Expansion TAL (Metal) " +"`_ syntaxes." msgstr "" -#: ../../scenarios/web.rst:419 -msgid "References" +#: ../../scenarios/web.rst:401 +msgid "" +"Chameleon is available for Python 2.5 and up (including 3.x and pypy), " +"and is commonly used by the `Pyramid Framework `_." msgstr "" -#: ../../scenarios/web.rst:420 +#: ../../scenarios/web.rst:404 msgid "" -"`The mod_python project is now officially dead " -"`_" +"Page Templates add within your document structure special element " +"attributes and text markup. Using a set of simple language constructs, " +"you control the document flow, element repetition, text replacement and " +"translation. Because of the attribute-based syntax, unrendered page " +"templates are valid HTML and can be viewed in a browser and even edited " +"in WYSIWYG editors. This can make round-trip collaboration with designers" +" and prototyping with static files in a browser easier." +msgstr "" + +#: ../../scenarios/web.rst:412 +msgid "The basic TAL language is simple enough to grasp from an example:" msgstr "" -#: ../../scenarios/web.rst:421 +#: ../../scenarios/web.rst:430 msgid "" -"`mod_wsgi vs mod_python " -"`_" +"The `` pattern for text insertion is " +"common enough that if you do not require strict validity in your " +"unrendered templates, you can replace it with a more terse and readable " +"syntax that uses the pattern `${expression}`, as follows:" msgstr "" -#: ../../scenarios/web.rst:422 +#: ../../scenarios/web.rst:451 msgid "" -"`Benchmark of Python WSGI Servers `_" +"But keep in mind that the full `Default " +"Text` syntax also allows for default content in the unrendered " +"template." msgstr "" -#: ../../scenarios/web.rst:34 -msgid "URL Routing" +#: ../../scenarios/web.rst:454 +msgid "Being from the Pyramid world, Chameleon is not widely used." msgstr "" -#: ../../scenarios/web.rst:37 -msgid "Request and Response Objects" +#: ../../scenarios/web.rst:457 +msgid "Mako" msgstr "" -#: ../../scenarios/web.rst:41 -msgid "Template Engine" +#: ../../scenarios/web.rst:459 +msgid "" +"`Mako `_ is a template language that " +"compiles to Python for maximum performance. Its syntax and api is " +"borrowed from the best parts of other templating languages like Django " +"and Jinja2 templates. It is the default template language included with " +"the `Pylons and Pyramid `_ web frameworks." msgstr "" -#: ../../scenarios/web.rst:46 -msgid "Development Web Server" +#: ../../scenarios/web.rst:465 +msgid "An example template in Mako looks like:" +msgstr "" + +#: ../../scenarios/web.rst:487 +msgid "To render a very basic template, you can do the following:" +msgstr "" + +#: ../../scenarios/web.rst:494 +msgid "Mako is well respected within the Python web community." +msgstr "" + +#: ../../scenarios/web.rst:497 +msgid "References" +msgstr "" + +#: ../../scenarios/web.rst:498 +msgid "" +"`The mod_python project is now officially dead " +"`_" msgstr "" + +#: ../../scenarios/web.rst:499 +msgid "" +"`mod_wsgi vs mod_python " +"`_" +msgstr "" + +#: ../../scenarios/web.rst:500 +msgid "" +"`Benchmark of Python WSGI Servers `_" +msgstr "" + +#~ msgid "" +#~ "As a powerful scripting language adapted" +#~ " to both fast prototyping and bigger" +#~ " projects, Python is widely used in" +#~ " Web applications development." +#~ msgstr "" + +#~ msgid "" +#~ "`Django `_ is a " +#~ "\"batteries included\" web application " +#~ "framework. By providing many utilities " +#~ "and patterns out of the box, " +#~ "Django aims to make it possible to" +#~ " build complex, database-backed web " +#~ "applications quickly, while encouraging best" +#~ " practices in code written using it." +#~ msgstr "" + +#~ msgid "" +#~ "`Flask `_ is a " +#~ "\"microframework\" for Python. Rather than " +#~ "aiming to provide everything you could" +#~ " possibly need, Flask implements the " +#~ "most commonly-used core components of" +#~ " a web application framework, like " +#~ "URL routing, request and response " +#~ "objects, and templates. As a user " +#~ "of Flask, it is therefore up to" +#~ " you to choose and integrate other" +#~ " components you may need, such as " +#~ "database access or form generation and" +#~ " validation. For many popular modules, " +#~ "`Extensions `_ may " +#~ "already exist to suit your needs." +#~ msgstr "" + +#~ msgid "" +#~ "**Support** for flask can best be " +#~ "found in its mailing list. Just " +#~ "shoot an email to flask@librelist.com " +#~ "and reply to the confirmation email." +#~ msgstr "" + +#~ msgid "Werkzeug" +#~ msgstr "" + +#~ msgid "" +#~ "`Werkzeug `_ is not " +#~ "actually a real framework, but rather" +#~ " a very powerful set of tools " +#~ "for building web applications. It " +#~ "provides URL routing utilities, request " +#~ "and response objects and a basic " +#~ "development server. It is mostly used" +#~ " where users need bigger flexibility " +#~ "for their application that is not " +#~ "commonly found in other web frameworks." +#~ msgstr "" + +#~ msgid "" +#~ "Support can be found on its " +#~ "`mailing list " +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "`Tornado `_ is a " +#~ "scalable, non-blocking web server and" +#~ " web application framework with a " +#~ "relative simple usage. Tornado is known" +#~ " for its high performance. It was " +#~ "initially developed for `friendfeed " +#~ "`_ , a real time " +#~ "chat and blog system." +#~ msgstr "" + +#~ msgid "" +#~ "In the Jinja2 template engine example" +#~ " it is used to serve the " +#~ "rendered pages." +#~ msgstr "" + +#~ msgid "" +#~ "`Pyramid `_ lies " +#~ "somewhere between a big framework like" +#~ " Django and the microframeworks: It " +#~ "comes with a lot of libraries and" +#~ " functionality and can thus not be" +#~ " considered lightweight. On the other " +#~ "hand, it does not provide all the" +#~ " functionality Django does. Instead Pyramid" +#~ " brings basic support for most " +#~ "regular tasks and provides a great " +#~ "deal of extensibility. Additionally, Pyramid" +#~ " has a huge focus on complete " +#~ "`documentation " +#~ "`__. " +#~ "As a little extra it comes with" +#~ " the Werkzeug Debugger which allows " +#~ "you to debug a running web " +#~ "application in the browser." +#~ msgstr "" + +#~ msgid "" +#~ "**Support** can also be found in " +#~ "the `documentation " +#~ "`__." +#~ msgstr "" + +#~ msgid "" +#~ "`Gunicorn `_ (Green Unicorn)" +#~ " is a WSGI server used to serve" +#~ " Python applications. It is a Python" +#~ " interpretation of the Ruby `Unicorn " +#~ "`_ server. Unicorn is" +#~ " designed to be lightweight, easy to" +#~ " use, and uses many UNIX idioms. " +#~ "Gunicorn is not designed to face " +#~ "the internet -- it was designed to" +#~ " run behind Nginx which buffers slow" +#~ " requests and takes care of other " +#~ "important considerations. A sample setup " +#~ "for Nginx + Gunicorn can be found" +#~ " in the `Gunicorn help " +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "`uWSGI `_ is " +#~ "a full stack for building hosting " +#~ "services. In addition to process " +#~ "management, process monitoring, and other " +#~ "functionality, uWSGI acts as an " +#~ "application server for various programming " +#~ "languages and protocols - including " +#~ "Python and WSGI. uWSGI can either " +#~ "be run as a stand-alone web " +#~ "router, or be run behind a full" +#~ " web server (such as Nginx or " +#~ "Apache). In the latter case, a " +#~ "web server can configure uWSGI and " +#~ "an application's operation over the " +#~ "`uwsgi `_ protocol. " +#~ "uWSGI's web server support allows for" +#~ " dynamically configuring Python, passing " +#~ "environment variables and further tuning. " +#~ "For full details, see `uWSGI magic " +#~ "variables `_." +#~ msgstr "" + +#~ msgid "" +#~ "The majority of self hosted Python " +#~ "applications today are hosted with a " +#~ "WSGI server such as :ref:`Gunicorn " +#~ "`, either directly or behind" +#~ " a lightweight web server such as " +#~ ":ref:`nginx `." +#~ msgstr "" + +#~ msgid "Platform-as-a-Service" +#~ msgstr "" + +#~ msgid "" +#~ "Platform-as-a-Service (PaaS) is a type" +#~ " of cloud computing infrastructure which" +#~ " abstracts and manages infrastructure, " +#~ "routing, and scaling of web " +#~ "applications. When using PaaS, application " +#~ "developers can focus on writing " +#~ "application code rather than needing to" +#~ " be concerned with deployment details." +#~ msgstr "" + +#~ msgid "" +#~ "Most PaaS services offer a command-" +#~ "line interface that developers can use" +#~ " to set up and interrogate " +#~ "configuration, and to deploy new " +#~ "releases of an application to the " +#~ "service." +#~ msgstr "" + +#~ msgid "" +#~ "PaaS services and their partners offer" +#~ " add-on functionality which is well" +#~ " integrated into the platform, such " +#~ "as database hosting, email services, " +#~ "logging, scheduled and background tasks, " +#~ "billing and payment, etc." +#~ msgstr "" + +#~ msgid "" +#~ "`Heroku `_'s `Cedar stack" +#~ " `_ offers " +#~ "first class support for Python 2.7 " +#~ "applications." +#~ msgstr "" + +#~ msgid "" +#~ "Heroku allows you to run as many" +#~ " Python web applications as you like," +#~ " 24/7 and free of charge. Heroku " +#~ "is best described as a horizontal " +#~ "scaling platform. They start to charge" +#~ " you once you \"scale\" your " +#~ "application to run on more than " +#~ "one Dyno (abstracted servers) at a " +#~ "time." +#~ msgstr "" + +#~ msgid "" +#~ "Heroku maintains `articles " +#~ "`_ on " +#~ "using Python with Heroku as well " +#~ "as `step-by-step instructions " +#~ "`_ on how to set up " +#~ "your first application." +#~ msgstr "" + +#~ msgid "DotCloud" +#~ msgstr "" + +#~ msgid "" +#~ "`DotCloud `_ supports WSGI" +#~ " applications and background/worker tasks " +#~ "natively on their platform. Web " +#~ "applications run Python version 2.6, use" +#~ " :ref:`nginx ` and :ref:`uWSGI" +#~ " `, and allow custom " +#~ "configuration of both for advanced " +#~ "users." +#~ msgstr "" + +#~ msgid "" +#~ "DotCloud uses a custom command-line " +#~ "API client which can work with " +#~ "applications managed in git repositories " +#~ "or any other version control system." +#~ msgstr "" + +#~ msgid "" +#~ "DotCloud has a free plan with " +#~ "limited database size, and without extra" +#~ " services (caching…)." +#~ msgstr "" + +#~ msgid "" +#~ "See the `DotCloud documentation on " +#~ "Python `_ for" +#~ " more information and help getting " +#~ "started." +#~ msgstr "" + +#~ msgid "" +#~ "`Jinja2 `_ is a " +#~ "template engine which is similar to " +#~ "the Django template system with some " +#~ "extra features. It is a text-based" +#~ " template language and thus can be" +#~ " used to generate any markup. It " +#~ "allows customization of filters, tags, " +#~ "tests and globals, and unlike the " +#~ "template system implemented in the " +#~ "Django Framework, also allows calling " +#~ "functions. Jinja2 is released under the" +#~ " BSD license." +#~ msgstr "" + +#~ msgid "" +#~ "The next listings is an example of" +#~ " a web site in combination with " +#~ "the tornado web server. Tornado is " +#~ "not very complicate to use." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo b/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..43fbe2dae14ba5b624d28b65bbf9fc3f1123c06e 100644 GIT binary patch literal 2253 zcmeHHL2nyH6kecEFcOCfQ4Sm);s8>*Ysalbv<*?6+6}4fI5-XhE@Zqr-W{?#vzmF^ z#77S0R1g<_0w?ZB+_`W?;)KK>p-6mVH?{-)30Z0M?asb=-+SMC^ZvSV?S}x*8(8mP zJ@FrF&r`g=h4l~CdsuJ25CpFSw}3wbyTHf5zk$2JuU`y;4}re|H-JxpZv#JgDF|K# zc7S(*4}q@%zXARP{2urTd~9D^@O}64g6~J5=lc!l`ThVt20nRZ!FS{Og6|mU`Mw2u zzF&Zz?{}c*`xEH-Zer8(y*m#^(`SP|O;sVOP^XeOS1t}77)$b8lvN>bk$Aq1KUWFs zl+J>aTC>m@oNVXJm5ZCrOmSXMqQsO<$4PFLYhD=boP0^jkszl$1BfS9*cqMWD#?k( zsl?9(X=;+Xl$!CKl9gOr?GGN#I5(QiwxOBx#e*eWWCqt(w$~Po+t* zBgeK*;7CTn$$43@Nfms|;9t{toz^4Xhnr5b^1c{3zk%Ommz@TQ9lZn03R7 zGWr(fV%}qHr6@gHiKakQiUn#)Q;_G-t?<8m|NG8C)l#G1XKb+Vmr|Anjp^lGrsFkq zl|YH2;LsZ1f#H4{ekySljEG#1 z&PN+|1r_<%|0o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU!a)C2{gXmNm?wA#RfcSd|$W E05#?bga7~l diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo b/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..2a283b07580ac39d0cb1a3ff7f387768bf5a719e 100644 GIT binary patch literal 11475 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 delta 112 zcmcZ{`G861o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#mLcnGhFuA!l>v4Mh-k(H6f yWOa!cY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$tNUCnL|U|CP^wYG5`PqUKPav diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po index bcd7f1ff0..a0559c429 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po @@ -1,244 +1,378 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ../../shipping/freezing.rst:2 +#: ../../shipping/freezing.rst:5 msgid "Freezing Your Code" msgstr "" -#: ../../shipping/freezing.rst:4 +#: ../../shipping/freezing.rst:7 msgid "" -"An alternative to shipping your code is freezing it — shipping it as an " -"executable with a bundled Python interpreter." +"\"Freezing\" your code is creating a single-file executable file to " +"distribute to end-users, that contains all of your application code as " +"well as the Python interpreter." msgstr "" -#: ../../shipping/freezing.rst:7 -msgid "Many applications you use every day do this:" +#: ../../shipping/freezing.rst:11 +msgid "" +"Applications such as 'Dropbox', 'Eve Online', 'Civilisation IV', and " +"BitTorrent clients do this." msgstr "" -#: ../../shipping/freezing.rst:9 -msgid "Dropbox" +#: ../../shipping/freezing.rst:14 +msgid "" +"The advantage of distributing this way is that your application will " +"\"just work\", even if the user doesn't already have the required version" +" of Python (or any) installed. On Windows, and even on many Linux " +"distributions and OS X, the right version of Python will not already be " +"installed." msgstr "" -#: ../../shipping/freezing.rst:10 -msgid "BitTorrent" +#: ../../shipping/freezing.rst:19 +msgid "" +"Besides, end-user software should always be in an executable format. " +"Files ending in ``.py`` are for software engineers and system " +"administrators." msgstr "" -#: ../../shipping/freezing.rst:11 -msgid "..." +#: ../../shipping/freezing.rst:22 +msgid "" +"One disadvantage of freezing is that it will increase the size of your " +"distribution by about 2–12MB. Also, you will be responsible for shipping " +"updated versions of your application when security vulnerabilities to " +"Python are patched." +msgstr "" + +#: ../../shipping/freezing.rst:28 +msgid "Alternatives to Freezing" +msgstr "" + +#: ../../shipping/freezing.rst:30 +msgid "" +":ref:`Packaging your code ` is for distributing " +"libraries or tools to other developers." +msgstr "" + +#: ../../shipping/freezing.rst:33 +msgid "" +"On Linux, an alternative to freezing is to :ref:`create a Linux distro " +"package ` (e.g. .deb files for " +"Debian or Ubuntu, or .rpm files for Red Hat and SuSE.)" +msgstr "" + +#: ../../shipping/freezing.rst +msgid "Todo" msgstr "" -#: ../../shipping/freezing.rst:13 +#: ../../shipping/freezing.rst:37 msgid "Fill in \"Freezing Your Code\" stub" msgstr "" -#: ../../shipping/freezing.rst:18 -msgid "Comparison" +#: ../../shipping/freezing.rst:41 +msgid "Comparison of Freezing Tools" msgstr "" -#: ../../shipping/freezing.rst:20 +#: ../../shipping/freezing.rst:43 msgid "Solutions and platforms/features supported:" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "Solution" msgstr "" -#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:43 +#: ../../shipping/freezing.rst:46 ../../shipping/freezing.rst:66 msgid "Windows" msgstr "" -#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:103 +#: ../../shipping/freezing.rst:46 ../../shipping/freezing.rst:170 msgid "Linux" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 ../../shipping/freezing.rst:115 msgid "OS X" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "Python 3" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "License" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "One-file mode" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "Zipfile import" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "Eggs" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "pkg_resources support" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:46 -#: ../../shipping/freezing.rst:107 +#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:69 +#: ../../shipping/freezing.rst:174 msgid "bbFreeze" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:49 +#: ../../shipping/freezing.rst:50 ../../shipping/freezing.rst:51 +#: ../../shipping/freezing.rst:52 msgid "yes" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:49 +#: ../../shipping/freezing.rst:50 ../../shipping/freezing.rst:51 +#: ../../shipping/freezing.rst:52 msgid "no" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:49 +#: ../../shipping/freezing.rst:52 msgid "MIT" msgstr "" -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:53 +#: ../../shipping/freezing.rst:49 ../../shipping/freezing.rst:76 msgid "py2exe" msgstr "" -#: ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:50 msgid "pyInstaller" msgstr "" -#: ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:50 msgid "GPL" msgstr "" -#: ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:51 msgid "cx_Freeze" msgstr "" -#: ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:51 msgid "PSF" msgstr "" -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:96 +#: ../../shipping/freezing.rst:52 ../../shipping/freezing.rst:119 msgid "py2app" msgstr "" -#: ../../shipping/freezing.rst:33 +#: ../../shipping/freezing.rst:56 msgid "" "Freezing Python code on Linux into a Windows executable was only once " "supported in PyInstaller `and later dropped. " -"`_." +"`_." msgstr "" -#: ../../shipping/freezing.rst:38 +#: ../../shipping/freezing.rst:61 msgid "" "All solutions need MS Visual C++ dll to be installed on target machine, " -"except py2app. Only Pyinstaller makes self-executable exe that bundles the " -"dll when passing :option:`--onefile` to :file:`Configure.py`." +"except py2app. Only Pyinstaller makes self-executable exe that bundles " +"the dll when passing :option:`--onefile` to :file:`Configure.py`." msgstr "" -#: ../../shipping/freezing.rst:48 +#: ../../shipping/freezing.rst:71 msgid "" -"Prerequisite is to install :ref:`Python, Setuptools and pywin32 dependency " -"on Windows `." +"Prerequisite is to install :ref:`Python, Setuptools and pywin32 " +"dependency on Windows `." msgstr "" -#: ../../shipping/freezing.rst:50 +#: ../../shipping/freezing.rst:73 msgid "Write steps for most basic .exe" msgstr "" -#: ../../shipping/freezing.rst:55 +#: ../../shipping/freezing.rst:78 msgid "Prerequisite is to install :ref:`Python on Windows `." msgstr "" -#: ../../shipping/freezing.rst:57 -msgid "" -"Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" +#: ../../shipping/freezing.rst:80 +msgid "Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" msgstr "" -#: ../../shipping/freezing.rst:59 +#: ../../shipping/freezing.rst:82 msgid "" "Write :file:`setup.py` (`List of configuration options " -"`_)::" +"`_):" msgstr "" -#: ../../shipping/freezing.rst:70 -msgid "" -"(Optionally) `include icon `_" +#: ../../shipping/freezing.rst:93 +msgid "(Optionally) `include icon `_" msgstr "" -#: ../../shipping/freezing.rst:72 +#: ../../shipping/freezing.rst:95 msgid "" "(Optionally) `one-file mode `_" msgstr "" -#: ../../shipping/freezing.rst:74 +#: ../../shipping/freezing.rst:97 msgid "Generate :file:`.exe` into :file:`dist` directory:" msgstr "" -#: ../../shipping/freezing.rst:80 +#: ../../shipping/freezing.rst:103 msgid "" -"Provide the Microsoft Visual C runtime DLL. Two options: `globally install " -"dll on target machine `_ or `distribute dll alongside with .exe " "`_." msgstr "" -#: ../../shipping/freezing.rst:83 ../../shipping/freezing.rst:99 -#: ../../shipping/freezing.rst:110 +#: ../../shipping/freezing.rst:106 ../../shipping/freezing.rst:122 +#: ../../shipping/freezing.rst:177 msgid "PyInstaller" msgstr "" -#: ../../shipping/freezing.rst:85 +#: ../../shipping/freezing.rst:108 msgid "" "Prerequisite is to have installed :ref:`Python, Setuptools and pywin32 " "dependency on Windows `." msgstr "" -#: ../../shipping/freezing.rst:87 +#: ../../shipping/freezing.rst:110 msgid "" "`Most basic tutorial `_" msgstr "" -#: ../../shipping/freezing.rst:88 +#: ../../shipping/freezing.rst:111 msgid "" "`Manual " "`_" msgstr "" -#: ../../shipping/freezing.rst:92 -msgid "OS X" +#: ../../shipping/freezing.rst:124 +msgid "" +"PyInstaller can be used to build Unix executables and windowed apps on " +"Mac OS X 10.6 (Snow Leopard) or newer." msgstr "" -#: ../../shipping/freezing.rst:0 ../../shipping/freezing.rst:0 -msgid "Todo" +#: ../../shipping/freezing.rst:126 +msgid "To install PyInstaller, use pip:" msgstr "" + +#: ../../shipping/freezing.rst:132 +msgid "To create a standard Unix executable, from say :code:`script.py`, use:" +msgstr "" + +#: ../../shipping/freezing.rst:138 +msgid "This creates," +msgstr "" + +#: ../../shipping/freezing.rst:140 +msgid "a :code:`script.spec` file, analogous to a :code:`make` file" +msgstr "" + +#: ../../shipping/freezing.rst:141 +msgid "a :code:`build` folder, that holds some log files" +msgstr "" + +#: ../../shipping/freezing.rst:142 +msgid "" +"a :code:`dist` folder, that holds the main executable :code:`script`, and" +" some dependent Python libraries," +msgstr "" + +#: ../../shipping/freezing.rst:144 +msgid "" +"all in the same folder as :code:`script.py`. PyInstaller puts all the " +"Python libraries used in :code:`script.py` into the :code:`dist` folder, " +"so when distributing the executable, distribute the whole :code:`dist` " +"folder." +msgstr "" + +#: ../../shipping/freezing.rst:146 +msgid "" +"The :code:`script.spec` file can be edited to `customise the build " +"`_, with " +"options such as" +msgstr "" + +#: ../../shipping/freezing.rst:148 +msgid "bundling data files with the executable" +msgstr "" + +#: ../../shipping/freezing.rst:149 +msgid "" +"including run-time libraries (:code:`.dll` or :code:`.so` files) that " +"PyInstaller can't infer automatically" +msgstr "" + +#: ../../shipping/freezing.rst:150 +msgid "adding Python run-time options to the executable," +msgstr "" + +#: ../../shipping/freezing.rst:152 +msgid "" +"Now :code:`script.spec` can be run with :code:`pyinstaller` (instead of " +"using :code:`script.py` again):" +msgstr "" + +#: ../../shipping/freezing.rst:158 +msgid "" +"To create a standalone windowed OS X application, use the " +":code:`--windowed` option" +msgstr "" + +#: ../../shipping/freezing.rst:164 +msgid "" +"This creates a :code:`script.app` in the :code:`dist` folder. Make sure " +"to use GUI packages in your Python code, like `PyQt " +"`_ or `PySide " +"`_, to control the graphical parts of the" +" app." +msgstr "" + +#: ../../shipping/freezing.rst:166 +msgid "" +"There are several options in :code:`script.spec` related to Mac OS X app " +"bundles `here `_. For example, to specify an icon for the app, " +"use the :code:`icon=\\path\\to\\icon.icns` option." +msgstr "" + +#~ msgid "" +#~ "An alternative to shipping your code " +#~ "is freezing it — shipping it as" +#~ " an executable with a bundled Python" +#~ " interpreter." +#~ msgstr "" + +#~ msgid "Many applications you use every day do this:" +#~ msgstr "" + +#~ msgid "Dropbox" +#~ msgstr "" + +#~ msgid "BitTorrent" +#~ msgstr "" + +#~ msgid "..." +#~ msgstr "" + +#~ msgid "Comparison" +#~ msgstr "" + +#~ msgid "" +#~ "Write :file:`setup.py` (`List of configuration" +#~ " options `_)::" +#~ msgstr "" + +#~ msgid "OS X" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo b/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..5d1303bb327317e5d49848e8b1ee5feecd143625 100644 GIT binary patch literal 14721 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 C`L#y? delta 113 zcmZoHe!!%2Pl#nI0}wC*u?!HafH**)1EIjQ5l~VW$e;W`HiXwi*U(Vc*g(O^$jZoK yvYT9tv~EahVy=~fkE5S^sH3~9f{l-lLr$h%eo?yJ\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ../../shipping/packaging.rst:2 +#: ../../shipping/packaging.rst:5 msgid "Packaging Your Code" msgstr "" -#: ../../shipping/packaging.rst:4 -msgid "Packaging your code is important." +#: ../../shipping/packaging.rst:7 +msgid "" +"Package your code to share it with other developers. For example to share" +" a library for other developers to use in their application, or for " +"development tools like 'py.test'." +msgstr "" + +#: ../../shipping/packaging.rst:11 +msgid "" +"An advantage of this method of distribution is its well established " +"ecosystem of tools such as PyPI and pip, which make it easy for other " +"developers to download and install your package either for casual " +"experiments, or as part of large, professional systems." +msgstr "" + +#: ../../shipping/packaging.rst:16 +msgid "" +"It is a well-established convention for Python code to be shared this " +"way. If your code isn't packaged on PyPI, then it will be harder for " +"other developers to find it, and to use it as part of their existing " +"process. They will regard such projects with substantial suspicion of " +"being either badly managed or abandoned." msgstr "" -#: ../../shipping/packaging.rst:6 +#: ../../shipping/packaging.rst:22 msgid "" -"You'll need to package your code first before sharing it with other " -"developers." +"The downside of distributing code like this is that it relies on the " +"recipient understanding how to install the required version of Python, " +"and being able and willing to use tools such as pip to install your " +"code's other dependencies. This is fine when distributing to other " +"developers, but makes this method unsuitable for distributing " +"applications to end-users." msgstr "" -#: ../../shipping/packaging.rst:8 +#: ../../shipping/packaging.rst:28 msgid "" "The `Python Packaging Guide `_ provides an extensive guide on creating " -"and maintaining Python packages." +"guide.readthedocs.io/>`_ provides an extensive guide on creating and " +"maintaining Python packages." msgstr "" -#: ../../shipping/packaging.rst:11 +#: ../../shipping/packaging.rst:32 +msgid "Alternatives to Packaging" +msgstr "" + +#: ../../shipping/packaging.rst:34 +msgid "" +"To distribute applications to end-users, you should :ref:`freeze your " +"application `." +msgstr "" + +#: ../../shipping/packaging.rst:37 +msgid "" +"On Linux, you may also want to consider :ref:`creating a Linux distro " +"package ` (e.g. a .deb file for " +"Debian or Ubuntu.)" +msgstr "" + +#: ../../shipping/packaging.rst:42 msgid "For Python Developers" msgstr "" -#: ../../shipping/packaging.rst:13 +#: ../../shipping/packaging.rst:44 msgid "" "If you're writing an open source Python module, `PyPI " -"`_, more properly known as *The Cheeseshop*, is the " -"place to host it." +"`_ , more properly known as *The Cheeseshop*, is " +"the place to host it." msgstr "" -#: ../../shipping/packaging.rst:19 +#: ../../shipping/packaging.rst:50 msgid "Pip vs. easy_install" msgstr "" -#: ../../shipping/packaging.rst:21 +#: ../../shipping/packaging.rst:52 msgid "" "Use `pip `_. More details `here " -"`_" +"`_" msgstr "" -#: ../../shipping/packaging.rst:25 +#: ../../shipping/packaging.rst:57 msgid "Personal PyPI" msgstr "" -#: ../../shipping/packaging.rst:27 +#: ../../shipping/packaging.rst:59 msgid "" -"If you want to install packages from a source different from PyPI, (say, if " +"If you want to install packages from a source other than PyPI, (say, if " "your packages are *proprietary*), you can do it by hosting a simple http " -"server, running from the directory which holds those packages which need to " -"be installed." +"server, running from the directory which holds those packages which need " +"to be installed." msgstr "" -#: ../../shipping/packaging.rst:31 +#: ../../shipping/packaging.rst:64 msgid "**Showing an example is always beneficial**" msgstr "" -#: ../../shipping/packaging.rst:33 +#: ../../shipping/packaging.rst:66 msgid "" -"Say if you are after installing a package called :file:`MyPackage.tar.gz`, " -"and assuming this is your directory structure:" +"For example, if you want to install a package called " +":file:`MyPackage.tar.gz`, and assuming this is your directory structure:" +msgstr "" + +#: ../../shipping/packaging.rst:72 +msgid "archive" +msgstr "" + +#: ../../shipping/packaging.rst:72 +msgid "MyPackage" msgstr "" -#: ../../shipping/packaging.rst:39 +#: ../../shipping/packaging.rst:72 msgid "MyPackage.tar.gz" msgstr "" -#: ../../shipping/packaging.rst:41 +#: ../../shipping/packaging.rst:74 msgid "Go to your command prompt and type:" msgstr "" -#: ../../shipping/packaging.rst:48 +#: ../../shipping/packaging.rst:81 msgid "" "This runs a simple http server running on port 9000 and will list all " -"packages (like **MyPackage**). Now you can install **MyPackage** using any " -"Python package installer. Using Pip, you would do it like:" +"packages (like **MyPackage**). Now you can install **MyPackage** using " +"any Python package installer. Using Pip, you would do it like:" msgstr "" -#: ../../shipping/packaging.rst:56 +#: ../../shipping/packaging.rst:89 msgid "" -"Having a folder with the same name as the package name is **crucial** here. " -"I got fooled by that, one time. But if you feel that creating a folder " -"called :file:`MyPackage` and keeping :file:`MyPackage.tar.gz` inside that, " -"is *redundant*, you can still install MyPackage using:" +"Having a folder with the same name as the package name is **crucial** " +"here. I got fooled by that, one time. But if you feel that creating a " +"folder called :file:`MyPackage` and keeping :file:`MyPackage.tar.gz` " +"inside that, is *redundant*, you can still install MyPackage using:" msgstr "" -#: ../../shipping/packaging.rst:66 +#: ../../shipping/packaging.rst:99 msgid "pypiserver" msgstr "" -#: ../../shipping/packaging.rst:68 +#: ../../shipping/packaging.rst:101 msgid "" -"`Pypiserver `_ is a minimal PyPI " -"compatible server. It can be used to serve a set of packages to easy_install" -" or pip. It includes helpful features like an administrative command " -"(:option:`-U`) which will update all its packages to their latest versions " -"found on PyPI." +"`Pypiserver `_ is a minimal PyPI" +" compatible server. It can be used to serve a set of packages to " +"easy_install or pip. It includes helpful features like an administrative" +" command (:option:`-U`) which will update all its packages to their " +"latest versions found on PyPI." msgstr "" -#: ../../shipping/packaging.rst:75 +#: ../../shipping/packaging.rst:109 msgid "S3-Hosted PyPi" msgstr "" -#: ../../shipping/packaging.rst:77 +#: ../../shipping/packaging.rst:111 msgid "" "One simple option for a personal PyPi server is to use Amazon S3. A " "prerequisite for this is that you have an Amazon AWS account with an S3 " "bucket." msgstr "" -#: ../../shipping/packaging.rst:79 +#: ../../shipping/packaging.rst:114 msgid "**Install all your requirements from PyPi or another source**" msgstr "" -#: ../../shipping/packaging.rst:80 +#: ../../shipping/packaging.rst:115 msgid "**Install pip2pi**" msgstr "" -#: ../../shipping/packaging.rst:82 +#: ../../shipping/packaging.rst:117 msgid ":code:`pip install git+https://github.com/wolever/pip2pi.git`" msgstr "" -#: ../../shipping/packaging.rst:84 +#: ../../shipping/packaging.rst:119 msgid "**Follow pip2pi README for pip2tgz and dir2pi commands**" msgstr "" -#: ../../shipping/packaging.rst:86 +#: ../../shipping/packaging.rst:121 msgid "" ":code:`pip2tgz packages/ YourPackage` (or :code:`pip2tgz packages/ -r " "requirements.txt`)" msgstr "" -#: ../../shipping/packaging.rst:87 +#: ../../shipping/packaging.rst:122 msgid ":code:`dir2pi packages/`" msgstr "" -#: ../../shipping/packaging.rst:89 +#: ../../shipping/packaging.rst:124 msgid "**Upload the new files**" msgstr "" -#: ../../shipping/packaging.rst:91 +#: ../../shipping/packaging.rst:126 msgid "" -"Use a client like Cyberduck to sync the entire :file:`packages` folder to " -"your s3 bucket" +"Use a client like Cyberduck to sync the entire :file:`packages` folder to" +" your s3 bucket" msgstr "" -#: ../../shipping/packaging.rst:92 +#: ../../shipping/packaging.rst:127 msgid "" -"Make sure you upload :code:`packages/simple/index.html` as well as all new " -"files and directories" +"Make sure you upload :code:`packages/simple/index.html` as well as all " +"new files and directories" msgstr "" -#: ../../shipping/packaging.rst:94 +#: ../../shipping/packaging.rst:129 msgid "**Fix new file permissions**" msgstr "" -#: ../../shipping/packaging.rst:96 +#: ../../shipping/packaging.rst:131 msgid "" -"By default, when you upload new files to the S3 bucket, they will have the " -"wrong permissions set." +"By default, when you upload new files to the S3 bucket, they will have " +"the wrong permissions set." msgstr "" -#: ../../shipping/packaging.rst:97 +#: ../../shipping/packaging.rst:132 msgid "" "Use the Amazon web console to set the READ permission of the files to " "EVERYONE." msgstr "" -#: ../../shipping/packaging.rst:98 +#: ../../shipping/packaging.rst:133 msgid "" -"If you get HTTP 403 when trying to install a package, make sure you've set " -"the permissions correctly." +"If you get HTTP 403 when trying to install a package, make sure you've " +"set the permissions correctly." msgstr "" -#: ../../shipping/packaging.rst:100 +#: ../../shipping/packaging.rst:135 msgid "**All done**" msgstr "" -#: ../../shipping/packaging.rst:102 +#: ../../shipping/packaging.rst:137 msgid "" "You can now install your package with :code:`pip install --index-" "url=http://your-s3-bucket/packages/simple/ YourPackage`" msgstr "" -#: ../../shipping/packaging.rst:105 +#: ../../shipping/packaging.rst:142 msgid "For Linux Distributions" msgstr "" -#: ../../shipping/packaging.rst:107 +#: ../../shipping/packaging.rst:144 +msgid "" +"Creating a Linux distro package is arguably the \"right way\" to " +"distribute code on Linux." +msgstr "" + +#: ../../shipping/packaging.rst:147 +msgid "" +"Because a distribution package doesn't include the Python interpreter, it" +" makes the download and install about 2MB smaller than :ref:`freezing " +"your application `." +msgstr "" + +#: ../../shipping/packaging.rst:151 +msgid "" +"Also, if a distribution releases a new security update for Python, then " +"your application will automatically start using that new version of " +"Python." +msgstr "" + +#: ../../shipping/packaging.rst:154 +msgid "" +"The bdist_rpm command makes `producing an RPM file " +"`_ for use by distributions like Red Hat or SuSE is trivially " +"easy." +msgstr "" + +#: ../../shipping/packaging.rst:157 +msgid "" +"However, creating and maintaining the different configurations required " +"for each distribution's format (e.g. .deb for Debian/Ubuntu, .rpm for Red" +" Hat/Fedora, etc) is a fair amount of work. If your code is an " +"application that you plan to distribute on other platforms, then you'll " +"also have to create and maintain the separate config required to freeze " +"your application for Windows and OSX. It would be much less work to " +"simply create and maintain a single config for one of the cross platform " +":ref:`freezing tools `, which will produce stand-" +"alone executables for all distributions of Linux, as well as Windows and " +"OSX." +msgstr "" + +#: ../../shipping/packaging.rst:167 +msgid "" +"Creating a distribution package is also problematic if your code is for a" +" version of Python that isn't currently supported by a distribution. " +"Having to tell *some versions* of Ubuntu end-users that they need to add " +"`the 'dead-snakes' PPA " +"`_ using `sudo " +"apt-repository` commands before they can install your .deb file makes for" +" an extremely hostile user experience. Not only that, but you'd have to " +"maintain a custom equivalent of these instructions for every " +"distribution, and worse, have your users read, understand, and act on " +"them." +msgstr "" + +#: ../../shipping/packaging.rst:176 +msgid "Having said all that, here's how to do it:" +msgstr "" + +#: ../../shipping/packaging.rst:178 msgid "`Fedora `_" msgstr "" -#: ../../shipping/packaging.rst:108 +#: ../../shipping/packaging.rst:179 msgid "" "`Debian and Ubuntu `_" msgstr "" -#: ../../shipping/packaging.rst:109 -msgid "" -"`Arch `_" +#: ../../shipping/packaging.rst:180 +msgid "`Arch `_" msgstr "" -#: ../../shipping/packaging.rst:112 +#: ../../shipping/packaging.rst:183 msgid "Useful Tools" msgstr "" -#: ../../shipping/packaging.rst:114 +#: ../../shipping/packaging.rst:185 msgid "`fpm `_" msgstr "" -#: ../../shipping/packaging.rst:115 +#: ../../shipping/packaging.rst:186 msgid "`alien `_" msgstr "" -#: ../../shipping/packaging.rst:39 -msgid "archive" -msgstr "" +#: ../../shipping/packaging.rst:187 +msgid "" +"`dh-virtualenv `_ (for APT/DEB omnibus " +"packaging)" +msgstr "" + +#~ msgid "Packaging your code is important." +#~ msgstr "" + +#~ msgid "" +#~ "You'll need to package your code " +#~ "first before sharing it with other " +#~ "developers." +#~ msgstr "" + +#~ msgid "" +#~ "The `Python Packaging Guide `_ provides an " +#~ "extensive guide on creating and " +#~ "maintaining Python packages." +#~ msgstr "" + +#~ msgid "" +#~ "If you're writing an open source " +#~ "Python module, `PyPI `_, " +#~ "more properly known as *The Cheeseshop*," +#~ " is the place to host it." +#~ msgstr "" + +#~ msgid "" +#~ "If you want to install packages " +#~ "from a source different from PyPI, " +#~ "(say, if your packages are " +#~ "*proprietary*), you can do it by " +#~ "hosting a simple http server, running" +#~ " from the directory which holds those" +#~ " packages which need to be installed." +#~ msgstr "" + +#~ msgid "" +#~ "Say if you are after installing a" +#~ " package called :file:`MyPackage.tar.gz`, and" +#~ " assuming this is your directory " +#~ "structure:" +#~ msgstr "" + +#~ msgid "" +#~ "`Pypiserver `_ is" +#~ " a minimal PyPI compatible server. It" +#~ " can be used to serve a set " +#~ "of packages to easy_install or pip. " +#~ "It includes helpful features like an " +#~ "administrative command (:option:`-U`) which " +#~ "will update all its packages to " +#~ "their latest versions found on PyPI." +#~ msgstr "" -#: ../../shipping/packaging.rst:39 -msgid "MyPackage" -msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo index 87012041e4ea17412ed02306ee959b865705c5c1..40e49a06bc35b7f3aae929c438fb0ee0c50c61b4 100644 GIT binary patch delta 3157 zcmbVNe@t7~6}}WgfD&LN1e&$e?b1z612&K!T_{PXcInm*sY%EpRhu*(_yJFOyyw}^ zVMvoqQj-!O4eZ**5bU~&(~!*3P;4?+BAPmB|4rHt^}k7*Hcgu3d!M#!e@@f(-S-~g zWr-%u!W_T*&OP@#-*?Wrc30_8^molw34%{EzR%*DlMiK|-U>nv<9i(6A7DN76e0Uy z{{s7G*t$wW24MdN+XUNRMaVRK1F&H{+dBwZf>o*s`4ILWuy^(Sb_xN10XqkK=4pU{{e3+lX}mwvK*)aBhp({}A;BAYf}-zOLd|6`gMzLn_sbu%+m_8fd2zW`qtY1`U|whHffY@m^BJ2+)YZ zYO0ITQxn#xY0z%p%f4gIx~^Dih`xw5YgDB{=XEy?t07GdA82=6ygi3}hs$#AYB-QP~% zPy=R2X=fFcU#R}pV8pN@%&ziPTH_|$x8wPSpfYq`8BxPj38{2|{h{WN|HQy|9Sj5V z*xpgg3Wj_9emwYs6G6qNnSRyqgONd9mA>r8&U?{;VN=)5aVI}>cvu_K6y1UC(W6)z zvLA_P$mU5QB}-w;@9ofx5eG>JVrpSJuIV~eB9=LZP(x5-VvBij+C$yV$UYR7Cz->b zcatO^Icwq(LJqr_!kc>`Df@QK7ya_(_^38CS{}fYL`puYTqrLCxu*#Xge)2f1E>R$ zb=H3VNKZ%|?io0zg{%k&IB8taLZ&eWDZ;cDzvZf0w%7sp69a6$mPTb&DSFsMM3uT> zwl|E2lwc6zmc{Uv+z8Y%>6mgJ7%i$QVGXX%iUDb5&7v$kNad&d$UDd_U{b@h^1rQp zp`ymo9ZIu*)!k@5+R@e7(bYveztYor=wK&4?8i@!o$R6K&AL9t7>OWw$5~YwlPk2h zukWk6<}*VhC+be=k&vQyykUmM!adXoI*;MwU9V90=kZSVa{ZCYh&9a2`u)#*T{YAY z#1C}5Hqk?0QwCKX&4X583-zzIir5POXod3GEWcT#_S~FE6~xsXv+H|zq^J1oG&{I! zyz?r4z{N*PKPmE$bESNSicCx_-o=hp`%+finxs4)=b0<^~gwid2k>SXO+JbhiQD zDzy_URAgf!m8AU66wiFZZ_SC74Z!EuVzTta(qvg(B0jZ~MSCg9=aYOUj!mnaW!OUV zz8-#aL#8a23vxFDCigVhOLs+P#ZDl>=_D2DX&0VMo+sz+1gqZN5k+Jk%i1$VaedCd znDaK%QgMyX+;p&Co)=dhlUpQJJ5B!1Zr@=ST`9i-nvZTm1&;iJJTZ|(SWiqopJ9J&I_)pRMa24wn9Y=>xOod~ z0cdBRHSGURxg277jo**i(>V$BrI)tV!Tse>5HIpfRwQK)I331s&!U^ejf@ZOlpq_C zzUgSa97hMRR9oA2(@6olOKYJ0!GhE;wSgXUFPbCrqLKU$Ks)&&AyP#-6ElxL)vwQoa|JSujd9DcE+zEsZLi9%mCMD+{b5)Z^uitn6=l$!bU4U3I%I7y3 zq>l^kc;*XGg<=4+U+!vYmV)3`DJx=jy!CAPz>&i<^PV%k<1F2J`mL?1^s*C)v^O20 z3zU}S4KStkoNO?+6L@ise+aH~-u1;-H$-NV`P-hal8D*qw!J&0Hwuf5v_0o8PPGlz IZe9Z9-_A?3k^lez delta 2808 zcmcIlO>7&-6&~5L8pEO-*|H=jG4dLtKV~Gd{z+`8hEX?F(t{HJpMoY@a!2CEigRWc?#`s z(LRaxFKEBOZyfD8eEvfxA#3emQ4hIaG`LLQ)f8|`gEQslXv zg!JKyI@+J2U?(livieFJ4+qCmqH2M zPJp7T@G?~mQ(?!u0!-_Ilx0lVNyVgKOn?%Nf@VQ0&k!UdS~vpqicNLZ0y{z>u7ocu zlbSy1M$>f5MmNRQ3>_wvuol&9jam>ljVVo~Dukw8FIBVbgsmZTO?O|Qo31M6Ybr#w zkg1r{0XUN?+-|kB&kNyf(gTfg#H*^$hb!) zwT3)0El|R?HbtY;5K}bW#!Dtm=uz!5h4yOLzq>ZNEG-s~PP31ncuqA!a(q{zRI}d>#$AbrCle?{FcdXH!I*+-n?b~91ywo~oYG7?p+u=ZWd%%2f{@s)0E-Xw zZ~kd#po4AO^}g@e@ZrP5N52C{j*J{R!5;34Jw1GpDzOn5JN?=#mrlPj3Ma?Lz8BR3 zhB>s{o+0#7%ynD6hWOuRd!V1_@)f*Y)vxtZt2I(wt{g&sFH z{yEFPa8@#mcYb5MDdB{>kKmlYMZ>n_F__dYYr)a8qhnGOUaTYR#sZb7C73AA0RM1} zvr^M5bz>b+Yt9NNkuzTb1nMlMow=I0yC#;aAj&tPQIRFcTXAPe_J`EWxmm!DkW67t zUd!_L*7^N)QLMq%ZrRREPU7?T;+3%>~FiDdL2Zm;JllWu~1m#jDI-G zOP|X6a2~KQ>~SbYf{O1 zoJI^T{j)P-qbgZxY+RR`HEF8y&8k>g41ho7ofzPbMRP`6o;Y1*j~xrL+4;O|BXII*v4ZAyfmaGRytt2*aPUCp%;b?1bZ$yS*mwKhI*iMCr6O)2 zn~$~wuW`Hv#jOY1L;~asw}rdQu`m0c*@2VDSJ>HYoejr|AkF10_@H6x>v F{{n>k{viMW diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po index 91d1ac8b8..04b107c03 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../starting/install/linux.rst:4 msgid "Installing Python on Linux" @@ -17,116 +18,134 @@ msgstr "리눅스에 파이썬 설치하기" #: ../../starting/install/linux.rst:6 msgid "" -"The latest versions of Ubuntu and Fedora **come with Python 2.7 out of the " -"box**." -msgstr "최신 버전의 우분투와 페도라는 **훌륭하게도 파이썬 2.7이 딸려온다**." +"The latest versions of CentOS, Fedora, Redhat Enterprise (RHEL) and " +"Ubuntu **come with Python 2.7 out of the box**." +msgstr "" +"최신 버전의 CentOS, 페도라, 레드햇 엔터프라이즈(RHEL), 그리고 우분투는 **파이썬 2.7이 딸려옵니다. 멋지죠. ** " + +#: ../../starting/install/linux.rst:9 +msgid "" +"To see which version of Python you have installed, open a command prompt " +"and run" +msgstr "" +"어느 버전의 파이썬이 설치되어 있는지 확인하려면, 명령창을 열고 아래의 스크립트를 실행하세요. " -#: ../../starting/install/linux.rst:8 +#: ../../starting/install/linux.rst:15 msgid "" -"The latest versions of Redhat Enterprise (RHEL) and CentOS come with Python " -"2.6. Some older versions of RHEL and CentOS come with Python 2.4 which is " -"unacceptable for modern Python development. Fortunately, there are `Extra " -"Packages for Enterprise Linux`_ which include high quality additional " +"Some older versions of RHEL and CentOS come with Python 2.4 which is " +"unacceptable for modern Python development. Fortunately, there are `Extra" +" Packages for Enterprise Linux`_ which include high quality additional " "packages based on their Fedora counterparts. This repository contains a " -"Python 2.6 package specifically designed to install side-by-side with the " -"system's Python 2.4 installation." +"Python 2.6 package specifically designed to install side-by-side with the" +" system's Python 2.4 installation." msgstr "" -"최신 버전의 레드햇 엔터프라이즈(RHEL)과 CentOS는 파이선 2.6이 딸려온다. 조금 옛날 버전의 RHEL과 CentOS는 파이썬 " -"2.4가 딸려온다. 하지만 이 버전의 파이썬은 요즘의 파이썬 개발에는 적당하지 않다. 다행히 `Extra Packages for " -"Enterprise Linux`_ 라는게 있다. 이 패키지는 페도라의 " -"패키지에 대응하는 훌륭한 추가 패키지를 포함하고 있다. 이 저장소는 파이썬 2.4가 설치된 시스템에서도 돌아갈 수 있도록 특별히 만들어진" -" 파이썬 2.6 패키지를 포함하고 있다." +"몇몇 오래된 버전의 RHEL와 CentOS에는 파이썬 2.4가 딸려오는데, 이 버전은 " +"요즘의 파이썬 개발에는 적당하지 않습니다. 다행히도 `Extra Packages for Enterprise Linux`가 있습니다. " +"여기에는 페도라에 대응하는 훌륭한 추가 패키지가 들어있는데, " +"파이썬 2.4가 설치된 시스템에서도 2.4버전과 2.6버전이 병행하여 " +"설치될 수 있도록 특별히 만들어진 파이썬 2.6 패키지를 포함하고 있습니다. " -#: ../../starting/install/linux.rst:18 +#: ../../starting/install/linux.rst:24 msgid "" -"You do not need to install or configure anything else to use Python. Having " -"said that, I would strongly recommend that you install the tools and " -"libraries described in the next section before you start building Python " -"applications for real-world use. In particular, you should always install " -"Setuptools, as it makes it much easier for you to use other third-party " -"Python libraries." +"You do not need to install or configure anything else to use Python. " +"Having said that, I would strongly recommend that you install the tools " +"and libraries described in the next section before you start building " +"Python applications for real-world use. In particular, you should always " +"install Setuptools and pip, as it makes it much easier for you to use " +"other third-party Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서" -" 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools는 반드시 설치해야 한다. 이것들은 다른 파이썬 " -"서드파티 라이브러리들을 사용하기 편하게 해준다." +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 " +"안내서에서 앞으로 설명할 도구와 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools와 pip는 반드시 설치해야 합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다." -#: ../../starting/install/linux.rst:25 +#: ../../starting/install/linux.rst:31 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ../../starting/install/linux.rst:27 +#: ../../starting/install/linux.rst:33 msgid "" -"The most crucial third-party Python software of all is Setuptools, which " -"extends the packaging and installation facilities provided by the distutils " -"in the standard library. Once you add Setuptools to your Python system you " -"can download and install any compliant Python software product with a single" -" command. It also enables you to add this network installation capability to" -" your own Python software with very little work." +"The two most crucial third-party Python packages are `setuptools " +"`_ and `pip " +"`_." msgstr "" -"Setuptools은 모든 파이썬 서드파티 소프트웨어 중 가장 중요하다. 표준 라이브러리인 distutils의 패키징과 설치 기능을 더욱" -" 편하게 해주기 때문이다. Setuptools을 파이썬 시스템에 설치하면 어느 파이썬 소프트웨어 제품이라도 명령어 한 줄로 설치할 수 " -"있다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." +"가장 중요한 파이썬 서드파티 패키지를 2개 뽑으라면 " +"`setuptools `_ 와 `pip `_ 입니다." -#: ../../starting/install/linux.rst:34 +#: ../../starting/install/linux.rst:35 msgid "" -"To obtain the latest version of Setuptools for Linux, refer to the " -"documentation available here: `unix-setuptools " -"`_" +"Once installed, you can download, install and uninstall any compliant " +"Python software product with a single command. It also enables you to add" +" this network installation capability to your own Python software with " +"very little work." msgstr "" -"리눅에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 된다. `unix-setuptools " -"`_" +"이것들을 설치하면 단 한 줄의 명령만으로도 pip와 setuptools에 호환되는 모든 파이썬 소프트웨어를 " +"다운로드, 설치, 삭제할 수 있습니다." +"또한 당신이 만든 파이썬 소프트웨어에 네트워크 설치 기능을 손쉽게 추가할 수 있도록 해줍니다. " -#: ../../starting/install/linux.rst:37 +#: ../../starting/install/linux.rst:39 msgid "" -"The new ``easy_install`` command you have available is considered by many to" -" be deprecated, so we will install its replacement: **pip**. Pip allows for " -"uninstallation of packages, and is actively maintained, unlike easy_install." +"Python 2.7.9 and later (on the python2 series), and Python 3.4 and later " +"include pip by default." msgstr "" -"이제 새로운 명령을 내릴 수 있게 되었다: **easy_install** 이다. 하지만 이 명령어를 불편하게 생각하는 사람들도 많다. " -"그러니 이를 대체할 것을 설치해보자. **pip** 는 패키지의 설치 제거도 가능케 하고, easy_install와 달리 현재 활발히 " -"유지 보수되고 있다." +"파이썬 2.7.9와 그 이후의 버전(파이썬2 중에서), 그리고 파이썬 3.4와 그 이후의 버전은 " +"pip를 기본적으로 포함하고 있습니다. " + +#: ../../starting/install/linux.rst:42 +msgid "To see if pip is installed, open a command prompt and run" +msgstr "pip가 설치되어 있는지 보고 싶다면, 명령창을 열어 아래의 파이썬 스크립트를 실행하면 됩니다." -#: ../../starting/install/linux.rst:41 -msgid "To install pip, simply open a command prompt and run" -msgstr "pip를 설치하려면 아래 파이썬 스크립트를 실행하면 된다." +#: ../../starting/install/linux.rst:48 +msgid "" +"To install pip, `follow the official pip installation guide " +"`_ - this will automatically " +"install the latest version of setuptools." +msgstr "" +"pip를 설치하려면 `pip 공식 설치 안내서 " +"`_ 를 따라해보세요." +" - 이 링크는 setuptools 최신 버전도 자동 설치해줍니다. " -#: ../../starting/install/linux.rst:49 +#: ../../starting/install/linux.rst:51 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/linux.rst:51 +#: ../../starting/install/linux.rst:53 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 툴이다. " -"이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " -"관리할 수 있도록 해준다." +"Virtual Environments은 파이썬 가상 환경을 만들어 서로 다른 파이썬 프로젝트들 간의 독립성을 유지시켜주는 " +"툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " +"패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." -#: ../../starting/install/linux.rst:56 +#: ../../starting/install/linux.rst:58 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." -msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해준다." +"For example, you can work on a project which requires Django 1.3 while " +"also maintaining a project which requires Django 1.0." +msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 작업하면서, 동시에 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있습니다." + +#: ../../starting/install/linux.rst:61 +msgid "" +"To start using this and see more information: :ref:`Virtual Environments " +"` docs." +msgstr "" +"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 :ref:`Virtual Environments " +"` 문서에서 볼 수 있습니다. " -#: ../../starting/install/linux.rst:59 +#: ../../starting/install/linux.rst:63 msgid "" -"To start using and see more information: `Virtual Environments " -"`_ docs." +"You can also use :ref:`virtualenvwrapper ` to make" +" it easier to manage your virtual environments." msgstr "" -"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 `Virtual Environments " -"`_ 에서 볼 수 있다." +":ref:`virtualenvwrapper ` 를 봐도 됩니다. Virtual Environments를 " +"보다 쉽게 관리할 수 있을 것입니다. " -#: ../../starting/install/linux.rst:64 +#: ../../starting/install/linux.rst:68 msgid "" "This page is a remixed version of `another guide " -"`_, which is" -" available under the same license." +"`_, which" +" is available under the same license." msgstr "" "이 페이지는 `다른 가이드 `_ 를 재배열 버전이다. 라이선스는 동일하다." +"windows/>`_ 를 풀어쓴 버전입니다. 동일한 라이선스 아래서 사용할 수 있습니다." diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo index b3f0d7a7b66597a3790e67e4b021be7ac0d887cb..2c90cfb8b759649c6b82118b4a84f659d487b766 100644 GIT binary patch delta 2012 zcmaKrYiv_x7=XXJjmx;~e(%N$$VH&t26(G%2n!OEC60iAAxh8I)2-q3oZ8DSI^2K* zmTiWSuVo#!qms$CIJM9+CN@D6O_b;#jfqCo=nsGN`^pbv;vY?XPfrI+Ogzb#=exZ3 z_dUNi&$SHvT$~#u_*LRE;<~3D7JXp@Av<-%_D@Y#&>frA^pfEWFzu6GJxdB z3&>M>gw!I7mJqTDS&v+UJc2Al_80NV%MlN0AqiO~^T_-iIaB&S7K`@?I4o z(|CWsTDLP+L&(>7zK#3^>Bn-HY7V-vPEVu4N#vKvTXlNLPXRve0s3lnN&Kqeb%UWJ zUYGMNg8q>^IADi9#Ro3YZCBh*5WwyhJze0CJzhbQK(WKo4#g&J%SiP&@Jf(83do{p z1Fr&t4bde+hvIY!vQ2WxB3>(!2ip6Q-H z-64q<>!GX_wCmOac7t8$R@@G+2rnEw3JXp^bowO0i!vCp79}~P0OsrVg3qG`?Co-R z=vVnQODt~DZn0wJN^4+Ox5MrA36dz|Mv}qX&R&tmXcV}~co8)r~lIb~Y zq{jlXD|7TTH9iCSwyA+e3Lek#dF}MOg7ww=MOkzUUeRXS+h>8jLc1uzcJmJN&V1^s zuAl{lo0jmgS$1WX?k;T0n>fpc{q$mCPwrdVW_i(?RlouP7CoOn7iHIG>E#?>h7Z)sugCV{Jy{G(7hnBc)Aq=Pe>fk4r*JU(=j4ae^n)f@CJHI}@u+qhfu zq`rBiv~`sx&xR+>z%GsgJzRQVAfu??k<5H%yqxi~cft$KE@{tfCIM+R#y*^9>L?!@ zcrtzIJRc78B-;9Tl1)uB8fK9skIX~bpWqP{*73PODmIu7MllTX49o5~}D7}7WflC{Hc zhEwq<&vY;2FdYo>sX;b10;yP-#lm<_&Bqp`uMXoQ@ZgZ13hl2n8dN%7*^}*maaHe2 z>0lVx4V6dLMP@SvN?_0V(4-bWyD-ipNxj#aU()!-b~dL1j|SNV6;jvd*|h|uZk%~& zgU}{p)xhGv8x{{w2n(R~bKz%y&{r#HJ>g@C)b$uU9RfDx=aCW22(-pwEZV>SKpF){ z*$1;Mib4tPR+~@MjYlzUmC@#EQx4XX?yjk(XRBvw+3Y+{4Jv7~!{R9H$8KeNjZ&vq zVHfzh5iENMz0(Z||49y5EP&HV|E_7smeOo|ULT2GMH2fy0H!E@l5+C{J<|Kc<2-x4P}b3c#O%vn0YjV delta 1311 zcmaiyZA_b06vyww>sZCoLg~s|@9~k317#mrP-HENL9L7$8Hn0I)2B*R6 zU?n(|%h*0}3bcZ2U=g?p>XGLsu#>R~_In-@V4*#qv1)K)7h@kFaK2#c;G?^7F?<(z z0lW&9fL%Jqz68DCIL;ls0}hxhWXuU(hDsOshn}%7z~>B%6(gh?lL{ULn{Yq71|x=r zd}OT#SHQc$YhV-j8>lI-Gck4;i5>=B@W)G$1pZC%Z}{dtTf)tj?TSH7@Fw^*I8?SJ z{7Cs$q0fRB3z1+PeSZ+Ft4ho$q)^;gn|L~VSy7ynmFr6w^A?qY_MTVW!=4xWMiLwO zb4s3_KjR*)OT1LDrqE`wzUA>juiG{39^3!&jxpxx^X&HwjEwg5_xFr?1_zo?yimtS zJl|C`5&lqH+avuR``~bIGmRGApMAXZF1(Vqq@)fnxtx{ddmTb)j^u+F7FCO=g(;iL?&^GrBG z^TzH(cClTdrjiwe{#eq4x!TmWDzfXf}CEPth->6Zz*;VsRxCratpg z#9lSO;kp&e#L@yk`V{YyvnrRDBQg->V%0CBemR@sa%NikQ{t0UCJ>kJg~ZuuUR#@a zKPVPH&V<$UYEVr1c_tW?vq^bwg*)s`u(+5`iD*o!A5wVFpw1r?%V#w0F(2tI{aJG% zI&JAtBD86#X<3)EJ}%;MITKH(cCLVobRw#$N3p70@`vQ5?Uu!grB;)Owf)rTqN+IlW6wb$4^`2xmG=~0LczDyQGHdtR-L=*2|V3uRac>=IlYE1zXOT1*LuvNokcCA zbx6BKhW%nrg+l@Bee{`?qv1EK2QZtsE7zwbARm8TOZz>)XcKA(0(j\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../starting/install/osx.rst:4 msgid "Installing Python on Mac OS X" @@ -17,32 +18,34 @@ msgstr "맥 OS X에 파이썬 설치하기" #: ../../starting/install/osx.rst:6 msgid "" -"The latest version of Mac OS X, Mavericks, **comes with Python 2.7 out of " -"the box**." -msgstr "맥 OS X의 최신 버전인 요세미티에는 **훌륭하게도 파이썬 2.7이 딸려온다**." +"The latest version of Mac OS X, El Capitan, **comes with Python 2.7 out " +"of the box**." +msgstr "맥 OS X의 최신 버전인 엘 캐피탄에는 **파이썬 2.7이 딸려옵니다**." #: ../../starting/install/osx.rst:8 msgid "" -"You do not need to install or configure anything else to use Python. Having " -"said that, I would strongly recommend that you install the tools and " -"libraries described in the next section before you start building Python " -"applications for real-world use. In particular, you should always install " -"Setuptools, as it makes it much easier for you to use other third-party " -"Python libraries." +"You do not need to install or configure anything else to use Python. " +"Having said that, I would strongly recommend that you install the tools " +"and libraries described in the next section before you start building " +"Python applications for real-world use. In particular, you should always " +"install Setuptools, as it makes it much easier for you to use other " +"third-party Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서" -" 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools는 반드시 설치해야 한다. 이것들은 다른 파이썬 " -"서드파티 라이브러리들을 사용하기 편하게 해준다." +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 " +"안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 합니다. 이것들은" +" 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " #: ../../starting/install/osx.rst:14 msgid "" -"The version of Python that ships with OS X is great for learning. Yet, it's " -"not good for development. The version shipped with OS X may be out of date " -"from the `official current Python release `_, which is considered the stable production version." +"The version of Python that ships with OS X is great for learning but it's" +" not good for development. The version shipped with OS X may be out of " +"date from the `official current Python release " +"`_, which is considered the " +"stable production version." msgstr "" -"OS X에 포함된 파이썬의 버젼은 배우기에는 최고다. 하지만 개발에는 좋지 않다. OS X에 딸려온 버젼은 안정화된 `공식 릴리즈 된 " -"파이썬 `_ 보다 구버전일 것이다." +"OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. " +"OS X에 딸려온 버전은 안정화된 `공식 릴리즈 " +"된 파이썬 `_ 보다 구버전일 것입니다." #: ../../starting/install/osx.rst:20 msgid "Doing it Right" @@ -54,130 +57,139 @@ msgstr "진짜 파이썬을 설치해보자!" #: ../../starting/install/osx.rst:24 msgid "" -"Before installing Python, you'll need to install GCC. GCC can be obtained by" -" downloading `XCode `_, the smaller " -"`Command Line Tools `_ (must have an" -" Apple account) or the even smaller `OSX-GCC-Installer " +"Before installing Python, you'll need to install GCC. GCC can be obtained" +" by downloading `Xcode `_, the smaller" +" `Command Line Tools `_ (must " +"have an Apple account) or the even smaller `OSX-GCC-Installer " "`_ package." msgstr "" -"파이썬을 설치하기 전에 GCC를 설치해야 한다. GCC는 `XCode `_" -" 를 설치하면서 얻을 수 있다. 더 작은 버전인 `Command Line Tools " -"`_ (애플 계정이 있어야 한다) 에서도 얻을 수 있고, 그보다도" -" 더 작은 버젼인 `OSX-GCC-Installer `_ 패키지에서도 얻을 수 있다." +"파이썬을 설치하기 전에 우선 GCC를 설치해야 합니다. GCC는 `XCode " +"`_ 를 설치하면서 얻을 수 있습니다. 더 작은 버전인 `Command " +"Line Tools `_ (애플 계정이 있어야 한다) 에서도" +" 얻을 수 있고, 그보다도 더 작은 버젼인 `OSX-GCC-Installer " +"`_ 패키지에서도 얻을 수" +" 있습니다." #: ../../starting/install/osx.rst:31 msgid "" -"If you already have XCode installed, do not install OSX-GCC-Installer. In " -"combination, the software can cause issues that are difficult to diagnose." +"If you already have Xcode installed, do not install OSX-GCC-Installer. In" +" combination, the software can cause issues that are difficult to " +"diagnose." msgstr "" -"이미 XCode를 설치했으면 OSX-GCC-Installer는 설치하면 안된다.두개를 모두 설치하면 원인을 밝히 어려운 문제를 일으킬 수" -" 있다." +"이미 XCode를 설치했으면 OSX-GCC-Installer는 설치하면 안됩니다. 두 개를 모두 설치하면 원인을 밝히 어려운 문제를 " +"일으킬 수 있습니다. " -#: ../../starting/install/osx.rst:35 +#: ../../starting/install/osx.rst:36 msgid "" -"While OS X comes with a large number of UNIX utilities, those familiar with " -"Linux systems will notice one key component missing: a decent package " -"manager. `Homebrew `_ fills this void." +"If you perform a fresh install of Xcode, you will also need to add the " +"commandline tools by running ``xcode-select --install`` on the terminal." msgstr "" -"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 한가지가 빠져있다는 사실을 알아챌 것이다. 훌륭한 " -"패키지 매니저가 없다는 것이다. 하지만 `Homebrew `_ 가 그 빈자리를 채워준다." +"Xcode를 새로 설치했다면 터미널에서 ``xcode-select --install`` 를 실행시켜 커맨드라인 툴을 추가할 필요가 있습니다. " #: ../../starting/install/osx.rst:39 msgid "" -"To `install Homebrew " -"`_, simply run" +"While OS X comes with a large number of UNIX utilities, those familiar " +"with Linux systems will notice one key component missing: a decent " +"package manager. `Homebrew `_ fills this void." msgstr "" -"`Homebrew를 설치하기 위해서는 " -"`_, 아래 코드를 그냥 실행하기만 " -"하면 된다." +"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 요소 하나가 빠져있다는 사실을 알아차릴 것입니다. " +"바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를 채워줍니다." -#: ../../starting/install/osx.rst:46 +#: ../../starting/install/osx.rst:43 msgid "" -"The script will explain what changes it will make and prompt you before the " -"installation begins. Once you've installed Homebrew, insert the Homebrew " -"directory at the top of your :envvar:`PATH` environment variable. You can do" -" this by adding the following line at the bottom of your :file:`~/.profile` " -"file" +"To `install Homebrew `_, open :file:`Terminal` " +"or your favorite OSX terminal emulator and run" msgstr "" -"이 스크립트는 설치가 시작되기 전에 설치로 인해 변경되는 것들과 명령어를 설명해준다. Homebrew가 설치됐으면 Homebrew " -"디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣자. :file:`~/.profile` 파일의 마지막 줄에 다음과 같이 " -"덧붙이면 된다." +"`Homebrew `_ 를 설치하려면 " +" :file:`터미널` 을 열거나 마음에 드는 OSX 터미널 에뮬레이터를 열고 " +"아래 코드를 그냥 실행하기만 하면 됩니다." -#: ../../starting/install/osx.rst:56 +#: ../../starting/install/osx.rst:50 +msgid "" +"The script will explain what changes it will make and prompt you before " +"the installation begins. Once you've installed Homebrew, insert the " +"Homebrew directory at the top of your :envvar:`PATH` environment " +"variable. You can do this by adding the following line at the bottom of " +"your :file:`~/.profile` file" +msgstr "" +"이 스크립트는 설치가 시작되기 전에 설치로 인해 변경되는 것들과 명령어를 알려줍니다. Homebrew가 설치됐으면 Homebrew " +"디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣으세요. :file:`~/.profile` 파일의 마지막 줄에 다음과 " +"같이 덧붙이면 됩니다." + +#: ../../starting/install/osx.rst:60 msgid "Now, we can install Python 2.7:" -msgstr "이제 우리는 파이썬 2.7을 설치할 수 있다." +msgstr "이제 우리는 파이썬 2.7을 설치할 수 있습니다." -#: ../../starting/install/osx.rst:62 +#: ../../starting/install/osx.rst:66 msgid "This will take a minute or two." -msgstr "1~2분 정도 걸릴 것이다." +msgstr "1~2분 정도 걸릴 것입니다." -#: ../../starting/install/osx.rst:66 +#: ../../starting/install/osx.rst:70 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ../../starting/install/osx.rst:68 +#: ../../starting/install/osx.rst:72 msgid "Homebrew installs Setuptools and ``pip`` for you." -msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해준다." +msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해줍니다." -#: ../../starting/install/osx.rst:70 +#: ../../starting/install/osx.rst:74 msgid "" -"Setuptools enables you to download and install any compliant Python software" -" over a network (usually the Internet) with a single command " +"Setuptools enables you to download and install any compliant Python " +"software over a network (usually the Internet) with a single command " "(``easy_install``). It also enables you to add this network installation " "capability to your own Python software with very little work." msgstr "" -"Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 편리한 파이썬 소프트웨어를 " -"다운로드받고 설치할 수 있도록 해준다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." +"Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 파이썬 " +"소프트웨어를 다운로드받고 설치할 수 있도록 해줍니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다. " -#: ../../starting/install/osx.rst:75 +#: ../../starting/install/osx.rst:79 msgid "" -"``pip`` is a tool for easily installing and managing Python packages, that " -"is recommended over ``easy_install``. It is superior to ``easy_install`` in " -"`several ways `_, and is actively maintained." +"``pip`` is a tool for easily installing and managing Python packages, " +"that is recommended over ``easy_install``. It is superior to " +"``easy_install`` in `several ways `_, and is " +"actively maintained." msgstr "" -"``pip`` 는 파이썬 패키지를 손쉽게 설치하고 관리할 수 있게 해주는 툴이다. ``easy_install`` 로 설치할 것을 " +"``pip`` 는 파이썬 패키지를 손쉽게 설치하고 관리할 수 있게 해주는 툴입니다. ``easy_install`` 로 설치할 것을 " "추천한다. ``easy_install`` 는 `많은 면 `_ 에서 탁월하고, 또한 활발히 유지 보수되고 있다." +"tools.html#easy-install>`_ 에서 탁월하고, 활발히 운영되고 있습니다." -#: ../../starting/install/osx.rst:81 +#: ../../starting/install/osx.rst:85 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/osx.rst:83 +#: ../../starting/install/osx.rst:87 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 툴이다. " -"이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " -"관리할 수 있도록 해준다." +"Virtual Environments은 파이썬 가상 환경을 만들어 여러 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 " +"툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " +"패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:88 +#: ../../starting/install/osx.rst:92 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." -msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해준다." +"For example, you can work on a project which requires Django 1.3 while " +"also maintaining a project which requires Django 1.0." +msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:91 +#: ../../starting/install/osx.rst:95 msgid "" -"To start using and see more information: `Virtual Environments " -"`_ docs." +"To start using this and see more information: :ref:`Virtual Environments " +"` docs." msgstr "" "Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 `Virtual Environments " "`_ 에서 볼 수 있다." +"guide/blob/master/docs/dev/virtualenvs.rst>`_ 문서에서 볼 수 있습니다." -#: ../../starting/install/osx.rst:96 +#: ../../starting/install/osx.rst:100 msgid "" "This page is a remixed version of `another guide " -"`_, which is" -" available under the same license." +"`_, which" +" is available under the same license." msgstr "" "이 페이지는 `다른 가이드 `_ 를 재배열 버전이다. 라이선스는 동일하다." +"windows/>`_ 를 재배열한 버전입니다. 라이선스는 동일합니다." \ No newline at end of file diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo index 5dd1a7a6e756a8aa883fd5a0b9b15e40d4afcb53..89812d24afc7727e4093831b2ed54452f245d51e 100644 GIT binary patch delta 1656 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\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../starting/install/win.rst:4 msgid "Installing Python on Windows" @@ -18,74 +19,72 @@ msgstr "Windows에 파이썬 설치하기" #: ../../starting/install/win.rst:6 msgid "" "First, download the `latest version " -"`_ of Python 2.7 from " -"the official Website. If you want to be sure you are installing a fully up-" -"to-date version then use the \"Windows Installer\" link from the home page " -"of the `Python.org web site `_ " +"`_ of Python " +"2.7 from the official Website. If you want to be sure you are installing " +"a fully up-to-date version, click the Downloads > Windows link from the " +"home page of the `Python.org web site `_ ." msgstr "" -"우선 공식 웹사이트에서 파이썬 2.7의" -"`최신 버전 `_ " -"을 다운로드 받아야 한다. 확실한 최신 버전으로 파이썬을 설치하고자 한다면, " -"`Python.org web site `_ " -"홈페이지의 \"Windows Installer\" 링크에서 다운받으면 된다." +"우선 공식 웹사이트에서 파이썬 2.7의 `최신 버전 " +"`_ 을 다운로드 받아야 합니다. " +"최신 버전으로 파이썬을 설치하고자 한다면, `Python.org 웹사이트 `_ " +"에서 Downloads > Windows 링크에서 다운받으면 됩니다." #: ../../starting/install/win.rst:11 msgid "" -"The Windows version is provided as an MSI package. To install it manually, " -"just double-click the file. The MSI package format allows Windows " -"administrators to automate installation with their standard tools." +"The Windows version is provided as an MSI package. To install it " +"manually, just double-click the file. The MSI package format allows " +"Windows administrators to automate installation with their standard " +"tools." msgstr "" -"Windows버전은 MSI 패키지 형태로 제공된다. 수동으로 설치하고자 한다면, 그냥 파일을 " -"더블 클릭하면 된다. MSI 패키지 포맷은 Windows 관리자 계정 사용자로 하여금 Windows " -"표준 도구를 자동 설치할 수 있게 해준다." +"Windows버전은 MSI 패키지 형태로 제공됩니다. 수동으로 설치하고자 한다면, 그냥 파일을 더블 클릭하면 됩니다. " +"Windows 관리자 계정 사용자라면 MSI 패키지로 Windows 표준 도구를 자동 설치할 수 있습니다. " #: ../../starting/install/win.rst:15 msgid "" -"By design, Python installs to a directory with the version number embedded, " -"e.g. Python version 2.7 will install at :file:`C:\\\\Python27\\\\`, so that " -"you can have multiple versions of Python on the same system without " -"conflicts. Of course, only one interpreter can be the default application " -"for Python file types. It also does not automatically modify the " -":envvar:`PATH` environment variable, so that you always have control over " -"which copy of Python is run." +"By design, Python installs to a directory with the version number " +"embedded, e.g. Python version 2.7 will install at " +":file:`C:\\\\Python27\\\\`, so that you can have multiple versions of " +"Python on the same system without conflicts. Of course, only one " +"interpreter can be the default application for Python file types. It also" +" does not automatically modify the :envvar:`PATH` environment variable, " +"so that you always have control over which copy of Python is run." msgstr "" -"파이썬이 설치되는 디렉토리는 버전 숫자를 포함하도록 디자인되어 있다. 예를 들어 " -"파이썬 2.7을 설치하면 :file:`C:\\\\Python27\\\\` 디렉토리에 설치되는 것이다. " -"덕분에 하나의 시스템에서 충돌 없어 여러 버전의 파이썬을 사용할 수 있다. 물론 오직 " -"하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있다. :envvar:`PATH` " -"환경 변수가 자동으로 변경되지도 않는다. 그러니 실해되는 파이썬의 버전을 늘 관리해야 한다." +"파이썬이 설치되는 디렉토리는 버전의 숫자를 포함하도록 디자인되어 있습니다. 예를 들어 파이썬 2.7을 설치하면 " +":file:`C:\\\\Python27\\\\` 디렉토리에 설치됩니다. 덕분에 하나의 시스템에서 충돌 없어 여러 버전의 " +"파이썬을 사용할 수 있습니다. 물론 오직 하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있습니다. " +"또한 파이썬을 설치할 때 :envvar:`PATH` 환경 변수가 자동으로 변경되지도 않습니다. 그러니 어느 버전의 파이썬을 실행할지 늘 관리해야 합니다. " #: ../../starting/install/win.rst:23 msgid "" -"Typing the full path name for a Python interpreter each time quickly gets " -"tedious, so add the directories for your default Python version to the " +"Typing the full path name for a Python interpreter each time quickly gets" +" tedious, so add the directories for your default Python version to the " ":envvar:`PATH`. Assuming that your Python installation is in " ":file:`C:\\\\Python27\\\\`, add this to your :envvar:`PATH`:" msgstr "" -"파이썬 인터프리터의 전체 경로명을 매번 입력하는 일은 금새 싫증난다. 그러니 컴퓨터의 " -"기본 파이썬 버전이 있는 디렉토리에 :envvar:`PATH` 를 추가하라. 파이썬이 " -":file:`C:\\\\Python27\\\\` 에 설치되었다면 아래와 같이 추가하라." +"파이썬 인터프리터의 전체 경로명을 매번 입력하는 일은 금새 싫증납니다. 그러니 컴퓨터의 기본 파이썬 버전이 있는 디렉토리에 " +":envvar:`PATH` 를 추가하세요. 파이썬이 :file:`C:\\\\Python27\\\\` 에 설치되었다면 아래와 같이 " +"추가하세요." #: ../../starting/install/win.rst:32 msgid "You can do this easily by running the following in ``powershell``:" -msgstr "``powershell`` 에서 간단하게 설할 수도 있다." +msgstr "``powershell`` 에서 간단하게 실행할 수도 있습니다." #: ../../starting/install/win.rst:38 msgid "" -"The second (:file:`Scripts`) directory receives command files when certain " -"packages are installed, so it is a very useful addition. You do not need to " -"install or configure anything else to use Python. Having said that, I would " -"strongly recommend that you install the tools and libraries described in the" -" next section before you start building Python applications for real-world " -"use. In particular, you should always install Setuptools, as it makes it " -"much easier for you to use other third-party Python libraries." +"The second (:file:`Scripts`) directory receives command files when " +"certain packages are installed, so it is a very useful addition. You do " +"not need to install or configure anything else to use Python. Having said" +" that, I would strongly recommend that you install the tools and " +"libraries described in the next section before you start building Python " +"applications for real-world use. In particular, you should always install" +" Setuptools, as it makes it much easier for you to use other third-party " +"Python libraries." msgstr "" -"두번째 스크립트는 패키지가 설치될 때마다 디렉토리에 PATH를 설정하는 명령어를 " -"실행시키기 때문에 아주 유용하다. 이제 파이썬을 사용하기 위해 달리 설치하거나 " -"설정해줘야만 하는 것은 없다. 그렇기 해도 실제로 사용할 파이썬 어플리케이션을 " -"만들기 전에 이 가이드에서 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 " -"추천한다. 특히 Setuptools는 반드시 설치해야 한다. " -"이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." +"두번째 (:file:`스크립트`) 디렉토리는 파이썬 패키지가 설치될 때마다 커맨드 파일을 수신받기 때문에 " +"아주 유용합니다. " +"이제 파이썬을 사용하기 위해 달리 설치하거나 설정해줘야만 하는 것은 없습니다. " +"그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 설치할 것을 강력 추천합니다. " +"특히 Setuptools는 반드시 설치해야 합니다. Setuptools는 다른 파이썬 서드파티 라이브러리들을 편리하게 사용할 수 있게 해줍니다. " #: ../../starting/install/win.rst:47 msgid "Setuptools + Pip" @@ -94,17 +93,17 @@ msgstr "Setuptools + Pip" #: ../../starting/install/win.rst:49 msgid "" "The most crucial third-party Python software of all is Setuptools, which " -"extends the packaging and installation facilities provided by the distutils " -"in the standard library. Once you add Setuptools to your Python system you " -"can download and install any compliant Python software product with a single" -" command. It also enables you to add this network installation capability to" -" your own Python software with very little work." +"extends the packaging and installation facilities provided by the " +"distutils in the standard library. Once you add Setuptools to your Python" +" system you can download and install any compliant Python software " +"product with a single command. It also enables you to add this network " +"installation capability to your own Python software with very little " +"work." msgstr "" -"Setuptools은 모든 파이썬 서드파티 소프트웨어 중 가장 중요하다. 표준 라이브러리인 " -"distutils의 패키징과 설치 기능을 더욱 편하게 해주기 때문이다. Setuptools을 " -"파이썬 시스템에 설치하면 어느 파이썬 소프트웨어 제품이라도 명령어 한 줄로 설치할 " -"수 있다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 " -"가능하게 한다." +"Setuptools는 가장 중요한 파이썬 서드파티 소프트웨어입니다. " +"Setuptools는 표준 라이브러리인 distutils의 패키징 기능과 설치 기능을 확장한 것입니다. " +"Setuptools를 파이썬 시스템에 설치하면 어떤 파이썬 소프트웨어 제품이라도 명령어 한 줄로 " +"설치할 수 있습니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." #: ../../starting/install/win.rst:56 msgid "" @@ -112,8 +111,8 @@ msgid "" "script available here: `ez_setup.py " "`_" msgstr "" -"Windows에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 된다." -" `ez_setup.py `_ " +"Windows에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 됩니다. `ez_setup.py " +"`_ " #: ../../starting/install/win.rst:60 msgid "" @@ -122,18 +121,17 @@ msgid "" "**pip**. Pip allows for uninstallation of packages, and is actively " "maintained, unlike easy_install." msgstr "" -"이제 새로운 명령을 내릴 수 있게 되었다: **easy_install** 이다. 하지만 이 " -"명령어를 불편하게 생각하는 사람들도 많다. 그러니 이를 대체할 것을 설치해보자. " -"**pip** 는 패키지의 설치 제거도 가능케 하고, easy_install와 달리 현재 " -"활발히 유지 보수되고 있다." +"이제 새로운 명령을 내릴 수 있게 되었습니다: **easy_install** 입니다. 하지만 이 명령어를 불편하게 생각하는 사람들도 많습니다. " +"그러니 이를 대체할 것을 설치해봅시다. **pip**로 패키지의 설치와 제거도 가능하고, easy_install와 달리 " +"현재 활발히 운영되고 있습니다." #: ../../starting/install/win.rst:65 msgid "" "To install pip, run the Python script available here: `get-pip.py " "`_" msgstr "" -"pip를 설치하려면 아래 파이썬 스크립트를 실행하면 된다. " -"`get-pip.py `_" +"pip를 설치하려면 아래 파이썬 스크립트를 실행하면 됩니다. `get-pip.py " +"`_" #: ../../starting/install/win.rst:70 msgid "Virtual Environments" @@ -143,38 +141,35 @@ msgstr "Virtual Environments" msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 " -"프로젝트들 간의 독립성을 유지시켜주는 툴이다. 이는 \"프로젝트 X는 버전 " -"1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. " -"그리고 전역 패키지를 깨끗하게 관리할 수 있도록 해준다." +"Virtual Environments은 파이썬 가상 환경을 만들어 여러 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 " +"툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " +"패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." #: ../../starting/install/win.rst:77 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." -msgstr "" -"예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 " -"프로젝트를 유지보수 할 수 있도록 해준다." +"For example, you can work on a project which requires Django 1.3 while " +"also maintaining a project which requires Django 1.0." +msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." #: ../../starting/install/win.rst:80 msgid "" -"To start using and see more information: `Virtual Environments " -"`_ docs." +"To start using this and see more information: :ref:`Virtual Environments " +"` docs." msgstr "" -"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면" -" `Virtual Environments `_ " -"에서 볼 수 있다." +"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 `Virtual Environments " +"`_ 문서에서 볼 수 있습니다." #: ../../starting/install/win.rst:85 msgid "" "This page is a remixed version of `another guide " -"`_, which is" -" available under the same license." +"`_, which" +" is available under the same license." msgstr "" -"이 페이지는 `다른 가이드 `_ " -"를 재배열한 버전이다. 라이선스는 동일하다." \ No newline at end of file +"이 페이지는 `다른 가이드 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." + diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.mo b/docs/locale/ko/LC_MESSAGES/starting/installation.mo index 52de2a3d3bf62a25dfd48d7a5d3e01590ebb256e..8af37b6286162ac12a2579b654ace561ecbe07fb 100644 GIT binary patch delta 659 zcmZvYO=uHA6vrn`vau1NTESAZJW)`n8#cBzc5SN`)JqN(>am!$o$LlT*{~lRfcfZ$mvcrSQR5O;bPPrfAU7dY_W-+OOn{_pLS`o0{j3@j0U z)saJ}SEymsd(=tPchu7WA;(bt7&m(e8AN_SCXru}E^;hLNEy$3M7DiyhPyuZkZqqW z-)>ehGw*pJZo>!X2zp6jz3wJ4}gW`SCu8erU^ zCfFKjfm2A5L6UpQyJrgrbbt*ceJEo$GR}C|3 z$&kx;Qfo4P0lML&#I(>@(6Q637CJF_jpnGS*mOahUX)>4xkYuHY9uxqU9Bg&|Hjti`VY6gmAp~ zJ7Ug;5h+jhNemsbnG-NN3Q>%Z(? zxr|5oO8vi&%d6;Ld%$bO_6@(G_qKvf3+*|oEwHHV6p%gxq8h|v&oFgm{a~=a}kU4y;3=9{5^2R_~0LW)y2b&|xAPQu}0tF0! zbTyFf1JaY@Sj{I-W3}8Y%P7G#xs7=~uZgaqp{}ukf{~Gxk;P87=gr(b3X{*XCa}EjUZOYI ziY-+3&D<>tuQoIQsn?U|yqP}XP0JjGH&a_)&zk|{OkT^TG5HRg0_z;GdRBIOD9e{U zR;&Re#_*?1nx4h|H15`cd^@cfb=C&xjnbY!i XD$quVDX;fW06KE=d=6W-HDEIUO=^rN diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.po b/docs/locale/ko/LC_MESSAGES/starting/installation.po index 00b9c6afc..84ff0aebb 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/installation.po +++ b/docs/locale/ko/LC_MESSAGES/starting/installation.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../starting/installation.rst:2 msgid "Properly Installing Python" @@ -17,45 +18,48 @@ msgstr "올바른 파이썬 설치" #: ../../starting/installation.rst:4 msgid "" -"There's a good chance that you already have Python on your operating system." -msgstr "운좋게도 이미 파이썬이 당신의 운영체제에 설치되어 있을 수도 있다." +"There's a good chance that you already have Python on your operating " +"system." +msgstr "운좋게도 이미 파이썬이 당신의 운영체제에 설치되어 있을 수도 있습니다." #: ../../starting/installation.rst:6 msgid "" -"If so, you do not need to install or configure anything else to use Python. " -"Having said that, I would strongly recommend that you install the tools and " -"libraries described in the guides below before you start building Python " -"applications for real-world use. In particular, you should always install " -"Setuptools, Pip, and Virtualenv — they make it much easier for you to use " -"other third-party Python libraries." +"If so, you do not need to install or configure anything else to use " +"Python. Having said that, I would strongly recommend that you install the" +" tools and libraries described in the guides below before you start " +"building Python applications for real-world use. In particular, you " +"should always install Setuptools, Pip, and Virtualenv — they make it much" +" easier for you to use other third-party Python libraries." msgstr "" -"만일 그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기 " -"전에이 가이드에서 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다.특히 Setuptools, Pip, Virtualenv는 " -"반드시 설치해야 한다.이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." +"그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. " +"그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기" +" 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. " +"특히 Setuptools, Pip, " +"Virtualenv는 반드시 설치해야 합니다. " +"이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " #: ../../starting/installation.rst:14 msgid "Installation Guides" -msgstr "설치 가이드" +msgstr "설치 안내" -#: ../../starting/installation.rst:17 +#: ../../starting/installation.rst:16 msgid "" -"for development purposes, as well as setuptools, pip, and virtualenv setup." -msgstr "이 가이드는 파이썬 개발을 위한 설치 뿐만 아니라 setuptools, pip, and virtualenv의 설치도 다룬다." +"These guides go over the proper installation of :ref:`Python 2.7 ` for development purposes, as well as setuptools, pip, and " +"virtualenv setup." +msgstr "" +"이 안내서는 개발을 위한 :ref:`파이썬 2.7 ` 의 적절한 설치 뿐 아니라 " +"setuptools, pip, and virtualenv의 설치도 다룹니다." #: ../../starting/installation.rst:19 msgid ":ref:`Mac OS X `." msgstr ":ref:`Mac OS X `." #: ../../starting/installation.rst:20 -msgid ":ref:`Microsoft Windows`." -msgstr ":ref:`Microsoft Windows`." +msgid ":ref:`Microsoft Windows `." +msgstr ":ref:`Microsoft Windows `." #: ../../starting/installation.rst:21 msgid ":ref:`Ubuntu Linux `." msgstr ":ref:`Ubuntu Linux `." -#: ../../starting/installation.rst:17 -msgid "" -"These guides go over the proper installation of :ref:`Python 2.7 `" -msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..20f5719652a6132fbd4f98253bbbef2f26466bc0 100644 GIT binary patch literal 8513 zcmeHM&u=706)s4C#6f@(!tWn-O7@4R*Y@sVHH2uryWYi;yOo+?){1~4Te17?HA^wK*|9VD{Ss}iO z@x4z7aS7*tgYn<^{+CbUK8%0DGU$x!73?WD?6 z>1N8#XPmdUY7P8H2E$ZQV>D%q=K zQRX>K7RQ6J88_F)aU>trQ-o(Tj9iVhw0-`&U*?H7HkaN4R^^8^B$=60y(u4;&dXD+ zX-YXV!0m_1Gp?xtn4y|zy0vr|=nT(29coNiRJ?B6pjm-@YWz?FaJ0ykaWz?IxgrwJ zp^B%9W2RNh8IkcOJwP(r+{(-%0)@j6nu#{_^;w(b2 zxD;@T6%4W1sj4X4spWWpLPr8fY~DA6vQQj;Of@lzB~cShVWDecXCXrK4w@38W8^bi|^PgF-{S#1yDx z!84FlPjqI-6!Q7-^VEnA@`0|Uxl_~c>w>Nu7xuAEyn7V^eY-S>Dvml}9V?KnBXLV5 zoMvq%_rY+#^d-nbB8j~Tr4N=d7`B8_f+0VVL&z9nk@AzUI&X0sgH13ma@Ih$4$n^P z2v25pG&!5lDlrjcGbQec&`T!2)Wm|mBYB$%=fdz*B>>DsyEf>l&0qD%fAS6j=5*Fa z0s=Vs7aI=%@=7Mwrq$7NTdDM*x4TbxqZAWj8S@SGq^Aq;}0>w6aRBfi=3oFxavvoke@ z()?6&#Pr+~Tc5Tn5AUVR^*Z8^OBZT%tBCl|ch(71p5^T!4yB9gK4_G$dgFydn{ap<4BLey}eD zblE_=4W87b?6l15YCLV&$?WI}XJl;Q8?@BbfE`_rszy!;$y1eWpUg6?pZi}+9WH^@ zBO5cDuyxM4+8JD2z*+UgR$`&Zq^^&Y?^skJ?O2olLWi|)iv1jROKAw$BZU-q^g)N zl?>g8PPB6>RL4ShVE=h$Rd9W-KaKlcnPsVlfk|(WTNHA%I|VFxK2a%#wY|y<6m+i7 zbaYu_5>}ufMptJ3B4?m4bGTnt&B_qD8r49}wHTAR5(reN17w=;QqKkgo(s(;T<1?6 z2?(-TNFIAxTB1%a&)`{txq!DZ+cV~iZs$f&Cxr}M$xcyj4^0w2T4(Y9cnshE+tu0W6 z0$?<$h+chrlgza|Sq;Sfa;9+cqf>QiMe+!ELL#zt5=|kILc)!Z+ExAj(a0Y*;d~?> zA#v$)l{t%!ldz(dKU1C%U!59uy?IBO$!R8kI@Ss#nwJet8B?FrNakT~o^TyFREaz~ zk#GGE;%Pvmo#b$HYeGTHD?}IEk{xlwbpfVAuMlJ|bdamZv@q0ECFFQ;n(*4!+9@!S zgKi=f!^;Wk`~14wtiLc@_t~_+7+wY!J0NPNfH-i@Z4nB8!u=M%7LW`ZDRINn7}e~} z@j~f>W>7?7@lBh^K9>~MxfO{MDh9gzJgY7;uhg#u5QVlo$k){%Uk%tg`HzPF*JRB-J`wT_Ye1G%i4~%Hg4G*Y~mT!7+}4A;;)P|W%6&) zJ21Lu|LxNEJJ)B|5f-$#oxMD{$ltq6Wq;$~^R6~TKb>#YcS#|bZvVJmsP6|wmL2(+8r*RHoB q7XMwa-ilanMbNg(dMkqeb-CV(IDa4OQN4e%-iiqSp#6VuMf?X8(xdPI delta 67 zcmX@;^ngj{o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUx2=K;mR+!8OdGA#RgT2`V!( F002au3OoP+ diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.mo b/docs/locale/ko/LC_MESSAGES/starting/which-python.mo index 7518efb3e4a033c45dd2f4f8776dfb2773c72ed0..f6990c402e0a3b2827dc2d72e064d999155f377c 100644 GIT binary patch delta 2191 zcmcK4drVVT90%~z2nYqAAW~i)XaR+`x1}K10YexpI#f`TIf;)dg;q*ip^WIZKxW;T z;B+2qFe?n^gP1raYc-hZk|ic{k+DCv#cgrAm)pX<-7DG4?2mm$=;0L1#9{u1SW8k939-T~ z$PcsyVlU!>d!P?C!Mo4`%}Io;gLb$ThF}exKaUWEBu%g$`;%r|;3VWt$TxUfc_0Fp zWBe!Nm7z$h1XjX!*a=U=J8%jfKoBi#Tqwu$L5i^-Cc`tZ8eV~m;eD9hiwx&2B4jlt z^qBn;y5VoI0jnbL@f1`A8kS&lJpVH+=HsP=WWb#;A3hIx=BJCN61^VlHy&!xDxUf z*5wdV0UO~c<_|;uoDt=D0+vGTP4;V1f8N96nBaj=LJxdgM~DetggfC^&;?iL5wZw)rb%2 zqbp<(@^@eaB6;#YdXs*&xFvSc~z?MREmi!Zgf(rpMvnujt1YxF0VNl85oP zkhd@)$1L}-0^*Ql3*q52?lz;t*WqIA>Q7W>+5KEye7orJEP8G?+~WvzeO8ttLy62_Lp0t)tFL+db+Ao4c*s)@C(+Z!ErRhl28@@1uo-AXH+)9q_z3p85I zlXkbg)8@0c7;5%eX^m}{9eEoq#u8@M_%i*{a38IePE1NC!s1wv&RjYl8S;xq&xr&5 z>|Kp1SsD({OioZSFesj%ltvEn`M)%4k|QSr((q&?5EesWX&@+`3+q{RdK#O_%VIt0 zHK|fykV^eSR2u1*4qd`3ap1I(vZ?e9Dm}}{C{j^YpYaT?-^eh=%3(js&@FoOED^^C zrNA{7pV<~0on`LKsyO*RJD+C-IZIIQZ{pCP#W*Uq57oPk46H~^AG1vs~?@5?bYVUhhW-T`QnyV$L?!$7xEWd zJm{BWh=-0dz0S1YKW{o~)&)?FUv&HBwe5M$O66|kjXo%}BY#qTmN#9lbACY$mN*J@ z5AF{Z*fOXzJS1MkyD-XMlbMM=DvrOZG)lF6cf3C+*E7_*e3dG04CM~$+1;Wg?DC4W z^46+C4Z@}uZcI?hh&N?#;VI=fsYN4+vnt4}$vSqs=mq6&v)(zYH~N$;_K$v(F1ibi zymU#r@)q4F|6`ynC^{7{_lsw*@wTovJf{S?X;^~;q!^o&4zw6oDtCg$kaE=|IF+lb MLhttf^&f)#3;6S#`2YX_ delta 1742 zcmb`_`%jZs7zgmD7MMdEARxB_Z=nTBX(>0EI1%iC$#8j^=yl3nyVS{0u$=^#MfZp$R^K3-CEO z97yyf9EXpgJ&5Q6+=Cz)eh)*5dg$(EqMtFa1cTx2XNfZ5Jk;Yb>kzRNx`n6^ZinI^ z)ew786KsL)uo^ysxiBMy$O@0aSK(E-7e0kpl8Uzym0^FXKm#YCVJJ43fMUWbOozWf zQJGMrl?O9nE40B$xCrk<2Np?zd&2zd)k6vWE*JqvU@^Q7x50Io*naD6Z}) z?D-0fz&Ml`0gF&%@DQttyZjT11KmgZSK)L5N{D&;6a7~*ltiRL{~{DucUdCZ2`6D6 z#@C>@x~61*f}Ie1(rqZN?z?2ve*%pa3^YRrcF%&VunLCgh}z&$C^GvNimOS}``>3n zvB5jg3i}|6NsF)uuE7|Xfb#5sJD?r5!v**t75D!bjo~yRREt_suWOdGKe;ze+P!bIitU#-((^=yk9XP4&xJM|JB_?mg4Gu3r7Qo zp)iX-!vc%v1NC^2I@g@biq^{A!ON+z$CYnD=gr zC~Y}$ys5Jzt73yP+Z$Qs_71zl*0!&sp)+M)SDpVw-SH-SU6-xhUe{*pXnfPwXs@$% z)m3c-nRClHAf{$(o+&%qlxvZ4atd>v=a!iEcvFqt)?O%8mb_A4TT)&sy--5f>e$oEh|uIDP%I%9ZPgQ7#TCPB(kwDkFTCUCP+3&ov`^W|RRpV$EC` ze}LWbM*cefFehuwo5p6iR-=oO2PVxVPYo)r1xX&5QwGMBu}j>qY2-gNySXrd1H=q| zl<>NU*qt~b_&hC*gOf_RD#@a9voooJmy?PT$7aM-$$QJKII+r%q)a(|qkWPxIgB1> zOG~O=R%;8?a{mYyYYPzimNrdg<_YbKs!P1Ct=R0n)r+Yz^RDFcypkNnPm=T4kYWhW z_s$I}Q@vQSSGh9ebGf-8WhuzNBNyqkSgT%V#s9QU$ICixm~Zr&?}}5Br_ai#ov7>u zy@iYQBm9H@BxW5-eNE)yNge0IX|qAsW;c?IPv6VO(sg_;-4=-|$Tv~KaY=R!;#iVA z^*#p}>JjGYH0)HVMOAKQ9K&Ma##lBQ4+gq77CB@5NGxs6{7{WPS48Ofugp_o=#;6M z6_YOVp#Q58iQ-b_JLlw&Z*YkD5IfB$12\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\starting\which-python.rst:2 +#: ../../starting/which-python.rst:2 msgid "Picking an Interpreter" msgstr "인터프리터 고르기" -#: ..\..\starting\which-python.rst:7 +#: ../../starting/which-python.rst:7 msgid "The State of Python (2 vs 3)" msgstr "파이썬 현황(2 vs 3)" -#: ..\..\starting\which-python.rst:9 +#: ../../starting/which-python.rst:9 msgid "" -"When choosing a Python interpreter, one looming question is always present: " -"\"Should I choose Python 2 or Python 3\"? The answer is not as obvious as " -"one might think." +"When choosing a Python interpreter, one looming question is always " +"present: \"Should I choose Python 2 or Python 3\"? The answer is not as " +"obvious as one might think." msgstr "" -"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오른다.\"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\"답은 생각처럼 간단하지 " -"않다." +"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오릅니다. \"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\" 답은 생각처럼 " +"간단하지 않습니다." -#: ..\..\starting\which-python.rst:14 +#: ../../starting/which-python.rst:14 msgid "The basic gist of the state of things is as follows:" -msgstr "이 문제의 기본적인 요지는 다음과 같다." +msgstr "이 문제의 기본적인 요지는 다음과 같습니다." -#: ..\..\starting\which-python.rst:16 +#: ../../starting/which-python.rst:16 msgid "Python 2.7 has been the standard for a *long* time." -msgstr "파이썬2.7이 *오랫동안* 표준이었다." +msgstr "파이썬2.7이 *오랫동안* 표준이었다." -#: ..\..\starting\which-python.rst:17 +#: ../../starting/which-python.rst:17 msgid "" -"Python 3 introduced major changes to the language, which many developers are" -" unhappy with." +"Python 3 introduced major changes to the language, which many developers " +"are unhappy with." msgstr "파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." -#: ..\..\starting\which-python.rst:18 -msgid "Python 2.7 will receive necessary security updates for a few years." -msgstr "파이썬2.7은 향후 몇년은 필수 보안 업데이트를 받을 것이다." +#: ../../starting/which-python.rst:18 +msgid "" +"Python 2.7 will receive necessary security updates until 2020 " +"[#pep373_eol]_." +msgstr "" +"파이썬2.7은 2020년까지는 필수 보안 업데이트를 받을 것이다. " +"[#pep373_eol]_." -#: ..\..\starting\which-python.rst:19 +#: ../../starting/which-python.rst:19 msgid "Python 3 is continually evolving, like Python 2 did in years past." -msgstr "파이썬3는 파이썬2가 지난 몇년간 그랬던 것처럼 계속 진화하고 있다." +msgstr "파이썬3는 파이썬2가 지난 몇 년간 그랬던 것처럼 계속 진화하고 있다." -#: ..\..\starting\which-python.rst:21 +#: ../../starting/which-python.rst:21 msgid "So, you can now see why this is not such an easy decision." -msgstr "이제 왜 이 문제가 쉽지 않은지 알 수 있을 것이다." +msgstr "이제 왜 이 문제가 쉽지 않은지 알 수 있을 것입니다." -#: ..\..\starting\which-python.rst:25 +#: ../../starting/which-python.rst:25 msgid "Recommendations" msgstr "추천" -#: ..\..\starting\which-python.rst:27 +#: ../../starting/which-python.rst:27 msgid "I'll be blunt:" -msgstr "단도직입적으로 말하겠다." +msgstr "단도직입적으로 말하겠습니다." -#: ..\..\starting\which-python.rst:30 +#: ../../starting/which-python.rst:30 msgid "**Use Python 3 if...**" msgstr "**이런 경우에는 파이썬3를...**" -#: ..\..\starting\which-python.rst:32 +#: ../../starting/which-python.rst:32 msgid "You don't care." msgstr "아무렴 어때." -#: ..\..\starting\which-python.rst:33 +#: ../../starting/which-python.rst:33 msgid "You love Python 3." msgstr "나는 파이썬3를 사랑해." -#: ..\..\starting\which-python.rst:34 +#: ../../starting/which-python.rst:34 msgid "You are indifferent towards 2 vs 3." msgstr "2건 3건 상관없다." -#: ..\..\starting\which-python.rst:35 +#: ../../starting/which-python.rst:35 msgid "You don't know which one to use." msgstr "어떤 것을 써야할지 모르겠다." -#: ..\..\starting\which-python.rst:36 +#: ../../starting/which-python.rst:36 msgid "You embrace change." msgstr "변화를 받아들이겠다." -#: ..\..\starting\which-python.rst:38 +#: ../../starting/which-python.rst:38 msgid "**Use Python 2 if...**" msgstr "**이런 경우에는 파이썬2를...**" -#: ..\..\starting\which-python.rst:40 +#: ../../starting/which-python.rst:40 msgid "You love Python 2 and are saddened by the future being Python 3." msgstr "파이썬2를 사랑하고 파이썬3의 미래에 대해 비관적일 때." -#: ..\..\starting\which-python.rst:41 +#: ../../starting/which-python.rst:41 msgid "" -"The stability requirements of your software would be improved by a language " -"and runtime that never changes." +"The stability requirements of your software would be improved by a " +"language and runtime that never changes." msgstr "절대 변하지 않는 언어와 런타임으로 소프트웨어의 안정성을 향상시키겠다." -#: ..\..\starting\which-python.rst:42 +#: ../../starting/which-python.rst:42 msgid "Software that you depend on requires it." msgstr "사용하는 소프트웨어가 파이썬2를 사용한다면." -#: ..\..\starting\which-python.rst:46 +#: ../../starting/which-python.rst:46 msgid "So.... 3?" msgstr "그러면.... 3?" -#: ..\..\starting\which-python.rst:48 +#: ../../starting/which-python.rst:48 msgid "" -"If you're choosing a Python interpreter to use, and aren't opinionated, then" -" I recommend you use the newest Python 3.x, since every version brings new " -"and improved standard library modules, security and bug fixes. Progress is " -"progress." +"If you're choosing a Python interpreter to use, and aren't opinionated, " +"then I recommend you use the newest Python 3.x, since every version " +"brings new and improved standard library modules, security and bug fixes." +" Progress is progress." msgstr "" -"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면,최신 버젼의 파이썬3.x 사용을 추천한다. 모든 버젼이 새롭고 " -"향상된 표준 라이브러리 모듈과보안, 그리고 버그 수정을 제공하고 있기 때문이다. 개선이 진행 중이다." +"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면, 최신 버젼의 파이썬3.x 사용을 추천합니다. 모든 버젼이 " +"새롭고 향상된 표준 라이브러리 모듈과 보안, 그리고 버그 수정을 제공하고 있기 때문입니다. 개선도 진행 중입니다." -#: ..\..\starting\which-python.rst:52 +#: ../../starting/which-python.rst:52 msgid "" "Given such, only use Python 2 if you have a strong reason to, such as a " -"Python 2 exclusive library which has no adequate Python 3 ready alternative," -" or you (like me) absolutely love and are inspired by Python 2." +"Python 2 exclusive library which has no adequate Python 3 ready " +"alternative, or you (like me) absolutely love and are inspired by Python " +"2." msgstr "" -"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고 오로지 파이썬2에서만 돌아가는라이브러리라든가 아니면 파이썬 2를 너무나도 " -"사랑한다면(나처럼) 파이썬2를 사용할 수밖에 없을 것이다." +"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고, 오로지 파이썬2에서만 돌아가는 라이브러리라든가 아니면 파이썬 2를 너무나도" +" 사랑한다면(나처럼), 파이썬2를 사용할 수밖에 없을 것입니다." -#: ..\..\starting\which-python.rst:56 +#: ../../starting/which-python.rst:56 msgid "" -"Check out `Can I Use Python 3? `_ to see if any" -" software you're depending on will block your adoption of Python 3." +"Check out `Can I Use Python 3? `_ to see if " +"any software you're depending on will block your adoption of Python 3." msgstr "" -"`Can I Use Python 3? `_ 에서 당신이 사용 중인소프트웨어에서 " -"파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 확인해보시라." +"`Can I Use Python 3? `_ 에서 확인해보시면, 당신이 사용 중인 소프트웨어가 " +"파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 알 수 있습니다. " -#: ..\..\starting\which-python.rst:59 +#: ../../starting/which-python.rst:59 msgid "`Further Reading `_" msgstr "`더 읽을 거리 `_" -#: ..\..\starting\which-python.rst:61 +#: ../../starting/which-python.rst:61 msgid "" -"It is possible to `write code that works on Python 2.6, 2.7, and 3.3 " -"`_. This " -"ranges from trivial to hard depending upon the kind of software you are " -"writing; if you're a beginner there are far more important things to worry " -"about." +"It is possible to `write code that works on Python 2.6, 2.7, and Python 3" +" `_. This ranges from " +"trivial to hard depending upon the kind of software you are writing; if " +"you're a beginner there are far more important things to worry about." msgstr "" -"파이썬 2.6, 2.7, 3.3에서 모두 돌아가는 코드를 작성하는 것도 " -" `가능하다 `_. 이 " -"가이드는 사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있다. 초보자라면 신경써야할 대단히 " -"중요한 사항들도 있다." +"파이썬 2.6, 2.7, 3에서 모두 돌아가는 코드를 작성하는 것도 `가능합니다 " +"`_. 이 안내서는 " +"사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있습니다. 초보자라면 반드시 신경써야할 대단히 중요한 사항들도 있습니다." -#: ..\..\starting\which-python.rst:68 +#: ../../starting/which-python.rst:68 msgid "Implementations" msgstr "구현" -#: ..\..\starting\which-python.rst:70 +#: ../../starting/which-python.rst:70 msgid "" -"When people speak of *Python* they often mean not just the language but also" -" the CPython implementation. *Python* is actually a specification for a " -"language that can be implemented in many different ways." +"When people speak of *Python* they often mean not just the language but " +"also the CPython implementation. *Python* is actually a specification for" +" a language that can be implemented in many different ways." msgstr "" -"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을의미할 때가 많다. *파이썬* 은 실제로 다양한 방법으로 " -"구현될 수 있는 언어를 위한 명세이다." +"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을 의미할 때가 많습니다. *파이썬* 은 실제로 다양한 방법으로" +" 구현될 수 있는 언어를 위한 명세서입니다." -#: ..\..\starting\which-python.rst:75 +#: ../../starting/which-python.rst:75 msgid "CPython" msgstr "CPython" -#: ..\..\starting\which-python.rst:77 +#: ../../starting/which-python.rst:77 msgid "" "`CPython `_ is the reference implementation of " -"Python, written in C. It compiles Python code to intermediate bytecode which" -" is then interpreted by a virtual machine. CPython provides the highest " -"level of compatibility with Python packages and C extension modules." +"Python, written in C. It compiles Python code to intermediate bytecode " +"which is then interpreted by a virtual machine. CPython provides the " +"highest level of compatibility with Python packages and C extension " +"modules." msgstr "" -"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스다.파이썬 코드를 가상 머신에 의해 " -"해석되는 중간 바이트코드로 컴파일한다. CPython은 파이썬패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공한다." +"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스로서, 파이썬 코드를 가상 머신에 " +"의해 해석되는 중간 바이트코드로 컴파일합니다. CPython은 파이썬 패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공합니다. " -#: ..\..\starting\which-python.rst:82 +#: ../../starting/which-python.rst:82 msgid "" "If you are writing open-source Python code and want to reach the widest " -"possible audience, targeting CPython is best. To use packages which rely on " -"C extensions to function, CPython is your only implementation option." +"possible audience, targeting CPython is best. To use packages which rely " +"on C extensions to function, CPython is your only implementation option." msgstr "" -"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고다.C언어 확장 기능을 쓰는 패키지를 " -"사용하려면 CPython이 유일한 구현 방법이다." +"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고입니다. C언어 확장 기능을 쓰는 패키지를 " +"사용하려면 CPython이 유일한 구현 방법입니다." -#: ..\..\starting\which-python.rst:86 +#: ../../starting/which-python.rst:86 msgid "" -"All versions of the Python language are implemented in C because CPython is " -"the reference implementation." -msgstr "파이선 언어의 모든 버젼은 C언어로 구현된다. CPython이 파이썬 구현의 리퍼런스라 그렇다." +"All versions of the Python language are implemented in C because CPython " +"is the reference implementation." +msgstr "파이선 언어의 모든 버전은 C언어로 구현됩니다. CPython이 파이썬 구현의 리퍼런스이기 때문입니다." -#: ..\..\starting\which-python.rst:90 +#: ../../starting/which-python.rst:90 msgid "PyPy" msgstr "PyPy" -#: ..\..\starting\which-python.rst:92 +#: ../../starting/which-python.rst:92 msgid "" "`PyPy `_ is a Python interpreter implemented in a " -"restricted statically-typed subset of the Python language called RPython. " -"The interpreter features a just-in-time compiler and supports multiple back-" -"ends (C, CLI, JVM)." +"restricted statically-typed subset of the Python language called RPython." +" The interpreter features a just-in-time compiler and supports multiple " +"back-ends (C, CLI, JVM)." msgstr "" -"`PyPy `_ 는 RPython이라 불리는 파이썬 언어의 정적 타입으로만 구현된 파이썬 인터프리터다. " -"이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 지원한다는 것이다." +"`PyPy `_ 는 파이썬 언어의 정적 타입으로만 구현된 파이썬 " +"인터프리터로서 통칭 RPython이라 불립니다. 이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 지원한다는 것입니다." -#: ..\..\starting\which-python.rst:96 +#: ../../starting/which-python.rst:96 msgid "" "PyPy aims for maximum compatibility with the reference CPython " "implementation while improving performance." -msgstr "" -"PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 유지하는 동시에 그 성능을 향상시키는 것이다." +msgstr "PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 유지하는 동시에 그 성능을 향상시키는 것입니다. " -#: ..\..\starting\which-python.rst:99 +#: ../../starting/which-python.rst:99 msgid "" -"If you are looking to increase performance of your Python code, it's worth " -"giving PyPy a try. On a suite of benchmarks, it's currently `over 5 times " -"faster than CPython `_." +"If you are looking to increase performance of your Python code, it's " +"worth giving PyPy a try. On a suite of benchmarks, it's currently `over 5" +" times faster than CPython `_." msgstr "" -"만약 당신의 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 가치가 있다. 벤치마크에서 PyPy는 CPython보다" -" `5배나 빨랐다 `_." +"만약 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 가치가 있습니다. 벤치마크에서 PyPy는 " +"CPython보다 `5배나 빨랐습니다 `_." -#: ..\..\starting\which-python.rst:103 +#: ../../starting/which-python.rst:103 msgid "" "PyPy supports Python 2.7. PyPy3 [#pypy_ver]_, released in beta, targets " "Python 3." -msgstr "PyPy는 파이썬2.7을 지원한다. 베타로 나온 PyPy3 [#pypy_ver]_,는 파이썬3를 지원한다." +msgstr "PyPy는 파이썬2.7을 지원합니다. 베타로 나온 PyPy3 [#pypy_ver]_,는 파이썬3를 지원합니다." -#: ..\..\starting\which-python.rst:106 +#: ../../starting/which-python.rst:106 msgid "Jython" msgstr "Jython" -#: ..\..\starting\which-python.rst:108 +#: ../../starting/which-python.rst:108 msgid "" -"`Jython `_ is a Python implementation that compiles " -"Python code to Java bytecode which is then executed by the JVM (Java Virtual" -" Machine). Additionally, it is able to import and use any Java class like a " -"Python module." +"`Jython `_ is a Python implementation that " +"compiles Python code to Java bytecode which is then executed by the JVM " +"(Java Virtual Machine). Additionally, it is able to import and use any " +"Java class like a Python module." msgstr "" -"`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 JVM(자바 가상 머신)에서 " -"실행시키는 파이썬 구현이다. 뿐만 아니라 Jython은 자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있다." +"`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 JVM(자바 가상 " +"머신)에서 실행시키는 파이썬 구현입니다. 뿐만 아니라 Jython은 자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있습니다." -#: ..\..\starting\which-python.rst:113 +#: ../../starting/which-python.rst:113 msgid "" "If you need to interface with an existing Java codebase or have other " -"reasons to need to write Python code for the JVM, Jython is the best choice." -msgstr "" -"자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면, Jython은 최고의 선택이 될 것이다." +"reasons to need to write Python code for the JVM, Jython is the best " +"choice." +msgstr "자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면, Jython은 최고의 선택이 될 것입니다." -#: ..\..\starting\which-python.rst:116 -msgid "Jython currently supports up to Python 2.5. [#jython_ver]_" -msgstr "Jython은 현재 파이썬 2.5까지 지원한다. [#jython_ver]_" +#: ../../starting/which-python.rst:116 +msgid "Jython currently supports up to Python 2.7. [#jython_ver]_" +msgstr "Jython은 현재 파이썬 2.7까지 지원합니다. [#jython_ver]_" -#: ..\..\starting\which-python.rst:119 +#: ../../starting/which-python.rst:119 msgid "IronPython" msgstr "IronPython" -#: ..\..\starting\which-python.rst:121 +#: ../../starting/which-python.rst:121 msgid "" -"`IronPython `_ is an implementation of Python for " -"the .NET framework. It can use both Python and .NET framework libraries, and" -" can also expose Python code to other languages in the .NET framework." +"`IronPython `_ is an implementation of Python " +"for the .NET framework. It can use both Python and .NET framework " +"libraries, and can also expose Python code to other languages in the .NET" +" framework." msgstr "" -"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현이다. 파이썬과 닷넷 " -"프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있다." +"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현입니다. 파이썬과 닷넷 " +"프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있습니다. " -#: ..\..\starting\which-python.rst:125 +#: ../../starting/which-python.rst:125 msgid "" -"`Python Tools for Visual Studio `_ integrates " -"IronPython directly into the Visual Studio development environment, making " -"it an ideal choice for Windows developers." +"`Python Tools for Visual Studio `_ " +"integrates IronPython directly into the Visual Studio development " +"environment, making it an ideal choice for Windows developers." msgstr "" "`Python Tools for Visual Studio `_ " -"는IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있다. 이는 Windows 개발자들에게 좋은 선택이다." +"는 IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있습니다. 이는 Windows 개발자들에게 좋은 선택입니다." -#: ..\..\starting\which-python.rst:129 +#: ../../starting/which-python.rst:129 msgid "IronPython supports Python 2.7. [#iron_ver]_" -msgstr "IronPython은 파이썬 2.7을 지원한다. [#iron_ver]_" +msgstr "IronPython은 파이썬 2.7을 지원합니다. [#iron_ver]_" -#: ..\..\starting\which-python.rst:132 +#: ../../starting/which-python.rst:132 msgid "PythonNet" msgstr "PythonNet" -#: ..\..\starting\which-python.rst:134 +#: ../../starting/which-python.rst:134 msgid "" -"`Python for .NET `_ is a package which provides" -" near seamless integration of a natively installed Python installation with " -"the .NET Common Language Runtime (CLR). This is the inverse approach to " -"that taken by IronPython (see above), to which it is more complementary than" -" competing with." +"`Python for .NET `_ is a package which " +"provides near seamless integration of a natively installed Python " +"installation with the .NET Common Language Runtime (CLR). This is the " +"inverse approach to that taken by IronPython (see above), to which it is " +"more complementary than competing with." msgstr "" -"`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 닷넷 공통 언어 " -"런타임(CLR)을 말끔하게 통합시켜주는 패키지이다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다 상호 " -"보완적이다." +"`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 닷넷 공통 " +"언어 런타임(CLR)을 말끔하게 통합시켜주는 패키지입니다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다 " +"상호 보완적입니다." -#: ..\..\starting\which-python.rst:140 +#: ../../starting/which-python.rst:140 msgid "" -"In conjunction with Mono, PythonNet enables native Python installations on " -"non-Windows operating systems, such as OS X and Linux, to operate within the" -" .NET framework. It can be run in addition to IronPython without conflict." +"In conjunction with Mono, PythonNet enables native Python installations " +"on non-Windows operating systems, such as OS X and Linux, to operate " +"within the .NET framework. It can be run in addition to IronPython " +"without conflict." msgstr "" -"Mono와 함께 사용하면 PythonNet은 OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 프레임워크" -" 안에서 수행될 수 있도록 해준다. IronPython과 같이 사용해도 충돌하지 않는다." +"Mono와 함께 사용하면 PythonNet은 OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 " +"프레임워크 안에서 수행될 수 있도록 해줍니다. IronPython과 같이 사용해도 충돌하지 않습니다." -#: ..\..\starting\which-python.rst:145 +#: ../../starting/which-python.rst:145 msgid "PythonNet supports from Python 2.3 up to Python 2.7. [#pythonnet_ver]_" -msgstr "PythonNet은 파이썬 2.3부터 2.7버젼까지 지원한다. [#pythonnet_ver]_" +msgstr "PythonNet은 파이썬 2.3부터 2.7버젼까지 지원합니다. [#pythonnet_ver]_" -#: ..\..\starting\which-python.rst:147 +#: ../../starting/which-python.rst:147 msgid "http://pypy.org/compat.html" msgstr "http://pypy.org/compat.html" -#: ..\..\starting\which-python.rst:149 -msgid "" -"http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" -msgstr "" -"http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" +#: ../../starting/which-python.rst:149 +msgid "https://hg.python.org/jython/file/412a8f9445f7/NEWS" +msgstr "https://hg.python.org/jython/file/412a8f9445f7/NEWS" -#: ..\..\starting\which-python.rst:151 +#: ../../starting/which-python.rst:151 msgid "http://ironpython.codeplex.com/releases/view/81726" msgstr "http://ironpython.codeplex.com/releases/view/81726" -#: ..\..\starting\which-python.rst:153 +#: ../../starting/which-python.rst:153 msgid "http://pythonnet.github.io/readme.html" msgstr "http://pythonnet.github.io/readme.html" + +#: ../../starting/which-python.rst:155 +msgid "https://www.python.org/dev/peps/pep-0373/#id2" +msgstr "https://www.python.org/dev/peps/pep-0373/#id2" \ No newline at end of file diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.mo b/docs/locale/ko/LC_MESSAGES/writing/documentation.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..28e17604efb47a8fc56918b0b7358acb2536eea0 100644 GIT binary patch literal 10763 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 Df}U=G delta 113 zcmeAUdBCJ|Pl#nI0}wC*u?!HafH**)1EIjQ5l~VW$e+AaG=$eg*U(Vc*g(O^$jZoK zGPhWav~EahVy=~fkE5S^sH3~9f{l-lLr$h%eo?yJ?IZe diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.po b/docs/locale/ko/LC_MESSAGES/writing/documentation.po index 4508e4e8c..3363657d2 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/writing/documentation.po @@ -1,43 +1,45 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\documentation.rst:2 +#: ../../writing/documentation.rst:2 msgid "Documentation" msgstr "" -#: ..\..\writing\documentation.rst:4 +#: ../../writing/documentation.rst:4 msgid "" -"Readability is a primary focus for Python developers, in both project and " -"code documentation. Following some simple best practices can save both you " -"and others a lot of time." +"Readability is a primary focus for Python developers, in both project and" +" code documentation. Following some simple best practices can save both " +"you and others a lot of time." msgstr "" -#: ..\..\writing\documentation.rst:9 +#: ../../writing/documentation.rst:9 msgid "Project Documentation" msgstr "" -#: ..\..\writing\documentation.rst:11 +#: ../../writing/documentation.rst:11 msgid "" -"A :file:`README` file at the root directory should give general information " -"to both users and maintainers of a project. It should be raw text or written" -" in some very easy to read markup, such as :ref:`reStructuredText-ref` or " -"Markdown. It should contain a few lines explaining the purpose of the " -"project or library (without assuming the user knows anything about the " -"project), the url of the main source for the software, and some basic credit" -" information. This file is the main entry point for readers of the code." +"A :file:`README` file at the root directory should give general " +"information to both users and maintainers of a project. It should be raw " +"text or written in some very easy to read markup, such as :ref" +":`reStructuredText-ref` or Markdown. It should contain a few lines " +"explaining the purpose of the project or library (without assuming the " +"user knows anything about the project), the URL of the main source for " +"the software, and some basic credit information. This file is the main " +"entry point for readers of the code." msgstr "" -#: ..\..\writing\documentation.rst:19 +#: ../../writing/documentation.rst:19 msgid "" "An :file:`INSTALL` file is less necessary with Python. The installation " "instructions are often reduced to one command, such as ``pip install " @@ -45,206 +47,241 @@ msgid "" "file." msgstr "" -#: ..\..\writing\documentation.rst:24 +#: ../../writing/documentation.rst:24 msgid "" -"A :file:`LICENSE` file should *always* be present and specify the license " -"under which the software is made available to the public." +"A :file:`LICENSE` file should *always* be present and specify the license" +" under which the software is made available to the public." msgstr "" -#: ..\..\writing\documentation.rst:27 +#: ../../writing/documentation.rst:27 msgid "" -"A :file:`TODO` file or a ``TODO`` section in :file:`README` should list the " -"planned development for the code." +"A :file:`TODO` file or a ``TODO`` section in :file:`README` should list " +"the planned development for the code." msgstr "" -#: ..\..\writing\documentation.rst:30 +#: ../../writing/documentation.rst:30 msgid "" -"A :file:`CHANGELOG` file or section in :file:`README` should compile a short" -" overview of the changes in the code base for the latest versions." +"A :file:`CHANGELOG` file or section in :file:`README` should compile a " +"short overview of the changes in the code base for the latest versions." msgstr "" -#: ..\..\writing\documentation.rst:34 +#: ../../writing/documentation.rst:34 msgid "Project Publication" msgstr "" -#: ..\..\writing\documentation.rst:36 +#: ../../writing/documentation.rst:36 msgid "" -"Depending on the project, your documentation might include some or all of " -"the following components:" +"Depending on the project, your documentation might include some or all of" +" the following components:" msgstr "" -#: ..\..\writing\documentation.rst:39 +#: ../../writing/documentation.rst:39 msgid "" -"An *introduction* should show a very short overview of what can be done with" -" the product, using one or two extremely simplified use cases. This is the " -"thirty-second pitch for your project." +"An *introduction* should show a very short overview of what can be done " +"with the product, using one or two extremely simplified use cases. This " +"is the thirty-second pitch for your project." msgstr "" -#: ..\..\writing\documentation.rst:43 +#: ../../writing/documentation.rst:43 msgid "" -"A *tutorial* should show some primary use cases in more detail. The reader " -"will follow a step-by-step procedure to set-up a working prototype." +"A *tutorial* should show some primary use cases in more detail. The " +"reader will follow a step-by-step procedure to set-up a working " +"prototype." msgstr "" -#: ..\..\writing\documentation.rst:46 +#: ../../writing/documentation.rst:46 msgid "" "An *API reference* is typically generated from the code (see " ":ref:`docstrings `). It will list all publicly available " "interfaces, parameters, and return values." msgstr "" -#: ..\..\writing\documentation.rst:50 +#: ../../writing/documentation.rst:50 msgid "" -"*Developer documentation* is intended for potential contributors. This can " -"include code convention and general design strategy of the project." +"*Developer documentation* is intended for potential contributors. This " +"can include code convention and general design strategy of the project." msgstr "" -#: ..\..\writing\documentation.rst:56 +#: ../../writing/documentation.rst:56 msgid "Sphinx" msgstr "" -#: ..\..\writing\documentation.rst:58 +#: ../../writing/documentation.rst:58 msgid "" -"Sphinx_ is far and away the most popular Python documentation tool. **Use " -"it.** It converts :ref:`restructuredtext-ref` markup language into a range " -"of output formats including HTML, LaTeX (for printable PDF versions), manual" -" pages, and plain text." +"Sphinx_ is far and away the most popular Python documentation tool. **Use" +" it.** It converts :ref:`restructuredtext-ref` markup language into a " +"range of output formats including HTML, LaTeX (for printable PDF " +"versions), manual pages, and plain text." msgstr "" -#: ..\..\writing\documentation.rst:63 +#: ../../writing/documentation.rst:63 msgid "" -"There is also **great**, **free** hosting for your Sphinx_ docs: `Read The " -"Docs`_. Use it. You can configure it with commit hooks to your source " -"repository so that rebuilding your documentation will happen automatically." +"There is also **great**, **free** hosting for your Sphinx_ docs: `Read " +"The Docs`_. Use it. You can configure it with commit hooks to your source" +" repository so that rebuilding your documentation will happen " +"automatically." msgstr "" -#: ..\..\writing\documentation.rst:70 +#: ../../writing/documentation.rst:70 msgid "" -"Sphinx is famous for its API generation, but it also works well for general " -"project documentation. This Guide is built with Sphinx_ and is hosted on " -"`Read The Docs`_" +"Sphinx is famous for its API generation, but it also works well for " +"general project documentation. This Guide is built with Sphinx_ and is " +"hosted on `Read The Docs`_" msgstr "" -#: ..\..\writing\documentation.rst:80 +#: ../../writing/documentation.rst:80 msgid "reStructuredText" msgstr "" -#: ..\..\writing\documentation.rst:82 +#: ../../writing/documentation.rst:82 msgid "" "Most Python documentation is written with reStructuredText_. It's like " "Markdown with all the optional extensions built in." msgstr "" -#: ..\..\writing\documentation.rst:85 +#: ../../writing/documentation.rst:85 msgid "" -"The `reStructuredText Primer`_ and the `reStructuredText Quick Reference`_ " -"should help you familiarize yourself with its syntax." +"The `reStructuredText Primer`_ and the `reStructuredText Quick " +"Reference`_ should help you familiarize yourself with its syntax." msgstr "" -#: ..\..\writing\documentation.rst:94 +#: ../../writing/documentation.rst:94 msgid "Code Documentation Advice" msgstr "" -#: ..\..\writing\documentation.rst:96 +#: ../../writing/documentation.rst:96 msgid "" -"Comments clarify the code and they are added with purpose of making the code" -" easier to understand. In Python, comments begin with a hash (number sign) " -"(``#``)." +"Comments clarify the code and they are added with purpose of making the " +"code easier to understand. In Python, comments begin with a hash (number " +"sign) (``#``)." msgstr "" -#: ..\..\writing\documentation.rst:102 +#: ../../writing/documentation.rst:102 msgid "In Python, *docstrings* describe modules, classes, and functions:" msgstr "" -#: ..\..\writing\documentation.rst:110 +#: ../../writing/documentation.rst:110 msgid "" -"In general, follow the comment section of :pep:`8#comments` (the \"Python " -"Style Guide\")." +"In general, follow the comment section of :pep:`8#comments` (the \"Python" +" Style Guide\"). More information about docstrings can be found at " +":pep:`0257#specification` (The Docstring Conventions Guide)." msgstr "" -#: ..\..\writing\documentation.rst:113 +#: ../../writing/documentation.rst:114 msgid "Commenting Sections of Code" msgstr "" -#: ..\..\writing\documentation.rst:115 +#: ../../writing/documentation.rst:116 msgid "" "*Do not use triple-quote strings to comment code*. This is not a good " -"practice, because line-oriented command-line tools such as grep will not be " -"aware that the commented code is inactive. It is better to add hashes at the" -" proper indentation level for every commented line. Your editor probably has" -" the ability to do this easily, and it is worth learning the " +"practice, because line-oriented command-line tools such as grep will not " +"be aware that the commented code is inactive. It is better to add hashes " +"at the proper indentation level for every commented line. Your editor " +"probably has the ability to do this easily, and it is worth learning the " "comment/uncomment toggle." msgstr "" -#: ..\..\writing\documentation.rst:123 +#: ../../writing/documentation.rst:124 msgid "Docstrings and Magic" msgstr "" -#: ..\..\writing\documentation.rst:125 +#: ../../writing/documentation.rst:126 msgid "" -"Some tools use docstrings to embed more-than-documentation behavior, such as" -" unit test logic. Those can be nice, but you won't ever go wrong with " +"Some tools use docstrings to embed more-than-documentation behavior, such" +" as unit test logic. Those can be nice, but you won't ever go wrong with " "vanilla \"here's what this does.\"" msgstr "" -#: ..\..\writing\documentation.rst:130 +#: ../../writing/documentation.rst:131 msgid "Docstrings versus Block comments" msgstr "" -#: ..\..\writing\documentation.rst:132 +#: ../../writing/documentation.rst:133 msgid "" -"These aren't interchangeable. For a function or class, the leading comment " -"block is a programmer's note. The docstring describes the *operation* of the" -" function or class:" +"These aren't interchangeable. For a function or class, the leading " +"comment block is a programmer's note. The docstring describes the " +"*operation* of the function or class:" msgstr "" -#: ..\..\writing\documentation.rst:147 +#: ../../writing/documentation.rst:148 msgid "Other Tools" msgstr "" -#: ..\..\writing\documentation.rst:149 +#: ../../writing/documentation.rst:150 msgid "You might see these in the wild. Use :ref:`sphinx-ref`." msgstr "" -#: ..\..\writing\documentation.rst:152 -msgid "" -"Pycco is a \"literate-programming-style documentation generator\" and is a " -"port of the node.js Docco_. It makes code into a side-by-side HTML code and " -"documentation." +#: ../../writing/documentation.rst:155 +msgid "Pycco_" msgstr "" -#: ..\..\writing\documentation.rst:160 +#: ../../writing/documentation.rst:153 msgid "" -"Ronn builds unix manuals. It converts human readable textfiles to roff for " -"terminal display, and also to HTML for the web." +"Pycco is a \"literate-programming-style documentation generator\" and is " +"a port of the node.js Docco_. It makes code into a side-by-side HTML code" +" and documentation." msgstr "" -#: ..\..\writing\documentation.rst:166 -msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." +#: ../../writing/documentation.rst:162 +msgid "Ronn_" msgstr "" -#: ..\..\writing\documentation.rst:171 +#: ../../writing/documentation.rst:161 msgid "" -"MkDocs is a fast and simple static site generator that's geared towards " -"building project documentation with Markdown." +"Ronn builds Unix manuals. It converts human readable textfiles to roff " +"for terminal display, and also to HTML for the web." msgstr "" -#: ..\..\writing\documentation.rst:143 -msgid "Further reading on docstrings: :pep:`257`" +#: ../../writing/documentation.rst:167 +msgid "Epydoc_" msgstr "" -#: ..\..\writing\documentation.rst:154 -msgid "Pycco_" +#: ../../writing/documentation.rst:167 +msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." msgstr "" -#: ..\..\writing\documentation.rst:161 -msgid "Ronn_" +#: ../../writing/documentation.rst:173 +msgid "MkDocs_" msgstr "" -#: ..\..\writing\documentation.rst:166 -msgid "Epydoc_" +#: ../../writing/documentation.rst:172 +msgid "" +"MkDocs is a fast and simple static site generator that's geared towards " +"building project documentation with Markdown." msgstr "" -#: ..\..\writing\documentation.rst:172 -msgid "MkDocs_" -msgstr "" +#~ msgid "" +#~ "A :file:`README` file at the root " +#~ "directory should give general information " +#~ "to both users and maintainers of a" +#~ " project. It should be raw text " +#~ "or written in some very easy to" +#~ " read markup, such as :ref" +#~ ":`reStructuredText-ref` or Markdown. It " +#~ "should contain a few lines explaining" +#~ " the purpose of the project or " +#~ "library (without assuming the user knows" +#~ " anything about the project), the url" +#~ " of the main source for the " +#~ "software, and some basic credit " +#~ "information. This file is the main " +#~ "entry point for readers of the " +#~ "code." +#~ msgstr "" + +#~ msgid "" +#~ "In general, follow the comment section" +#~ " of :pep:`8#comments` (the \"Python Style" +#~ " Guide\")." +#~ msgstr "" + +#~ msgid "" +#~ "Ronn builds unix manuals. It converts" +#~ " human readable textfiles to roff for" +#~ " terminal display, and also to HTML" +#~ " for the web." +#~ msgstr "" + +#~ msgid "Further reading on docstrings: :pep:`257`" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo b/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..04b9a3aa0e51937c0a1d05c65c4aa722b45bceaf 100644 GIT binary patch literal 9675 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 RJwIfUGphL^)Bod;>EG7-^\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\gotchas.rst:2 +#: ../../writing/gotchas.rst:2 msgid "Common Gotchas" msgstr "" -#: ..\..\writing\gotchas.rst:4 +#: ../../writing/gotchas.rst:4 msgid "" -"For the most part, Python aims to be a clean and consistent language that " -"avoids surprises. However, there are a few cases that can be confusing to " -"newcomers." +"For the most part, Python aims to be a clean and consistent language that" +" avoids surprises. However, there are a few cases that can be confusing " +"to newcomers." msgstr "" -#: ..\..\writing\gotchas.rst:8 +#: ../../writing/gotchas.rst:8 msgid "" -"Some of these cases are intentional but can be potentially surprising. Some " -"could arguably be considered language warts. In general though, what follows" -" is a collection of potentially tricky behavior that might seem strange at " -"first glance, but is generally sensible once you're aware of the underlying " -"cause for the surprise." +"Some of these cases are intentional but can be potentially surprising. " +"Some could arguably be considered language warts. In general, what " +"follows is a collection of potentially tricky behavior that might seem " +"strange at first glance, but is generally sensible once you're aware of " +"the underlying cause for the surprise." msgstr "" -#: ..\..\writing\gotchas.rst:17 +#: ../../writing/gotchas.rst:18 msgid "Mutable Default Arguments" msgstr "" -#: ..\..\writing\gotchas.rst:19 +#: ../../writing/gotchas.rst:20 msgid "" "Seemingly the *most* common surprise new Python programmers encounter is " "Python's treatment of mutable default arguments in function definitions." msgstr "" -#: ..\..\writing\gotchas.rst:23 ..\..\writing\gotchas.rst:94 +#: ../../writing/gotchas.rst:24 ../../writing/gotchas.rst:95 msgid "What You Wrote" msgstr "" -#: ..\..\writing\gotchas.rst:32 ..\..\writing\gotchas.rst:102 +#: ../../writing/gotchas.rst:33 ../../writing/gotchas.rst:103 msgid "What You Might Have Expected to Happen" msgstr "" -#: ..\..\writing\gotchas.rst:42 +#: ../../writing/gotchas.rst:43 msgid "" -"A new list is created each time the function is called if a second argument " -"isn't provided, so that the output is::" +"A new list is created each time the function is called if a second " +"argument isn't provided, so that the output is::" msgstr "" -#: ..\..\writing\gotchas.rst:49 ..\..\writing\gotchas.rst:119 +#: ../../writing/gotchas.rst:50 ../../writing/gotchas.rst:120 msgid "What Does Happen" msgstr "" -#: ..\..\writing\gotchas.rst:56 +#: ../../writing/gotchas.rst:57 msgid "" -"A new list is created *once* when the function is defined, and the same list" -" is used in each successive call." +"A new list is created *once* when the function is defined, and the same " +"list is used in each successive call." msgstr "" -#: ..\..\writing\gotchas.rst:59 +#: ../../writing/gotchas.rst:60 msgid "" "Python's default arguments are evaluated *once* when the function is " "defined, not each time the function is called (like it is in say, Ruby). " "This means that if you use a mutable default argument and mutate it, you " -"*will* and have mutated that object for all future calls to the function as " -"well." +"*will* and have mutated that object for all future calls to the function " +"as well." msgstr "" -#: ..\..\writing\gotchas.rst:65 ..\..\writing\gotchas.rst:157 +#: ../../writing/gotchas.rst:66 ../../writing/gotchas.rst:159 msgid "What You Should Do Instead" msgstr "" -#: ..\..\writing\gotchas.rst:67 +#: ../../writing/gotchas.rst:68 msgid "" -"Create a new object each time the function is called, by using a default arg" -" to signal that no argument was provided (:py:data:`None` is often a good " -"choice)." +"Create a new object each time the function is called, by using a default " +"arg to signal that no argument was provided (:py:data:`None` is often a " +"good choice)." msgstr "" -#: ..\..\writing\gotchas.rst:80 ..\..\writing\gotchas.rst:180 +#: ../../writing/gotchas.rst:81 ../../writing/gotchas.rst:182 msgid "When the Gotcha Isn't a Gotcha" msgstr "" -#: ..\..\writing\gotchas.rst:82 +#: ../../writing/gotchas.rst:83 msgid "" "Sometimes you can specifically \"exploit\" (read: use as intended) this " -"behavior to maintain state between calls of a function. This is often done " -"when writing a caching function." +"behavior to maintain state between calls of a function. This is often " +"done when writing a caching function." msgstr "" -#: ..\..\writing\gotchas.rst:88 +#: ../../writing/gotchas.rst:89 msgid "Late Binding Closures" msgstr "" -#: ..\..\writing\gotchas.rst:90 +#: ../../writing/gotchas.rst:91 msgid "" -"Another common source of confusion is the way Python binds its variables in " -"closures (or in the surrounding global scope)." +"Another common source of confusion is the way Python binds its variables " +"in closures (or in the surrounding global scope)." msgstr "" -#: ..\..\writing\gotchas.rst:109 +#: ../../writing/gotchas.rst:110 msgid "" -"A list containing five functions that each have their own closed-over ``i`` " -"variable that multiplies their argument, producing::" +"A list containing five functions that each have their own closed-over " +"``i`` variable that multiplies their argument, producing::" msgstr "" -#: ..\..\writing\gotchas.rst:129 -msgid "" -"Five functions are created; instead all of them just multiply ``x`` by 4." +#: ../../writing/gotchas.rst:130 +msgid "Five functions are created; instead all of them just multiply ``x`` by 4." msgstr "" -#: ..\..\writing\gotchas.rst:131 +#: ../../writing/gotchas.rst:132 msgid "" "Python's closures are *late binding*. This means that the values of " -"variables used in closures are looked up at the time the inner function is " -"called." +"variables used in closures are looked up at the time the inner function " +"is called." msgstr "" -#: ..\..\writing\gotchas.rst:135 +#: ../../writing/gotchas.rst:136 msgid "" "Here, whenever *any* of the returned functions are called, the value of " -"``i`` is looked up in the surrounding scope at call time. By then, the loop " -"has completed and ``i`` is left with its final value of 4." +"``i`` is looked up in the surrounding scope at call time. By then, the " +"loop has completed and ``i`` is left with its final value of 4." msgstr "" -#: ..\..\writing\gotchas.rst:139 +#: ../../writing/gotchas.rst:140 msgid "" "What's particularly nasty about this gotcha is the seemingly prevalent " "misinformation that this has something to do with :ref:`lambdas " -"` in Python. Functions created with a ``lambda`` expression " -"are in no way special, and in fact the same exact behavior is exhibited by " -"just using an ordinary ``def``:" +"` in Python. Functions created with a ``lambda`` " +"expression are in no way special, and in fact the same exact behavior is " +"exhibited by just using an ordinary ``def``:" msgstr "" -#: ..\..\writing\gotchas.rst:159 +#: ../../writing/gotchas.rst:161 msgid "" "The most general solution is arguably a bit of a hack. Due to Python's " -"aforementioned behavior concerning evaluating default arguments to functions" -" (see :ref:`default_args`), you can create a closure that binds immediately " -"to its arguments by using a default arg like so:" +"aforementioned behavior concerning evaluating default arguments to " +"functions (see :ref:`default_args`), you can create a closure that binds " +"immediately to its arguments by using a default arg like so:" msgstr "" -#: ..\..\writing\gotchas.rst:169 +#: ../../writing/gotchas.rst:171 msgid "Alternatively, you can use the functools.partial function:" msgstr "" -#: ..\..\writing\gotchas.rst:182 +#: ../../writing/gotchas.rst:184 +msgid "" +"Sometimes you want your closures to behave this way. Late binding is good" +" in lots of situations. Looping to create unique functions is " +"unfortunately a case where they can cause hiccups." +msgstr "" + +#: ../../writing/gotchas.rst:191 +msgid "Bytecode (.pyc) Files Everywhere!" +msgstr "" + +#: ../../writing/gotchas.rst:193 +msgid "" +"By default, when executing Python code from files, the Python interpreter" +" will automatically write a bytecode version of that file to disk, e.g. " +"``module.pyc``." +msgstr "" + +#: ../../writing/gotchas.rst:197 +msgid "" +"These ``.pyc`` files should not be checked into your source code " +"repositories." +msgstr "" + +#: ../../writing/gotchas.rst:199 +msgid "" +"Theoretically, this behavior is on by default, for performance reasons. " +"Without these bytecode files present, Python would re-generate the " +"bytecode every time the file is loaded." +msgstr "" + +#: ../../writing/gotchas.rst:205 +msgid "Disabling Bytecode (.pyc) Files" +msgstr "" + +#: ../../writing/gotchas.rst:207 msgid "" -"Sometimes you want your closures to behave this way. Late binding is good in" -" lots of situations. Looping to create unique functions is unfortunately a " -"case where they can cause hiccups." +"Luckily, the process of generating the bytecode is extremely fast, and " +"isn't something you need to worry about while developing your code." msgstr "" + +#: ../../writing/gotchas.rst:210 +msgid "Those files are annoying, so let's get rid of them!" +msgstr "" + +#: ../../writing/gotchas.rst:216 +msgid "" +"With the ``$PYTHONDONTWRITEBYTECODE`` environment variable set, Python " +"will no longer write these files to disk, and your development " +"environment will remain nice and clean." +msgstr "" + +#: ../../writing/gotchas.rst:220 +msgid "I recommend setting this environment variable in your ``~/.profile``." +msgstr "" + +#: ../../writing/gotchas.rst:223 +msgid "Removing Bytecode (.pyc) Files" +msgstr "" + +#: ../../writing/gotchas.rst:225 +msgid "Here's nice trick for removing all of these files, if they already exist::" +msgstr "" + +#: ../../writing/gotchas.rst:229 +msgid "" +"Run that from the root directory of your project, and all ``.pyc`` files " +"will suddenly vanish. Much better." +msgstr "" + +#~ msgid "" +#~ "Some of these cases are intentional " +#~ "but can be potentially surprising. Some" +#~ " could arguably be considered language " +#~ "warts. In general though, what follows" +#~ " is a collection of potentially " +#~ "tricky behavior that might seem strange" +#~ " at first glance, but is generally" +#~ " sensible once you're aware of the" +#~ " underlying cause for the surprise." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/license.mo b/docs/locale/ko/LC_MESSAGES/writing/license.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..b74cad606d0581b1bf7816fce320729edc701c17 100644 GIT binary patch literal 3847 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 GI{q(QgyTg3 literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.po b/docs/locale/ko/LC_MESSAGES/writing/logging.po new file mode 100644 index 000000000..812292946 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/writing/logging.po @@ -0,0 +1,207 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2016. A Kenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../writing/logging.rst:2 +msgid "Logging" +msgstr "" + +#: ../../writing/logging.rst:4 +msgid "" +"The :mod:`logging` module has been a part of Python's Standard Library " +"since version 2.3. It is succinctly described in :pep:`282`. The " +"documentation is notoriously hard to read, except for the `basic logging " +"tutorial`_." +msgstr "" + +#: ../../writing/logging.rst:8 +msgid "Logging serves two purposes:" +msgstr "" + +#: ../../writing/logging.rst:10 +msgid "" +"**Diagnostic logging** records events related to the application's " +"operation. If a user calls in to report an error, for example, the logs " +"can be searched for context." +msgstr "" + +#: ../../writing/logging.rst:13 +msgid "" +"**Audit logging** records events for business analysis. A user's " +"transactions can be extracted and combined with other user details for " +"reports or to optimize a business goal." +msgstr "" + +#: ../../writing/logging.rst:19 +msgid "... or Print?" +msgstr "" + +#: ../../writing/logging.rst:21 +msgid "" +"The only time that ``print`` is a better option than logging is when the " +"goal is to display a help statement for a command line application. Other" +" reasons why logging is better than ``print``:" +msgstr "" + +#: ../../writing/logging.rst:25 +msgid "" +"The `log record`_, which is created with every logging event, contains " +"readily available diagnostic information such as the file name, full " +"path, function, and line number of the logging event." +msgstr "" + +#: ../../writing/logging.rst:28 +msgid "" +"Events logged in included modules are automatically accessible via the " +"root logger to your application's logging stream, unless you filter them " +"out." +msgstr "" + +#: ../../writing/logging.rst:30 +msgid "" +"Logging can be selectively silenced by using the method " +":meth:`logging.Logger.setLevel` or disabled by setting the attribute " +":attr:`logging.Logger.disabled` to ``True``." +msgstr "" + +#: ../../writing/logging.rst:36 +msgid "Logging in a Library" +msgstr "" + +#: ../../writing/logging.rst:38 +msgid "" +"Notes for `configuring logging for a library`_ are in the `logging " +"tutorial`_. Because the *user*, not the library, should dictate what " +"happens when a logging event occurs, one admonition bears repeating:" +msgstr "" + +#: ../../writing/logging.rst:44 +msgid "" +"It is strongly advised that you do not add any handlers other than " +"NullHandler to your library’s loggers." +msgstr "" + +#: ../../writing/logging.rst:48 +msgid "" +"Best practice when instantiating loggers in a library is to only create " +"them using the ``__name__`` global variable: the :mod:`logging` module " +"creates a hierarchy of loggers using dot notation, so using ``__name__`` " +"ensures no name collisions." +msgstr "" + +#: ../../writing/logging.rst:53 +msgid "" +"Here is an example of best practice from the `requests source`_ -- place " +"this in your ``__init__.py``" +msgstr "" + +#: ../../writing/logging.rst:72 +msgid "Logging in an Application" +msgstr "" + +#: ../../writing/logging.rst:74 +msgid "" +"The `twelve factor app `_, an authoritative " +"reference for good practice in application development, contains a " +"section on `logging best practice `_. It " +"emphatically advocates for treating log events as an event stream, and " +"for sending that event stream to standard output to be handled by the " +"application environment." +msgstr "" + +#: ../../writing/logging.rst:82 +msgid "There are at least three ways to configure a logger:" +msgstr "" + +#: ../../writing/logging.rst:87 +msgid "Using an INI-formatted file:" +msgstr "" + +#: ../../writing/logging.rst:85 +msgid "" +"**Pro**: possible to update configuration while running using the " +"function :func:`logging.config.listen` to listen on a socket." +msgstr "" + +#: ../../writing/logging.rst:87 +msgid "" +"**Con**: less control (*e.g.* custom subclassed filters or loggers) than " +"possible when configuring a logger in code." +msgstr "" + +#: ../../writing/logging.rst:92 +msgid "Using a dictionary or a JSON-formatted file:" +msgstr "" + +#: ../../writing/logging.rst:90 +msgid "" +"**Pro**: in addition to updating while running, it is possible to load " +"from a file using the :mod:`json` module, in the standard library since " +"Python 2.6." +msgstr "" + +#: ../../writing/logging.rst:93 +msgid "**Con**: less control than when configuring a logger in code." +msgstr "" + +#: ../../writing/logging.rst:97 +msgid "Using code:" +msgstr "" + +#: ../../writing/logging.rst:95 +msgid "**Pro**: complete control over the configuration." +msgstr "" + +#: ../../writing/logging.rst:96 +msgid "**Con**: modifications require a change to source code." +msgstr "" + +#: ../../writing/logging.rst:100 +msgid "Example Configuration via an INI File" +msgstr "" + +#: ../../writing/logging.rst:102 +msgid "" +"Let us say the file is named ``logging_config.ini``. More details for the" +" file format are in the `logging configuration`_ section of the `logging " +"tutorial`_." +msgstr "" + +#: ../../writing/logging.rst:131 +msgid "Then use :meth:`logging.config.fileConfig` in the code:" +msgstr "" + +#: ../../writing/logging.rst:144 +msgid "Example Configuration via a Dictionary" +msgstr "" + +#: ../../writing/logging.rst:146 +msgid "" +"As of Python 2.7, you can use a dictionary with configuration details. " +":pep:`391` contains a list of the mandatory and optional elements in the " +"configuration dictionary." +msgstr "" + +#: ../../writing/logging.rst:179 +msgid "Example Configuration Directly in Code" +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.mo b/docs/locale/ko/LC_MESSAGES/writing/reading.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..8017ef9c2f1c4c3788c2071831f1b73f66eb49a0 100644 GIT binary patch literal 5049 zcmeHK&5j#I5FQ|aFbO|7bEup+#AACmD2kjPWs`L_j=b5`#vuw)lm&vZO9J?ZXQ zuY-id5eadE7XTsg25{hv#EBaRkaz$tyaHeKc-H||aO7fZcgyxv)mQb^Pxtv zUT@;}9sGXIAD(-iejx~0;S6L3`4!~Hkf&b^f{!3SgZz%4zZ3)-@(0MXkQYw{0e*rZ z{yc=uUC5vC`J0!6;1T5ED?#uH2!np zB_!jXJJaC)0?D{{-e_`tp@jZNXB(9il$Lbu_)S8pq`r}p{yy71wr-xw{Wgg*p+rMZIZKhW zj+`cWSQ%+835s(mj8}?v87nK{#xXdw7|2MGNYg=7RW5+wWSo`iX$^ zm2;94#4Pb%n0fPPVst@L#2G(hKb6r>WQ-(pWt~hqbQJO|Lx7F|A^$>chwdZYSTn*Q zo;6U%5hP#>e6yYKJ{ibJ=ohj~!1wOlWx8DAPPFlKaT+x6ks;3}IshHV=N(qUh!oa% zyzqmBJpnt%Mu^Rz0c0tC=`sZZInzX1l|F9@k1-16VDBRkQQi>Pp)vFe?bHFD0xpsZ zFEClS!8@y%gT7ZT>mrhdG@@|OP4O3nTIQM>0Rjxyi>cxM@CE4v&joHJ;z7{JE@H;m zkD!!e{HH5+!@UGgZK^@7u@1e`v@Vy&$PA4Cy?VhO4A}9OcY6~}AB=UPgZ)h<3JrrR znRAuxce^PXu#P(L)vbKd!lY5@E>y4WKc*uqL?ftCLpw`&YAA>?e!jm7>5Ph-ey-{W z?UwO0WU}BiwlEW!awt4V#FvI55l<1n?aHg<0ah(XhTZ;@Ub)%>q@U zh^&$d4wGXz%FNG}$P0~aA<8*fU7J{Tg8f^$Km;f8T424@nVRbEgmswEM%mL@sMzQU zI!AI^9(B=Ck+2vgaQr};=`&fQPf)o#s(d2WnXq@UxOgG)!1-XM^QoXk45pk8Bo@Nc zTE$bWAvT=}?(74MZiUA)RKD4I%~}Ip?2yor3G%tEXIMKYCY0t&I!Gw`qnYhcMZ9lNr44N#2tfgOdnDOQ6b`@hE1Y$vDSWjD$i~*d%hDMk-o-wO3|8R@xNT2URu{01B&uo=$ruf%qW_M=c|DF|Vd1j{?}c!oNJ}(?iV0dZ z7O`LUR=R%)2GGZKJ&A;6*UT2>XY6B>qavfE&5Al|U0!7vp95i(t}WG0nsi!hnX4coMMav;hW)OyRt*&JIlsd4l)Q`;O$@I;kHsFONJ zlSOr!N&~{{JP#Mcmtc?is{3ZdFjfcvkdZ%|+D-MA@nT_Q=vu669#J<3w<%7|m}`z? zOJ{UWnLmT^wJ$x6SUy-|t*1&h)~GU~Q1DV$ye#t(zzlsuzyu6)>DUbX|W}x=e8<3C+4xVjUr?u4s5;p$H4|G8P+33vG> J{=eJ_{{+E;*DC-3 delta 113 zcmdm~{(wp6o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUx0|X9%x}uA!l>v4Mh-k(H6f zWG=24Y2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$*Z|cnL|U|CO_sW=8YB2 diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.po b/docs/locale/ko/LC_MESSAGES/writing/reading.po index 124e34125..0edef6889 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/reading.po +++ b/docs/locale/ko/LC_MESSAGES/writing/reading.po @@ -1,103 +1,123 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\reading.rst:2 +#: ../../writing/reading.rst:2 msgid "Reading Great Code" msgstr "" -#: ..\..\writing\reading.rst:4 +#: ../../writing/reading.rst:4 msgid "" -"One of the core tenants behind the design of Python is creating readable " -"code. The motivation behind this design is simple: The number one thing that" -" Python programmers do is read code." +"One of the core tenets behind the design of Python is creating readable " +"code. The motivation behind this design is simple: The number one thing " +"that Python programmers do is read code." msgstr "" -#: ..\..\writing\reading.rst:8 +#: ../../writing/reading.rst:8 msgid "" "One of the secrets of becoming a great Python programmer is to read, " "understand, and comprehend excellent code." msgstr "" -#: ..\..\writing\reading.rst:11 +#: ../../writing/reading.rst:19 msgid "" "Excellent code typically follows the guidelines outlined in " -":ref:`code_style`, and does its best to express a clear and concise intent " -"to the reader." +":ref:`code_style`, and does its best to express a clear and concise " +"intent to the reader." msgstr "" -#: ..\..\writing\reading.rst:15 +#: ../../writing/reading.rst:23 msgid "" -"Included below is a list of recommended Python projects for reading. Each " -"one of these projects is a paragon of Python coding." +"Included below is a list of recommended Python projects for reading. Each" +" one of these projects is a paragon of Python coding." msgstr "" -#: ..\..\writing\reading.rst:18 +#: ../../writing/reading.rst:26 msgid "" -"`Howdoi `_ Howdoi is a code search tool, " -"written in Python." +"`Howdoi `_ Howdoi is a code search " +"tool, written in Python." msgstr "" -#: ..\..\writing\reading.rst:21 +#: ../../writing/reading.rst:29 msgid "" -"`Flask `_ Flask is a microframework for " -"Python based on Werkzeug and Jinja2. It's intended for getting started very " -"quickly and was developed with best intentions in mind." +"`Flask `_ Flask is a microframework " +"for Python based on Werkzeug and Jinja2. It's intended for getting " +"started very quickly and was developed with best intentions in mind." msgstr "" -#: ..\..\writing\reading.rst:26 +#: ../../writing/reading.rst:34 +msgid "" +"`Diamond `_ Diamond is a " +"python daemon that collects metrics and publishes them to Graphite or " +"other backends. It is capable of collecting cpu, memory, network, i/o, " +"load and disk metrics. Additionally, it features an API for implementing " +"custom collectors for gathering metrics from almost any source." +msgstr "" + +#: ../../writing/reading.rst:41 msgid "" "`Werkzeug `_ Werkzeug started as " -"simple collection of various utilities for WSGI applications and has become " -"one of the most advanced WSGI utility modules. It includes a powerful " -"debugger, full-featured request and response objects, HTTP utilities to " -"handle entity tags, cache control headers, HTTP dates, cookie handling, file" -" uploads, a powerful URL routing system and a bunch of community-contributed" -" addon modules." +"simple collection of various utilities for WSGI applications and has " +"become one of the most advanced WSGI utility modules. It includes a " +"powerful debugger, full-featured request and response objects, HTTP " +"utilities to handle entity tags, cache control headers, HTTP dates, " +"cookie handling, file uploads, a powerful URL routing system and a bunch " +"of community-contributed addon modules." msgstr "" -#: ..\..\writing\reading.rst:34 +#: ../../writing/reading.rst:49 msgid "" "`Requests `_ Requests is an " "Apache2 Licensed HTTP library, written in Python, for human beings." msgstr "" -#: ..\..\writing\reading.rst:38 +#: ../../writing/reading.rst:53 msgid "" "`Tablib `_ Tablib is a format-" "agnostic tabular dataset library, written in Python." msgstr "" -#: ..\..\writing\reading.rst:41 -msgid "" -"Embed and explain YouTube video showing python code reading: " -"http://www.youtube.com/watch?v=Jc8M9-LoEuo This may require installing a " -"Sphinx plugin. https://bitbucket.org/birkenfeld/sphinx-" -"contrib/src/a09f29fc16970f34350ca36ac7f229e00b1b1674/youtube?at=default" +#: ../../writing/reading.rst +msgid "Todo" msgstr "" -#: ..\..\writing\reading.rst:43 +#: ../../writing/reading.rst:57 msgid "" -"Include code examples of exemplary code from each of the projects listed. " -"Explain why it is excellent code. Use complex examples." +"Include code examples of exemplary code from each of the projects listed." +" Explain why it is excellent code. Use complex examples." msgstr "" -#: ..\..\writing\reading.rst:45 +#: ../../writing/reading.rst:59 msgid "" "Explain techniques to rapidly identify data structures, algorithms and " "determine what the code is doing." msgstr "" -#: ..\..\writing\reading.rst:0 ..\..\writing\reading.rst:0 -#: ..\..\writing\reading.rst:0 -msgid "Todo" -msgstr "" +#~ msgid "" +#~ "One of the core tenants behind the" +#~ " design of Python is creating " +#~ "readable code. The motivation behind " +#~ "this design is simple: The number " +#~ "one thing that Python programmers do " +#~ "is read code." +#~ msgstr "" + +#~ msgid "" +#~ "Embed and explain YouTube video showing" +#~ " python code reading: " +#~ "http://www.youtube.com/watch?v=Jc8M9-LoEuo This may " +#~ "require installing a Sphinx plugin. " +#~ "https://bitbucket.org/birkenfeld/sphinx-" +#~ "contrib/src/a09f29fc16970f34350ca36ac7f229e00b1b1674/youtube?at=default" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index 83c415e43b7aee5a76f8dc7330e88830fcb788f3..2d177ed5c478f59dc7c1f0e79f13d511c79ab659 100644 GIT binary patch delta 17087 zcmeI3dz2hioyTwI0hk1khY$itK_CMm>B)mYGD!#_lgGf2giHbi!Rearn(kt%tD36n znKZH%k03z;8k?*Fi3=+(xS|_r5m7+}VOM;xD(*S%QFjq^cTJ+MxVy4@aQE}Ox4LH% zP|vy~^T*1Ge*50Kb?e^WQI_bfQNz4fD^!PrtR;6$I|{0I0^g@a5XrNLE|$@^?;Xv8z(At6Zjy5z6ee~LaA7( zME&$grCz3^_pM4z0XvUY>K~Y(_ZX!zW0YFL>@Uz>dYn?vgU21O)O_$KAakfwCM#9o zy)1Y;?fMBy&7ytE6s4F_tv%5!*amr|Jn(SvJ>U_1U){xz*>rqFcPRB;aESKH;5pz` zh~;BUxD9-a_QJO-#hTSCpiDUS6s5kz^OM21gFm#Cvgv>ARHYWt?mdmUXz!S+)MvpP zPgm;QV8kkO!!{#o8Y+fltO6gJLu;y+CK-6qW$Xyrhh^QQlftvC=2Xd zi2PsT$Hx~cwHbWhBBc&tz_E+@IPDY9SL#;K0Ui4Hf{%ec7hqKMPrOj6D!36us_J`MA z@E-6A9$eq86l+r7Wt$?>6YwbvT+IW;{Z@lH#%%=U1D{)?)OOlm2al!Qcd1emw9Y0QD;EC&*gpTPat>Dm zXM=|`@J%dip2&#(lR07&rZ;ic;Ug{?sEO`enf8$cX;Kv01>k!I$WN5%d`M%pe{@ zd(Mzywx>23zy1y=MD!9U5_%1k4NR;VVw(a=e>d0wuLRElkGKx`AIVCV@#A?qdagGU zPsJrppnVQ_2+vo8-{Zp@SglQe`;AI{nf5mDWqI#r!))_68)o}g@Fn^yweYLV1adnJe{}97fbsmRARezK z{+Uu`a6`h6AM)U7@ZEgq&+j+PcIpF$*#hu%2L2cnYo72?W93=!EwtBw$ABBbNnjbo zzSMOf!c#v5uK@@D!tD4(a2f4?0sjw9f-Ya$TS>+dA-5;HFO)UYPz@hS(~gc+0w7W&v%FXkts$06)aoZUu$e z?gv8#J`BnSPWiM_yJ^n`kEMO`XO#LN?K$9F+Rr^^_~SR=B>Ip4tYNm(A2$r?f}fLd z{GW`!IU%L&zgn(Hz>q5`LAJ3##O;pw7>N?5ZfjEnDSL)t=EF$ zw+T2Ayc0YQya%+vPo>Yl4T>$i2%ZX#htOw$ZO_#&8b3YhvC9?Du`aO(oPO7HI;Kxo z)2CnNgf*+rF6c(=Ei8o7r*~NEOKxQGXQ*VyR_DQ?E|Ja zl+J7r7SGT1TA`B<%4NqdL|L`e%2nJ7UDsCK&?!5KA4isa*vt?y1<$jUTE)(~LA&F( zN3q@KIqlWR344oGx8Sr-ZN1IQGv(!o&-7YRDX4k{tIx42o}G6J7R!uFjui$$Yz6)1 zw^IosHx9yD*6NC_C^7Fu6({fZ*YuErQ(>)+pLd<8xzK_Y2Ub4t5$V_*I!iW_C8k zR@wILq7#acZEI~UE(N|7^vNgq9J}FrgGeB<7#!MqLHw%Pp5^-eL0Hz4%i?U`vh(^& zMr&sLK7&wrq&LwYBw<j7A$7eA5K*lgqB@F z>~_ACPHxoF7FjY~E)|C7_N4|~zvrTpj~VXGmg2I9b#^qi9yVrd;@1M-vHI<@>$!Gl ziP-oW>aN&v?1a80I}){^Y}X$Q24t1FoU9k|y1p6QZ$~Ap$a4Is8fqsw@-X&?BP`(S*>ZaR)}LZyd$TMO_rtheTlK} zNOeL9I7Sf4PyIo$8a_VkdRf&u(q(A*ZHy4db0LyWHV$*3A2FM2f4 z&8H@%mmAyB0FOWLwwK4ebBT31<~~EdTeFI+QZs}bLZhLhMc2=YOUS87K)Ms(&`a$P zJTDkR+uC#VB(^tX*CI>S-q8prFUcfU$t{+=8grzCs$ccA>0}{d;Z!l05n9x$;TyTg ziL1h^Ev9aEXzEP0u2&6}HTeV0)U15T_KPwtG*xi=?1=4nk!W0VxF(UZyeTV{H{B>; zO-R!52i-96wXF2#w7wkiB`t10?=*S2IdxWbwJ{4CbTxxpzJou85VGYazSVgRYk}S> z70=CUwu?}f%p>{^9S?)lbEX4lXV1wJ+x*(FU1Q`ZB#OgoKCWtU@hW<1DMo0&5(FVz zFH~Dp&pHy=-7jbt8vZ`i4~wx~Y_h9g8zJ+HsfuqBD_wTWV)0c+KTV?)@k~nts|}lR zWCpT!@&i^-#hvq|05`VNSF>n5Y3c6u&(LD)`(6+XNbJ)*2`QFq%@06Y@EOur8{~ta z**inl)doozsbfCPY{2sDnl`8~VCPBJy1Z0dA{@-()7YoQDccY@LsKw~+lOe`e}5Iu4+2lip+NefIaw1gex{vk9}$g{Kv@6e33nt~&LJBt zR0&eBZRAGe5$rYancEhdDDp&d1HC)Q&o^0tc1VnPU3>3ESdBrzCCz}*CpK}<$shnSfbVxMDI zV^?frzm%z~T(0U|(5iP%`Cj8MPx{rk#@y2e$0l7dv8tI0-BtrGX zHL-!EYrCvYCvuBE1Phrgt;Ru`E(sm5cH)mqA|(;UCQY!txYS||E!TW4FEgzhCU8R{ ziTJr#gq4R=WR8j*>V#A8C-oDF%yyVB5m|(H(tMY6cW7uRYnSco$O`fC_F|=-H;Be@ z`|LUM&O3MR{8_WlYe&nA?Wostd!wi~_LjKL;tlIp%%2w9#l>s;kSxn4S18P!Gi#dX z`UA3cUYIj2PinMy_IdLcOvCda%t2@I+y%21%xg85_H?aYJp3hz2K5Kecz&WiR3qG> zlxn3OO?zNkOaZQK}>Jak!*zspz{ioOS^dpvD@&T>JAK9t0u8Dj%ynl zcg*TQQfY|$v|KKm%bk{0YwGt;p3->eY%7yAeMTD*d?P7#>hY0P78Sc%<;H4K*Tf7B zCrJ2}7hE!&jU)!*|7q@kqWTFc5?njfntte`8b&C#-wn;Al3BP3q#}_*s0||xNyd?e znM@2w>o!l+cI;x6h@rDAw$39a^kZ@#Vz*3f4QbsJM`U}$95X|EfTZx69k2kAIl@d_ z%u~YezR99q3e+GBFP{o+-{&X;B@0(e;J^h@5%y@rqdj88E*YZ(pbp`rBs#!Vs(qeI zaw1V!FEgmF#f6%2OO7={cT75@k65q{eyh(b#1!0P!OhZgTNdP6em& z%#4Ydl|*XWXeO%S3RW>B-yNptasbKbS44ZH7R34%qts@wAVNtLbTqy(^TDyn8X9`=)u!>sDCI znNAi1$mPr_En7)yB-zjfnYZ01gh+ao%blecfD%U%JxY-!4C}plKFX@KX&Nf(ED*-@ z2~)Cr^BJL@;XxRNQoLn~YMwJ9z%M)*F&ZI*E=U3=@WCqGG0f~$B!%e<3N`D@ zs;~VF+1A?NRG*Wf?G;gl-yBmA?nEHk}(kgJCks783sZwz`%E^-m(aqpw+Kl@qsn?IL#7HrM^h}Rg7r1Z` zXVcajh;f=+(fD%SBj667JWT}cbI3p)IVW1Kwx`g6lJ#L%&dZ@bvD;-~ANiISh#>eB zreIg1swAmq_I{3N#)O(j+vW$F^NaX61Xa@%+l1^P=Ts4LL6TBbq7Scr0H*2TVvXA8|I}*^+MVlbUv@p7a>f zItR6EuWl_o=`Au>kMLxpV_|>h@TFu9EbkH>;u`lZx;OJy&Dbbgh=I5jH)fxIai)t+ zp>Mso5tP$B^T=^N7>Ep+3afXh^_rZT@3aPX)Hf}8ekmzasuMACvJ96?C|StJkUXOq zj%7@$wia72yWsRpLNL|7gQj3@Ioe{I+IVz&rNc|pGO;i;DB2UnccifdQ`dfhVw)E| zt!tXBWpa^`6B29sB%tV7<;KKJYi1pk{1mz{I!te3Q1L#VrzOL>iF~YxppIni2=W!< z(kmAK(#mb6wvFDU+cWxz5EiTWq`6hphp|>j-Zw=Y){&h4g%)%$)s(_wA#$x|;{{C@ zCek&JmHO^brvpKy7V2y}VIOX}bpmPGpOLb}Ds(PMLS$W|(`7bRgd)NwMWxq{MlLX( zxj{5nO6diaC=}n~#?@?b8ld(d{xr7PyO(v4SDn^%e)5{htQwND=qM&7Wu6LH`>+)eWKbY9K4NqT!Exu@hB zj=uMD3Nu8{#Bd!pHE-x^FOyLi?KY?3O~k3MSM_08%ZdmmzAIB|IcaZcUchQ^!-PE| zmE@puVkpZg4~0f)?BRM+TSRYqr`h!QRE}`Ca4i?wvA7!dA?8E5T+Ma70;*%ZP21|y zXK>#ta;y>V=X##oggz1~D?#-}9b&;FUxUo_os3vX5rb*j(-3=VeWoq7p8oXKb)@ZZ z&V);hA7WlEwBkuBh|5VB*SE5XUN6*5?Z?HXK>-GVmY)d@T+7!;XRdRJfu|?-3+-H)l6k%r8bAjfJa@&Lq6<_Jv$r z=p<3gQ;q-xW{J1_DfhX>D)%o|6y`Z!zhl^?!Lftby;u1TCW<~ z-pmzLouUrQujpp9c=kfB+2qOMS@myRJa23@?yryUo@#E-h3{uxSnIGZw9$|?Cp$NL zPQ9&r)f*Qf_dL2|&-PmmdC~b1>%tszl!3tD1FCV%#txVo~8V&wC%(yLIbNAKAM1_Fa}7ZR#%x&Ij>vQ}5k3yLf`BUc{y)tK_>zt!k=1lhc z*C+a4ogBn6=h^&)qO_d(`^%i$KDZ!r=?03kZ)%~l{{7`s8ZUq7^s!gzzc_H9s+@=J ixH^;Q`sC;pI+OI@%b9;Jckm0H=jKfD^bad^&i@~6LS}^k delta 5816 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 TIf6tFGP`{346w%Vw%YQ)N264d diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 7d48471fc..37a49d99b 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -1,334 +1,674 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\structure.rst:2 +#: ../../writing/structure.rst:2 msgid "Structuring Your Project" msgstr "프로젝트 구성하기" -#: ..\..\writing\structure.rst:4 +#: ../../writing/structure.rst:4 msgid "" -"By \"structure\" we mean the decisions you make concerning how your project " -"best meets its objective. We need to consider how to best leverage Python's " -"features to create clean, effective code. In practical terms, \"structure\" " -"means making clean code whose logic and dependencies are clear as well as " -"how the files and folders are organized in the filesystem." +"By \"structure\" we mean the decisions you make concerning how your " +"project best meets its objective. We need to consider how to best " +"leverage Python's features to create clean, effective code. In practical " +"terms, \"structure\" means making clean code whose logic and dependencies" +" are clear as well as how the files and folders are organized in the " +"filesystem." msgstr "" -"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미한다. 우리는 깔끔하고 효율적인 " -"코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한 코드를 만드는" -" 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제다." +"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미한다. 우리는 깔끔하고 " +"효율적인 코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한" +" 코드를 만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제다." -#: ..\..\writing\structure.rst:11 +#: ../../writing/structure.rst:11 msgid "" -"Which functions should go into which modules? How does data flow through the" -" project? What features and functions can be grouped together and isolated? " -"By answering questions like these you can begin to plan, in a broad sense, " -"what your finished product will look like." +"Which functions should go into which modules? How does data flow through " +"the project? What features and functions can be grouped together and " +"isolated? By answering questions like these you can begin to plan, in a " +"broad sense, what your finished product will look like." msgstr "" -"어느 모듈에 어느 기능이 들어가야 할까? 프로젝트에서 데이터는 어덯게 흘러가야 할까? 어떤 특징과 기능이 통합되거나 분리되어야 할까? " -"이러한 질문에 답함으로써 프로젝트의 계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있다." +"어느 모듈에 어느 기능이 들어가야 할까? 프로젝트에서 데이터는 어덯게 흘러가야 할까? 어떤 특징과 기능이 통합되거나 분리되어야 " +"할까? 이러한 질문에 답함으로써 프로젝트의 계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있다." -#: ..\..\writing\structure.rst:16 +#: ../../writing/structure.rst:16 msgid "" -"In this section we take a closer look at Python's module and import systems " -"as they are the central elements to enforcing structure in your project. We " -"then discuss various perspectives on how to build code which can be extended" -" and tested reliably." +"In this section we take a closer look at Python's module and import " +"systems as they are the central elements to enforcing structure in your " +"project. We then discuss various perspectives on how to build code which " +"can be extended and tested reliably." msgstr "" "이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것이다. 이 2가지가 프로젝트를 위한 강력한 구조를 만들기 위한 " -"핵심적인 요소이기 때문이다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 관점에서 " -"검토할 것이다." +"핵심적인 요소이기 때문이다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 관점에서" +" 검토할 것이다." -#: ..\..\writing\structure.rst:23 -msgid "Structure is Key" +#: ../../writing/structure.rst:24 +msgid "Structure of the Repository" +msgstr "" + +#: ../../writing/structure.rst:27 +msgid "It's Important." +msgstr "" + +#: ../../writing/structure.rst:29 +msgid "" +"Just as Code Style, API Design, and Automation are essential for a " +"healthy development cycle, Repository structure is a crucial part of your" +" project's `architecture " +"`__." +msgstr "" + +#: ../../writing/structure.rst:34 +msgid "" +"When a potential user or contributor lands on your repository's page, " +"they see a few things:" +msgstr "" + +#: ../../writing/structure.rst:37 +msgid "Project Name" +msgstr "" + +#: ../../writing/structure.rst:38 +msgid "Project Description" +msgstr "" + +#: ../../writing/structure.rst:39 +msgid "Bunch O' Files" +msgstr "" + +#: ../../writing/structure.rst:41 +msgid "" +"Only when they scroll below the fold will the user see your project's " +"README." +msgstr "" + +#: ../../writing/structure.rst:44 +msgid "" +"If your repo is a massive dump of files or a nested mess of directories, " +"they might look elsewhere before even reading your beautiful " +"documentation." +msgstr "" + +#: ../../writing/structure.rst:48 +msgid "Dress for the job you want, not the job you have." +msgstr "" + +#: ../../writing/structure.rst:50 +msgid "" +"Of course, first impressions aren't everything. You and your colleagues " +"will spend countless hours working with this repository, eventually " +"becoming intimately familiar with every nook and cranny. The layout of it" +" is important." +msgstr "" + +#: ../../writing/structure.rst:56 +msgid "Sample Repository" +msgstr "" + +#: ../../writing/structure.rst:58 +msgid "" +"**tl;dr**: This is what `Kenneth Reitz `_ " +"recommends." +msgstr "" + +#: ../../writing/structure.rst:60 +msgid "" +"This repository is `available on GitHub " +"`__." +msgstr "" + +#: ../../writing/structure.rst:77 +msgid "Let's get into some specifics." +msgstr "" + +#: ../../writing/structure.rst:80 +msgid "The Actual Module" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Location" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./sample/`` or ``./sample.py``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Purpose" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "The code of interest" +msgstr "" + +#: ../../writing/structure.rst:89 +msgid "" +"Your module package is the core focus of the repository. It should not be" +" tucked away:" +msgstr "" + +#: ../../writing/structure.rst:96 +msgid "" +"If your module consists of only a single file, you can place it directly " +"in the root of your repository:" +msgstr "" + +#: ../../writing/structure.rst:103 +msgid "Your library does not belong in an ambiguous src or python subdirectory." +msgstr "" + +#: ../../writing/structure.rst:106 +msgid "License" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./LICENSE``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Lawyering up." +msgstr "" + +#: ../../writing/structure.rst:116 +msgid "" +"This is arguably the most important part of your repository, aside from " +"the source code itself. The full license text and copyright claims should" +" exist in this file." +msgstr "" + +#: ../../writing/structure.rst:120 +msgid "" +"If you aren't sure which license you should use for your project, check " +"out `choosealicense.com `_." +msgstr "" + +#: ../../writing/structure.rst:123 +msgid "" +"Of course, you are also free to publish code without a license, but this " +"would prevent many people from potentially using your code." +msgstr "" + +#: ../../writing/structure.rst:127 +msgid "Setup.py" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./setup.py``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Package and distribution management." +msgstr "" + +#: ../../writing/structure.rst:136 +msgid "" +"If your module package is at the root of your repository, this should " +"obviously be at the root as well." +msgstr "" + +#: ../../writing/structure.rst:140 +msgid "Requirements File" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./requirements.txt``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Development dependencies." +msgstr "" + +#: ../../writing/structure.rst:149 +msgid "" +"A `pip requirements file `__ should be placed at the root of the repository. " +"It should specify the dependencies required to contribute to the project:" +" testing, building, and generating documentation." +msgstr "" + +#: ../../writing/structure.rst:155 +msgid "" +"If your project has no development dependencies, or you prefer " +"development environment setup via ``setup.py``, this file may be " +"unnecessary." +msgstr "" + +#: ../../writing/structure.rst:160 +msgid "Documentation" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./docs/``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Package reference documentation." +msgstr "" + +#: ../../writing/structure.rst:169 +msgid "There is little reason for this to exist elsewhere." +msgstr "" + +#: ../../writing/structure.rst:172 +msgid "Test Suite" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./test_sample.py`` or ``./tests``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Package integration and unit tests." +msgstr "" + +#: ../../writing/structure.rst:181 +msgid "Starting out, a small test suite will often exist in a single file:" +msgstr "" + +#: ../../writing/structure.rst:187 +msgid "Once a test suite grows, you can move your tests to a directory, like so:" +msgstr "" + +#: ../../writing/structure.rst:195 +msgid "" +"Obviously, these test modules must import your packaged module to test " +"it. You can do this a few ways:" +msgstr "" + +#: ../../writing/structure.rst:198 +msgid "Expect the package to be installed in site-packages." +msgstr "" + +#: ../../writing/structure.rst:199 +msgid "" +"Use a simple (but *explicit*) path modification to resolve the package " +"properly." +msgstr "" + +#: ../../writing/structure.rst:202 +msgid "" +"I highly recommend the latter. Requiring a developer to run `setup.py " +"`__ develop to test an actively changing codebase also " +"requires them to have an isolated environment setup for each instance of " +"the codebase." +msgstr "" + +#: ../../writing/structure.rst:207 +msgid "" +"To give the individual tests import context, create a tests/context.py " +"file:" +msgstr "" + +#: ../../writing/structure.rst:218 +msgid "Then, within the individual test modules, import the module like so:" +msgstr "" + +#: ../../writing/structure.rst:224 +msgid "This will always work as expected, regardless of installation method." +msgstr "" + +#: ../../writing/structure.rst:226 +msgid "" +"Some people will assert that you should distribute your tests within your" +" module itself -- I disagree. It often increases complexity for your " +"users; many test suites often require additional dependencies and runtime" +" contexts." +msgstr "" + +#: ../../writing/structure.rst:232 +msgid "Makefile" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./Makefile``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Generic management tasks." +msgstr "" + +#: ../../writing/structure.rst:242 +msgid "" +"If you look at most of my projects or any Pocoo project, you'll notice a " +"Makefile laying around. Why? These projects aren't written in C... In " +"short, make is a incredibly useful tool for defining generic tasks for " +"your project." +msgstr "" + +#: ../../writing/structure.rst:247 +msgid "**Sample Makefile:**" +msgstr "" + +#: ../../writing/structure.rst:259 +msgid "" +"Other generic management scripts (e.g. ``manage.py`` or ``fabfile.py``) " +"belong at the root of the repository as well." +msgstr "" + +#: ../../writing/structure.rst:263 +msgid "Regarding Django Applications" +msgstr "" + +#: ../../writing/structure.rst:265 +msgid "" +"I've noticed a new trend in Django applications since the release of " +"Django 1.4. Many developers are structuring their repositories poorly due" +" to the new bundled application templates." +msgstr "" + +#: ../../writing/structure.rst:269 +msgid "" +"How? Well, they go to their bare and fresh repository and run the " +"following, as they always have:" +msgstr "" + +#: ../../writing/structure.rst:276 +msgid "The resulting repository structure looks like this:" +msgstr "" + +#: ../../writing/structure.rst:286 +msgid "Don't do this." +msgstr "" + +#: ../../writing/structure.rst:288 +msgid "" +"Repetitive paths are confusing for both your tools and your developers. " +"Unnecessary nesting doesn't help anybody (unless they're nostalgic for " +"monolithic SVN repos)." +msgstr "" + +#: ../../writing/structure.rst:292 +msgid "Let's do it properly:" +msgstr "" + +#: ../../writing/structure.rst:298 +msgid "Note the \"``.``\"." +msgstr "" + +#: ../../writing/structure.rst:300 +msgid "The resulting structure:" +msgstr "" + +#: ../../writing/structure.rst:314 +#, fuzzy +msgid "Structure of Code is Key" msgstr "구성이 중요하다" -#: ..\..\writing\structure.rst:25 +#: ../../writing/structure.rst:316 msgid "" "Thanks to the way imports and modules are handled in Python, it is " -"relatively easy to structure a Python project. Easy, here, means that you do" -" not have many constraints and that the module importing model is easy to " -"grasp. Therefore, you are left with the pure architectural task of crafting " -"the different parts of your project and their interactions." +"relatively easy to structure a Python project. Easy, here, means that you" +" do not have many constraints and that the module importing model is easy" +" to grasp. Therefore, you are left with the pure architectural task of " +"crafting the different parts of your project and their interactions." msgstr "" -"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽다. 여기서 쉽다는 말은 제약이 많지 않고, 모듈을 " -"불러오는 방식이 이해하기 쉽다는 뜻이다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 하면 된다." +"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽다. 여기서 쉽다는 말은 제약이 많지 않고, " +"모듈을 불러오는 방식이 이해하기 쉽다는 뜻이다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 " +"하면 된다." -#: ..\..\writing\structure.rst:32 +#: ../../writing/structure.rst:323 msgid "" -"Easy structuring of a project means it is also easy to do it poorly. Some " -"signs of a poorly structured project include:" -msgstr "" -"프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻이다. 프로젝트가 엉망으로 구성되었다는 신호를 몇 가지 찾아보았다." +"Easy structuring of a project means it is also easy to do it poorly. Some" +" signs of a poorly structured project include:" +msgstr "프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻이다. 프로젝트가 엉망으로 구성되었다는 신호를 몇 가지 찾아보았다." -#: ..\..\writing\structure.rst:36 +#: ../../writing/structure.rst:327 msgid "" -"Multiple and messy circular dependencies: if your classes Table and Chair in" -" :file:`furn.py` need to import Carpenter from :file:`workers.py` to answer " -"a question such as ``table.isdoneby()``, and if conversely the class " -"Carpenter needs to import Table and Chair, to answer the question " -"``carpenter.whatdo()``, then you have a circular dependency. In this case " -"you will have to resort to fragile hacks such as using import statements " -"inside methods or functions." +"Multiple and messy circular dependencies: if your classes Table and Chair" +" in :file:`furn.py` need to import Carpenter from :file:`workers.py` to " +"answer a question such as ``table.isdoneby()``, and if conversely the " +"class Carpenter needs to import Table and Chair, to answer the question " +"``carpenter.whatdo()``, then you have a circular dependency. In this case" +" you will have to resort to fragile hacks such as using import statements" +" inside methods or functions." msgstr "" "복잡한 순환 참조: ``책상.누가 만들었나()`` 같은 질문에 답하려면 :file:`가구.py` 의 탁자와 의자가 " ":file:`작업자.py` 에서 목수를 불러와야 하는데, 반대로 ``목수.뭐하니()`` 같은 질문에 답하려면 목수가 책상과 의자를 " -"불러와야만 하는 경우가 있다. 이것이 순환 참조다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 난도질스러운 " -"방법에 의존하는 수 밖에 없다." +"불러와야만 하는 경우가 있다. 이것이 순환 참조다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 " +"난도질스러운 방법에 의존하는 수 밖에 없다." -#: ..\..\writing\structure.rst:45 +#: ../../writing/structure.rst:336 msgid "" -"Hidden coupling: each and every change in Table's implementation breaks 20 " -"tests in unrelated test cases because it breaks Carpenter's code, which " -"requires very careful surgery to adapt the change. This means you have too " -"many assumptions about Table in Carpenter's code or the reverse." +"Hidden coupling: each and every change in Table's implementation breaks " +"20 tests in unrelated test cases because it breaks Carpenter's code, " +"which requires very careful surgery to adapt the change. This means you " +"have too many assumptions about Table in Carpenter's code or the reverse." msgstr "" -"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 한다. 책상의 코드 변경이 목수의 코드를" -" 무너뜨리기 때문이다. 이럴 때 코드 변경을 하려면 아주 신중한 수술을 해야한다. 이 말인즉, 목수의 코드 안에 있는 책상의 코드를 " -"변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻이다." +"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 한다. 책상의 코드 변경이 목수의 " +"코드를 무너뜨리기 때문이다. 이럴 때 코드 변경을 하려면 아주 신중한 수술을 해야한다. 이 말인즉, 목수의 코드 안에 있는 책상의 " +"코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻이다." -#: ..\..\writing\structure.rst:51 +#: ../../writing/structure.rst:342 msgid "" "Heavy usage of global state or context: instead of explicitly passing " -"``(height, width, type, wood)`` to each other, Table and Carpenter rely on " -"global variables that can be modified and are modified on the fly by " +"``(height, width, type, wood)`` to each other, Table and Carpenter rely " +"on global variables that can be modified and are modified on the fly by " "different agents. You need to scrutinize all access to these global " "variables to understand why a rectangular table became a square, and " -"discover that remote template code is also modifying this context, messing " -"with table dimensions." +"discover that remote template code is also modifying this context, " +"messing with table dimensions." msgstr "" -"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우다. 목수가 언제든 아무나 " -"바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생긴다. 어쩌다가 이런 일이 벌어졌는지를 " -"조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 견본 코드가 문맥을 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 것이다." +"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우다. 목수가 언제든 " +"아무나 바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생긴다. 어쩌다가 이런 일이 " +"벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 견본 코드가 문맥을 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 " +"것이다." -#: ..\..\writing\structure.rst:60 +#: ../../writing/structure.rst:351 msgid "" -"Spaghetti code: multiple pages of nested if clauses and for loops with a lot" -" of copy-pasted procedural code and no proper segmentation are known as " -"spaghetti code. Python's meaningful indentation (one of its most " -"controversial features) make it very hard to maintain this kind of code. So " -"the good news is that you might not see too much of it." +"Spaghetti code: multiple pages of nested if clauses and for loops with a " +"lot of copy-pasted procedural code and no proper segmentation are known " +"as spaghetti code. Python's meaningful indentation (one of its most " +"controversial features) make it very hard to maintain this kind of code. " +"So the good news is that you might not see too much of it." msgstr "" -"스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 나눠지지도 " -"않은 코드를 스파게티 코드라고 한다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 복잡하고 어지러운 코드는" -" 유지 보수하기가 어렵다. 다행히 이런 난장판을 많이 볼 일은 없을 것이다." +"스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 " +"나눠지지도 않은 코드를 스파게티 코드라고 한다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 복잡하고" +" 어지러운 코드는 유지 보수하기가 어렵다. 다행히 이런 난장판을 많이 볼 일은 없을 것이다." -#: ..\..\writing\structure.rst:67 +#: ../../writing/structure.rst:358 msgid "" -"Ravioli code is more likely in Python: it consists of hundreds of similar " -"little pieces of logic, often classes or objects, without proper structure. " -"If you never can remember if you have to use FurnitureTable, AssetTable or " -"Table, or even TableNew for your task at hand, you might be swimming in " -"ravioli code." +"Ravioli code is more likely in Python: it consists of hundreds of similar" +" little pieces of logic, often classes or objects, without proper " +"structure. If you never can remember if you have to use FurnitureTable, " +"AssetTable or Table, or even TableNew for your task at hand, you might be" +" swimming in ravioli code." msgstr "" "라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있다. 구조화도 되어있지 않으면서 수 백개의 비슷한 " -"로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 한다. 식탁을 써야하는지, 탁자를 써야하는지, 그도 아니면" -" 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것이다." +"로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 한다. 식탁을 써야하는지, 탁자를 써야하는지, 그도 " +"아니면 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것이다." -#: ..\..\writing\structure.rst:75 +#: ../../writing/structure.rst:366 msgid "Modules" msgstr "모듈" -#: ..\..\writing\structure.rst:77 +#: ../../writing/structure.rst:368 msgid "" -"Python modules are one of the main abstraction layers available and probably" -" the most natural one. Abstraction layers allow separating code into parts " -"holding related data and functionality." +"Python modules are one of the main abstraction layers available and " +"probably the most natural one. Abstraction layers allow separating code " +"into parts holding related data and functionality." msgstr "" -"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운" -"모습이다. 추상 레이어는 코드를 기능 파트와 데이터 저장 파트로 나눌 수 있도록 해준다." +"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운모습이다. 추상 레이어는 코드를 기능 파트와" +" 데이터 저장 파트로 나눌 수 있도록 해준다." -#: ..\..\writing\structure.rst:81 +#: ../../writing/structure.rst:372 msgid "" -"For example, a layer of a project can handle interfacing with user actions, " -"while another would handle low-level manipulation of data. The most natural " -"way to separate these two layers is to regroup all interfacing functionality" -" in one file, and all low-level operations in another file. In this case, " -"the interface file needs to import the low-level file. This is done with the" -" ``import`` and ``from ... import`` statements." +"For example, a layer of a project can handle interfacing with user " +"actions, while another would handle low-level manipulation of data. The " +"most natural way to separate these two layers is to regroup all " +"interfacing functionality in one file, and all low-level operations in " +"another file. In this case, the interface file needs to import the low-" +"level file. This is done with the ``import`` and ``from ... import`` " +"statements." msgstr "" -"예를 들어 프로젝트의 레이어 중 하나는 사용자 인터페이스를 담당하고, 다른 하나는 " -"저수준의 데이터 처리를 담당할 수도 있다. 이 두 레이어를 분리시키는 가장 자연스러운" -"방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각 하나의 파일에 " -"넣는 것이다. 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 한다." -"이는 ``import`` 와 ``from ... import`` 구문으로 가능하다." +"예를 들어 프로젝트의 레이어 중 하나는 사용자 인터페이스를 담당하고, 다른 하나는 저수준의 데이터 처리를 담당할 수도 있다. 이 두" +" 레이어를 분리시키는 가장 자연스러운방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각 하나의 파일에 넣는 " +"것이다. 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 한다.이는 ``import`` 와 ``from ... " +"import`` 구문으로 가능하다." -#: ..\..\writing\structure.rst:88 +#: ../../writing/structure.rst:379 msgid "" -"As soon as you use `import` statements you use modules. These can be either " -"built-in modules such as `os` and `sys`, third-party modules you have " -"installed in your environment, or your project's internal modules." +"As soon as you use `import` statements you use modules. These can be " +"either built-in modules such as `os` and `sys`, third-party modules you " +"have installed in your environment, or your project's internal modules." msgstr "" -"`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있다. 이는 내장 모듈인" -"`os`, `sys`, 프로젝트에 포함시킨 모듈과 따로 설치한 서드파티 모듈도 마찬가지다." - +"`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있다. 이는 내장 모듈인`os`, `sys`, 프로젝트에 포함시킨 " +"모듈과 따로 설치한 서드파티 모듈도 마찬가지다." -#: ..\..\writing\structure.rst:92 +#: ../../writing/structure.rst:383 msgid "" -"To keep in line with the style guide, keep module names short, lowercase, " -"and be sure to avoid using special symbols like the dot (.) or question mark" -" (?). So a file name like :file:`my.spam.py` is one you should avoid! Naming" -" this way will interfere with the way Python looks for modules." +"To keep in line with the style guide, keep module names short, lowercase," +" and be sure to avoid using special symbols like the dot (.) or question " +"mark (?). So a file name like :file:`my.spam.py` is one you should avoid!" +" Naming this way will interfere with the way Python looks for modules." msgstr "" -"본 안내서의 스타일 가이드의 방침을 따르려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나" -"물음표(?) 같은 특수 문자의 사용을 지양해야 한다. 그러니까 :file:`my.spam.py` 같은" -"이름으로 만들면 안된다! 파이썬이 모듈을 찾는 걸 방해한다." +"본 안내서의 스타일 가이드의 방침을 따르려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나물음표(?) 같은 특수 문자의 사용을 " +"지양해야 한다. 그러니까 :file:`my.spam.py` 같은이름으로 만들면 안된다! 파이썬이 모듈을 찾는 걸 방해한다." -#: ..\..\writing\structure.rst:97 +#: ../../writing/structure.rst:388 msgid "" -"In the case of `my.spam.py` Python expects to find a :file:`spam.py` file in" -" a folder named :file:`my` which is not the case. There is an `example " -"`_ of how the dot " -"notation should be used in the Python docs." +"In the case of `my.spam.py` Python expects to find a :file:`spam.py` file" +" in a folder named :file:`my` which is not the case. There is an `example" +" `_ of how the dot" +" notation should be used in the Python docs." msgstr "" -"`my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` " -"이라는 이름의 파일을 찾는다. 이는 잘못된 경우다. 아래 글을 참조하기 바란다." -"파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한" -" `예시 `_ " +"`my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` 이라는 이름의 " +"파일을 찾는다. 이는 잘못된 경우다. 아래 글을 참조하기 바란다.파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한 `예시 " +"`_ " -#: ..\..\writing\structure.rst:102 +#: ../../writing/structure.rst:393 msgid "" -"If you'd like you could name your module :file:`my_spam.py`, but even our " -"friend the underscore should not be seen often in module names." +"If you'd like you could name your module :file:`my_spam.py`, but even our" +" friend the underscore should not be seen often in module names." msgstr "" -":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능하다. 하지만 우리의 친구" -"밑줄(_)은 모듈 이름으로는 자주 쓰이지 않는다." +":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능하다. 하지만 우리의 친구밑줄(_)은 모듈 이름으로는 자주 쓰이지" +" 않는다." -#: ..\..\writing\structure.rst:105 +#: ../../writing/structure.rst:396 msgid "" "Aside from some naming restrictions, nothing special is required for a " -"Python file to be a module, but you need to understand the import mechanism " -"in order to use this concept properly and avoid some issues." +"Python file to be a module, but you need to understand the import " +"mechanism in order to use this concept properly and avoid some issues." msgstr "" -"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없다. " -"하지만 모듈이라는 개념을 잘 사용하고 문제를 발생시키지 않기 위해서는, 모듈을 불러오는 " -"방법을 이해할 필요가 있다." +"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없다. 하지만 모듈이라는 개념을 잘 사용하고 " +"문제를 발생시키지 않기 위해서는, 모듈을 불러오는 방법을 이해할 필요가 있다." -#: ..\..\writing\structure.rst:109 +#: ../../writing/structure.rst:400 msgid "" "Concretely, the ``import modu`` statement will look for the proper file, " -"which is :file:`modu.py` in the same directory as the caller if it exists. " -"If it is not found, the Python interpreter will search for :file:`modu.py` " -"in the \"path\" recursively and raise an ImportError exception if it is not " -"found." +"which is :file:`modu.py` in the same directory as the caller if it " +"exists. If it is not found, the Python interpreter will search for " +":file:`modu.py` in the \"path\" recursively and raise an ImportError " +"exception if it is not found." msgstr "" -"구체적으로 살펴보자. ``import modu`` 구문이 있으면 이는 호출자로서 같은 디렉토리 " -"안에서 적절한 파일, 즉 :file:`modu.py` 라는 파일을 찾는다. 만약 해당 파일이" -"발견되지 않는다면 파이썬 인터프리터는 :file:`modu.py` 파일을 \"path\" 에서" -"재귀적으로 찾는다. 그래도 발견되지 않으면 ImportError exception을 띄운다." +"구체적으로 살펴보자. ``import modu`` 구문이 있으면 이는 호출자로서 같은 디렉토리 안에서 적절한 파일, 즉 " +":file:`modu.py` 라는 파일을 찾는다. 만약 해당 파일이발견되지 않는다면 파이썬 인터프리터는 " +":file:`modu.py` 파일을 \"path\" 에서재귀적으로 찾는다. 그래도 발견되지 않으면 ImportError " +"exception을 띄운다." -#: ..\..\writing\structure.rst:114 +#: ../../writing/structure.rst:405 msgid "" "Once :file:`modu.py` is found, the Python interpreter will execute the " -"module in an isolated scope. Any top-level statement in :file:`modu.py` will" -" be executed, including other imports if any. Function and class definitions" -" are stored in the module's dictionary." +"module in an isolated scope. Any top-level statement in :file:`modu.py` " +"will be executed, including other imports if any. Function and class " +"definitions are stored in the module's dictionary." msgstr "" -"일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행한다." -" :file:`modu.py` 모듈 안의 모든 최상위 구문이 실행된다. 불러온 다른 모듈이 있다면" -"그것도 함께 실행된다. 함수와 클래스 정의는 모듈의 디렉토리에 저장된다." +"일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행한다. :file:`modu.py` " +"모듈 안의 모든 최상위 구문이 실행된다. 불러온 다른 모듈이 있다면그것도 함께 실행된다. 함수와 클래스 정의는 모듈의 디렉토리에 " +"저장된다." -#: ..\..\writing\structure.rst:119 +#: ../../writing/structure.rst:410 msgid "" -"Then, the module's variables, functions, and classes will be available to " -"the caller through the module's namespace, a central concept in programming " -"that is particularly helpful and powerful in Python." +"Then, the module's variables, functions, and classes will be available to" +" the caller through the module's namespace, a central concept in " +"programming that is particularly helpful and powerful in Python." msgstr "" -"그런 다음, 모듈의 변수와 함수, 그리고 클래스는 프로그래밍의 핵심적인 개념이자," -" 특히 파이썬에서는 더욱 유용하고 강력하게 쓰이는 모듈의 명칭 공간(namespace)" -"을 통해 호출자가 사용할 수 있게 된다. " +"그런 다음, 모듈의 변수와 함수, 그리고 클래스는 프로그래밍의 핵심적인 개념이자, 특히 파이썬에서는 더욱 유용하고 강력하게 쓰이는 " +"모듈의 명칭 공간(namespace)을 통해 호출자가 사용할 수 있게 된다. " -#: ..\..\writing\structure.rst:123 +#: ../../writing/structure.rst:414 msgid "" -"In many languages, an ``include file`` directive is used by the preprocessor" -" to take all code found in the file and 'copy' it into the caller's code. It" -" is different in Python: the included code is isolated in a module " -"namespace, which means that you generally don't have to worry that the " -"included code could have unwanted effects, e.g. override an existing " -"function with the same name." +"In many languages, an ``include file`` directive is used by the " +"preprocessor to take all code found in the file and 'copy' it into the " +"caller's code. It is different in Python: the included code is isolated " +"in a module namespace, which means that you generally don't have to worry" +" that the included code could have unwanted effects, e.g. override an " +"existing function with the same name." msgstr "" -"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와" -"호출자에 '복사'해 넣는 명령어로 사용된다. 하지만 파이썬에서는 다르다. 모듈에 포함된" -"코드는 명칭 공간에 독립적으로 실행된다. 이는 일반적으로 모듈에 포함된 코드가 오작동을" -"하는 경우가 없다는 뜻이다. " +"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와호출자에" +" '복사'해 넣는 명령어로 사용된다. 하지만 파이썬에서는 다르다. 모듈에 포함된코드는 명칭 공간에 독립적으로 실행된다. 이는 " +"일반적으로 모듈에 포함된 코드가 오작동을하는 경우가 없다는 뜻이다. " -#: ..\..\writing\structure.rst:129 +#: ../../writing/structure.rst:420 msgid "" "It is possible to simulate the more standard behavior by using a special " -"syntax of the import statement: ``from modu import *``. This is generally " -"considered bad practice. **Using** ``import *`` **makes code harder to read " -"and makes dependencies less compartmentalized**." -msgstr "" -"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 " -"작동하는지 확인해보자. 일반적으로 이러한 구문은 잘못된 습관이다. " -" **Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, " -"코드의 독립성 여부를 판단하기 어렵게 한다." - -#: ..\..\writing\structure.rst:134 -msgid "" -"Using ``from modu import func`` is a way to pinpoint the function you want " -"to import and put it in the global namespace. While much less harmful than " -"``import *`` because it shows explicitly what is imported in the global " -"namespace, its only advantage over a simpler ``import modu`` is that it will" -" save a little typing." -msgstr "" -"``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 " -"전역 명칭 공간(global namespace)에 넣어둘 수 있는 좋은 방법이다. " -"뿐만 아니라 이 구문은 전역 명칭 공간(global namespace)에 무엇을 불러올지를" -"명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭다. 단순히 ``import *`` " -"구문을 사용하는 것은 단지 타이핑을 덜 한다는 이점 뿐이다." - -#: ..\..\writing\structure.rst:139 +"syntax of the import statement: ``from modu import *``. This is generally" +" considered bad practice. **Using** ``import *`` **makes code harder to " +"read and makes dependencies less compartmentalized**." +msgstr "" +"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 작동하는지 확인해보자. 일반적으로 " +"이러한 구문은 잘못된 습관이다. **Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, 코드의 독립성 " +"여부를 판단하기 어렵게 한다." + +#: ../../writing/structure.rst:425 +msgid "" +"Using ``from modu import func`` is a way to pinpoint the function you " +"want to import and put it in the global namespace. While much less " +"harmful than ``import *`` because it shows explicitly what is imported in" +" the global namespace, its only advantage over a simpler ``import modu`` " +"is that it will save a little typing." +msgstr "" +"``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 전역 명칭 공간(global " +"namespace)에 넣어둘 수 있는 좋은 방법이다. 뿐만 아니라 이 구문은 전역 명칭 공간(global namespace)에 " +"무엇을 불러올지를명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭다. 단순히 ``import *`` 구문을 사용하는 " +"것은 단지 타이핑을 덜 한다는 이점 뿐이다." + +#: ../../writing/structure.rst:431 msgid "**Very bad**" msgstr "**최악**" -#: ..\..\writing\structure.rst:148 +#: ../../writing/structure.rst:440 msgid "**Better**" msgstr "**최악보다는 낫다**" -#: ..\..\writing\structure.rst:156 ..\..\writing\structure.rst:443 +#: ../../writing/structure.rst:448 ../../writing/structure.rst:810 msgid "**Best**" msgstr "**최고**" -#: ..\..\writing\structure.rst:164 +#: ../../writing/structure.rst:456 msgid "" "As mentioned in the :ref:`code_style` section, readability is one of the " -"main features of Python. Readability means to avoid useless boilerplate text" -" and clutter, therefore some efforts are spent trying to achieve a certain " -"level of brevity. But terseness and obscurity are the limits where brevity " -"should stop. Being able to tell immediately where a class or function comes " -"from, as in the ``modu.func`` idiom, greatly improves code readability and " -"understandability in all but the simplest single file projects." -msgstr "" -":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나다." -"가독성이란 쓸데없이 긴 본문과 잡동사니를 피한다는 뜻이다. 그러므로 어느 수준까지는" -"간결성을 얻고자 하는 노력이 필요하다. 그러나 너무 간결한 나머지 모호해서는 안된다." -" ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은" -"코드의 가독성과 이해용이성을 크게 놓여준다." -"단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇다." - -#: ..\..\writing\structure.rst:174 +"main features of Python. Readability means to avoid useless boilerplate " +"text and clutter, therefore some efforts are spent trying to achieve a " +"certain level of brevity. But terseness and obscurity are the limits " +"where brevity should stop. Being able to tell immediately where a class " +"or function comes from, as in the ``modu.func`` idiom, greatly improves " +"code readability and understandability in all but the simplest single " +"file projects." +msgstr "" +":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나다.가독성이란 쓸데없이 긴 본문과 " +"잡동사니를 피한다는 뜻이다. 그러므로 어느 수준까지는간결성을 얻고자 하는 노력이 필요하다. 그러나 너무 간결한 나머지 모호해서는 " +"안된다. ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은코드의 가독성과 이해용이성을 크게 " +"놓여준다.단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇다." + +#: ../../writing/structure.rst:466 msgid "Packages" msgstr "패키지" -#: ..\..\writing\structure.rst:176 +#: ../../writing/structure.rst:468 msgid "" -"Python provides a very straightforward packaging system, which is simply an " -"extension of the module mechanism to a directory." -msgstr "" -"파이썬은 아주 간단한 패키지 만들기 시스템을 제공한다. 이 시스템은 단순히 " -"파이썬 모듈 구조를 디렉토리로 확장한 것이다." +"Python provides a very straightforward packaging system, which is simply " +"an extension of the module mechanism to a directory." +msgstr "파이썬은 아주 간단한 패키지 만들기 시스템을 제공한다. 이 시스템은 단순히 파이썬 모듈 구조를 디렉토리로 확장한 것이다." -#: ..\..\writing\structure.rst:179 +#: ../../writing/structure.rst:471 msgid "" "Any directory with an :file:`__init__.py` file is considered a Python " "package. The different modules in the package are imported in a similar " @@ -336,464 +676,500 @@ msgid "" ":file:`__init__.py` file, which is used to gather all package-wide " "definitions." msgstr "" -":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식된다." -"패키지의 여러 다른 모듈들은 일반적인 모듈과 비슷한 방법으로 불러와진다." -"그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별하다." -"이 파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰인다." +":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식된다.패키지의 여러 다른 모듈들은 일반적인 모듈과 " +"비슷한 방법으로 불러와진다.그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별하다.이 " +"파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰인다." -#: ..\..\writing\structure.rst:184 +#: ../../writing/structure.rst:476 msgid "" -"A file :file:`modu.py` in the directory :file:`pack/` is imported with the " -"statement ``import pack.modu``. This statement will look for an " +"A file :file:`modu.py` in the directory :file:`pack/` is imported with " +"the statement ``import pack.modu``. This statement will look for an " ":file:`__init__.py` file in :file:`pack`, execute all of its top-level " "statements. Then it will look for a file named :file:`pack/modu.py` and " "execute all of its top-level statements. After these operations, any " -"variable, function, or class defined in :file:`modu.py` is available in the " -"pack.modu namespace." +"variable, function, or class defined in :file:`modu.py` is available in " +"the pack.modu namespace." msgstr "" -":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로" -"불러와진다. 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾는다." -"그리고 해당 패키지의 모든 상위 구문을 실행한다. 이 작업 후에 :file:`modu.py` " -"파일에 정의된 모든 변수나 함수, 클래스를 pack.modu 명칭 공간(namespace)에서" -" 쓸 수 있다." +":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로불러와진다." +" 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾는다.그리고 해당 패키지의 모든 상위 구문을" +" 실행한다. 이 작업 후에 :file:`modu.py` 파일에 정의된 모든 변수나 함수, 클래스를 pack.modu 명칭 " +"공간(namespace)에서 쓸 수 있다." -#: ..\..\writing\structure.rst:190 +#: ../../writing/structure.rst:484 msgid "" -"A commonly seen issue is to add too much code to :file:`__init__.py` files. " -"When the project complexity grows, there may be sub-packages and sub-sub-" -"packages in a deep directory structure. In this case, importing a single " -"item from a sub-sub-package will require executing all :file:`__init__.py` " -"files met while traversing the tree." +"A commonly seen issue is to add too much code to :file:`__init__.py` " +"files. When the project complexity grows, there may be sub-packages and " +"sub-sub-packages in a deep directory structure. In this case, importing a" +" single item from a sub-sub-package will require executing all " +":file:`__init__.py` files met while traversing the tree." msgstr "" -"일반적으로 보이는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우다. " -"프로젝트가 복잡해질수록 디렉토리 구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을" -" 수 있다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 불러오려고 했더니" -" 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 " -"실행하게 될 때가 있다." +"일반적으로 보이는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우다. 프로젝트가 복잡해질수록 " +"디렉토리 구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을 수 있다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 " +"불러오려고 했더니 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 실행하게 될 때가 있다." -#: ..\..\writing\structure.rst:196 +#: ../../writing/structure.rst:490 msgid "" -"Leaving an :file:`__init__.py` file empty is considered normal and even a " -"good practice, if the package's modules and sub-packages do not need to " +"Leaving an :file:`__init__.py` file empty is considered normal and even a" +" good practice, if the package's modules and sub-packages do not need to " "share any code." msgstr "" -"따라서 패키지의 모듈과 서브-패키지에서 코드를 서로 공유할 필요가 없다면 " -":file:`__init__.py` 은 빈 파일로 남겨두는게 일반적일 뿐만 아니라 좋은 습관이다." +"따라서 패키지의 모듈과 서브-패키지에서 코드를 서로 공유할 필요가 없다면 :file:`__init__.py` 은 빈 파일로 " +"남겨두는게 일반적일 뿐만 아니라 좋은 습관이다." -#: ..\..\writing\structure.rst:199 +#: ../../writing/structure.rst:494 msgid "" "Lastly, a convenient syntax is available for importing deeply nested " -"packages: ``import very.deep.module as mod``. This allows you to use `mod` " -"in place of the verbose repetition of ``very.deep.module``." +"packages: ``import very.deep.module as mod``. This allows you to use " +"`mod` in place of the verbose repetition of ``very.deep.module``." msgstr "" -"마지막으로 패키지 안쪽 깊숙히 불러올 수 있는 편리한 구문이 있다." -"``import very.deep.module as mod`` 이다. 이 구문은 ``very.deep.module``" -"같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를 사용할 수 있게 해준다." +"마지막으로 패키지 안쪽 깊숙히 불러올 수 있는 편리한 구문이 있다.``import very.deep.module as mod`` " +"이다. 이 구문은 ``very.deep.module``같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를 사용할 수 " +"있게 해준다." -#: ..\..\writing\structure.rst:204 +#: ../../writing/structure.rst:499 msgid "Object-oriented programming" msgstr "객체지향 프로그래밍" -#: ..\..\writing\structure.rst:206 +#: ../../writing/structure.rst:501 msgid "" -"Python is sometimes described as an object-oriented programming language. " -"This can be somewhat misleading and needs to be clarified." -msgstr "" -"파이썬은 종종 객체지향 프로그래밍 언어라고 설명된다." -"이는 다소 오해의 여지가 있기에 명확히 할 필요가 있다." +"Python is sometimes described as an object-oriented programming language." +" This can be somewhat misleading and needs to be clarified." +msgstr "파이썬은 종종 객체지향 프로그래밍 언어라고 설명된다.이는 다소 오해의 여지가 있기에 명확히 할 필요가 있다." -#: ..\..\writing\structure.rst:209 +#: ../../writing/structure.rst:504 +#, fuzzy msgid "" -"In Python, everything is an object, and can be handled as such. This is what" -" is meant when we say, for example, that functions are first-class objects. " -"Functions, classes, strings, and even types are objects in Python: like any " -"objects, they have a type, they can be passed as function arguments, they " -"may have methods and properties. In this understanding, Python is an object-" -"oriented language." +"In Python, everything is an object, and can be handled as such. This is " +"what is meant when we say, for example, that functions are first-class " +"objects. Functions, classes, strings, and even types are objects in " +"Python: like any object, they have a type, they can be passed as function" +" arguments, and they may have methods and properties. In this " +"understanding, Python is an object-oriented language." msgstr "" -"파이썬에서 모든 것은 객체다. 그리고 객체처럼 다룰 수 있다. 말하자면 first-class 객체를" -" 예로 들 수 있다. 함수, 클래스, 문자열, 심지어 타입도 파이썬에서는 객체다. " -"다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 있다. 또한 메소드와" -"속성을 가질 수도 있다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것이다." +"파이썬에서 모든 것은 객체다. 그리고 객체처럼 다룰 수 있다. 말하자면 first-class 객체를 예로 들 수 있다. 함수, " +"클래스, 문자열, 심지어 타입도 파이썬에서는 객체다. 다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 있다. 또한" +" 메소드와속성을 가질 수도 있다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것이다." -#: ..\..\writing\structure.rst:216 +#: ../../writing/structure.rst:511 msgid "" -"However, unlike Java, Python does not impose object-oriented programming as " -"the main programming paradigm. It is perfectly viable for a Python project " -"to not be object-oriented, i.e. to use no or very few class definitions, " -"class inheritance, or any other mechanisms that are specific to object-" -"oriented programming." +"However, unlike Java, Python does not impose object-oriented programming " +"as the main programming paradigm. It is perfectly viable for a Python " +"project to not be object-oriented, i.e. to use no or very few class " +"definitions, class inheritance, or any other mechanisms that are specific" +" to object-oriented programming." msgstr "" -"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 " -"있지 않다. 객체지향으로 만들지 않은 파이썬 프로젝트도 완벽하게 실행 가능하다. " -"즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있다." -"클래스 상속이나 객체지향 프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지다." +"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 있지 않다. 객체지향으로 만들지 않은 파이썬 " +"프로젝트도 완벽하게 실행 가능하다. 즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있다.클래스 상속이나 객체지향 " +"프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지다." -#: ..\..\writing\structure.rst:222 +#: ../../writing/structure.rst:517 msgid "" -"Moreover, as seen in the modules_ section, the way Python handles modules " -"and namespaces gives the developer a natural way to ensure the encapsulation" -" and separation of abstraction layers, both being the most common reasons to" -" use object-orientation. Therefore, Python programmers have more latitude to" -" not use object-orientation, when it is not required by the business model." +"Moreover, as seen in the modules_ section, the way Python handles modules" +" and namespaces gives the developer a natural way to ensure the " +"encapsulation and separation of abstraction layers, both being the most " +"common reasons to use object-orientation. Therefore, Python programmers " +"have more latitude to not use object-orientation, when it is not required" +" by the business model." msgstr "" -"게다가 modules 섹션에서 볼 수 있듯이 파이썬이 모듈과 명칭 공간(namespace)를 다루는 방식은" -"개발자로 하여금 자연스럽게 캡슐화와 추상 레이어의 분리를 가능하게 해준다. 캡슐화와 추상 레이어의 " -"분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유다. 그러므로 파이썬 프로그래머는 비지니스 모델이" -" 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 된다." +"게다가 modules 섹션에서 볼 수 있듯이 파이썬이 모듈과 명칭 공간(namespace)를 다루는 방식은개발자로 하여금 자연스럽게" +" 캡슐화와 추상 레이어의 분리를 가능하게 해준다. 캡슐화와 추상 레이어의 분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유다. " +"그러므로 파이썬 프로그래머는 비지니스 모델이 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 된다." -#: ..\..\writing\structure.rst:229 +#: ../../writing/structure.rst:524 msgid "" "There are some reasons to avoid unnecessary object-orientation. Defining " -"custom classes is useful when we want to glue together some state and some " -"functionality. The problem, as pointed out by the discussions about " +"custom classes is useful when we want to glue together some state and " +"some functionality. The problem, as pointed out by the discussions about " "functional programming, comes from the \"state\" part of the equation." msgstr "" -"불필요한 객체지향을 피해야 할 이유는 여러가지가 있다. 어떤 구문과 기능은 한데 모아두는 편이 " -"더 유용할 때가 있다. 이럴 때는 사용자 정의 클래스를 정의해서 쓰면 편리하다. 문제는 " -"함수형 프로그래밍의 문제점으로 지적되는 등식 부분의 \"구문\" 에서 발생한다." +"불필요한 객체지향을 피해야 할 이유는 여러가지가 있다. 어떤 구문과 기능은 한데 모아두는 편이 더 유용할 때가 있다. 이럴 때는 " +"사용자 정의 클래스를 정의해서 쓰면 편리하다. 문제는 함수형 프로그래밍의 문제점으로 지적되는 등식 부분의 \"구문\" 에서 " +"발생한다." -#: ..\..\writing\structure.rst:234 +#: ../../writing/structure.rst:529 msgid "" "In some architectures, typically web applications, multiple instances of " -"Python processes are spawned to respond to external requests that can happen" -" at the same time. In this case, holding some state into instantiated " -"objects, which means keeping some static information about the world, is " -"prone to concurrency problems or race-conditions. Sometimes, between the " -"initialization of the state of an object (usually done with the " -"``__init__()`` method) and the actual use of the object state through one of" -" its methods, the world may have changed, and the retained state may be " -"outdated. For example, a request may load an item in memory and mark it as " -"read by a user. If another request requires the deletion of this item at the" -" same time, it may happen that the deletion actually occurs after the first " -"process loaded the item, and then we have to mark as read a deleted object." +"Python processes are spawned to respond to external requests that can " +"happen at the same time. In this case, holding some state into " +"instantiated objects, which means keeping some static information about " +"the world, is prone to concurrency problems or race-conditions. " +"Sometimes, between the initialization of the state of an object (usually " +"done with the ``__init__()`` method) and the actual use of the object " +"state through one of its methods, the world may have changed, and the " +"retained state may be outdated. For example, a request may load an item " +"in memory and mark it as read by a user. If another request requires the " +"deletion of this item at the same time, it may happen that the deletion " +"actually occurs after the first process loaded the item, and then we have" +" to mark as read a deleted object." msgstr "" -"어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생한다. 동시에 " -"발생하는 외부의 요청에 응답하기 위해서다. 이런 경우에는 구문의 실행이 멈춰져 " -" 예정된 오브젝트가 된다. " -"즉 어떤 고정된 정보를 계속 잡고 있는 것이다. 이때문에 동시성의 문제나 경합 상황이 발생하기 쉽다." +"어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생한다. 동시에 발생하는 외부의 요청에 응답하기 " +"위해서다. 이런 경우에는 구문의 실행이 멈춰져 예정된 오브젝트가 된다. 즉 어떤 고정된 정보를 계속 잡고 있는 것이다. 이때문에 " +"동시성의 문제나 경합 상황이 발생하기 쉽다." -#: ..\..\writing\structure.rst:247 +#: ../../writing/structure.rst:542 msgid "" -"This and other issues led to the idea that using stateless functions is a " -"better programming paradigm." +"This and other issues led to the idea that using stateless functions is a" +" better programming paradigm." msgstr "" -"이 문제 뿐만 아니라 다른 설명하지 않은 문제들이 발생하기도 한다. 이 때문에 구문없는 함수가 " -"더 나은 프로그래밍 패러다임으로 생각되기도 한다." +"이 문제 뿐만 아니라 다른 설명하지 않은 문제들이 발생하기도 한다. 이 때문에 구문없는 함수가 더 나은 프로그래밍 패러다임으로 " +"생각되기도 한다." -#: ..\..\writing\structure.rst:250 +#: ../../writing/structure.rst:545 msgid "" "Another way to say the same thing is to suggest using functions and " "procedures with as few implicit contexts and side-effects as possible. A " "function's implicit context is made up of any of the global variables or " -"items in the persistence layer that are accessed from within the function. " -"Side-effects are the changes that a function makes to its implicit context. " -"If a function saves or deletes data in a global variable or in the " -"persistence layer, it is said to have a side-effect." +"items in the persistence layer that are accessed from within the " +"function. Side-effects are the changes that a function makes to its " +"implicit context. If a function saves or deletes data in a global " +"variable or in the persistence layer, it is said to have a side-effect." msgstr "" -"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와" -" 프로시저를 사용하는 것이다. 전역 변수를 아무렇게나 사용하거나, 함수 내부에 있는 " -"퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해진다. 여기서 부작용이란" -" 함수가 함수 자체의 의미를 바꿔버리는 변화를 의미한다. 만약 함수가 퍼시스턴스 레이어에 " -"있는 데이터나 전역 변수에 있는 데이터를 날려버리거나 저장하는 경우를 말한다." +"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와 프로시저를 사용하는 것이다. 전역 변수를 " +"아무렇게나 사용하거나, 함수 내부에 있는 퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해진다. 여기서 부작용이란 함수가 " +"함수 자체의 의미를 바꿔버리는 변화를 의미한다. 만약 함수가 퍼시스턴스 레이어에 있는 데이터나 전역 변수에 있는 데이터를 " +"날려버리거나 저장하는 경우를 말한다." -#: ..\..\writing\structure.rst:257 +#: ../../writing/structure.rst:553 msgid "" -"Carefully isolating functions with context and side-effects from functions " -"with logic (called pure functions) allow the following benefits:" -msgstr "" -"함수가 잘 분리되어 있고 부작용도 없는 순수 함수라면 다음과 같은 장점이 있다." +"Carefully isolating functions with context and side-effects from " +"functions with logic (called pure functions) allow the following " +"benefits:" +msgstr "함수가 잘 분리되어 있고 부작용도 없는 순수 함수라면 다음과 같은 장점이 있다." -#: ..\..\writing\structure.rst:260 +#: ../../writing/structure.rst:556 msgid "" "Pure functions are deterministic: given a fixed input, the output will " "always be the same." -msgstr "" -"" -"순수 함수는 결정성이 있다. 즉, 같은 입력값이 있으면 언제나 같은 출력값을 낸다. " +msgstr "순수 함수는 결정성이 있다. 즉, 같은 입력값이 있으면 언제나 같은 출력값을 낸다. " -#: ..\..\writing\structure.rst:263 +#: ../../writing/structure.rst:559 msgid "" "Pure functions are much easier to change or replace if they need to be " "refactored or optimized." +msgstr "순수 함수는 수정하거나 최적화 작업이 필요할 때 쉽게 수정 및 변경할 수 있다." + +#: ../../writing/structure.rst:562 +msgid "" +"Pure functions are easier to test with unit-tests: There is less need for" +" complex context setup and data cleaning afterwards." +msgstr "순수 함수는 단위 테스트를 하기 쉽다. 즉, 복잡한 테스트 셋업 작업과 데이터 삭제 작업에 손이 덜 간다." + +#: ../../writing/structure.rst:565 +#, fuzzy +msgid "Pure functions are easier to manipulate, decorate, and pass around." +msgstr "순수 함수는 다루기 쉽고, 기능을 더하기도 쉽고, 없애기도 쉽다." + +#: ../../writing/structure.rst:567 +#, fuzzy +msgid "" +"In summary, pure functions are more efficient building blocks than " +"classes and objects for some architectures because they have no context " +"or side-effects." +msgstr "요약하자면, 독립적이고 부작용도 없는 순수 함수는 다른 어떠한 아키텍처의 클래스나 객체보다도 효과적인 구성 요소라고 할 수 있다." + +#: ../../writing/structure.rst:570 +msgid "" +"Obviously, object-orientation is useful and even necessary in many cases," +" for example when developing graphical desktop applications or games, " +"where the things that are manipulated (windows, buttons, avatars, " +"vehicles) have a relatively long life of their own in the computer's " +"memory." msgstr "" -"순수 함수는 수정하거나 최적화 작업이 필요할 때 쉽게 수정 및 변경할 수 있다." +"분명히 객체지향은 유용하다. 그리고 꼭 필요한 경우가 많다. 예를 들면 데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼, " +"아바타, 탈것이 있는 게임같은 경우다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문이다." -#: ..\..\writing\structure.rst:266 +#: ../../writing/structure.rst:577 +msgid "Decorators" +msgstr "데코레이터" + +#: ../../writing/structure.rst:579 msgid "" -"Pure functions are easier to test with unit-tests: There is less need for " -"complex context setup and data cleaning afterwards." +"The Python language provides a simple yet powerful syntax called " +"'decorators'. A decorator is a function or a class that wraps (or " +"decorates) a function or a method. The 'decorated' function or method " +"will replace the original 'undecorated' function or method. Because " +"functions are first-class objects in Python, this can be done 'manually'," +" but using the @decorator syntax is clearer and thus preferred." msgstr "" -"순수 함수는 단위 테스트를 하기 쉽다. 즉, 복잡한 테스트 셋업 작업과 데이터 삭제 " -"작업에 손이 덜 간다." +"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있다.데코레이터는 함수나 메소드를 감싸는(장식하는) 함수나 클래스다." +" '장식된' 함수나 메소드는 원래의 '장식되지 않은' 함수나 메소드를 대체한다.함수는 파이썬에서 first-class 객체이기 " +"때문이다. 이 작업은 '수작업'으로도 가능하지만 @decorator 문법을 쓰면 깔끔하게 쓸 수 있다. 그래서 많이들 쓴다." -#: ..\..\writing\structure.rst:269 -msgid "Pure functions are easier to manipulate, decorate, and pass-around." +#: ../../writing/structure.rst:602 +#, fuzzy +msgid "" +"This mechanism is useful for separating concerns and avoiding external " +"un-related logic 'polluting' the core logic of the function or method. A " +"good example of a piece of functionality that is better handled with " +"decoration is `memoization " +"` or caching: you " +"want to store the results of an expensive function in a table and use " +"them directly instead of recomputing them when they have already been " +"computed. This is clearly not part of the function logic." msgstr "" -"순수 함수는 다루기 쉽고, 기능을 더하기도 쉽고, 없애기도 쉽다." +"이 방법으로 함수나 메소드의 핵심 로직을 외부의 관련없는 로직이 오염시키는 일을 피할 수 있기 때문에 유용하다. 예를 들면 " +"데코레이션을 써서 다루는 편이 좋은 기능으로 메모이제이션과 캐싱을 들 수 있다. 무거운 함수의 결과값을 테이블에 저장한 다음, 이미" +" 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 것이다. 이는 함수에서 자체적으로 가지고 있어야 할 기능은 아니다." -#: ..\..\writing\structure.rst:271 +#: ../../writing/structure.rst:611 +msgid "Context Managers" +msgstr "" + +#: ../../writing/structure.rst:613 msgid "" -"In summary, pure functions, without any context or side-effects, are more " -"efficient building blocks than classes and objects for some architectures." +"A context manager is a Python object that provides extra contextual " +"information to an action. This extra information takes the form of " +"running a callable upon initiating the context using the ``with`` " +"statement, as well as running a callable upon completing all the code " +"inside the ``with`` block. The most well known example of using a context" +" manager is shown here, opening on a file:" msgstr "" -"요약하자면, 독립적이고 부작용도 없는 순수 함수는 다른 어떠한 아키텍처의 클래스나 " -"객체보다도 효과적인 구성 요소라고 할 수 있다." -#: ..\..\writing\structure.rst:274 +#: ../../writing/structure.rst:624 msgid "" -"Obviously, object-orientation is useful and even necessary in many cases, " -"for example when developing graphical desktop applications or games, where " -"the things that are manipulated (windows, buttons, avatars, vehicles) have a" -" relatively long life of their own in the computer's memory." +"Anyone familiar with this pattern knows that invoking ``open`` in this " +"fashion ensures that ``f``'s ``close`` method will be called at some " +"point. This reduces a developer's cognitive load and makes the code " +"easier to read." msgstr "" -"분명히 객체지향은 유용하다. 그리고 꼭 필요한 경우가 많다. 예를 들면 " -"데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼, 아바타, 탈것이 있는 게임같은 " -"경우다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문이다." -#: ..\..\writing\structure.rst:281 -msgid "Decorators" -msgstr "데코레이터" +#: ../../writing/structure.rst:628 +msgid "" +"There are two easy ways to implement this functionality yourself: using a" +" class or using a generator. Let's implement the above functionality " +"ourselves, starting with the class approach:" +msgstr "" -#: ..\..\writing\structure.rst:283 +#: ../../writing/structure.rst:647 msgid "" -"The Python language provides a simple yet powerful syntax called " -"'decorators'. A decorator is a function or a class that wraps (or decorates)" -" a function or a method. The 'decorated' function or method will replace the" -" original 'undecorated' function or method. Because functions are first-" -"class objects in Python, this can be done 'manually', but using the " -"@decorator syntax is clearer and thus preferred." -msgstr "" -"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있다." -"데코레이터는 함수나 메소드를 감싸는(장식하는) 함수나 클래스다. " -"'장식된' 함수나 메소드는 원래의 '장식되지 않은' 함수나 메소드를 대체한다." -"함수는 파이썬에서 first-class 객체이기 때문이다. 이 작업은 '수작업'으로도 가능하지만 " -"@decorator 문법을 쓰면 깔끔하게 쓸 수 있다. 그래서 많이들 쓴다." - -#: ..\..\writing\structure.rst:306 -msgid "" -"This mechanism is useful for separating concerns and avoiding external un-" -"related logic 'polluting' the core logic of the function or method. A good " -"example of a piece of functionality that is better handled with decoration " -"is memoization or caching: you want to store the results of an expensive " -"function in a table and use them directly instead of recomputing them when " -"they have already been computed. This is clearly not part of the function " -"logic." -msgstr "" -"이 방법으로 함수나 메소드의 핵심 로직을 외부의 관련없는 로직이 오염시키는 일을 피할 " -"수 있기 때문에 유용하다. 예를 들면 데코레이션을 써서 다루는 편이 좋은 기능으로 " -"메모이제이션과 캐싱을 들 수 있다. 무거운 함수의 결과값을 테이블에 저장한 다음, " -"이미 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 것이다. 이는 " -"함수에서 자체적으로 가지고 있어야 할 기능은 아니다." - -#: ..\..\writing\structure.rst:315 +"This is just a regular Python object with two extra methods that are used" +" by the ``with`` statement. CustomOpen is first instantiated and then its" +" ``__enter__`` method is called and whatever ``__enter__`` returns is " +"assigned to ``f`` in the ``as f`` part of the statement. When the " +"contents of the ``with`` block is finished executing, the ``__exit__`` " +"method is then called." +msgstr "" + +#: ../../writing/structure.rst:653 +msgid "" +"And now the generator approach using Python's own `contextlib " +"`_:" +msgstr "" + +#: ../../writing/structure.rst:671 +msgid "" +"This works in exactly the same way as the class example above, albeit " +"it's more terse. The ``custom_open`` function executes until it reaches " +"the ``yield`` statement. It then gives control back to the ``with`` " +"statement, which assigns whatever was ``yield``'ed to `f` in the ``as f``" +" portion. The ``finally`` clause ensures that ``close()`` is called " +"whether or not there was an exception inside the ``with``." +msgstr "" + +#: ../../writing/structure.rst:678 +msgid "" +"Since the two approaches appear the same, we should follow the Zen of " +"Python to decide when to use which. The class approach might be better if" +" there's a considerable amount of logic to encapsulate. The function " +"approach might be better for situations where we're dealing with a simple" +" action." +msgstr "" + +#: ../../writing/structure.rst:684 msgid "Dynamic typing" msgstr "동적 타입" -#: ..\..\writing\structure.rst:317 +#: ../../writing/structure.rst:686 +#, fuzzy msgid "" -"Python is said to be dynamically typed, which means that variables do not " -"have a fixed type. In fact, in Python, variables are very different from " -"what they are in many other languages, specifically statically-typed " -"languages. Variables are not a segment of the computer's memory where some " -"value is written, they are 'tags' or 'names' pointing to objects. It is " -"therefore possible for the variable 'a' to be set to the value 1, then to " -"the value 'a string', then to a function." +"Python is dynamically typed, which means that variables do not have a " +"fixed type. In fact, in Python, variables are very different from what " +"they are in many other languages, specifically statically-typed " +"languages. Variables are not a segment of the computer's memory where " +"some value is written, they are 'tags' or 'names' pointing to objects. It" +" is therefore possible for the variable 'a' to be set to the value 1, " +"then to the value 'a string', then to a function." msgstr "" -"파이썬은 동적 타입이 되는 언어라고 불린다. 이 말은 변수가 고정된 타입을 가지고 있지 " -"않다는 뜻이다. 사실 파이썬의 변수는 다른 수많은 언어, 특히 정적 타입 언어의" -" 변수와는 아주 다르다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 객체를" -" 가리키는 컴퓨터 메모리의 한 조각이 아니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, " -"값 'a string'을 가지고, 또 함수가 될 수도 있는 것이다." +"파이썬은 동적 타입이 되는 언어라고 불린다. 이 말은 변수가 고정된 타입을 가지고 있지 않다는 뜻이다. 사실 파이썬의 변수는 다른 " +"수많은 언어, 특히 정적 타입 언어의 변수와는 아주 다르다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 객체를 " +"가리키는 컴퓨터 메모리의 한 조각이 아니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, 값 'a string'을 가지고, 또" +" 함수가 될 수도 있는 것이다." -#: ..\..\writing\structure.rst:325 +#: ../../writing/structure.rst:693 msgid "" "The dynamic typing of Python is often considered to be a weakness, and " -"indeed it can lead to complexities and hard-to-debug code. Something named " -"'a' can be set to many different things, and the developer or the maintainer" -" needs to track this name in the code to make sure it has not been set to a " -"completely unrelated object." +"indeed it can lead to complexities and hard-to-debug code. Something " +"named 'a' can be set to many different things, and the developer or the " +"maintainer needs to track this name in the code to make sure it has not " +"been set to a completely unrelated object." msgstr "" -"동적 타입은 종종 파이썬의 약점으로 여겨지기도 한다. 실제로 동적 타입은 코드를 " -"복잡하게 만들고 디버깅하기 어렵게 만든다. 'a'라는 이름이 너무나 많은 것이 될 수 " -"있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 " -"무관한 객체인지를 확인하기 위해 코드 전체를 뒤져야 한다." +"동적 타입은 종종 파이썬의 약점으로 여겨지기도 한다. 실제로 동적 타입은 코드를 복잡하게 만들고 디버깅하기 어렵게 만든다. " +"'a'라는 이름이 너무나 많은 것이 될 수 있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 무관한 " +"객체인지를 확인하기 위해 코드 전체를 뒤져야 한다." -#: ..\..\writing\structure.rst:331 +#: ../../writing/structure.rst:699 msgid "Some guidelines help to avoid this issue:" -msgstr "" -"이러한 문제를 피하기 위한 가이드라인을 소개한다." +msgstr "이러한 문제를 피하기 위한 가이드라인을 소개한다." -#: ..\..\writing\structure.rst:333 +#: ../../writing/structure.rst:701 msgid "Avoid using the same variable name for different things." msgstr "다른 것에 같은 변수명을 붙이지 마라." -#: ..\..\writing\structure.rst:335 ..\..\writing\structure.rst:359 -#: ..\..\writing\structure.rst:423 +#: ../../writing/structure.rst:703 ../../writing/structure.rst:727 +#: ../../writing/structure.rst:790 msgid "**Bad**" msgstr "**나쁜 예**" -#: ..\..\writing\structure.rst:344 ..\..\writing\structure.rst:433 +#: ../../writing/structure.rst:712 ../../writing/structure.rst:800 msgid "**Good**" msgstr "**좋은 예**" -#: ..\..\writing\structure.rst:353 +#: ../../writing/structure.rst:721 msgid "" "Using short functions or methods helps reduce the risk of using the same " "name for two unrelated things." -msgstr "" -"메소드나 함수를 짧게 쓰는 방법은 상관없는 것들에게 같은 이름을 붙이는 위험을 줄일 " -"수 있다." +msgstr "메소드나 함수를 짧게 쓰는 방법은 상관없는 것들에게 같은 이름을 붙이는 위험을 줄일 수 있다." -#: ..\..\writing\structure.rst:356 +#: ../../writing/structure.rst:724 msgid "" -"It is better to use different names even for things that are related, when " -"they have a different type:" -msgstr "" -"관련된 것이라고 해도 다른 타입을 가진다면 다른 이름을 붙이는 편이 좋다." +"It is better to use different names even for things that are related, " +"when they have a different type:" +msgstr "관련된 것이라고 해도 다른 타입을 가진다면 다른 이름을 붙이는 편이 좋다." -#: ..\..\writing\structure.rst:367 +#: ../../writing/structure.rst:735 msgid "" -"There is no efficiency gain when reusing names: the assignments will have to" -" create new objects anyway. However, when the complexity grows and each " -"assignment is separated by other lines of code, including 'if' branches and " -"loops, it becomes harder to ascertain what a given variable's type is." +"There is no efficiency gain when reusing names: the assignments will have" +" to create new objects anyway. However, when the complexity grows and " +"each assignment is separated by other lines of code, including 'if' " +"branches and loops, it becomes harder to ascertain what a given " +"variable's type is." msgstr "" -"한 번 쓴 이름을 재활용 하는 것은 비효율적이다. 대입문은 반드시 새로운 객체를 만들어야 " -"한다. 하지만 너무 복잡해지고, 'if' 분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 " -"변수가 어떤 타입인지 확인하기 어려워진다." +"한 번 쓴 이름을 재활용 하는 것은 비효율적이다. 대입문은 반드시 새로운 객체를 만들어야 한다. 하지만 너무 복잡해지고, 'if' " +"분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 변수가 어떤 타입인지 확인하기 어려워진다." -#: ..\..\writing\structure.rst:373 +#: ../../writing/structure.rst:741 msgid "" "Some coding practices, like functional programming, recommend never " "reassigning a variable. In Java this is done with the `final` keyword. " "Python does not have a `final` keyword and it would be against its " -"philosophy anyway. However, it may be a good discipline to avoid assigning " -"to a variable more than once, and it helps in grasping the concept of " -"mutable and immutable types." +"philosophy anyway. However, it may be a good discipline to avoid " +"assigning to a variable more than once, and it helps in grasping the " +"concept of mutable and immutable types." msgstr "" -"함수형 프로그래밍의 코딩 습관처럼 재할당이 불가능한 변수의 사용을 추천한다. " -"자바에서는 `final` 키워드로 가능하다. 파이썬은 `final` 키워드가 없고, " -"또한 이러한 방법은 파이썬의 철학에 반하는 일이다. 하지만 변수를 한 번 이상 " -"재할당하지 않는 것은 좋은 습관이며, 가변 타입과 불변 타입을 이해하는데 " -"도움이 될 것이다." +"함수형 프로그래밍의 코딩 습관처럼 재할당이 불가능한 변수의 사용을 추천한다. 자바에서는 `final` 키워드로 가능하다. 파이썬은 " +"`final` 키워드가 없고, 또한 이러한 방법은 파이썬의 철학에 반하는 일이다. 하지만 변수를 한 번 이상 재할당하지 않는 것은 " +"좋은 습관이며, 가변 타입과 불변 타입을 이해하는데 도움이 될 것이다." -#: ..\..\writing\structure.rst:380 +#: ../../writing/structure.rst:748 msgid "Mutable and immutable types" msgstr "가변 타입과 불변 타입" -#: ..\..\writing\structure.rst:382 +#: ../../writing/structure.rst:750 msgid "Python has two kinds of built-in or user-defined types." msgstr "파이썬에는 내장 타입과 사용자 정의 타입이 있다." -#: ..\..\writing\structure.rst:384 +#: ../../writing/structure.rst:752 msgid "" "Mutable types are those that allow in-place modification of the content. " "Typical mutables are lists and dictionaries: All lists have mutating " "methods, like :py:meth:`list.append` or :py:meth:`list.pop`, and can be " "modified in place. The same goes for dictionaries." msgstr "" -"가변 타입은 내부에서 자체적으로 변경이 가능하다. " -"일반적인 가변 타입은 리스트와 딕셔너리다. 모든 리스트에는 " -" :py:meth:`list.append` 나 :py:meth:`list.pop` 처럼 자체적으로 변경 가능한 " -"메소드가 있다. 딕셔너리도 마찬가지다. " +"가변 타입은 내부에서 자체적으로 변경이 가능하다. 일반적인 가변 타입은 리스트와 딕셔너리다. 모든 리스트에는 " +":py:meth:`list.append` 나 :py:meth:`list.pop` 처럼 자체적으로 변경 가능한 메소드가 있다. " +"딕셔너리도 마찬가지다. " -#: ..\..\writing\structure.rst:389 +#: ../../writing/structure.rst:757 msgid "" -"Immutable types provide no method for changing their content. For instance, " -"the variable x set to the integer 6 has no \"increment\" method. If you want" -" to compute x + 1, you have to create another integer and give it a name." +"Immutable types provide no method for changing their content. For " +"instance, the variable x set to the integer 6 has no \"increment\" " +"method. If you want to compute x + 1, you have to create another integer " +"and give it a name." msgstr "" -"불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않는다. 예를 들면 " -"integer 6으로 설정된 변수 x에는 \"increment\" 가 없다. 만약 x에 1을 더하고 " -"싶다면 다른 integer 변수를 만들어서 이름을 부여해야 한다. " +"불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않는다. 예를 들면 integer 6으로 설정된 변수 x에는 " +"\"increment\" 가 없다. 만약 x에 1을 더하고 싶다면 다른 integer 변수를 만들어서 이름을 부여해야 한다. " -#: ..\..\writing\structure.rst:403 +#: ../../writing/structure.rst:770 msgid "" -"One consequence of this difference in behavior is that mutable types are not" -" \"stable\", and therefore cannot be used as dictionary keys." -msgstr "" -"이러한 차이 때문에 가변 타입은 \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없다." +"One consequence of this difference in behavior is that mutable types are " +"not \"stable\", and therefore cannot be used as dictionary keys." +msgstr "이러한 차이 때문에 가변 타입은 \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없다." -#: ..\..\writing\structure.rst:407 +#: ../../writing/structure.rst:774 msgid "" "Using properly mutable types for things that are mutable in nature and " "immutable types for things that are fixed in nature helps to clarify the " "intent of the code." msgstr "" -"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, " -"원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 " -"코드의 목적을 명확히 하는데 도움이 된다." +"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, 원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 코드의 " +"목적을 명확히 하는데 도움이 된다." -#: ..\..\writing\structure.rst:411 +#: ../../writing/structure.rst:778 msgid "" -"For example, the immutable equivalent of a list is the tuple, created with " -"``(1, 2)``. This tuple is a pair that cannot be changed in-place, and can be" -" used as a key for a dictionary." +"For example, the immutable equivalent of a list is the tuple, created " +"with ``(1, 2)``. This tuple is a pair that cannot be changed in-place, " +"and can be used as a key for a dictionary." msgstr "" -"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능하다. ``(1, 2)`` 로 만든다. " -"튜플은 자체적으로 변경이 불가능하면서, 딕셔너리의 키로 사용할 수 있다." +"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능하다. ``(1, 2)`` 로 만든다. 튜플은 자체적으로 변경이 불가능하면서, " +"딕셔너리의 키로 사용할 수 있다." -#: ..\..\writing\structure.rst:415 +#: ../../writing/structure.rst:782 msgid "" -"One peculiarity of Python that can surprise beginners is that strings are " -"immutable. This means that when constructing a string from its parts, it is " -"much more efficient to accumulate the parts in a list, which is mutable, and" -" then glue ('join') the parts together when the full string is needed. One " -"thing to notice, however, is that list comprehensions are better and faster " -"than constructing a list in a loop with calls to ``append()``." +"One peculiarity of Python that can surprise beginners is that strings are" +" immutable. This means that when constructing a string from its parts, it" +" is much more efficient to accumulate the parts in a list, which is " +"mutable, and then glue ('join') the parts together when the full string " +"is needed. One thing to notice, however, is that list comprehensions are " +"better and faster than constructing a list in a loop with calls to " +"``append()``." msgstr "" -"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점이다." -"이는 문자열의 일부를 다시 만들고 싶을 때, 애시당초 리스트로 만들어서 그 일부를 " -"변경하는 편이 효율적이라는 뜻이다. 리스트는 변경 가능하고, 전체 문자열이 필요하면 " -"('join')을 사용하여 한데 이어 붙일 수 있기 때문이다. 하지만 한가지 알아둬야 할 점은 " -"반복문에서 ``append()`` 메소드를 호출해 리스트를 만드는 것보다 " -"리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 것이다." +"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점이다.이는 문자열의 일부를 다시 만들고 싶을 때, 애시당초" +" 리스트로 만들어서 그 일부를 변경하는 편이 효율적이라는 뜻이다. 리스트는 변경 가능하고, 전체 문자열이 필요하면 ('join')을" +" 사용하여 한데 이어 붙일 수 있기 때문이다. 하지만 한가지 알아둬야 할 점은 반복문에서 ``append()`` 메소드를 호출해 " +"리스트를 만드는 것보다 리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 것이다." -#: ..\..\writing\structure.rst:451 +#: ../../writing/structure.rst:818 msgid "" "One final thing to mention about strings is that using ``join()`` is not " "always best. In the instances where you are creating a new string from a " -"pre-determined number of strings, using the addition operator is actually " -"faster, but in cases like above or in cases where you are adding to an " +"pre-determined number of strings, using the addition operator is actually" +" faster, but in cases like above or in cases where you are adding to an " "existing string, using ``join()`` should be your preferred method." msgstr "" -"문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것이다." -" 문자열이 몇 개 있을지 미리 정해져 있는 상태에서 새로운 문자열을 만들 때는 " -"더하기 연산자를 쓰는 편이 실제로 더 빠르다." -" 하지만 문자열이 몇 개 있을지 정해져 있지 않거나, 이미 만들어진 문자열에 추가로 " -"문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것이다. " +"문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것이다. 문자열이 몇 개 있을지 미리 정해져" +" 있는 상태에서 새로운 문자열을 만들 때는 더하기 연산자를 쓰는 편이 실제로 더 빠르다. 하지만 문자열이 몇 개 있을지 정해져 있지" +" 않거나, 이미 만들어진 문자열에 추가로 문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것이다. " -#: ..\..\writing\structure.rst:467 +#: ../../writing/structure.rst:834 +#, fuzzy msgid "" -"You can also use the :ref:`% ` formatting operator" -" to concatenate a pre-determined number of strings besides " -":py:meth:`str.join` and ``+``. However, according to :pep:`3101`, the ``%`` " -"operator became deprecated in Python 3.1 and will be replaced by the " -":py:meth:`str.format` method in the later versions." +"You can also use the :ref:`% ` formatting " +"operator to concatenate a pre-determined number of strings besides " +":py:meth:`str.join` and ``+``. However, :pep:`3101`, discourages the " +"usage of the ``%`` operator in favor of the :py:meth:`str.format` method." msgstr "" -"또한 :py:meth:`str.join` 와 ``+`` 외에 " -"포맷 연산자 :ref:`% ` 를 써서 " -"미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있다. " -"하지만 :pep:`3101` 에 따르면 ``%`` 연산자는 파이썬 3.1에서는 사라졌고 " -"최신 버전에서는 :py:meth:`str.format` 로 대체될 것이라고 한다." +"또한 :py:meth:`str.join` 와 ``+`` 외에 포맷 연산자 :ref:`% ` 를 써서 미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있다. 하지만 :pep:`3101` 에 따르면" +" ``%`` 연산자는 파이썬 3.1에서는 사라졌고 최신 버전에서는 :py:meth:`str.format` 로 대체될 것이라고 " +"한다." -#: ..\..\writing\structure.rst:484 +#: ../../writing/structure.rst:850 msgid "Vendorizing Dependencies" msgstr "Vendorizing Dependencies" -#: ..\..\writing\structure.rst:488 +#: ../../writing/structure.rst:854 msgid "Runners" msgstr "Runners" -#: ..\..\writing\structure.rst:492 +#: ../../writing/structure.rst:858 msgid "Further Reading" msgstr "더 알아보기" -#: ..\..\writing\structure.rst:494 +#: ../../writing/structure.rst:860 msgid "http://docs.python.org/2/library/" msgstr "http://docs.python.org/2/library/" -#: ..\..\writing\structure.rst:495 +#: ../../writing/structure.rst:861 msgid "http://www.diveintopython.net/toc/index.html" msgstr "http://www.diveintopython.net/toc/index.html" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.mo b/docs/locale/ko/LC_MESSAGES/writing/style.mo index d12c48d5d32773c3fd8f4cc3ea05d258718ef8bc..b8b4284cac7d2d43d955c786774d2d5ec233334d 100644 GIT binary patch literal 34578 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�owt)ZPCU6g1gE!tplh}m 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 DBEJNv literal 4575 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 diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po index a22b90676..b68f87808 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/style.po +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -1,633 +1,858 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\style.rst:4 +#: ../../writing/style.rst:4 msgid "Code Style" msgstr "코드 스타일" -#: ..\..\writing\style.rst:6 +#: ../../writing/style.rst:6 +#, fuzzy msgid "" -"If you ask Python programmers what they like most in Python, they will often" -" say its high readability. Indeed, a high level of readability is at the " -"heart of the design of the Python language, following the recognised fact " -"that code is read much more often than it is written." +"If you ask Python programmers what they like most about Python, they will" +" often cite its high readability. Indeed, a high level of readability is" +" at the heart of the design of the Python language, following the " +"recognized fact that code is read much more often than it is written." msgstr "" -"파이썬에서 뭐가 가장 좋냐고 파이썬 프로그래머들에게 묻는다면, 파이썬 프로그래머들은 " -"파이썬의 높은 가독성이 좋다고 말할 것이다. 실제로 높은 수준의 가독성은 파이썬 " -"언어 디자인의 심장이다. 코드는 쓰여지기 보다는 읽혀지는 경우가 더 많다는 사실 때문이다." +"파이썬에서 뭐가 가장 좋냐고 파이썬 프로그래머들에게 묻는다면, 파이썬 프로그래머들은 파이썬의 높은 가독성이 좋다고 말할 것이다. " +"실제로 높은 수준의 가독성은 파이썬 언어 디자인의 심장이다. 코드는 쓰여지기 보다는 읽혀지는 경우가 더 많다는 사실 때문이다." -#: ..\..\writing\style.rst:11 +#: ../../writing/style.rst:11 +#, fuzzy msgid "" -"One reason for Python code to be easily read and understood is its " -"relatively complete set of Code Style guidelines and \"Pythonic\" idioms." -msgstr "" -"파이썬 코드가 쉽게 읽히고 잘 이해되는 한가지 이유는 비교적 완벽한 코드 스타일 " -"가이드라인과 \"파이썬스러운\" 관용구 때문이다." +"One reason for the high readability of Python code is its relatively " +"complete set of Code Style guidelines and \"Pythonic\" idioms." +msgstr "파이썬 코드가 쉽게 읽히고 잘 이해되는 한가지 이유는 비교적 완벽한 코드 스타일 가이드라인과 \"파이썬스러운\" 관용구 때문이다." -#: ..\..\writing\style.rst:14 +#: ../../writing/style.rst:14 +#, fuzzy msgid "" -"Moreover, when a veteran Python developer (a Pythonista) points to portions " -"of code and says they are not \"Pythonic\", it usually means that these " -"lines of code do not follow the common guidelines and fail to express the " -"intent in what is considered the best (hear: most readable) way." +"When a veteran Python developer (a Pythonista) calls portions of code not" +" \"Pythonic\", they usually mean that these lines of code do not follow " +"the common guidelines and fail to express its intent in what is " +"considered the best (hear: most readable) way." msgstr "" -"뿐만 아니라 베테랑 파이썬 개발자(파이써니스타)들이 코드의 어느 부분을 지적하며 " -"이건 \"파이썬스럽지\" 않아, 라고 한다면 이는 보통 파이썬의 일반적인 가이드라인을 " -"따르지 않았고, 가장 좋은 방법(대부분 가독성)을 따르지 않아 코드의 의도를 표현하는데 " +"뿐만 아니라 베테랑 파이썬 개발자(파이써니스타)들이 코드의 어느 부분을 지적하며 이건 \"파이썬스럽지\" 않아, 라고 한다면 이는 " +"보통 파이썬의 일반적인 가이드라인을 따르지 않았고, 가장 좋은 방법(대부분 가독성)을 따르지 않아 코드의 의도를 표현하는데 " "실패했다는 뜻이다." -#: ..\..\writing\style.rst:19 +#: ../../writing/style.rst:19 msgid "" -"On some border cases, no best way has been agreed upon on how to express an " -"intent in Python code, but these cases are rare." -msgstr "" -"어떤 경우에는 파이썬 코드의 의도를 표현하기 위한 최선의 방법을 합의하기 어려울 때도" -" 있지만, 이런 경우는 드물다." +"On some border cases, no best way has been agreed upon on how to express " +"an intent in Python code, but these cases are rare." +msgstr "어떤 경우에는 파이썬 코드의 의도를 표현하기 위한 최선의 방법을 합의하기 어려울 때도 있지만, 이런 경우는 드물다." -#: ..\..\writing\style.rst:23 +#: ../../writing/style.rst:23 msgid "General concepts" msgstr "일반적인 개념" -#: ..\..\writing\style.rst:26 +#: ../../writing/style.rst:26 msgid "Explicit code" msgstr "명쾌한 코드" -#: ..\..\writing\style.rst:28 +#: ../../writing/style.rst:28 msgid "" -"While any kind of black magic is possible with Python, the most explicit and" -" straightforward manner is preferred." -msgstr "" -"파이썬으로 어떤 마법을 부릴 수 있다면, 가장 명쾌하고 간단한 방법으로 할 것이다." +"While any kind of black magic is possible with Python, the most explicit " +"and straightforward manner is preferred." +msgstr "파이썬으로 어떤 마법을 부릴 수 있다면, 가장 명쾌하고 간단한 방법으로 할 것이다." -#: ..\..\writing\style.rst:31 ..\..\writing\style.rst:58 +#: ../../writing/style.rst:31 ../../writing/style.rst:58 msgid "**Bad**" msgstr "**나쁜 예**" -#: ..\..\writing\style.rst:39 ..\..\writing\style.rst:69 +#: ../../writing/style.rst:39 ../../writing/style.rst:69 msgid "**Good**" msgstr "**좋은 예**" -#: ..\..\writing\style.rst:46 +#: ../../writing/style.rst:46 msgid "" -"In the good code above, x and y are explicitly received from the caller, and" -" an explicit dictionary is returned. The developer using this function knows" -" exactly what to do by reading the first and last lines, which is not the " -"case with the bad example." +"In the good code above, x and y are explicitly received from the caller, " +"and an explicit dictionary is returned. The developer using this function" +" knows exactly what to do by reading the first and last lines, which is " +"not the case with the bad example." msgstr "" -"위의 좋은 코드에서 x와 y는 호출자로부터 직접 값을 받아와 곧바로 딕셔너리로 반환한다. " -"이 함수를 쓰는 개발자들은 첫 줄과 마지막 줄을 읽는 것만으로 무엇을 하는 함수인지 " -"정확히 알 수 있다. 하지만 나쁜 예에서는 그렇지 않다." +"위의 좋은 코드에서 x와 y는 호출자로부터 직접 값을 받아와 곧바로 딕셔너리로 반환한다. 이 함수를 쓰는 개발자들은 첫 줄과 마지막" +" 줄을 읽는 것만으로 무엇을 하는 함수인지 정확히 알 수 있다. 하지만 나쁜 예에서는 그렇지 않다." -#: ..\..\writing\style.rst:52 +#: ../../writing/style.rst:52 msgid "One statement per line" msgstr "한 줄에 한 구문" -#: ..\..\writing\style.rst:54 +#: ../../writing/style.rst:54 +#, fuzzy msgid "" -"While some compound statements such as list comprehensions are allowed and " -"appreciated for their brevity and their expressiveness, it is bad practice " -"to have two disjoint statements on the same line of code." +"While some compound statements such as list comprehensions are allowed " +"and appreciated for their brevity and their expressiveness, it is bad " +"practice to have two disjointed statements on the same line of code." msgstr "" -"간결성과 표현성을 위해 리스트 컴프리헨션(list comprehension) 같은 복잡한 구문을 " -"만드는 경우가 있다. 이렇게 한 줄의 코드에 두 개의 분리 가능한 코드를 " -"넣는 것은 잘못된 습관이다. " +"간결성과 표현성을 위해 리스트 컴프리헨션(list comprehension) 같은 복잡한 구문을 만드는 경우가 있다. 이렇게 한 " +"줄의 코드에 두 개의 분리 가능한 코드를 넣는 것은 잘못된 습관이다. " -#: ..\..\writing\style.rst:85 +#: ../../writing/style.rst:85 msgid "Function arguments" msgstr "함수 인자" -#: ..\..\writing\style.rst:87 +#: ../../writing/style.rst:87 msgid "Arguments can be passed to functions in four different ways." msgstr "인자는 4가지 경로를 통해 함수로 전달될 수 있다." -#: ..\..\writing\style.rst:89 +#: ../../writing/style.rst:89 +#, fuzzy msgid "" -"1. **Positional arguments** are mandatory and have no default values. They " -"are the simplest form of arguments and they can be used for the few function" -" arguments that are fully part of the functions meaning and their order is " -"natural. For instance, in ``send(message, recipient)`` or ``point(x, y)`` " -"the user of the function has no difficulty remembering that those two " -"functions require two arguments, and in which order." -msgstr "" -"1. **위치 매개 변수** 는 필수적이다. " +"**Positional arguments** are mandatory and have no default values. They " +"are the simplest form of arguments and they can be used for the few " +"function arguments that are fully part of the function's meaning and " +"their order is natural. For instance, in ``send(message, recipient)`` or " +"``point(x, y)`` the user of the function has no difficulty remembering " +"that those two functions require two arguments, and in which order." +msgstr "1. **위치 매개 변수** 는 필수적이다. " -#: ..\..\writing\style.rst:96 +#: ../../writing/style.rst:96 msgid "" -"In those two cases, it is possible to use argument names when calling the " -"functions and, doing so, it is possible to switch the order of arguments, " -"calling for instance ``send(recipient='World', message='Hello')`` and " -"``point(y=2, x=1)`` but this reduces readability and is unnecessarily " -"verbose, compared to the more straightforward calls to ``send('Hello', " -"'World')`` and ``point(1, 2)``." +"In those two cases, it is possible to use argument names when calling the" +" functions and, doing so, it is possible to switch the order of " +"arguments, calling for instance ``send(recipient='World', " +"message='Hello')`` and ``point(y=2, x=1)`` but this reduces readability " +"and is unnecessarily verbose, compared to the more straightforward calls " +"to ``send('Hello', 'World')`` and ``point(1, 2)``." msgstr "" -#: ..\..\writing\style.rst:102 +#: ../../writing/style.rst:103 msgid "" -"2. **Keyword arguments** are not mandatory and have default values. They are" -" often used for optional parameters sent to the function. When a function " -"has more than two or three positional parameters, its signature is more " -"difficult to remember and using keyword argument with default values is " -"helpful. For instance, a more complete ``send`` function could be defined as" -" ``send(message, to, cc=None, bcc=None)``. Here ``cc`` and ``bcc`` are " -"optional, and evaluate to ``None`` when they are not passed another value." +"**Keyword arguments** are not mandatory and have default values. They are" +" often used for optional parameters sent to the function. When a function" +" has more than two or three positional parameters, its signature is more " +"difficult to remember and using keyword arguments with default values is " +"helpful. For instance, a more complete ``send`` function could be defined" +" as ``send(message, to, cc=None, bcc=None)``. Here ``cc`` and ``bcc`` are" +" optional, and evaluate to ``None`` when they are not passed another " +"value." msgstr "" -#: ..\..\writing\style.rst:110 +#: ../../writing/style.rst:111 msgid "" -"Calling a function with keyword arguments can be done in multiple ways in " -"Python, for example it is possible to follow the order of arguments in the " -"definition without explicitly naming the arguments, like in ``send('Hello', " -"'World', 'Cthulhu', 'God')``, sending a blind carbon copy to God. It would " -"also be possible to name arguments in another order, like in ``send('Hello " -"again', 'World', bcc='God', cc='Cthulhu')``. Those two possibilities are " -"better avoided without any strong reason to not follow the syntax that is " -"the closest to the function definition: ``send('Hello', 'World', " -"cc='Cthulhu', bcc='God')``." +"Calling a function with keyword arguments can be done in multiple ways in" +" Python, for example it is possible to follow the order of arguments in " +"the definition without explicitly naming the arguments, like in " +"``send('Hello', 'World', 'Cthulhu', 'God')``, sending a blind carbon copy" +" to God. It would also be possible to name arguments in another order, " +"like in ``send('Hello again', 'World', bcc='God', cc='Cthulhu')``. Those " +"two possibilities are better avoided without any strong reason to not " +"follow the syntax that is the closest to the function definition: " +"``send('Hello', 'World', cc='Cthulhu', bcc='God')``." msgstr "" -#: ..\..\writing\style.rst:119 +#: ../../writing/style.rst:121 msgid "" "As a side note, following `YAGNI " -"`_ principle, it is " -"often harder to remove an optional argument (and its logic inside the " -"function) that was added \"just in case\" and is seemingly never used, than " -"to add a new optional argument and its logic when needed." +"`_ principle, it is" +" often harder to remove an optional argument (and its logic inside the " +"function) that was added \"just in case\" and is seemingly never used, " +"than to add a new optional argument and its logic when needed." msgstr "" -#: ..\..\writing\style.rst:124 +#: ../../writing/style.rst:126 msgid "" -"3. The **arbitrary argument list** is the third way to pass arguments to a " -"function. If the function intention is better expressed by a signature with" -" an extensible number of positional arguments, it can be defined with the " -"``*args`` constructs. In the function body, ``args`` will be a tuple of all" -" the remaining positional arguments. For example, ``send(message, *args)`` " -"can be called with each recipient as an argument: ``send('Hello', 'God', " -"'Mom', 'Cthulhu')``, and in the function body ``args`` will be equal to " -"``('God', 'Mom', 'Cthulhu')``." +"The **arbitrary argument list** is the third way to pass arguments to a " +"function. If the function intention is better expressed by a signature " +"with an extensible number of positional arguments, it can be defined with" +" the ``*args`` constructs. In the function body, ``args`` will be a tuple" +" of all the remaining positional arguments. For example, ``send(message, " +"*args)`` can be called with each recipient as an argument:``send('Hello'," +" 'God', 'Mom', 'Cthulhu')``, and in the function body ``args`` will be " +"equal to ``('God', 'Mom', 'Cthulhu')``." msgstr "" -#: ..\..\writing\style.rst:133 +#: ../../writing/style.rst:135 msgid "" -"However, this construct has some drawbacks and should be used with caution. " -"If a function receives a list of arguments of the same nature, it is often " -"more clear to define it as a function of one argument, that argument being a" -" list or any sequence. Here, if ``send`` has multiple recipients, it is " -"better to define it explicitly: ``send(message, recipients)`` and call it " -"with ``send('Hello', ['God', 'Mom', 'Cthulhu'])``. This way, the user of the" -" function can manipulate the recipient list as a list beforehand, and it " -"opens the possibility to pass any sequence, including iterators, that cannot" -" be unpacked as other sequences." +"However, this construct has some drawbacks and should be used with " +"caution. If a function receives a list of arguments of the same nature, " +"it is often more clear to define it as a function of one argument, that " +"argument being a list or any sequence. Here, if ``send`` has multiple " +"recipients, it is better to define it explicitly: ``send(message, " +"recipients)`` and call it with ``send('Hello', ['God', 'Mom', " +"'Cthulhu'])``. This way, the user of the function can manipulate the " +"recipient list as a list beforehand, and it opens the possibility to pass" +" any sequence, including iterators, that cannot be unpacked as other " +"sequences." msgstr "" -#: ..\..\writing\style.rst:142 +#: ../../writing/style.rst:144 msgid "" -"4. The **arbitrary keyword argument dictionary** is the last way to pass " -"arguments to functions. If the function requires an undetermined series of " -"named arguments, it is possible to use the ``**kwargs`` construct. In the " -"function body, ``kwargs`` will be a dictionary of all the passed named " -"arguments that have not been caught by other keyword arguments in the " -"function signature." +"The **arbitrary keyword argument dictionary** is the last way to pass " +"arguments to functions. If the function requires an undetermined series " +"of named arguments, it is possible to use the ``**kwargs`` construct. In " +"the function body, ``kwargs`` will be a dictionary of all the passed " +"named arguments that have not been caught by other keyword arguments in " +"the function signature." msgstr "" -#: ..\..\writing\style.rst:148 +#: ../../writing/style.rst:151 msgid "" -"The same caution as in the case of *arbitrary argument list* is necessary, " -"for similar reasons: these powerful techniques are to be used when there is " -"a proven necessity to use them, and they should not be used if the simpler " -"and clearer construct is sufficient to express the function's intention." +"The same caution as in the case of *arbitrary argument list* is " +"necessary, for similar reasons: these powerful techniques are to be used " +"when there is a proven necessity to use them, and they should not be used" +" if the simpler and clearer construct is sufficient to express the " +"function's intention." msgstr "" -#: ..\..\writing\style.rst:153 +#: ../../writing/style.rst:156 msgid "" -"It is up to the programmer writing the function to determine which arguments" -" are positional arguments and which are optional keyword arguments, and to " -"decide whether to use the advanced techniques of arbitrary argument passing." -" If the advice above is followed wisely, it is possible and enjoyable to " -"write Python functions that are:" +"It is up to the programmer writing the function to determine which " +"arguments are positional arguments and which are optional keyword " +"arguments, and to decide whether to use the advanced techniques of " +"arbitrary argument passing. If the advice above is followed wisely, it is" +" possible and enjoyable to write Python functions that are:" msgstr "" -#: ..\..\writing\style.rst:159 +#: ../../writing/style.rst:162 msgid "easy to read (the name and arguments need no explanations)" msgstr "" -#: ..\..\writing\style.rst:161 +#: ../../writing/style.rst:164 msgid "" -"easy to change (adding a new keyword argument does not break other parts of " -"the code)" +"easy to change (adding a new keyword argument does not break other parts " +"of the code)" msgstr "" -#: ..\..\writing\style.rst:165 +#: ../../writing/style.rst:168 msgid "Avoid the magical wand" msgstr "" -#: ..\..\writing\style.rst:167 +#: ../../writing/style.rst:170 msgid "" -"A powerful tool for hackers, Python comes with a very rich set of hooks and " -"tools allowing to do almost any kind of tricky tricks. For instance, it is " -"possible to do each of the following:" +"A powerful tool for hackers, Python comes with a very rich set of hooks " +"and tools allowing you to do almost any kind of tricky tricks. For " +"instance, it is possible to do each of the following:" msgstr "" -#: ..\..\writing\style.rst:171 +#: ../../writing/style.rst:174 msgid "change how objects are created and instantiated" msgstr "" -#: ..\..\writing\style.rst:173 +#: ../../writing/style.rst:176 msgid "change how the Python interpreter imports modules" msgstr "" -#: ..\..\writing\style.rst:175 +#: ../../writing/style.rst:178 msgid "" "it is even possible (and recommended if needed) to embed C routines in " "Python." msgstr "" -#: ..\..\writing\style.rst:177 +#: ../../writing/style.rst:180 msgid "" -"However, all these options have many drawbacks and it is always better to " -"use the most straightforward way to achieve your goal. The main drawback is " -"that readability suffers greatly when using these constructs. Many code " -"analysis tools, such as pylint or pyflakes, will be unable to parse this " -"\"magic\" code." +"However, all these options have many drawbacks and it is always better to" +" use the most straightforward way to achieve your goal. The main drawback" +" is that readability suffers greatly when using these constructs. Many " +"code analysis tools, such as pylint or pyflakes, will be unable to parse " +"this \"magic\" code." msgstr "" -#: ..\..\writing\style.rst:182 +#: ../../writing/style.rst:185 msgid "" -"We consider that a Python developer should know about these nearly infinite " -"possibilities, because it instills confidence that no impassable problem " -"will be on the way. However, knowing how and particularly when **not** to " -"use them is very important." +"We consider that a Python developer should know about these nearly " +"infinite possibilities, because it instills confidence that no impassable" +" problem will be on the way. However, knowing how and particularly when " +"**not** to use them is very important." msgstr "" -#: ..\..\writing\style.rst:187 +#: ../../writing/style.rst:190 msgid "" -"Like a kung fu master, a Pythonista knows how to kill with a single finger, " -"and never to actually do it." +"Like a kung fu master, a Pythonista knows how to kill with a single " +"finger, and never to actually do it." msgstr "" -#: ..\..\writing\style.rst:191 -msgid "We are all consenting adults" +#: ../../writing/style.rst:194 +msgid "We are all responsible users" msgstr "" -#: ..\..\writing\style.rst:193 +#: ../../writing/style.rst:196 msgid "" -"As seen above, Python allows many tricks, and some of them are potentially " -"dangerous. A good example is that any client code can override an object's " -"properties and methods: there is no \"private\" keyword in Python. This " -"philosophy, very different from highly defensive languages like Java, which " -"give a lot of mechanisms to prevent any misuse, is expressed by the saying: " -"\"We are all consenting adults\"." +"As seen above, Python allows many tricks, and some of them are " +"potentially dangerous. A good example is that any client code can " +"override an object's properties and methods: there is no \"private\" " +"keyword in Python. This philosophy, very different from highly defensive " +"languages like Java, which give a lot of mechanisms to prevent any " +"misuse, is expressed by the saying: \"We are all responsible users\"." msgstr "" -#: ..\..\writing\style.rst:200 +#: ../../writing/style.rst:203 msgid "" -"This doesn't mean that, for example, no properties are considered private, " -"and that no proper encapsulation is possible in Python. Rather, instead of " -"relying on concrete walls erected by the developers between their code and " -"other's, the Python community prefers to rely on a set of conventions " -"indicating that these elements should not be accessed directly." +"This doesn't mean that, for example, no properties are considered " +"private, and that no proper encapsulation is possible in Python. Rather, " +"instead of relying on concrete walls erected by the developers between " +"their code and other's, the Python community prefers to rely on a set of " +"conventions indicating that these elements should not be accessed " +"directly." msgstr "" -#: ..\..\writing\style.rst:206 +#: ../../writing/style.rst:209 msgid "" -"The main convention for private properties and implementation details is to " -"prefix all \"internals\" with an underscore. If the client code breaks this " -"rule and accesses these marked elements, any misbehavior or problems " -"encountered if the code is modified is the responsibility of the client " -"code." +"The main convention for private properties and implementation details is " +"to prefix all \"internals\" with an underscore. If the client code breaks" +" this rule and accesses these marked elements, any misbehavior or " +"problems encountered if the code is modified is the responsibility of the" +" client code." msgstr "" -#: ..\..\writing\style.rst:211 +#: ../../writing/style.rst:214 msgid "" -"Using this convention generously is encouraged: any method or property that " -"is not intended to be used by client code should be prefixed with an " -"underscore. This will guarantee a better separation of duties and easier " -"modification of existing code; it will always be possible to publicize a " -"private property, while privatising a public property might be a much harder" -" operation." +"Using this convention generously is encouraged: any method or property " +"that is not intended to be used by client code should be prefixed with an" +" underscore. This will guarantee a better separation of duties and easier" +" modification of existing code; it will always be possible to publicize a" +" private property, but making a public property private might be a much " +"harder operation." msgstr "" -#: ..\..\writing\style.rst:218 +#: ../../writing/style.rst:221 msgid "Returning values" msgstr "" -#: ..\..\writing\style.rst:220 +#: ../../writing/style.rst:223 msgid "" "When a function grows in complexity it is not uncommon to use multiple " -"return statements inside the function's body. However, in order to keep a " -"clear intent and a sustainable readability level, it is preferable to avoid " -"returning meaningful values from many output points in the body." +"return statements inside the function's body. However, in order to keep a" +" clear intent and a sustainable readability level, it is preferable to " +"avoid returning meaningful values from many output points in the body." msgstr "" -#: ..\..\writing\style.rst:225 +#: ../../writing/style.rst:228 msgid "" -"There are two main cases for returning values in a function: the result of " -"the function return when it has been processed normally, and the error cases" -" that indicate a wrong input parameter or any other reason for the function " -"to not be able to complete its computation or task." +"There are two main cases for returning values in a function: the result " +"of the function return when it has been processed normally, and the error" +" cases that indicate a wrong input parameter or any other reason for the " +"function to not be able to complete its computation or task." msgstr "" -#: ..\..\writing\style.rst:230 +#: ../../writing/style.rst:233 msgid "" -"If you do not wish to raise exceptions for the second case, then returning a" -" value, such as None or False, indicating that the function could not " -"perform correctly might be needed. In this case, it is better to return as " -"early as the incorrect context has been detected. It will help to flatten " -"the structure of the function: all the code after the return-because-of-" -"error statement can assume the condition is met to further compute the " -"function's main result. Having multiple such return statements is often " -"necessary." +"If you do not wish to raise exceptions for the second case, then " +"returning a value, such as None or False, indicating that the function " +"could not perform correctly might be needed. In this case, it is better " +"to return as early as the incorrect context has been detected. It will " +"help to flatten the structure of the function: all the code after the " +"return-because-of-error statement can assume the condition is met to " +"further compute the function's main result. Having multiple such return " +"statements is often necessary." msgstr "" -#: ..\..\writing\style.rst:237 +#: ../../writing/style.rst:241 msgid "" "However, when a function has multiple main exit points for its normal " "course, it becomes difficult to debug the returned result, so it may be " -"preferable to keep a single exit point. This will also help factoring out " -"some code paths, and the multiple exit points are a probable indication that" -" such a refactoring is needed." +"preferable to keep a single exit point. This will also help factoring out" +" some code paths, and the multiple exit points are a probable indication " +"that such a refactoring is needed." msgstr "" -#: ..\..\writing\style.rst:257 +#: ../../writing/style.rst:262 msgid "Idioms" msgstr "" -#: ..\..\writing\style.rst:259 +#: ../../writing/style.rst:264 msgid "" "A programming idiom, put simply, is a *way* to write code. The notion of " "programming idioms is discussed amply at `c2 " "`_ and at `Stack Overflow " -"`_." +"`_." msgstr "" -#: ..\..\writing\style.rst:262 +#: ../../writing/style.rst:268 msgid "Idiomatic Python code is often referred to as being *Pythonic*." msgstr "" -#: ..\..\writing\style.rst:264 +#: ../../writing/style.rst:270 msgid "" -"Although there usually is one --- and preferably only one --- obvious way to" -" do it; *the* way to write idiomatic Python code can be non-obvious to " -"Python beginners. So, good idioms must be consciously acquired." +"Although there usually is one --- and preferably only one --- obvious way" +" to do it; *the* way to write idiomatic Python code can be non-obvious to" +" Python beginners. So, good idioms must be consciously acquired." msgstr "" -#: ..\..\writing\style.rst:268 +#: ../../writing/style.rst:274 msgid "Some common Python idioms follow:" msgstr "" -#: ..\..\writing\style.rst:273 +#: ../../writing/style.rst:279 msgid "Unpacking" msgstr "" -#: ..\..\writing\style.rst:275 +#: ../../writing/style.rst:281 msgid "" "If you know the length of a list or tuple, you can assign names to its " -"elements with unpacking. For example, since ``enumerate()`` will provide a " -"tuple of two elements for each item in list:" +"elements with unpacking. For example, since ``enumerate()`` will provide " +"a tuple of two elements for each item in list:" msgstr "" -#: ..\..\writing\style.rst:284 +#: ../../writing/style.rst:290 msgid "You can use this to swap variables as well:" msgstr "" -#: ..\..\writing\style.rst:290 +#: ../../writing/style.rst:296 msgid "Nested unpacking works too:" msgstr "" -#: ..\..\writing\style.rst:296 +#: ../../writing/style.rst:302 msgid "" "In Python 3, a new method of extended unpacking was introduced by " ":pep:`3132`:" msgstr "" -#: ..\..\writing\style.rst:307 +#: ../../writing/style.rst:313 msgid "Create an ignored variable" msgstr "" -#: ..\..\writing\style.rst:309 +#: ../../writing/style.rst:315 msgid "" -"If you need to assign something (for instance, in :ref:`unpacking-ref`) but " -"will not need that variable, use ``__``:" +"If you need to assign something (for instance, in :ref:`unpacking-ref`) " +"but will not need that variable, use ``__``:" msgstr "" -#: ..\..\writing\style.rst:319 +#: ../../writing/style.rst:325 msgid "" -"Many Python style guides recommend the use of a single underscore \"``_``\" " -"for throwaway variables rather than the double underscore \"``__``\" " -"recommended here. The issue is that \"``_``\" is commonly used as an alias " -"for the :func:`~gettext.gettext` function, and is also used at the " -"interactive prompt to hold the value of the last operation. Using a double " -"underscore instead is just as clear and almost as convenient, and eliminates" -" the risk of accidentally interfering with either of these other use cases." +"Many Python style guides recommend the use of a single underscore " +"\"``_``\" for throwaway variables rather than the double underscore " +"\"``__``\" recommended here. The issue is that \"``_``\" is commonly used" +" as an alias for the :func:`~gettext.gettext` function, and is also used " +"at the interactive prompt to hold the value of the last operation. Using " +"a double underscore instead is just as clear and almost as convenient, " +"and eliminates the risk of accidentally interfering with either of these " +"other use cases." msgstr "" -#: ..\..\writing\style.rst:329 +#: ../../writing/style.rst:335 msgid "Create a length-N list of the same thing" msgstr "" -#: ..\..\writing\style.rst:331 +#: ../../writing/style.rst:337 msgid "Use the Python list ``*`` operator:" msgstr "" -#: ..\..\writing\style.rst:338 +#: ../../writing/style.rst:344 msgid "Create a length-N list of lists" msgstr "" -#: ..\..\writing\style.rst:340 +#: ../../writing/style.rst:346 msgid "" -"Because lists are mutable, the ``*`` operator (as above) will create a list " -"of N references to the `same` list, which is not likely what you want. " -"Instead, use a list comprehension:" +"Because lists are mutable, the ``*`` operator (as above) will create a " +"list of N references to the `same` list, which is not likely what you " +"want. Instead, use a list comprehension:" +msgstr "" + +#: ../../writing/style.rst:354 +msgid "Note: Use range() instead of xrange() in Python 3" msgstr "" -#: ..\..\writing\style.rst:349 +#: ../../writing/style.rst:357 +msgid "Create a string from a list" +msgstr "" + +#: ../../writing/style.rst:359 msgid "" "A common idiom for creating strings is to use :py:meth:`str.join` on an " "empty string." msgstr "" -#: ..\..\writing\style.rst:356 +#: ../../writing/style.rst:367 msgid "" -"This will set the value of the variable *word* to 'spam'. This idiom can be " -"applied to lists and tuples." +"This will set the value of the variable *word* to 'spam'. This idiom can " +"be applied to lists and tuples." msgstr "" -#: ..\..\writing\style.rst:358 +#: ../../writing/style.rst:371 +msgid "Searching for an item in a collection" +msgstr "" + +#: ../../writing/style.rst:373 msgid "" -"Sometimes we need to search through a collection of things. Let's look at " -"two options: lists and dictionaries." +"Sometimes we need to search through a collection of things. Let's look at" +" two options: lists and sets." msgstr "" -#: ..\..\writing\style.rst:360 +#: ../../writing/style.rst:376 msgid "Take the following code for example:" msgstr "" -#: ..\..\writing\style.rst:373 +#: ../../writing/style.rst:389 msgid "" -"Even though both functions look identical, because *lookup_dict* is " -"utilizing the fact that dictionaries in Python are hashtables, the lookup " -"performance between the two is very different. Python will have to go " -"through each item in the list to find a matching case, which is time " -"consuming. By analysing the hash of the dictionary, finding keys in the dict" -" can be done very quickly. For more information see this `StackOverflow " -"`_ page." +"Even though both functions look identical, because *lookup_set* is " +"utilizing the fact that sets in Python are hashtables, the lookup " +"performance between the two is very different. To determine whether an " +"item is in a list, Python will have to go through each item until it " +"finds a matching item. This is time consuming, especially for long lists." +" In a set, on the other hand, the hash of the item will tell Python where" +" in the set to look for a matching item. As a result, the search can be " +"done quickly, even if the set is large. Searching in dictionaries works " +"the same way. For more information see this `StackOverflow " +"`_ page. For detailed information on the amount of time various " +"common operations take on each of these data structures, see `this page " +"`_." msgstr "" -#: ..\..\writing\style.rst:382 +#: ../../writing/style.rst:403 +msgid "" +"Because of these differences in performance, it is often a good idea to " +"use sets or dictionaries instead of lists in cases where:" +msgstr "" + +#: ../../writing/style.rst:406 +msgid "The collection will contain a large number of items" +msgstr "" + +#: ../../writing/style.rst:408 +msgid "You will be repeatedly searching for items in the collection" +msgstr "" + +#: ../../writing/style.rst:410 +msgid "You do not have duplicate items." +msgstr "" + +#: ../../writing/style.rst:412 +msgid "" +"For small collections, or collections which you will not frequently be " +"searching through, the additional time and memory required to set up the " +"hashtable will often be greater than the time saved by the improved " +"search speed." +msgstr "" + +#: ../../writing/style.rst:419 msgid "Zen of Python" msgstr "" -#: ..\..\writing\style.rst:384 +#: ../../writing/style.rst:421 msgid "Also known as :pep:`20`, the guiding principles for Python's design." msgstr "" -#: ..\..\writing\style.rst:411 +#: ../../writing/style.rst:448 msgid "" -"For some examples of good Python style, see `this Stack Overflow question " -"`_ or `these " -"slides from a Python user group " +"For some examples of good Python style, see `these slides from a Python " +"user group " "`_." msgstr "" -#: ..\..\writing\style.rst:417 +#: ../../writing/style.rst:452 msgid "PEP 8" msgstr "" -#: ..\..\writing\style.rst:419 -msgid ":pep:`8` is the de-facto code style guide for Python." +#: ../../writing/style.rst:454 +msgid "" +":pep:`8` is the de-facto code style guide for Python. A high quality, " +"easy-to-read version of PEP 8 is also available at `pep8.org " +"`_." +msgstr "" + +#: ../../writing/style.rst:457 +msgid "" +"This is highly recommended reading. The entire Python community does " +"their best to adhere to the guidelines laid out within this document. " +"Some project may sway from it from time to time, while others may `amend " +"its recommendations `_." +msgstr "" + +#: ../../writing/style.rst:462 +msgid "" +"That being said, conforming your Python code to PEP 8 is generally a good" +" idea and helps make code more consistent when working on projects with " +"other developers. There is a command-line program, `pep8 " +"`_, that can check your code for " +"conformance. Install it by running the following command in your " +"terminal:" +msgstr "" + +#: ../../writing/style.rst:474 +msgid "" +"Then run it on a file or series of files to get a report of any " +"violations." msgstr "" -#: ..\..\writing\style.rst:421 +#: ../../writing/style.rst:488 msgid "" -"Conforming your Python code to PEP 8 is generally a good idea and helps make" -" code more consistent when working on projects with other developers. There " -"is a command-line program, `pep8 `_, that" -" can check your code for conformance. Install it by running the following " -"command in your Terminal:" +"The program `autopep8 `_ can be " +"used to automatically reformat code in the PEP 8 style. Install the " +"program with:" +msgstr "" + +#: ../../writing/style.rst:495 +msgid "Use it to format a file in-place with:" msgstr "" -#: ..\..\writing\style.rst:433 +#: ../../writing/style.rst:501 msgid "" -"Then run it on a file or series of files to get a report of any violations." +"Excluding the ``--in-place`` flag will cause the program to output the " +"modified code directly to the console for review. The ``--aggressive`` " +"flag will perform more substantial changes and can be applied multiple " +"times for greater effect." msgstr "" -#: ..\..\writing\style.rst:448 +#: ../../writing/style.rst:506 msgid "Conventions" msgstr "" -#: ..\..\writing\style.rst:450 +#: ../../writing/style.rst:508 msgid "" "Here are some conventions you should follow to make your code easier to " "read." msgstr "" -#: ..\..\writing\style.rst:453 +#: ../../writing/style.rst:511 msgid "Check if variable equals a constant" msgstr "" -#: ..\..\writing\style.rst:455 +#: ../../writing/style.rst:513 msgid "" -"You don't need to explicitly compare a value to True, or None, or 0 - you " -"can just add it to the if statement. See `Truth Value Testing " -"`_ for a " -"list of what is considered false." +"You don't need to explicitly compare a value to True, or None, or 0 - you" +" can just add it to the if statement. See `Truth Value Testing " +"`_ for " +"a list of what is considered false." msgstr "" -#: ..\..\writing\style.rst:460 ..\..\writing\style.rst:492 -#: ..\..\writing\style.rst:524 ..\..\writing\style.rst:544 -#: ..\..\writing\style.rst:583 ..\..\writing\style.rst:618 +#: ../../writing/style.rst:518 ../../writing/style.rst:550 +#: ../../writing/style.rst:582 ../../writing/style.rst:602 +#: ../../writing/style.rst:641 ../../writing/style.rst:676 msgid "**Bad**:" msgstr "" -#: ..\..\writing\style.rst:470 ..\..\writing\style.rst:502 -#: ..\..\writing\style.rst:535 ..\..\writing\style.rst:553 -#: ..\..\writing\style.rst:592 ..\..\writing\style.rst:629 +#: ../../writing/style.rst:528 ../../writing/style.rst:560 +#: ../../writing/style.rst:593 ../../writing/style.rst:611 +#: ../../writing/style.rst:650 ../../writing/style.rst:687 msgid "**Good**:" msgstr "" -#: ..\..\writing\style.rst:487 +#: ../../writing/style.rst:545 msgid "Access a Dictionary Element" msgstr "" -#: ..\..\writing\style.rst:489 +#: ../../writing/style.rst:547 msgid "" "Don't use the :py:meth:`dict.has_key` method. Instead, use ``x in d`` " "syntax, or pass a default argument to :py:meth:`dict.get`." msgstr "" -#: ..\..\writing\style.rst:516 +#: ../../writing/style.rst:574 msgid "Short Ways to Manipulate Lists" msgstr "" -#: ..\..\writing\style.rst:518 +#: ../../writing/style.rst:576 msgid "" "`List comprehensions `_ provide a powerful, concise way to work with lists. " -"Also, the :py:func:`map` and :py:func:`filter` functions can perform " -"operations on lists using a different, more concise syntax." +"#list-comprehensions>`_ provide a powerful, concise way to work with " +"lists. Also, the :py:func:`map` and :py:func:`filter` functions can " +"perform operations on lists using a different, more concise syntax." msgstr "" -#: ..\..\writing\style.rst:562 +#: ../../writing/style.rst:620 msgid "Use :py:func:`enumerate` keep a count of your place in the list." msgstr "" -#: ..\..\writing\style.rst:574 +#: ../../writing/style.rst:632 msgid "" "The :py:func:`enumerate` function has better readability than handling a " "counter manually. Moreover, it is better optimized for iterators." msgstr "" -#: ..\..\writing\style.rst:578 +#: ../../writing/style.rst:636 msgid "Read From a File" msgstr "" -#: ..\..\writing\style.rst:580 +#: ../../writing/style.rst:638 msgid "" "Use the ``with open`` syntax to read from files. This will automatically " "close files for you." msgstr "" -#: ..\..\writing\style.rst:600 +#: ../../writing/style.rst:658 msgid "" -"The ``with`` statement is better because it will ensure you always close the" -" file, even if an exception is raised inside the ``with`` block." +"The ``with`` statement is better because it will ensure you always close " +"the file, even if an exception is raised inside the ``with`` block." msgstr "" -#: ..\..\writing\style.rst:604 +#: ../../writing/style.rst:662 msgid "Line Continuations" msgstr "" -#: ..\..\writing\style.rst:606 -msgid "" -"When a logical line of code is longer than the accepted limit, you need to " -"split it over multiple physical lines. The Python interpreter will join " -"consecutive lines if the last character of the line is a backslash. This is " -"helpful in some cases, but should usually be avoided because of its " -"fragility: a white space added to the end of the line, after the backslash, " -"will break the code and may have unexpected results." -msgstr "" - -#: ..\..\writing\style.rst:613 -msgid "" -"A better solution is to use parentheses around your elements. Left with an " -"unclosed parenthesis on an end-of-line the Python interpreter will join the " -"next line until the parentheses are closed. The same behavior holds for " -"curly and square braces." -msgstr "" +#: ../../writing/style.rst:664 +msgid "" +"When a logical line of code is longer than the accepted limit, you need " +"to split it over multiple physical lines. The Python interpreter will " +"join consecutive lines if the last character of the line is a backslash. " +"This is helpful in some cases, but should usually be avoided because of " +"its fragility: a white space added to the end of the line, after the " +"backslash, will break the code and may have unexpected results." +msgstr "" + +#: ../../writing/style.rst:671 +msgid "" +"A better solution is to use parentheses around your elements. Left with " +"an unclosed parenthesis on an end-of-line the Python interpreter will " +"join the next line until the parentheses are closed. The same behavior " +"holds for curly and square braces." +msgstr "" + +#: ../../writing/style.rst:700 +msgid "" +"However, more often than not, having to split a long logical line is a " +"sign that you are trying to do too many things at the same time, which " +"may hinder readability." +msgstr "" + +#~ msgid "" +#~ "2. **Keyword arguments** are not " +#~ "mandatory and have default values. They" +#~ " are often used for optional " +#~ "parameters sent to the function. When" +#~ " a function has more than two " +#~ "or three positional parameters, its " +#~ "signature is more difficult to remember" +#~ " and using keyword argument with " +#~ "default values is helpful. For instance," +#~ " a more complete ``send`` function " +#~ "could be defined as ``send(message, to," +#~ " cc=None, bcc=None)``. Here ``cc`` and " +#~ "``bcc`` are optional, and evaluate to" +#~ " ``None`` when they are not passed" +#~ " another value." +#~ msgstr "" + +#~ msgid "" +#~ "3. The **arbitrary argument list** is" +#~ " the third way to pass arguments " +#~ "to a function. If the function " +#~ "intention is better expressed by a " +#~ "signature with an extensible number of" +#~ " positional arguments, it can be " +#~ "defined with the ``*args`` constructs. " +#~ "In the function body, ``args`` will " +#~ "be a tuple of all the remaining" +#~ " positional arguments. For example, " +#~ "``send(message, *args)`` can be called " +#~ "with each recipient as an argument: " +#~ "``send('Hello', 'God', 'Mom', 'Cthulhu')``, " +#~ "and in the function body ``args`` " +#~ "will be equal to ``('God', 'Mom', " +#~ "'Cthulhu')``." +#~ msgstr "" + +#~ msgid "" +#~ "4. The **arbitrary keyword argument " +#~ "dictionary** is the last way to " +#~ "pass arguments to functions. If the " +#~ "function requires an undetermined series " +#~ "of named arguments, it is possible " +#~ "to use the ``**kwargs`` construct. In" +#~ " the function body, ``kwargs`` will " +#~ "be a dictionary of all the passed" +#~ " named arguments that have not been" +#~ " caught by other keyword arguments in" +#~ " the function signature." +#~ msgstr "" + +#~ msgid "" +#~ "A powerful tool for hackers, Python " +#~ "comes with a very rich set of " +#~ "hooks and tools allowing to do " +#~ "almost any kind of tricky tricks. " +#~ "For instance, it is possible to do" +#~ " each of the following:" +#~ msgstr "" + +#~ msgid "We are all consenting adults" +#~ msgstr "" + +#~ msgid "" +#~ "As seen above, Python allows many " +#~ "tricks, and some of them are " +#~ "potentially dangerous. A good example is" +#~ " that any client code can override" +#~ " an object's properties and methods: " +#~ "there is no \"private\" keyword in " +#~ "Python. This philosophy, very different " +#~ "from highly defensive languages like " +#~ "Java, which give a lot of " +#~ "mechanisms to prevent any misuse, is " +#~ "expressed by the saying: \"We are " +#~ "all consenting adults\"." +#~ msgstr "" + +#~ msgid "" +#~ "Using this convention generously is " +#~ "encouraged: any method or property that" +#~ " is not intended to be used by" +#~ " client code should be prefixed with" +#~ " an underscore. This will guarantee a" +#~ " better separation of duties and " +#~ "easier modification of existing code; it" +#~ " will always be possible to publicize" +#~ " a private property, while privatising " +#~ "a public property might be a much" +#~ " harder operation." +#~ msgstr "" + +#~ msgid "" +#~ "Sometimes we need to search through " +#~ "a collection of things. Let's look " +#~ "at two options: lists and dictionaries." +#~ msgstr "" + +#~ msgid "" +#~ "Even though both functions look " +#~ "identical, because *lookup_dict* is utilizing" +#~ " the fact that dictionaries in Python" +#~ " are hashtables, the lookup performance " +#~ "between the two is very different. " +#~ "Python will have to go through " +#~ "each item in the list to find " +#~ "a matching case, which is time " +#~ "consuming. By analysing the hash of " +#~ "the dictionary, finding keys in the " +#~ "dict can be done very quickly. For" +#~ " more information see this `StackOverflow" +#~ " `_ page." +#~ msgstr "" + +#~ msgid "" +#~ "For some examples of good Python " +#~ "style, see `this Stack Overflow question" +#~ " `_ or `these slides from a" +#~ " Python user group " +#~ "`_." +#~ msgstr "" + +#~ msgid ":pep:`8` is the de-facto code style guide for Python." +#~ msgstr "" + +#~ msgid "" +#~ "Conforming your Python code to PEP " +#~ "8 is generally a good idea and " +#~ "helps make code more consistent when " +#~ "working on projects with other " +#~ "developers. There is a command-line " +#~ "program, `pep8 `_, " +#~ "that can check your code for " +#~ "conformance. Install it by running the" +#~ " following command in your Terminal:" +#~ msgstr "" + +#~ msgid "" +#~ "However, more often than not having " +#~ "to split long logical line is a" +#~ " sign that you are trying to do" +#~ " too many things at the same " +#~ "time, which may hinder readability." +#~ msgstr "" -#: ..\..\writing\style.rst:642 -msgid "" -"However, more often than not having to split long logical line is a sign " -"that you are trying to do too many things at the same time, which may hinder" -" readability." -msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.mo b/docs/locale/ko/LC_MESSAGES/writing/tests.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..6de2bdf74b36443ec810242a1dde1bcd0371eb70 100644 GIT binary patch literal 15449 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 delta 113 zcmcav@qkI^o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU!Z*K7`jq*U(Vc*g(O^$jZoK y@*?>dY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$<7L<%%LG}ldBb!85sZ^OcnJ2 diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.po b/docs/locale/ko/LC_MESSAGES/writing/tests.po index e89e7592e..5f203f15a 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/tests.po +++ b/docs/locale/ko/LC_MESSAGES/writing/tests.po @@ -1,334 +1,425 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\tests.rst:2 +#: ../../writing/tests.rst:2 msgid "Testing Your Code" msgstr "" -#: ..\..\writing\tests.rst:4 +#: ../../writing/tests.rst:4 msgid "Testing your code is very important." msgstr "" -#: ..\..\writing\tests.rst:6 +#: ../../writing/tests.rst:6 msgid "" -"Getting used to writing the testing code and the running code in parallel is" -" now considered a good habit. Used wisely, this method helps you define more" -" precisely your code's intent and have a more decoupled architecture." +"Getting used to writing testing code and running this code in parallel is" +" now considered a good habit. Used wisely, this method helps you define " +"more precisely your code's intent and have a more decoupled architecture." msgstr "" -#: ..\..\writing\tests.rst:10 +#: ../../writing/tests.rst:10 msgid "Some general rules of testing:" msgstr "" -#: ..\..\writing\tests.rst:12 +#: ../../writing/tests.rst:12 msgid "" -"A testing unit should focus on one tiny bit of functionality and prove it " -"correct." +"A testing unit should focus on one tiny bit of functionality and prove it" +" correct." msgstr "" -#: ..\..\writing\tests.rst:15 +#: ../../writing/tests.rst:15 msgid "" -"Each test unit must be fully independent. Each of them must be able to run " -"alone, and also within the test suite, regardless of the order they are " -"called. The implication of this rule is that each test must be loaded with a" -" fresh dataset and may have to do some cleanup afterwards. This is usually " -"handled by :meth:`setUp()` and :meth:`tearDown()` methods." +"Each test unit must be fully independent. Each test must be able to run " +"alone, and also within the test suite, regardless of the order that they " +"are called. The implication of this rule is that each test must be loaded" +" with a fresh dataset and may have to do some cleanup afterwards. This is" +" usually handled by :meth:`setUp()` and :meth:`tearDown()` methods." msgstr "" -#: ..\..\writing\tests.rst:21 +#: ../../writing/tests.rst:21 msgid "" -"Try hard to make tests that run fast. If one single test needs more than a " -"few millisecond to run, development will be slowed down or the tests will " -"not be run as often as desirable. In some cases, tests can't be fast because" -" they need a complex data structure to work on, and this data structure must" -" be loaded every time the test runs. Keep these heavier tests in a separate " -"test suite that is run by some scheduled task, and run all other tests as " -"often as needed." +"Try hard to make tests that run fast. If one single test needs more than " +"a few milliseconds to run, development will be slowed down or the tests " +"will not be run as often as is desirable. In some cases, tests can't be " +"fast because they need a complex data structure to work on, and this data" +" structure must be loaded every time the test runs. Keep these heavier " +"tests in a separate test suite that is run by some scheduled task, and " +"run all other tests as often as needed." msgstr "" -#: ..\..\writing\tests.rst:29 +#: ../../writing/tests.rst:29 msgid "" -"Learn your tools and learn how to run a single test or a test case. Then, " -"when developing a function inside a module, run this function's tests very " -"often, ideally automatically when you save the code." +"Learn your tools and learn how to run a single test or a test case. Then," +" when developing a function inside a module, run this function's tests " +"frequently, ideally automatically when you save the code." msgstr "" -#: ..\..\writing\tests.rst:33 +#: ../../writing/tests.rst:33 msgid "" "Always run the full test suite before a coding session, and run it again " -"after. This will give you more confidence that you did not break anything in" -" the rest of the code." +"after. This will give you more confidence that you did not break anything" +" in the rest of the code." msgstr "" -#: ..\..\writing\tests.rst:37 +#: ../../writing/tests.rst:37 msgid "" "It is a good idea to implement a hook that runs all tests before pushing " "code to a shared repository." msgstr "" -#: ..\..\writing\tests.rst:40 +#: ../../writing/tests.rst:40 msgid "" -"If you are in the middle of a development session and have to interrupt your" -" work, it is a good idea to write a broken unit test about what you want to " -"develop next. When coming back to work, you will have a pointer to where you" -" were and get back on track faster." +"If you are in the middle of a development session and have to interrupt " +"your work, it is a good idea to write a broken unit test about what you " +"want to develop next. When coming back to work, you will have a pointer " +"to where you were and get back on track faster." msgstr "" -#: ..\..\writing\tests.rst:45 +#: ../../writing/tests.rst:45 msgid "" "The first step when you are debugging your code is to write a new test " "pinpointing the bug. While it is not always possible to do, those bug " -"catching tests are among the most valuable pieces of code in your project." +"catching tests are among the most valuable pieces of code in your " +"project." msgstr "" -#: ..\..\writing\tests.rst:49 +#: ../../writing/tests.rst:49 msgid "" -"Use long and descriptive names for testing functions. The style guide here " -"is slightly different than that of running code, where short names are often" -" preferred. The reason is testing functions are never called explicitly. " -"``square()`` or even ``sqr()`` is ok in running code, but in testing code " -"you would have names such as ``test_square_of_number_2()``, " -"``test_square_negative_number()``. These function names are displayed when a" -" test fails, and should be as descriptive as possible." +"Use long and descriptive names for testing functions. The style guide " +"here is slightly different than that of running code, where short names " +"are often preferred. The reason is testing functions are never called " +"explicitly. ``square()`` or even ``sqr()`` is ok in running code, but in " +"testing code you would have names such as ``test_square_of_number_2()``, " +"``test_square_negative_number()``. These function names are displayed " +"when a test fails, and should be as descriptive as possible." msgstr "" -#: ..\..\writing\tests.rst:57 +#: ../../writing/tests.rst:57 msgid "" -"When something goes wrong or has to be changed, and if your code has a good " -"set of tests, you or other maintainers will rely largely on the testing " -"suite to fix the problem or modify a given behavior. Therefore the testing " -"code will be read as much as or even more than the running code. A unit test" -" whose purpose is unclear is not very helpful is this case." +"When something goes wrong or has to be changed, and if your code has a " +"good set of tests, you or other maintainers will rely largely on the " +"testing suite to fix the problem or modify a given behavior. Therefore " +"the testing code will be read as much as or even more than the running " +"code. A unit test whose purpose is unclear is not very helpful in this " +"case." msgstr "" -#: ..\..\writing\tests.rst:64 +#: ../../writing/tests.rst:64 msgid "" "Another use of the testing code is as an introduction to new developers. " "When someone will have to work on the code base, running and reading the " -"related testing code is often the best they can do. They will or should " -"discover the hot spots, where most difficulties arise, and the corner cases." -" If they have to add some functionality, the first step should be to add a " -"test and, by this means, ensure the new functionality is not already a " -"working path that has not been plugged into the interface." +"related testing code is often the best thing that they can do to start. " +"They will or should discover the hot spots, where most difficulties " +"arise, and the corner cases. If they have to add some functionality, the " +"first step should be to add a test to ensure that the new functionality " +"is not already a working path that has not been plugged into the " +"interface." msgstr "" -#: ..\..\writing\tests.rst:73 +#: ../../writing/tests.rst:73 msgid "The Basics" msgstr "" -#: ..\..\writing\tests.rst:77 +#: ../../writing/tests.rst:77 msgid "Unittest" msgstr "" -#: ..\..\writing\tests.rst:79 +#: ../../writing/tests.rst:79 msgid "" -":mod:`unittest` is the batteries-included test module in the Python standard" -" library. Its API will be familiar to anyone who has used any of the " -"JUnit/nUnit/CppUnit series of tools." +":mod:`unittest` is the batteries-included test module in the Python " +"standard library. Its API will be familiar to anyone who has used any of " +"the JUnit/nUnit/CppUnit series of tools." msgstr "" -#: ..\..\writing\tests.rst:83 +#: ../../writing/tests.rst:83 msgid "" "Creating test cases is accomplished by subclassing " ":class:`unittest.TestCase`." msgstr "" -#: ..\..\writing\tests.rst:96 -msgid "" -"As of Python 2.7 unittest also includes its own test discovery mechanisms." +#: ../../writing/tests.rst:96 +msgid "As of Python 2.7 unittest also includes its own test discovery mechanisms." msgstr "" -#: ..\..\writing\tests.rst:98 +#: ../../writing/tests.rst:98 msgid "" "`unittest in the standard library documentation " "`_" msgstr "" -#: ..\..\writing\tests.rst:102 +#: ../../writing/tests.rst:102 msgid "Doctest" msgstr "" -#: ..\..\writing\tests.rst:104 +#: ../../writing/tests.rst:104 msgid "" "The :mod:`doctest` module searches for pieces of text that look like " -"interactive Python sessions in docstrings, and then executes those sessions " -"to verify that they work exactly as shown." +"interactive Python sessions in docstrings, and then executes those " +"sessions to verify that they work exactly as shown." msgstr "" -#: ..\..\writing\tests.rst:108 +#: ../../writing/tests.rst:108 msgid "" -"Doctests have a different use case than proper unit tests: they are usually " -"less detailed and don't catch special cases or obscure regression bugs. They" -" are useful as an expressive documentation of the main use cases of a module" -" and its components. However, doctests should run automatically each time " -"the full test suite runs." +"Doctests have a different use case than proper unit tests: they are " +"usually less detailed and don't catch special cases or obscure regression" +" bugs. They are useful as an expressive documentation of the main use " +"cases of a module and its components. However, doctests should run " +"automatically each time the full test suite runs." msgstr "" -#: ..\..\writing\tests.rst:114 +#: ../../writing/tests.rst:114 msgid "A simple doctest in a function:" msgstr "" -#: ..\..\writing\tests.rst:133 +#: ../../writing/tests.rst:133 msgid "" -"When running this module from the command line as in ``python module.py``, " -"the doctests will run and complain if anything is not behaving as described " -"in the docstrings." +"When running this module from the command line as in ``python " +"module.py``, the doctests will run and complain if anything is not " +"behaving as described in the docstrings." msgstr "" -#: ..\..\writing\tests.rst:138 +#: ../../writing/tests.rst:138 msgid "Tools" msgstr "" -#: ..\..\writing\tests.rst:142 +#: ../../writing/tests.rst:142 msgid "py.test" msgstr "" -#: ..\..\writing\tests.rst:144 +#: ../../writing/tests.rst:144 msgid "" "py.test is a no-boilerplate alternative to Python's standard unittest " "module." msgstr "" -#: ..\..\writing\tests.rst:150 +#: ../../writing/tests.rst:150 msgid "" -"Despite being a fully-featured and extensible test tool, it boasts a simple " -"syntax. Creating a test suite is as easy as writing a module with a couple " -"of functions:" +"Despite being a fully-featured and extensible test tool, it boasts a " +"simple syntax. Creating a test suite is as easy as writing a module with " +"a couple of functions:" msgstr "" -#: ..\..\writing\tests.rst:163 +#: ../../writing/tests.rst:163 msgid "and then running the `py.test` command" msgstr "" -#: ..\..\writing\tests.rst:185 +#: ../../writing/tests.rst:185 msgid "" "is far less work than would be required for the equivalent functionality " "with the unittest module!" msgstr "" -#: ..\..\writing\tests.rst:188 +#: ../../writing/tests.rst:188 msgid "`py.test `_" msgstr "" -#: ..\..\writing\tests.rst:192 +#: ../../writing/tests.rst:192 msgid "Nose" msgstr "" -#: ..\..\writing\tests.rst:194 +#: ../../writing/tests.rst:194 msgid "nose extends unittest to make testing easier." msgstr "" -#: ..\..\writing\tests.rst:201 +#: ../../writing/tests.rst:201 msgid "" -"nose provides automatic test discovery to save you the hassle of manually " -"creating test suites. It also provides numerous plugins for features such as" -" xUnit-compatible test output, coverage reporting, and test selection." +"nose provides automatic test discovery to save you the hassle of manually" +" creating test suites. It also provides numerous plugins for features " +"such as xUnit-compatible test output, coverage reporting, and test " +"selection." msgstr "" -#: ..\..\writing\tests.rst:205 -msgid "`nose `_" +#: ../../writing/tests.rst:205 +msgid "`nose `_" msgstr "" -#: ..\..\writing\tests.rst:209 +#: ../../writing/tests.rst:209 msgid "tox" msgstr "" -#: ..\..\writing\tests.rst:211 +#: ../../writing/tests.rst:211 msgid "" -"tox is a tool for automating test environment management and testing against" -" multiple interpreter configurations" +"tox is a tool for automating test environment management and testing " +"against multiple interpreter configurations" msgstr "" -#: ..\..\writing\tests.rst:218 +#: ../../writing/tests.rst:218 msgid "" -"tox allows you to configure complicated multi-parameter test matrices via a " -"simple ini-style configuration file." +"tox allows you to configure complicated multi-parameter test matrices via" +" a simple ini-style configuration file." msgstr "" -#: ..\..\writing\tests.rst:221 +#: ../../writing/tests.rst:221 msgid "`tox `_" msgstr "" -#: ..\..\writing\tests.rst:224 +#: ../../writing/tests.rst:224 msgid "Unittest2" msgstr "" -#: ..\..\writing\tests.rst:226 +#: ../../writing/tests.rst:226 msgid "" "unittest2 is a backport of Python 2.7's unittest module which has an " "improved API and better assertions over the one available in previous " "versions of Python." msgstr "" -#: ..\..\writing\tests.rst:229 +#: ../../writing/tests.rst:229 msgid "If you're using Python 2.6 or below, you can install it with pip" msgstr "" -#: ..\..\writing\tests.rst:235 +#: ../../writing/tests.rst:235 msgid "" -"You may want to import the module under the name unittest to make porting " -"code to newer versions of the module easier in the future" +"You may want to import the module under the name unittest to make porting" +" code to newer versions of the module easier in the future" msgstr "" -#: ..\..\writing\tests.rst:245 +#: ../../writing/tests.rst:245 msgid "" -"This way if you ever switch to a newer Python version and no longer need the" -" unittest2 module, you can simply change the import in your test module " -"without the need to change any other code." +"This way if you ever switch to a newer Python version and no longer need " +"the unittest2 module, you can simply change the import in your test " +"module without the need to change any other code." msgstr "" -#: ..\..\writing\tests.rst:249 +#: ../../writing/tests.rst:249 msgid "`unittest2 `_" msgstr "" -#: ..\..\writing\tests.rst:253 +#: ../../writing/tests.rst:253 msgid "mock" msgstr "" -#: ..\..\writing\tests.rst:255 +#: ../../writing/tests.rst:255 msgid "" -":mod:`unittest.mock` is a library for testing in Python. As of Python 3.3, " -"it is available in the `standard library " +":mod:`unittest.mock` is a library for testing in Python. As of Python " +"3.3, it is available in the `standard library " "`_." msgstr "" -#: ..\..\writing\tests.rst:259 +#: ../../writing/tests.rst:259 msgid "For older versions of Python:" msgstr "" -#: ..\..\writing\tests.rst:265 +#: ../../writing/tests.rst:265 msgid "" -"It allows you to replace parts of your system under test with mock objects " -"and make assertions about how they have been used." +"It allows you to replace parts of your system under test with mock " +"objects and make assertions about how they have been used." msgstr "" -#: ..\..\writing\tests.rst:268 +#: ../../writing/tests.rst:268 msgid "For example, you can monkey-patch a method:" msgstr "" -#: ..\..\writing\tests.rst:279 +#: ../../writing/tests.rst:279 msgid "" "To mock classes or objects in a module under test, use the ``patch`` " -"decorator. In the example below, an external search system is replaced with " -"a mock that always returns the same result (but only for the duration of the" -" test)." +"decorator. In the example below, an external search system is replaced " +"with a mock that always returns the same result (but only for the " +"duration of the test)." msgstr "" -#: ..\..\writing\tests.rst:298 -msgid "" -"Mock has many other ways you can configure it and control its behavior." +#: ../../writing/tests.rst:298 +msgid "Mock has many other ways you can configure it and control its behavior." msgstr "" -#: ..\..\writing\tests.rst:300 +#: ../../writing/tests.rst:300 msgid "`mock `_" msgstr "" + +#~ msgid "" +#~ "Getting used to writing the testing " +#~ "code and the running code in " +#~ "parallel is now considered a good " +#~ "habit. Used wisely, this method helps" +#~ " you define more precisely your " +#~ "code's intent and have a more " +#~ "decoupled architecture." +#~ msgstr "" + +#~ msgid "" +#~ "Each test unit must be fully " +#~ "independent. Each of them must be " +#~ "able to run alone, and also within" +#~ " the test suite, regardless of the" +#~ " order they are called. The " +#~ "implication of this rule is that " +#~ "each test must be loaded with a" +#~ " fresh dataset and may have to " +#~ "do some cleanup afterwards. This is " +#~ "usually handled by :meth:`setUp()` and " +#~ ":meth:`tearDown()` methods." +#~ msgstr "" + +#~ msgid "" +#~ "Try hard to make tests that run" +#~ " fast. If one single test needs " +#~ "more than a few millisecond to " +#~ "run, development will be slowed down " +#~ "or the tests will not be run " +#~ "as often as desirable. In some " +#~ "cases, tests can't be fast because " +#~ "they need a complex data structure " +#~ "to work on, and this data " +#~ "structure must be loaded every time " +#~ "the test runs. Keep these heavier " +#~ "tests in a separate test suite " +#~ "that is run by some scheduled " +#~ "task, and run all other tests as" +#~ " often as needed." +#~ msgstr "" + +#~ msgid "" +#~ "Learn your tools and learn how to" +#~ " run a single test or a test" +#~ " case. Then, when developing a " +#~ "function inside a module, run this " +#~ "function's tests very often, ideally " +#~ "automatically when you save the code." +#~ msgstr "" + +#~ msgid "" +#~ "When something goes wrong or has " +#~ "to be changed, and if your code" +#~ " has a good set of tests, you" +#~ " or other maintainers will rely " +#~ "largely on the testing suite to " +#~ "fix the problem or modify a given" +#~ " behavior. Therefore the testing code " +#~ "will be read as much as or " +#~ "even more than the running code. A" +#~ " unit test whose purpose is unclear" +#~ " is not very helpful is this " +#~ "case." +#~ msgstr "" + +#~ msgid "" +#~ "Another use of the testing code is" +#~ " as an introduction to new " +#~ "developers. When someone will have to" +#~ " work on the code base, running " +#~ "and reading the related testing code " +#~ "is often the best they can do. " +#~ "They will or should discover the " +#~ "hot spots, where most difficulties " +#~ "arise, and the corner cases. If " +#~ "they have to add some functionality, " +#~ "the first step should be to add" +#~ " a test and, by this means, " +#~ "ensure the new functionality is not " +#~ "already a working path that has " +#~ "not been plugged into the interface." +#~ msgstr "" + +#~ msgid "`nose `_" +#~ msgstr "" + From fb255e9143f57cfd0a133bc2003243d7978c205d Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Thu, 13 Oct 2016 07:16:22 +0000 Subject: [PATCH 031/117] update with 2016 version(chapter1) --- docs/locale/ko/LC_MESSAGES/_themes/README.mo | Bin 352 -> 1723 bytes docs/locale/ko/LC_MESSAGES/dev/env.mo | Bin 352 -> 24199 bytes docs/locale/ko/LC_MESSAGES/dev/env.po | 533 +++++-- .../ko/LC_MESSAGES/dev/pip-virtualenv.mo | Bin 0 -> 8561 bytes .../ko/LC_MESSAGES/dev/pip-virtualenv.po | 168 ++ docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo | Bin 352 -> 12175 bytes docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 297 ++-- docs/locale/ko/LC_MESSAGES/index.mo | Bin 2864 -> 4614 bytes docs/locale/ko/LC_MESSAGES/index.po | 129 +- docs/locale/ko/LC_MESSAGES/intro/community.mo | Bin 352 -> 4867 bytes .../ko/LC_MESSAGES/intro/documentation.mo | Bin 352 -> 2171 bytes .../ko/LC_MESSAGES/intro/documentation.po | 40 +- docs/locale/ko/LC_MESSAGES/intro/duction.mo | Bin 352 -> 6599 bytes docs/locale/ko/LC_MESSAGES/intro/duction.po | 76 +- docs/locale/ko/LC_MESSAGES/intro/learning.mo | Bin 352 -> 24665 bytes docs/locale/ko/LC_MESSAGES/intro/learning.po | 508 ++++-- docs/locale/ko/LC_MESSAGES/intro/news.mo | Bin 352 -> 3331 bytes docs/locale/ko/LC_MESSAGES/intro/news.po | 64 +- .../locale/ko/LC_MESSAGES/notes/contribute.mo | Bin 352 -> 1755 bytes docs/locale/ko/LC_MESSAGES/notes/license.mo | Bin 352 -> 759 bytes .../locale/ko/LC_MESSAGES/notes/styleguide.mo | Bin 352 -> 7075 bytes .../locale/ko/LC_MESSAGES/notes/styleguide.po | 111 +- docs/locale/ko/LC_MESSAGES/scenarios/admin.mo | Bin 352 -> 18391 bytes docs/locale/ko/LC_MESSAGES/scenarios/admin.po | 389 +++-- docs/locale/ko/LC_MESSAGES/scenarios/ci.mo | Bin 352 -> 6077 bytes docs/locale/ko/LC_MESSAGES/scenarios/ci.po | 135 +- docs/locale/ko/LC_MESSAGES/scenarios/cli.mo | Bin 352 -> 6069 bytes docs/locale/ko/LC_MESSAGES/scenarios/cli.po | 84 +- docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo | Bin 0 -> 6255 bytes docs/locale/ko/LC_MESSAGES/scenarios/clibs.po | 125 ++ .../locale/ko/LC_MESSAGES/scenarios/client.mo | Bin 352 -> 4349 bytes .../locale/ko/LC_MESSAGES/scenarios/client.po | 55 +- .../locale/ko/LC_MESSAGES/scenarios/crypto.mo | Bin 352 -> 1959 bytes .../locale/ko/LC_MESSAGES/scenarios/crypto.po | 40 +- docs/locale/ko/LC_MESSAGES/scenarios/db.mo | Bin 352 -> 6611 bytes docs/locale/ko/LC_MESSAGES/scenarios/db.po | 113 +- docs/locale/ko/LC_MESSAGES/scenarios/gui.mo | Bin 352 -> 9173 bytes docs/locale/ko/LC_MESSAGES/scenarios/gui.po | 160 +- .../ko/LC_MESSAGES/scenarios/imaging.mo | Bin 352 -> 4493 bytes .../ko/LC_MESSAGES/scenarios/imaging.po | 112 +- docs/locale/ko/LC_MESSAGES/scenarios/json.mo | Bin 0 -> 2661 bytes docs/locale/ko/LC_MESSAGES/scenarios/json.po | 86 + .../ko/LC_MESSAGES/scenarios/network.mo | Bin 352 -> 3223 bytes .../ko/LC_MESSAGES/scenarios/scientific.mo | Bin 352 -> 12139 bytes .../ko/LC_MESSAGES/scenarios/scientific.po | 245 +-- .../locale/ko/LC_MESSAGES/scenarios/scrape.mo | Bin 352 -> 6135 bytes .../locale/ko/LC_MESSAGES/scenarios/scrape.po | 102 +- .../ko/LC_MESSAGES/scenarios/serialization.mo | Bin 0 -> 1989 bytes .../ko/LC_MESSAGES/scenarios/serialization.po | 65 + docs/locale/ko/LC_MESSAGES/scenarios/speed.mo | Bin 352 -> 16401 bytes docs/locale/ko/LC_MESSAGES/scenarios/speed.po | 296 +++- docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 352 -> 27977 bytes docs/locale/ko/LC_MESSAGES/scenarios/web.po | 851 +++++++--- docs/locale/ko/LC_MESSAGES/scenarios/xml.mo | Bin 352 -> 2253 bytes .../ko/LC_MESSAGES/shipping/freezing.mo | Bin 352 -> 11475 bytes .../ko/LC_MESSAGES/shipping/freezing.po | 318 ++-- .../ko/LC_MESSAGES/shipping/packaging.mo | Bin 352 -> 14721 bytes .../ko/LC_MESSAGES/shipping/packaging.po | 332 +++- .../ko/LC_MESSAGES/starting/install/linux.mo | Bin 6381 -> 6634 bytes .../ko/LC_MESSAGES/starting/install/linux.po | 173 +- .../ko/LC_MESSAGES/starting/install/osx.mo | Bin 8038 -> 8630 bytes .../ko/LC_MESSAGES/starting/install/osx.po | 198 +-- .../ko/LC_MESSAGES/starting/install/win.mo | Bin 8471 -> 8666 bytes .../ko/LC_MESSAGES/starting/install/win.po | 171 +- .../ko/LC_MESSAGES/starting/installation.mo | Bin 2058 -> 2277 bytes .../ko/LC_MESSAGES/starting/installation.po | 54 +- .../ko/LC_MESSAGES/starting/pip-virtualenv.mo | Bin 352 -> 8513 bytes .../ko/LC_MESSAGES/starting/which-python.mo | Bin 12436 -> 12769 bytes .../ko/LC_MESSAGES/starting/which-python.po | 338 ++-- .../ko/LC_MESSAGES/writing/documentation.mo | Bin 352 -> 10763 bytes .../ko/LC_MESSAGES/writing/documentation.po | 259 +-- docs/locale/ko/LC_MESSAGES/writing/gotchas.mo | Bin 352 -> 9675 bytes docs/locale/ko/LC_MESSAGES/writing/gotchas.po | 208 ++- docs/locale/ko/LC_MESSAGES/writing/license.mo | Bin 352 -> 3847 bytes docs/locale/ko/LC_MESSAGES/writing/logging.mo | Bin 0 -> 8159 bytes docs/locale/ko/LC_MESSAGES/writing/logging.po | 207 +++ docs/locale/ko/LC_MESSAGES/writing/reading.mo | Bin 352 -> 5049 bytes docs/locale/ko/LC_MESSAGES/writing/reading.po | 110 +- .../ko/LC_MESSAGES/writing/structure.mo | Bin 40733 -> 51796 bytes .../ko/LC_MESSAGES/writing/structure.po | 1416 +++++++++++------ docs/locale/ko/LC_MESSAGES/writing/style.mo | Bin 4575 -> 34578 bytes docs/locale/ko/LC_MESSAGES/writing/style.po | 891 +++++++---- docs/locale/ko/LC_MESSAGES/writing/tests.mo | Bin 352 -> 15449 bytes docs/locale/ko/LC_MESSAGES/writing/tests.po | 375 +++-- 84 files changed, 6640 insertions(+), 3194 deletions(-) create mode 100644 docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo create mode 100644 docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/clibs.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/json.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/json.po create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/serialization.po create mode 100644 docs/locale/ko/LC_MESSAGES/writing/logging.mo create mode 100644 docs/locale/ko/LC_MESSAGES/writing/logging.po diff --git a/docs/locale/ko/LC_MESSAGES/_themes/README.mo b/docs/locale/ko/LC_MESSAGES/_themes/README.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..d5a10dd06f5b724cd2494ae8687babb26bfcc04e 100644 GIT binary patch literal 1723 zcmeHGJ&zMf5FI{_z=DLk41x-fke2JgHb^YPf$*|s&pLY-yaovpXnV?bpWEG|?w-9J zi1-CW{~t7v9Tkji-S#Zs9=@}bi3{*8^{u%t1o@PbN@Ps-5R`apJ0 zk)v?-cb)~G(jXAdl5%$HKn8Wd(PyNBFPCa%FZ<&Z=GM`DE&Yn5$&Yr9wG5npLq`)E z1L6``>vUr1%9f7yn;dgHE7y#?gR&2?0?MNl(v?6jbJz4GH)d77i&-3u#l&XRdaySU_Z-*V5!>i)M%{Mjy6AMowKjFT zS$FeF8w-wN%m*scANf7$_r_whC$@X^>s~e*TzR^;+iwk}4`Sk^@pvoNWpw}1a7eqo zQJ;S4k9vdQ-QM>0xWB)D2d>BvvWW@HbwKnawd|8EsBgXzj3J7oW4( ZsxsP=Q`Xc?ucg;p-{Ky)idR( z?rN&4r`?MbST;PMd_M$~kVp|oNI_8|A(SWzinNMQ_6-R|iBJgPX@e4hl!$}}Uh?~& zd#k(0_6p@OQd^!mU0qf8o_jw2=i^@cyKj2=???RU@beCS?t7W8W`DMRCW=1D%g zFNvZ*fIiFhk6sx?KMTG2swhgJpN761`hDobJof|WTexlj!=%ioOW_CiF+p;vVetrBSrE?ALwR^!E5kXp8qg1J$@Mte|7)pPlr6v4j!G zFDmG>8t*123;H>(H=y#1??B}j{|42({|!YH(HkD}@12LruC77l z7cHpl{FP@se{Y7qmFx4+cS1h`)qJ0T-UaGwUG zUJs|CpW^xv=#Qb#LEi!W>xx~ATD$NJ3%H1#@x@tdhSzJ~wO9zR|d#;mr6W1&9zUwFbyqLIn&~-)9 zNDkv{6jw0w+{nsmp8ab?A1anXgDb`ckorrWf~I(dJXB~_A5+_*@qD$ykM zOX6=-CZ#Q9_dv53?$IYUSz(?Xq*c@H?&qVuePy)ehJOO20@>n*pRWJ6w(1S{l|j~K2WXIafqIY@`Yq>?PUF1a~OiqsZ8POE*_ zO?$nhkUV-xT#X9&o-U;st-Ep3ZnWbP-e5Cn=lOxN_oSyX?kDJ{KtJ`nZB0HJ4s+zF z#T030AH{Xkc-d9S&1%{7x$OEe1Mn;D#F=62NRg; zx6=Xa3zCTRd(qp^ZTg&d;)vL?y;?)z&tgqvhg7xotr|8x3;|DJ-A<0!*Xq9We;tS+D+bF(F*M-F+if#a_zJPaSn)poILyaMVNQclI_#5a zYVVcJcthHAlYDeH55-xL#9aZIGlqp0h3PD)awkl!bz?mC5E=ra?BkQ^LE5aBRFz34 zkeu36Tzdv4iO+2G+ex>pk*;j)Y%yG!B3TRyW(wYua0XZzfK<72h-Wy7Ht<@vw2Oz^ zr@+2qV0qQ(%R#gu3fvFOI zOJuEgm+mkD^7mQ2y#ksN2lg@a>4L`l$$+R=7~5qGki|G-ruPRds>>bb=xUm@gr9EL zChX-IAxL(k$@GY+VNI{DwVDXD=(N_>BCMk1*Vaa~>9rhfnr*pw&eA+JEW|@Dv{tn`zXv%#D|A*Tnu2$0+nP#6zm*;FSy{Kn~(839A;nusO^*kUlYcK`!DCs#GC-qyv4zta1bXx%Bv1G`NW7x6 zv?ohxGZ{9SCPg#)U=F0@q%9lK_U0~j(Mbj*2F++Y9i${2M7j28k8ro=!0j|kt4Xvy z%BnOd#`7Cy^Xtho(EVvdF~_fe$7HH!87{iCdFkSMLlaLw2`_>EL8Ao6I>O>!h2DVb zM|ZXkPkHV-$q7>^&xY^_av``dn{@rS71GQTCyNq2HLE}4hs0p){j(b}d%Pg9Cg;SChEFg)0(5Wz&I`E=ifPTkr7F zum={CgoV4Sq)tZ%&3j<71|9-W35g&x4<{gFAh+7uQV;AV8{jThR?UmWr{+1vWt4V^Cq{x(tAf%`3JDZmL7#wQk7>$4!W#SIwB26m7A1SEivc!m%B|d!PLG(_^ zVPJgAtZn7Um6A=u6qs&Y3>pCuZja~2`f+SXAaGpLpmy1f+tUxhPJOjQD6ZFI;36!$ zO*tO=hzf_vAeH3WlYok?)`JXvhPYoxdt$#&7D@Ao+~8DK_eeirWLn{9g{m&6J`v*J zb%L|GI$7gHN>w7Fhr)f8C+V=h;nJZwE7J#?Rfy9w)%4Eo^A^fTaFK3Y#pF1`g!Ji| z<)d-wZLand?~1}V-8CNNHLR@uWo*+pq-LUu;uJN4vz`eomO8X1Bs8 zq~Ns%q}tje=W1?XWqn9d9V499&g6V@=)siwL=Jb@%!@q(P{s$#g+hwZama9jV+E^K zvV%(em)AoLDyf-yrhUcPL|8ziPy(b}A&elHNA#U+Byjh6oV&kyvZ;k3wP5PzSJVQQ z@d>jChy=sVk=}up8lsCPpN1Fm!rbkV-)LTwl>$2Yz)*bxL}H^fLM2~1KzGb!`K*t? zX8jsG@I03Rc~=oSr}3aeDz`PF{^fOFamj+}RO-4<5JG-uF2`!{_D})HYY?;G3z>xK zZ!O2{Xrr|5307$mQ1)T!AQ)h0ikUzYlC2ZaT55HgB}v+XNJrJc5$r2%K_1@c5w}uL zA7y={4hehhBo--<3}}VPc(yFlAoNp3c2ZniGSZlJgJRizyh5f#EpnfV5Tmpfk$7jW zu^0QVcv~FcniOauIpV=Gk-}tu1IAXD0$I4$wX~=dbvI^>qjGA#bLI6xG8j;}7fD(@ zjae)5H13^&M3gD6H>Cpy)S58{?228i`|ZGiwFYv*chVT4818Q~<7qaO5D43iXKm@6Jc zUd+8zLbYl~sl9%fbfhesr)u3x&?NO5WTqK06Ij4D;#B5o0Xg`MoU}Gca(@gt+?aWj z0_c1-Z8f5*2Wh@bqku&7=)`kv29uiQBI6<+4z)n|Py^8-g!dz*(zy8AFd443PPgF4 zO1*;g88h!v-m4ceA?#y&aAOz}Fz9GmWYgWbkSeJd?qo-I{IaeTm~7gw2(@8~b%Voo zNnE#wki^U}q$*sypTuNX77~SH@?r&sx}n5}f||@gT*|3c6N+sUihye_f+6xgsDy>c zr>$^R(WvU_Fi)*Q9nvfW)$kUj5%`Z#u1CqB>OBYmi?0)xi0pJv`F)^R)c+y13c33< znIaqyDenv?RFQ!FW|nhNdyXq>xB1n;+mo^Z7KnsuGhTLsWGw4peFh3-Y-)kTJ>1Ye z@P053C!{MvE~t6t4G;O7k>>6`S0Zx8Act{P+@9LIhg9a1m&gY_PG#|6Z=?tehE0QE zh=WH1pr4PT+Pk-!0V-nV*{GLd;|JfHuXvi#htv)_KNqU!P%dh%t8+2U^J1==X}%(; zQiz5tnwRR6&4W!1%lDonO`ueyxs3C)M=6eqJ!p_dNRT8o-(=>7N>$K7PC8~UfY2Rk zVR6{Q!mKgi;RJ=XHg0KO&G;OT$4%z-%`NMEV$|IcHn@Tp(CM13Ajkw03{qrW*55_X zRZd~qE!|b34K__YF*R=tD0LH4I>MeS>#6r^Z{cmfbx_AC%hbq!vPqd5^J=x3U`c^! z%y(2mHbc+|E?6onnz5?(WZiI|0;w1`pOM(SW_{v+q-FXdrOAB5{zV*PndX`y_O!fY z47JbJsra$#{f?=P2=pJX98neR z*sjWq9Yc5Sqb{_SWpN#PlxNXeZ~CsL43`GjomvPr^xfJ@u=rq!0cfiB3ju;6l;GI2 z-k>t^nFnE-brw@AIHdAZeKL{n1jT-%B&zz*_eXg?ORU!$8bU9_yq6`)^?knq^xBR)KL6Sx$-UWhfsGCIv8IqRmp*weS3J>E0cIov3%voj z;*4ec-4jGTYYf%G*3zb3nW@OB-GMTVMLZu7nglN$_LL_5HFx}yb#b(W&5}NG<*XIA z9ySg5{y1Akw%{T!%LZ+@inaE&Xnc#Z9SK}TLi zI4e(`JZS=Rm#?~~OuRvi=%75P*dIj#q1dcL7I})*mO`R{xeD)rwHIw>Nd&lUNtYGz z)jg+q;oV3oc0Gyv9y%uqbNw2Jj@ZP-q&jO)qG;7?2LrY1#mpwQIqhII-C1HA8K=Ui z<_{Z)WDxRfTd%ir?Z8?SjHJKri`HE^aK<((aFXfh=9wB%of%b@hE+Q>EE;5SQ!5Ke zYV($rSzlx2VURa|uYY8-`_TQTPO1`h>h3Go70Y9iMxV}@&j%jY+)k1A{01ftAd^+X zvvfhcoLX&k)y^-l4Bw1Ahp&tVG)Lq zM_Yi?CHCXuAgRzkWufl~l-49P9ir=g`LKRpV)N#qZcfi~68B^3l@N34kgg6o_-2_~ zFe(*5w{{)P+oy9Y;@mc=3DFW!a~vsXnV_icrg0(?66)a9=1Hc``KV+VGDQ@n3js{d zS~}t3a2_10q_aPuyS%5sTaMJ~mqWwf4dH(6kmO9t_k@%(Q)1`T+Ul2rjg{(kyQR4{ zCOW1EnB~edHDbZ>1Tb;h1lKB6*zbAtlXa>SiWYryab}it;8$ATQP{iUKh6{)R5FO^ zDYXS<_J}=(F-lKt3qT9-vh%45PuA)DEDc#2pnG0#5g>m~jvo{U?A3}PVsJ?Zh5Yw!@+wO=4Vu8| z0~Jcty^62wXz(6`6)~G;^zG?-Ol?Ku;6_hN{@^nXgHPdrQEQhswiPOCU}cAz0K_*Q zRmF8%8{BG)QA&e%#E2pX5R?TVhNEaNX8evITR!xT$UNp&NOgX8qVc-63-iRK&8OUm zK1o5ztA3(4efojRZps+QQxucNkmdRvsWu%Gjmv)JzN{)E^$l~j*-GpYwz+HPNT|3w zMLL{TJ_FJj_F^P8rV7?xmvprR#xSCtnxk3^kX;+NfW_?ZNPJwbvkKE3pnyYaO^&!J zxz(|?E`@ppom&Jb3{VlTH;g%USz2vxa8u2MYZ6h`ESao3Mbn zx6R(37^FA-4#;h~wDqamZh>pM-&$K03EQxm=kbf@;IR*$8jSes4P*WoHaLH0hWG`k9v; zwiHfz5M3|S2ZsXAXwefj2Btw}j-|GFtAtie{b`F0Al?iNo3phSa}HTPFq1{`x!0_ z1OjMBDuq+c`xFPYmbzs&XRl3aJc&Ln2X|MTK41(spU4(e0^3XHf*hyoX{hkE9cat@ zX6)`z>Qm-Ya&*n60RCKkajrZq^F*c|cER2BsDf z0Ok%3w?t~q?9ziNuC#Q>Z-a$xuU6~cDnG@!Je==I&aIdnLZdO`=%Fug=!W_OQk=}= zXrV?hOVZgsWa%Ho6xErOAn(L^FQwJ)O%Hi{qnKYv9YOFd`c@o0V(T_Mrdn44-w@R+ z2X=#!#IzTldZyk$f^1|FK`de82mI0I^t7unXC*Uz=^W#WXls^O?y<2z8XBCMoqvx; zjm>W3nlD(^;83-LZA7@$=4$igu`7voF&o?EUfOM(9qpBk-F(d*+qt~kI2X*gah~Y8 z=I&iRd4J>NYJ)JldU|d3)IF>G;lak0gd&4XI6U{EjrA*y?aPhx>+Z43YulUmeE9OE zjbmHvcroV9ipe6+27w0c+yYCVgmB^%|#V&xvbV(T$A(nIqn~=1y}a=GdcTLP{)< z+hon1uSy5PgtatIsJ<+O2&UD#TpVpytX>>#UL0*+9Bp14ZPuQa zdZl&wusGVxo|+0{8X@FO^~n;_UiG|4=LjnG2@cY$#nI-)(Pr%zFOD|TU0NJ%o^|dP zN1NHyp#EJPZC)I0rh%|H+C2S7Ig6vs`WLC%6lK3;akRO$INH28+Ppa0yg1tI_c_=v zSR8F$9BrO$p)Za$YkRUjr@A=WZ0GM5N1GQ%o5yVA+p$FL1&7m!i=)kpqs@z>&5NVW zi=)kV_+O_MN1GQ%n-@o$Ig!6O+Ppa0eCvP7w>a9oINCgS_\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../dev/env.rst:2 msgid "Your Development Environment" @@ -21,8 +22,9 @@ msgstr "" #: ../../dev/env.rst:8 msgid "" -"Just about anything that can edit plain text will work for writing Python " -"code, however, using a more powerful editor may make your life a bit easier." +"Just about anything that can edit plain text will work for writing Python" +" code, however, using a more powerful editor may make your life a bit " +"easier." msgstr "" #: ../../dev/env.rst:13 @@ -31,20 +33,20 @@ msgstr "" #: ../../dev/env.rst:15 msgid "" -"Vim is a text editor which uses keyboard shortcuts for editing instead of " -"menus or icons. There are a couple of plugins and settings for the Vim " +"Vim is a text editor which uses keyboard shortcuts for editing instead of" +" menus or icons. There are a couple of plugins and settings for the Vim " "editor to aid Python development. If you only develop in Python, a good " -"start is to set the default settings for indentation and line-wrapping to " -"values compliant with :pep:`8`. In your home directory, open a file called " -":file:`.vimrc` and add the following lines::" +"start is to set the default settings for indentation and line-wrapping to" +" values compliant with :pep:`8`. In your home directory, open a file " +"called :file:`.vimrc` and add the following lines::" msgstr "" #: ../../dev/env.rst:30 msgid "" "With these settings, newlines are inserted after 79 characters and " "indentation is set to 4 spaces per tab. If you also use Vim for other " -"languages, there is a handy plugin called indent_, which handles indentation" -" settings for Python source files." +"languages, there is a handy plugin called indent_, which handles " +"indentation settings for Python source files." msgstr "" #: ../../dev/env.rst:35 @@ -55,30 +57,30 @@ msgstr "" #: ../../dev/env.rst:38 msgid "" -"These plugins supply you with a basic environment for developing in Python. " -"To get the most out of Vim, you should continually check your code for " -"syntax errors and PEP8 compliance. Luckily PEP8_ and Pyflakes_ will do this " -"for you. If your Vim is compiled with :option:`+python` you can also utilize" -" some very handy plugins to do these checks from within the editor." +"These plugins supply you with a basic environment for developing in " +"Python. To get the most out of Vim, you should continually check your " +"code for syntax errors and PEP8 compliance. Luckily PEP8_ and Pyflakes_ " +"will do this for you. If your Vim is compiled with :option:`+python` you " +"can also utilize some very handy plugins to do these checks from within " +"the editor." msgstr "" #: ../../dev/env.rst:44 msgid "" -"For PEP8 checking, install the vim-pep8_ plugin, and for pyflakes you can " -"install vim-pyflakes_. Now you can map the functions ``Pep8()`` or " -"``Pyflakes()`` to any hotkey or action you want in Vim. Both plugins will " -"display errors at the bottom of the screen, and provide an easy way to jump " -"to the corresponding line. It's very handy to call these functions whenever " -"you save a file. In order to do this, add the following lines to your " -":file:`.vimrc`::" +"For PEP8 checking and pyflakes, you can install vim-flake8_. Now you can " +"map the function ``Flake8`` to any hotkey or action you want in Vim. The " +"plugin will display errors at the bottom of the screen, and provide an " +"easy way to jump to the corresponding line. It's very handy to call this " +"function whenever you save a file. In order to do this, add the following" +" line to your :file:`.vimrc`::" msgstr "" -#: ../../dev/env.rst:54 +#: ../../dev/env.rst:53 msgid "" -"If you are already using syntastic_, you can set it to run Pyflakes on write" -" and show errors and warnings in the quickfix window. An example " -"configuration to do that which also shows status and warning messages in the" -" statusbar would be::" +"If you are already using syntastic_, you can set it to run Pyflakes on " +"write and show errors and warnings in the quickfix window. An example " +"configuration to do that which also shows status and warning messages in " +"the statusbar would be::" msgstr "" #: ../../dev/env.rst:66 @@ -87,8 +89,8 @@ msgstr "" #: ../../dev/env.rst:68 msgid "" -"Python-mode_ is a complex solution for working with Python code in Vim. It " -"has:" +"Python-mode_ is a complex solution for working with Python code in Vim. " +"It has:" msgstr "" #: ../../dev/env.rst:71 @@ -127,81 +129,68 @@ msgstr "" #: ../../dev/env.rst:83 msgid "" -"SuperTab_ is a small Vim plugin that makes code completion more convenient " -"by using ```` key or any other customized keys." +"SuperTab_ is a small Vim plugin that makes code completion more " +"convenient by using ```` key or any other customized keys." msgstr "" -#: ../../dev/env.rst:97 +#: ../../dev/env.rst:96 msgid "Emacs" msgstr "" -#: ../../dev/env.rst:99 +#: ../../dev/env.rst:98 msgid "" -"Emacs is another powerful text editor. It is fully programmable (lisp), but " -"it can be some work to wire up correctly. A good start if you're already an " -"Emacs user is `Python Programming in Emacs`_ at EmacsWiki." +"Emacs is another powerful text editor. It is fully programmable (lisp), " +"but it can be some work to wire up correctly. A good start if you're " +"already an Emacs user is `Python Programming in Emacs`_ at EmacsWiki." msgstr "" -#: ../../dev/env.rst:103 +#: ../../dev/env.rst:102 msgid "Emacs itself comes with a Python mode." msgstr "" -#: ../../dev/env.rst:104 -msgid "" -"Python ships with an alternate version: `python-mode.el " -"`_" -msgstr "" - -#: ../../dev/env.rst:106 -msgid "" -"Fabián Ezequiel Gallina's `python.el " -"`_ provides nice functionality and " -"behavior out of the box" -msgstr "" - -#: ../../dev/env.rst:112 +#: ../../dev/env.rst:107 msgid "TextMate" msgstr "" -#: ../../dev/env.rst:114 +#: ../../dev/env.rst:109 msgid "" -"`TextMate `_ brings Apple's approach to operating " -"systems into the world of text editors. By bridging UNIX underpinnings and " -"GUI, TextMate cherry-picks the best of both worlds to the benefit of expert " -"scripters and novice users alike." +"`TextMate `_ brings Apple's approach to operating" +" systems into the world of text editors. By bridging UNIX underpinnings " +"and GUI, TextMate cherry-picks the best of both worlds to the benefit of " +"expert scripters and novice users alike." msgstr "" -#: ../../dev/env.rst:120 +#: ../../dev/env.rst:115 msgid "Sublime Text" msgstr "" -#: ../../dev/env.rst:122 +#: ../../dev/env.rst:117 msgid "" -"`Sublime Text `_ is a sophisticated text editor" -" for code, markup and prose. You'll love the slick user interface, " +"`Sublime Text `_ is a sophisticated text " +"editor for code, markup and prose. You'll love the slick user interface, " "extraordinary features and amazing performance." msgstr "" -#: ../../dev/env.rst:126 +#: ../../dev/env.rst:121 msgid "" -"Sublime Text has excellent support for editing Python code and uses Python " -"for its plugin API. It also has a diverse variety of plugins, `some of which" -" `_ allow for in-editor PEP8" -" checking and code \"linting\"." +"Sublime Text has excellent support for editing Python code and uses " +"Python for its plugin API. It also has a diverse variety of plugins, " +"`some of which `_ allow " +"for in-editor PEP8 checking and code \"linting\"." msgstr "" -#: ../../dev/env.rst:131 +#: ../../dev/env.rst:127 msgid "Atom" msgstr "" -#: ../../dev/env.rst:133 +#: ../../dev/env.rst:129 msgid "" -"`Atom `_ is a hackable text editor for the 21st century, " -"built on atom-shell, and based on everything we love about our favorite " -"editors." +"`Atom `_ is a hackable text editor for the 21st " +"century, built on atom-shell, and based on everything we love about our " +"favorite editors." msgstr "" -#: ../../dev/env.rst:136 +#: ../../dev/env.rst:133 msgid "" "Atom is web native (HTML, CSS, JS), focusing on modular design and easy " "plugin development. It comes with native package control and plethora of " @@ -210,251 +199,455 @@ msgid "" "`_." msgstr "" -#: ../../dev/env.rst:143 +#: ../../dev/env.rst:141 msgid "IDEs" msgstr "" -#: ../../dev/env.rst:146 +#: ../../dev/env.rst:144 msgid "PyCharm / IntelliJ IDEA" msgstr "" -#: ../../dev/env.rst:148 +#: ../../dev/env.rst:146 msgid "" -"`PyCharm `_ is developed by JetBrains, " -"also known for IntelliJ IDEA. Both share the same code base and most of " -"PyCharm's features can be brought to IntelliJ with the free `Python Plug-In " -"`_. There are two versions of " -"PyCharm: Professional Edition (Free 30-day trial) and Community " -"Edition(Apache 2.0 License) with less features." +"`PyCharm `_ is developed by JetBrains," +" also known for IntelliJ IDEA. Both share the same code base and most of " +"PyCharm's features can be brought to IntelliJ with the free `Python Plug-" +"In `_. There " +"are two versions of PyCharm: Professional Edition (Free 30-day trial) and" +" Community Edition(Apache 2.0 License) with fewer features." +msgstr "" + +#: ../../dev/env.rst:154 +msgid "Python (on Visual Studio Code)" msgstr "" #: ../../dev/env.rst:156 +msgid "" +"`Python for Visual Studio " +"`_" +" is an extension for the `Visual Studio Code IDE " +"`_. This is a free, light weight, open " +"source IDE, with support for Mac, Windows, and Linux. Built using open " +"source technologies such as Node.js and Python, with compelling features " +"such as Intellisense (autocompletion), local and remote debugging, " +"linting, and the like." +msgstr "" + +#: ../../dev/env.rst:160 +msgid "MIT licensed." +msgstr "" + +#: ../../dev/env.rst:163 +msgid "Enthought Canopy" +msgstr "" + +#: ../../dev/env.rst:164 +msgid "" +"`Enthought Canopy `_ is a " +"Python IDE which is focused towards Scientists and Engineers as it " +"provides pre installed libraries for data analysis." +msgstr "" + +#: ../../dev/env.rst:169 msgid "Eclipse" msgstr "" -#: ../../dev/env.rst:158 +#: ../../dev/env.rst:171 msgid "" -"The most popular Eclipse plugin for Python development is Aptana's `PyDev " -"`_." +"The most popular Eclipse plugin for Python development is Aptana's `PyDev" +" `_." msgstr "" -#: ../../dev/env.rst:163 +#: ../../dev/env.rst:176 msgid "Komodo IDE" msgstr "" -#: ../../dev/env.rst:165 +#: ../../dev/env.rst:178 msgid "" "`Komodo IDE `_ is developed by " -"ActiveState and is a commercial IDE for Windows, Mac, and Linux. `KomodoEdit" -" `_ is the open source alternative." +"ActiveState and is a commercial IDE for Windows, Mac, and Linux. " +"`KomodoEdit `_ is the open source " +"alternative." msgstr "" -#: ../../dev/env.rst:172 +#: ../../dev/env.rst:185 msgid "Spyder" msgstr "" -#: ../../dev/env.rst:174 +#: ../../dev/env.rst:187 msgid "" -"`Spyder `_ is an IDE specifically " +"`Spyder `_ is an IDE specifically " "geared toward working with scientific Python libraries (namely `Scipy " -"`_). It includes integration with pyflakes_, `pylint " -"`_ and `rope `_." +"`_). It includes integration with pyflakes_, " +"`pylint `_ and `rope `_." msgstr "" -#: ../../dev/env.rst:179 +#: ../../dev/env.rst:193 msgid "" -"Spyder is open-source (free), offers code completion, syntax highlighting, a" -" class and function browser, and object inspection." +"Spyder is open-source (free), offers code completion, syntax " +"highlighting, a class and function browser, and object inspection." msgstr "" -#: ../../dev/env.rst:184 +#: ../../dev/env.rst:198 msgid "WingIDE" msgstr "" -#: ../../dev/env.rst:186 +#: ../../dev/env.rst:200 msgid "" "`WingIDE `_ is a Python specific IDE. It runs on " "Linux, Windows and Mac (as an X11 application, which frustrates some Mac " "users)." msgstr "" -#: ../../dev/env.rst:189 +#: ../../dev/env.rst:203 msgid "" "WingIDE offers code completion, syntax highlighting, source browser, " "graphical debugger and support for version control systems." msgstr "" -#: ../../dev/env.rst:194 +#: ../../dev/env.rst:208 msgid "NINJA-IDE" msgstr "" -#: ../../dev/env.rst:196 +#: ../../dev/env.rst:210 msgid "" "`NINJA-IDE `_ (from the recursive acronym: " -"\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially " -"designed to build Python applications, and runs on Linux/X11, Mac OS X and " -"Windows desktop operating systems. Installers for these platforms can be " -"downloaded from the website." +"\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially" +" designed to build Python applications, and runs on Linux/X11, Mac OS X " +"and Windows desktop operating systems. Installers for these platforms can" +" be downloaded from the website." msgstr "" -#: ../../dev/env.rst:201 +#: ../../dev/env.rst:216 msgid "" -"NINJA-IDE is open-source software (GPLv3 licence) and is developed in Python" -" and Qt. The source files can be downloaded from `GitHub `_." +"NINJA-IDE is open-source software (GPLv3 licence) and is developed in " +"Python and Qt. The source files can be downloaded from `GitHub " +"`_." msgstr "" -#: ../../dev/env.rst:206 +#: ../../dev/env.rst:222 msgid "Eric (The Eric Python IDE)" msgstr "" -#: ../../dev/env.rst:208 +#: ../../dev/env.rst:224 msgid "" -"`Eric `_ is a full featured Python IDE" -" offering sourcecode autocompletion, syntax highlighting, support for " -"version control systems, python 3 support, integrated web browser, python " -"shell, integrated debugger and a flexible plug-in system. Written in python," -" it is based on the Qt gui toolkit, integrating the Scintilla editor " -"control. Eric is an open-source software (GPLv3 licence) with more than ten " -"years of active development." +"`Eric `_ is a full featured Python " +"IDE offering sourcecode autocompletion, syntax highlighting, support for " +"version control systems, python 3 support, integrated web browser, python" +" shell, integrated debugger and a flexible plug-in system. Written in " +"python, it is based on the Qt gui toolkit, integrating the Scintilla " +"editor control. Eric is an open-source software project (GPLv3 licence) " +"with more than ten years of active development." msgstr "" -#: ../../dev/env.rst:218 +#: ../../dev/env.rst:234 msgid "Interpreter Tools" msgstr "" -#: ../../dev/env.rst:222 +#: ../../dev/env.rst:238 msgid "Virtual Environments" msgstr "" -#: ../../dev/env.rst:224 -msgid "" -"A Virtual Environment is a tool to keep the dependencies required by " -"different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " -"directory clean and manageable." -msgstr "" - -#: ../../dev/env.rst:229 +#: ../../dev/env.rst:240 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." +"Virtual Environments provide a powerful way to isolate project package " +"dependencies. This means that you can use packages particular to a Python" +" project without installing them system wide and thus avoiding potential " +"version conflicts." msgstr "" -#: ../../dev/env.rst:232 +#: ../../dev/env.rst:242 msgid "" "To start using and see more information: `Virtual Environments " "`_ docs." msgstr "" -#: ../../dev/env.rst:235 +#: ../../dev/env.rst:247 +msgid "pyenv" +msgstr "" + +#: ../../dev/env.rst:249 +msgid "" +"`pyenv `_ is a tool to allow multiple " +"versions of the Python interpreter to be installed at the same time. " +"This solves the problem of having different projects requiring different " +"versions of Python. For example, it becomes very easy to install Python " +"2.7 for compatibility in one project, whilst still using Python 3.4 as " +"the default interpreter. pyenv isn't just limited to the CPython versions" +" - it will also install PyPy, anaconda, miniconda, stackless, jython, and" +" ironpython interpreters." +msgstr "" + +#: ../../dev/env.rst:257 +msgid "" +"pyenv works by filling a ``shims`` directory with fake versions of the " +"Python interpreter (plus other tools like ``pip`` and ``2to3``). When " +"the system looks for a program named ``python``, it looks inside the " +"``shims`` directory first, and uses the fake version, which in turn " +"passes the command on to pyenv. pyenv then works out which version of " +"Python should be run based on environment variables, ``.python-version`` " +"files, and the global default." +msgstr "" + +#: ../../dev/env.rst:264 +msgid "" +"pyenv isn't a tool for managing virtual environments, but there is the " +"plugin `pyenv-virtualenv `_ " +"which automates the creation of different environments, and also makes it" +" possible to use the existing pyenv tools to switch to different " +"environments based on environment variables or ``.python-version`` files." +msgstr "" + +#: ../../dev/env.rst:271 msgid "Other Tools" msgstr "" -#: ../../dev/env.rst:238 +#: ../../dev/env.rst:274 msgid "IDLE" msgstr "" -#: ../../dev/env.rst:240 +#: ../../dev/env.rst:276 msgid "" -":ref:`IDLE ` is an integrated development environment that is " -"part of Python standard library. It is completely written in Python and uses" -" the Tkinter GUI toolkit. Though IDLE is not suited for full-blown " -"development using Python, it is quite helpful to try out small Python " -"snippets and experiment with different features in Python." +":ref:`IDLE ` is an integrated development environment that " +"is part of Python standard library. It is completely written in Python " +"and uses the Tkinter GUI toolkit. Though IDLE is not suited for full-" +"blown development using Python, it is quite helpful to try out small " +"Python snippets and experiment with different features in Python." msgstr "" -#: ../../dev/env.rst:246 +#: ../../dev/env.rst:282 msgid "It provides the following features:" msgstr "" -#: ../../dev/env.rst:248 +#: ../../dev/env.rst:284 msgid "Python Shell Window (interpreter)" msgstr "" -#: ../../dev/env.rst:249 +#: ../../dev/env.rst:285 msgid "Multi window text editor that colorizes Python code" msgstr "" -#: ../../dev/env.rst:250 +#: ../../dev/env.rst:286 msgid "Minimal debugging facility" msgstr "" -#: ../../dev/env.rst:254 +#: ../../dev/env.rst:290 msgid "IPython" msgstr "" -#: ../../dev/env.rst:256 +#: ../../dev/env.rst:292 msgid "" -"`IPython `_ provides a rich toolkit to help you make " -"the most out of using Python interactively. Its main components are:" +"`IPython `_ provides a rich toolkit to help you make" +" the most out of using Python interactively. Its main components are:" msgstr "" -#: ../../dev/env.rst:259 +#: ../../dev/env.rst:295 msgid "Powerful Python shells (terminal- and Qt-based)." msgstr "" -#: ../../dev/env.rst:260 +#: ../../dev/env.rst:296 msgid "" -"A web-based notebook with the same core features but support for rich media," -" text, code, mathematical expressions and inline plots." +"A web-based notebook with the same core features but support for rich " +"media, text, code, mathematical expressions and inline plots." msgstr "" -#: ../../dev/env.rst:262 +#: ../../dev/env.rst:298 msgid "Support for interactive data visualization and use of GUI toolkits." msgstr "" -#: ../../dev/env.rst:263 +#: ../../dev/env.rst:299 msgid "Flexible, embeddable interpreters to load into your own projects." msgstr "" -#: ../../dev/env.rst:264 +#: ../../dev/env.rst:300 msgid "Tools for high level and interactive parallel computing." msgstr "" -#: ../../dev/env.rst:273 +#: ../../dev/env.rst:306 +msgid "" +"To download and install IPython with all it's optional dependencies for " +"the notebook, qtconsole, tests, and other functionalities" +msgstr "" + +#: ../../dev/env.rst:313 msgid "BPython" msgstr "" -#: ../../dev/env.rst:275 +#: ../../dev/env.rst:315 msgid "" -"`bpython `_ is an alternative interface to " -"the Python interpreter for Unix-like operating systems. It has the following" -" features:" +"`bpython `_ is an alternative interface " +"to the Python interpreter for Unix-like operating systems. It has the " +"following features:" msgstr "" -#: ../../dev/env.rst:278 +#: ../../dev/env.rst:319 msgid "In-line syntax highlighting." msgstr "" -#: ../../dev/env.rst:279 +#: ../../dev/env.rst:320 msgid "Readline-like autocomplete with suggestions displayed as you type." msgstr "" -#: ../../dev/env.rst:280 +#: ../../dev/env.rst:321 msgid "Expected parameter list for any Python function." msgstr "" -#: ../../dev/env.rst:281 +#: ../../dev/env.rst:322 msgid "" "\"Rewind\" function to pop the last line of code from memory and re-" "evaluate." msgstr "" -#: ../../dev/env.rst:282 +#: ../../dev/env.rst:323 msgid "Send entered code off to a pastebin." msgstr "" -#: ../../dev/env.rst:283 +#: ../../dev/env.rst:324 msgid "Save entered code to a file." msgstr "" -#: ../../dev/env.rst:284 +#: ../../dev/env.rst:325 msgid "Auto-indentation." msgstr "" -#: ../../dev/env.rst:285 +#: ../../dev/env.rst:326 msgid "Python 3 support." msgstr "" + +#: ../../dev/env.rst:333 +msgid "ptpython" +msgstr "" + +#: ../../dev/env.rst:335 +msgid "" +"`ptpython `_ is a REPL " +"build on top of the `prompt_toolkit `_ library. It is considered to be an alternative " +"to BPython_. Features include:" +msgstr "" + +#: ../../dev/env.rst:339 +msgid "Syntax highlighting" +msgstr "" + +#: ../../dev/env.rst:340 +msgid "Autocompletion" +msgstr "" + +#: ../../dev/env.rst:341 +msgid "Multiline editing" +msgstr "" + +#: ../../dev/env.rst:342 +msgid "Emacs and VIM Mode" +msgstr "" + +#: ../../dev/env.rst:343 +msgid "Embedding REPL inside of your code" +msgstr "" + +#: ../../dev/env.rst:344 +msgid "Syntax Validation" +msgstr "" + +#: ../../dev/env.rst:345 +msgid "Tab pages" +msgstr "" + +#: ../../dev/env.rst:346 +msgid "" +"Support for integrating with IPython_'s shell, by installing IPython " +"``pip install ipython`` and running ``ptipython``." +msgstr "" + +#~ msgid "" +#~ "For PEP8 checking, install the vim-" +#~ "pep8_ plugin, and for pyflakes you " +#~ "can install vim-pyflakes_. Now you " +#~ "can map the functions ``Pep8()`` or " +#~ "``Pyflakes()`` to any hotkey or action" +#~ " you want in Vim. Both plugins " +#~ "will display errors at the bottom " +#~ "of the screen, and provide an easy" +#~ " way to jump to the corresponding " +#~ "line. It's very handy to call " +#~ "these functions whenever you save a " +#~ "file. In order to do this, add " +#~ "the following lines to your " +#~ ":file:`.vimrc`::" +#~ msgstr "" + +#~ msgid "" +#~ "Python ships with an alternate version:" +#~ " `python-mode.el `_" +#~ msgstr "" + +#~ msgid "" +#~ "Fabián Ezequiel Gallina's `python.el " +#~ "`_ provides nice" +#~ " functionality and behavior out of " +#~ "the box" +#~ msgstr "" + +#~ msgid "" +#~ "`PyCharm `_ is " +#~ "developed by JetBrains, also known for" +#~ " IntelliJ IDEA. Both share the same" +#~ " code base and most of PyCharm's " +#~ "features can be brought to IntelliJ " +#~ "with the free `Python Plug-In " +#~ "`_. There are" +#~ " two versions of PyCharm: Professional " +#~ "Edition (Free 30-day trial) and " +#~ "Community Edition(Apache 2.0 License) with " +#~ "less features." +#~ msgstr "" + +#~ msgid "" +#~ "`Spyder `_ is " +#~ "an IDE specifically geared toward " +#~ "working with scientific Python libraries " +#~ "(namely `Scipy `_). It " +#~ "includes integration with pyflakes_, `pylint" +#~ " `_ and `rope " +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "`Eric `_ " +#~ "is a full featured Python IDE " +#~ "offering sourcecode autocompletion, syntax " +#~ "highlighting, support for version control " +#~ "systems, python 3 support, integrated " +#~ "web browser, python shell, integrated " +#~ "debugger and a flexible plug-in " +#~ "system. Written in python, it is " +#~ "based on the Qt gui toolkit, " +#~ "integrating the Scintilla editor control. " +#~ "Eric is an open-source software " +#~ "(GPLv3 licence) with more than ten " +#~ "years of active development." +#~ msgstr "" + +#~ msgid "" +#~ "A Virtual Environment is a tool to" +#~ " keep the dependencies required by " +#~ "different projects in separate places, " +#~ "by creating virtual Python environments " +#~ "for them. It solves the \"Project " +#~ "X depends on version 1.x but, " +#~ "Project Y needs 4.x\" dilemma, and " +#~ "keeps your global site-packages " +#~ "directory clean and manageable." +#~ msgstr "" + +#~ msgid "" +#~ "For example, you can work on a " +#~ "project which requires Django 1.3 while" +#~ " also maintaining a project which " +#~ "requires Django 1.0." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo b/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo new file mode 100644 index 0000000000000000000000000000000000000000..ace85639dd8b0005c97bde31e17c882751b5afb4 GIT binary patch literal 8561 zcmeHM&u<(_6)qtBnni#XmfwgHmpF;LGu{A-W;d&K5(g~Vab!EY8xW$)-8C~6_jCV{t0>oZ8z!eT$IKtkLmj7YJ_g;1Pj6LHBPF%*)xI8o6)n9$@ zd*6Fi{>QVI-Vpft3|?Qt>o4?X;pd0%6XF_PKf>!6uV1}ih=1ez_dX!RuQ9%RNr>)yrqTfBE47vhf?H$EZ6-!T3Q;}7ut+n)@0zy55% zt3DO*{{GVe?_19Wy!%)%;T>TlyubKt!29#h1-yU8NO+GvAMpMaBjGh)2zbBx#enxR zNF%&I#YlMngfYRm{pEo7EsTWs8b~6%?_eanzm)j3-S@hbPEAZPkbbCTI#k6#JE@9H zI$M<~eKEryve!4c?j^5Zk57~vmT4mC1Nu&;s*r`9N>ezm@?4Hpda7uaL2gg*!Azda zWLXsjO_n5su^BhlCP^$G)l-CLGmJuww6uNxyI&QlH@1-80@lnAYe+ITr+QO9uAG;r zTGNzrWPsZbm1kU212981(R6F&Fwi$V_jIT+VL9V<+Xl@FNVveZm5MV-k+H%M)A%p2Lv2CQb1~pz8O@d;`n2#iBYVHnqi6yU6V-L3Y0!Gg$eR> zn=;d5U1T&ZB*aQ~Gw1avZs;K*@ztx4j-BF$M$sxGDQVfad2XjPL2e3`63?;#p?#dJ ziVTZMlJ5lNe>X{_)86A|*AusAAxpe;LtEvUJi!Wct;#@U<>(nJBI$@kB?qO3dWk47 z$%1DbnV#s}jw$4e;pdqV9OMICOH*g2-`6EwH!kgCoqBf}@%(;e5LA5X0ClXuwT{Id zm2#T3ncN4#{mNJ13W+3kCX_x{#bDU-MG1!dL=GWih(yXy!s@)mZ45TWyvSJt**ZKs zwIe*4#nI$!N~^>~P|cL6CqA#5;%XBLdXMC7CR~WZQ-uI96YbiVXSTTPk^kf!1kCBY zj|2p8@-H?X0OXZStj(;geI}TQmJ^j%@Hg-{LHcBp0TI`2O{juOBR z72T&1i4r&F=A=}msU4SHiKZY;PHlNgVS_dmOu=)0EQK)Wm99UrP#^Klj^`{nD4w0G zF@)x)nj@wcp4j>%Ru#*8h_HU5M&ld-A`Bxa4XX&Uq(n#(Qj2!pLDm8IEZEP5=wflN zDmlULoJnOc`~a3mjJ*=93(h5Kzfw6gkj=t6)HxHNqEiRsf&>jY7yz%xLt>~_J)R%j z3jtj=&|ZTlGZ{NA^ST;O8+P(KdcqkQTi6CIbv0l|*Q2VDQ9|-mW!opSOzY?V*HVW| zVD-qx+@|cD3#N7k7Z-3=J+YNqC^D_oa}2LShnLprA%q<^Bq%psxzpUp||cA+j~9ftqVEW^)xFs89&VHDRWn9Rx&|nq9a~ zpgI&#WV4c392D~5{oU8aSAu<& z%7Y{M+W(-Q1~mFfjyE?a6vbkO@Pb=1ByPDj;3~9u%G2W4`XQd4DBr2haCF)J_3$;G7#HgfZogi}wYj!$wNnvNTRL z-#czpE@%d26eiy^ifnXgX`Ne~(Kk>*5C&Mu&Q0X!`oPM?2ex(f&bncUykzptrw! z?b`?UcRG8@`RKS*g@X;)vM297+}o4)xA%ACi#z+Tiwq7?*7i4fUUUO zxnm0=K02O_@eHq@`0L|bnc@Z7Fr(G>w<_O{ZqBbG)aZw!og%eV;d}DtiSeCp>VkR? z4c=xwd0U<6Ts|M)h`-i3zZYMhTP&Tptj{gNK5Tt%u|Bt0pIcC|vId* z4~0!;ICoy3Tb%#r1v*o1f!F62OaEI~pIfZYE$ED9eQpu@?)ACF#iw46>cf`xxkdPY J?*IMV;y=y{wT%D( literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.po b/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.po new file mode 100644 index 000000000..0b591e632 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.po @@ -0,0 +1,168 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2016. A Kenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../dev/pip-virtualenv.rst:4 +msgid "Further Configuration of Pip and Virtualenv" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:7 +msgid "Requiring an active virtual environment for ``pip``" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:9 +msgid "" +"By now it should be clear that using virtual environments is a great way " +"to keep your development environment clean and keeping different " +"projects' requirements separate." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:13 +msgid "" +"When you start working on many different projects, it can be hard to " +"remember to activate the related virtual environment when you come back " +"to a specific project. As a result of this, it is very easy to install " +"packages globally while thinking that you are actually installing the " +"package for the virtual environment of the project. Over time this can " +"result in a messy global package list." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:20 +msgid "" +"In order to make sure that you install packages to your active virtual " +"environment when you use ``pip install``, consider adding the following " +"two lines to your :file:`~/.bashrc` file:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:28 +msgid "" +"After saving this change and sourcing the :file:`~/.bashrc` file with " +"``source ~/.bashrc``, pip will no longer let you install packages if you " +"are not in a virtual environment. If you try to use ``pip install`` " +"outside of a virtual environment pip will gently remind you that an " +"activated virtual environment is needed to install packages." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:39 +msgid "" +"You can also do this configuration by editing your :file:`pip.conf` or " +":file:`pip.ini` file. :file:`pip.conf` is used by Unix and Mac OS X " +"operating systems and it can be found at:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:47 +msgid "" +"Similarly, the :file:`pip.ini` file is used by Windows operating systems " +"and it can be found at:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:54 +msgid "" +"If you don't have a :file:`pip.conf` or :file:`pip.ini` file at these " +"locations, you can create a new file with the correct name for your " +"operating system." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:57 +msgid "" +"If you already have a configuration file, just add the following line " +"under the ``[global]`` settings to require an active virtual environment:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:64 +msgid "" +"If you did not have a configuration file, you will need to create a new " +"one and add the following lines to this new file:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:73 +msgid "" +"You will of course need to install some packages globally (usually ones " +"that you use across different projects consistently) and this can be " +"accomplished by adding the following to your :file:`~/.bashrc` file:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:83 +msgid "" +"After saving the changes and sourcing your :file:`~/.bashrc` file you can" +" now install packages globally by running ``gpip install``. You can " +"change the name of the function to anything you like, just keep in mind " +"that you will have to use that name when trying to install packages " +"globally with pip." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:89 +msgid "Caching packages for future use" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:91 +msgid "" +"Every developer has preferred libraries and when you are working on a lot" +" of different projects, you are bound to have some overlap between the " +"libraries that you use. For example, you may be using the ``requests`` " +"library in a lot of different projects." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:96 +msgid "" +"It is surely unnecessary to re-download the same packages/libraries each " +"time you start working on a new project (and in a new virtual environment" +" as a result). Fortunately, you can configure pip in such a way that it " +"tries to reuse already installed packages." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:101 +msgid "" +"On UNIX systems, you can add the following line to your :file:`.bashrc` " +"or :file:`.bash_profile` file." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:108 +msgid "" +"You can set the path to anywhere you like (as long as you have write " +"access). After adding this line, ``source`` your :file:`.bashrc` (or " +":file:`.bash_profile`) file and you will be all set." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:112 +msgid "" +"Another way of doing the same configuration is via the :file:`pip.conf` " +"or :file:`pip.ini` files, depending on your system. If you are on " +"Windows, you can add the following line to your :file:`pip.ini` file " +"under ``[global]`` settings:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:120 +msgid "" +"Similarly, on UNIX systems you should simply add the following line to " +"your :file:`pip.conf` file under ``[global]`` settings:" +msgstr "" + +#: ../../dev/pip-virtualenv.rst:127 +msgid "" +"Even though you can use any path you like to store your cache, it is " +"recommended that you create a new folder *in* the folder where your " +":file:`pip.conf` or :file:`pip.ini` file lives. If you don't trust " +"yourself with all of this path voodoo, just use the values provided here " +"and you will be fine." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..b44fba8597d5fbdad5a8fec8bc64d0e2a1dfa626 100644 GIT binary patch literal 12175 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\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ../../dev/virtualenvs.rst:2 +#: ../../dev/virtualenvs.rst:4 msgid "Virtual Environments" msgstr "" -#: ../../dev/virtualenvs.rst:4 +#: ../../dev/virtualenvs.rst:6 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -#: ../../dev/virtualenvs.rst:9 +#: ../../dev/virtualenvs.rst:11 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." +"For example, you can work on a project which requires Django 1.3 while " +"also maintaining a project which requires Django 1.0." msgstr "" -#: ../../dev/virtualenvs.rst:13 +#: ../../dev/virtualenvs.rst:15 msgid "virtualenv" msgstr "" -#: ../../dev/virtualenvs.rst:15 +#: ../../dev/virtualenvs.rst:17 msgid "" -"`virtualenv `_ is a tool to create " -"isolated Python environments. virtualenv creates a folder which contains all" -" the necessary executables to use the packages that a Python project would " -"need." +"`virtualenv `_ is a tool to " +"create isolated Python environments. virtualenv creates a folder which " +"contains all the necessary executables to use the packages that a Python " +"project would need." msgstr "" -#: ../../dev/virtualenvs.rst:19 +#: ../../dev/virtualenvs.rst:21 msgid "Install virtualenv via pip:" msgstr "" -#: ../../dev/virtualenvs.rst:26 ../../dev/virtualenvs.rst:145 +#: ../../dev/virtualenvs.rst:28 ../../dev/virtualenvs.rst:150 msgid "Basic Usage" msgstr "" -#: ../../dev/virtualenvs.rst:28 +#: ../../dev/virtualenvs.rst:30 msgid "Create a virtual environment for a project:" msgstr "" -#: ../../dev/virtualenvs.rst:35 +#: ../../dev/virtualenvs.rst:37 msgid "" -"``virtualenv venv`` will create a folder in the current directory which will" -" contain the Python executable files, and a copy of the ``pip`` library " -"which you can use to install other packages. The name of the virtual " -"environment (in this case, it was ``venv``) can be anything; omitting the " -"name will place the files in the current directory instead." +"``virtualenv venv`` will create a folder in the current directory which " +"will contain the Python executable files, and a copy of the ``pip`` " +"library which you can use to install other packages. The name of the " +"virtual environment (in this case, it was ``venv``) can be anything; " +"omitting the name will place the files in the current directory instead." msgstr "" -#: ../../dev/virtualenvs.rst:40 +#: ../../dev/virtualenvs.rst:43 msgid "" -"This creates a copy of Python in whichever directory you ran the command in," -" placing it in a folder named :file:`venv`." +"This creates a copy of Python in whichever directory you ran the command " +"in, placing it in a folder named :file:`venv`." msgstr "" -#: ../../dev/virtualenvs.rst:43 +#: ../../dev/virtualenvs.rst:46 msgid "You can also use a Python interpreter of your choice." msgstr "" -#: ../../dev/virtualenvs.rst:49 +#: ../../dev/virtualenvs.rst:52 msgid "This will use the Python interpreter in :file:`/usr/bin/python2.7`" msgstr "" -#: ../../dev/virtualenvs.rst:51 +#: ../../dev/virtualenvs.rst:54 msgid "To begin using the virtual environment, it needs to be activated:" msgstr "" -#: ../../dev/virtualenvs.rst:57 +#: ../../dev/virtualenvs.rst:60 msgid "" -"The name of the current virtual environment will now appear on the left of " -"the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to let you " -"know that it's active. From now on, any package that you install using pip " -"will be placed in the ``venv`` folder, isolated from the global Python " -"installation." +"The name of the current virtual environment will now appear on the left " +"of the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to " +"let you know that it's active. From now on, any package that you install " +"using pip will be placed in the ``venv`` folder, isolated from the global" +" Python installation." msgstr "" -#: ../../dev/virtualenvs.rst:62 +#: ../../dev/virtualenvs.rst:65 msgid "Install packages as usual, for example:" msgstr "" -#: ../../dev/virtualenvs.rst:68 +#: ../../dev/virtualenvs.rst:71 msgid "" -"If you are done working in the virtual environment for the moment, you can " -"deactivate it:" +"If you are done working in the virtual environment for the moment, you " +"can deactivate it:" msgstr "" -#: ../../dev/virtualenvs.rst:75 +#: ../../dev/virtualenvs.rst:78 msgid "" -"This puts you back to the system's default Python interpreter with all its " -"installed libraries." +"This puts you back to the system's default Python interpreter with all " +"its installed libraries." msgstr "" -#: ../../dev/virtualenvs.rst:78 +#: ../../dev/virtualenvs.rst:81 msgid "" -"To delete a virtual environment, just delete its folder. (In this case, it " -"would be ``rm -rf venv``.)" +"To delete a virtual environment, just delete its folder. (In this case, " +"it would be ``rm -rf venv``.)" msgstr "" -#: ../../dev/virtualenvs.rst:81 +#: ../../dev/virtualenvs.rst:84 msgid "" -"After a while, though, you might end up with a lot of virtual environments " -"littered across your system, and its possible you'll forget their names or " -"where they were placed." +"After a while, though, you might end up with a lot of virtual " +"environments littered across your system, and its possible you'll forget " +"their names or where they were placed." msgstr "" -#: ../../dev/virtualenvs.rst:86 +#: ../../dev/virtualenvs.rst:89 msgid "Other Notes" msgstr "" -#: ../../dev/virtualenvs.rst:88 +#: ../../dev/virtualenvs.rst:91 msgid "" -"Running ``virtualenv`` with the option :option:`--no-site-packages` will not" -" include the packages that are installed globally. This can be useful for " -"keeping the package list clean in case it needs to be accessed later. [This " -"is the default behavior for ``virtualenv`` 1.7 and later.]" +"Running ``virtualenv`` with the option :option:`--no-site-packages` will " +"not include the packages that are installed globally. This can be useful " +"for keeping the package list clean in case it needs to be accessed later." +" [This is the default behavior for ``virtualenv`` 1.7 and later.]" msgstr "" -#: ../../dev/virtualenvs.rst:93 +#: ../../dev/virtualenvs.rst:96 msgid "" -"In order to keep your environment consistent, it's a good idea to \"freeze\"" -" the current state of the environment packages. To do this, run" +"In order to keep your environment consistent, it's a good idea to " +"\"freeze\" the current state of the environment packages. To do this, run" msgstr "" -#: ../../dev/virtualenvs.rst:100 +#: ../../dev/virtualenvs.rst:103 msgid "" -"This will create a :file:`requirements.txt` file, which contains a simple " -"list of all the packages in the current environment, and their respective " -"versions. Later it will be easier for a different developer (or you, if you " -"need to re-create the environment) to install the same packages using the " -"same versions:" +"This will create a :file:`requirements.txt` file, which contains a simple" +" list of all the packages in the current environment, and their " +"respective versions. You can see the list of installed packages without " +"the requirements format using \"pip list\". Later it will be easier for a" +" different developer (or you, if you need to re-create the environment) " +"to install the same packages using the same versions:" msgstr "" -#: ../../dev/virtualenvs.rst:110 +#: ../../dev/virtualenvs.rst:114 msgid "" -"This can help ensure consistency across installations, across deployments, " -"and across developers." +"This can help ensure consistency across installations, across " +"deployments, and across developers." msgstr "" -#: ../../dev/virtualenvs.rst:113 +#: ../../dev/virtualenvs.rst:117 msgid "" "Lastly, remember to exclude the virtual environment folder from source " "control by adding it to the ignore list." msgstr "" -#: ../../dev/virtualenvs.rst:117 +#: ../../dev/virtualenvs.rst:123 msgid "virtualenvwrapper" msgstr "" -#: ../../dev/virtualenvs.rst:119 +#: ../../dev/virtualenvs.rst:125 msgid "" "`virtualenvwrapper " -"`_ provides a" -" set of commands which makes working with virtual environments much more " -"pleasant. It also places all your virtual environments in one place." +"`_ " +"provides a set of commands which makes working with virtual environments " +"much more pleasant. It also places all your virtual environments in one " +"place." msgstr "" -#: ../../dev/virtualenvs.rst:123 ../../dev/virtualenvs.rst:135 +#: ../../dev/virtualenvs.rst:129 ../../dev/virtualenvs.rst:141 msgid "To install (make sure **virtualenv** is already installed):" msgstr "" -#: ../../dev/virtualenvs.rst:131 +#: ../../dev/virtualenvs.rst:137 msgid "" "(`Full virtualenvwrapper install instructions " -"`_.)" +"`_.)" msgstr "" -#: ../../dev/virtualenvs.rst:133 +#: ../../dev/virtualenvs.rst:139 msgid "" -"For Windows, you can use the `virtualenvwrapper-powershell " -"`_ clone." +"For Windows, you can use the `virtualenvwrapper-win " +"`_." msgstr "" #: ../../dev/virtualenvs.rst:147 +msgid "In Windows, the default path for WORKON_HOME is %USERPROFILE%\\Envs" +msgstr "" + +#: ../../dev/virtualenvs.rst:152 msgid "Create a virtual environment:" msgstr "" -#: ../../dev/virtualenvs.rst:153 +#: ../../dev/virtualenvs.rst:158 msgid "This creates the :file:`venv` folder inside :file:`~/Envs`." msgstr "" -#: ../../dev/virtualenvs.rst:155 +#: ../../dev/virtualenvs.rst:160 msgid "Work on a virtual environment:" msgstr "" -#: ../../dev/virtualenvs.rst:161 +#: ../../dev/virtualenvs.rst:166 +msgid "" +"Alternatively, you can make a project, which creates the virtual " +"environment, and also a project directory inside ``$PROJECT_HOME``, which" +" is ``cd`` -ed into when you ``workon myproject``." +msgstr "" + +#: ../../dev/virtualenvs.rst:174 msgid "" "**virtualenvwrapper** provides tab-completion on environment names. It " "really helps when you have a lot of environments and have trouble " "remembering their names." msgstr "" -#: ../../dev/virtualenvs.rst:165 +#: ../../dev/virtualenvs.rst:178 msgid "" -"``workon`` also deactivates whatever environment you are currently in, so " -"you can quickly switch between environments." +"``workon`` also deactivates whatever environment you are currently in, so" +" you can quickly switch between environments." msgstr "" -#: ../../dev/virtualenvs.rst:168 +#: ../../dev/virtualenvs.rst:181 msgid "Deactivating is still the same:" msgstr "" -#: ../../dev/virtualenvs.rst:174 +#: ../../dev/virtualenvs.rst:187 msgid "To delete:" msgstr "" -#: ../../dev/virtualenvs.rst:181 +#: ../../dev/virtualenvs.rst:194 msgid "Other useful commands" msgstr "" -#: ../../dev/virtualenvs.rst:184 +#: ../../dev/virtualenvs.rst:197 +msgid "``lsvirtualenv``" +msgstr "" + +#: ../../dev/virtualenvs.rst:197 msgid "List all of the environments." msgstr "" -#: ../../dev/virtualenvs.rst:187 +#: ../../dev/virtualenvs.rst:201 +msgid "``cdvirtualenv``" +msgstr "" + +#: ../../dev/virtualenvs.rst:200 msgid "" -"Navigate into the directory of the currently activated virtual environment, " -"so you can browse its :file:`site-packages`, for example." +"Navigate into the directory of the currently activated virtual " +"environment, so you can browse its :file:`site-packages`, for example." msgstr "" -#: ../../dev/virtualenvs.rst:191 +#: ../../dev/virtualenvs.rst:204 +msgid "``cdsitepackages``" +msgstr "" + +#: ../../dev/virtualenvs.rst:204 msgid "Like the above, but directly into :file:`site-packages` directory." msgstr "" -#: ../../dev/virtualenvs.rst:194 +#: ../../dev/virtualenvs.rst:207 +msgid "``lssitepackages``" +msgstr "" + +#: ../../dev/virtualenvs.rst:207 msgid "Shows contents of :file:`site-packages` directory." msgstr "" -#: ../../dev/virtualenvs.rst:196 +#: ../../dev/virtualenvs.rst:209 msgid "" "`Full list of virtualenvwrapper commands " -"`_." +"`_." +msgstr "" + +#: ../../dev/virtualenvs.rst:212 +msgid "virtualenv-burrito" +msgstr "" + +#: ../../dev/virtualenvs.rst:214 +msgid "" +"With `virtualenv-burrito `_, you can have a working virtualenv + virtualenvwrapper " +"environment in a single command." msgstr "" -#: ../../dev/virtualenvs.rst:199 +#: ../../dev/virtualenvs.rst:218 msgid "autoenv" msgstr "" -#: ../../dev/virtualenvs.rst:200 +#: ../../dev/virtualenvs.rst:219 msgid "" "When you ``cd`` into a directory containing a :file:`.env`, `autoenv " "`_ automagically activates the " "environment." msgstr "" -#: ../../dev/virtualenvs.rst:203 +#: ../../dev/virtualenvs.rst:222 msgid "Install it on Mac OS X using ``brew``:" msgstr "" -#: ../../dev/virtualenvs.rst:209 +#: ../../dev/virtualenvs.rst:228 msgid "And on Linux:" msgstr "" -#: ../../dev/virtualenvs.rst:184 -msgid "``lsvirtualenv``" -msgstr "" - -#: ../../dev/virtualenvs.rst:188 -msgid "``cdvirtualenv``" -msgstr "" - -#: ../../dev/virtualenvs.rst:191 -msgid "``cdsitepackages``" -msgstr "" +#~ msgid "" +#~ "This will create a :file:`requirements.txt`" +#~ " file, which contains a simple list" +#~ " of all the packages in the " +#~ "current environment, and their respective " +#~ "versions. Later it will be easier " +#~ "for a different developer (or you, " +#~ "if you need to re-create the " +#~ "environment) to install the same " +#~ "packages using the same versions:" +#~ msgstr "" + +#~ msgid "" +#~ "`virtualenvwrapper " +#~ "`_ " +#~ "provides a set of commands which " +#~ "makes working with virtual environments " +#~ "much more pleasant. It also places " +#~ "all your virtual environments in one " +#~ "place." +#~ msgstr "" + +#~ msgid "" +#~ "(`Full virtualenvwrapper install instructions " +#~ "`_.)" +#~ msgstr "" + +#~ msgid "" +#~ "For Windows, you can use the " +#~ "`virtualenvwrapper-powershell " +#~ "`_ clone." +#~ msgstr "" + +#~ msgid "" +#~ "`Full list of virtualenvwrapper commands " +#~ "`_." +#~ msgstr "" -#: ../../dev/virtualenvs.rst:194 -msgid "``lssitepackages``" -msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index 7cec027df76a25c941e269aad390e722a0f17ef1..a72a30cb54b93ccc3bd896b74d6b45da6e26237f 100644 GIT binary patch literal 4614 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 diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index 5488d2687..c260f49bb 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -1,96 +1,131 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Jou Sung-Shik \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../index.rst:7 msgid "The Hitchhiker's Guide to Python!" -msgstr "파이썬을 여행하는 히치하이커를 위한 안내서" +msgstr "파이썬을 여행하는 히치하이커를 위한 안내서!" #: ../../index.rst:9 -msgid "Welcome to The Hitchhiker's Guide to Python." -msgstr "파이썬을 여행하는 히치하이커를 위한 안내서에 오신 것을 환영합니다." +msgid "Greetings, Earthling! Welcome to The Hitchhiker's Guide to Python." +msgstr "안녕, 지구인! 파이썬을 여행하는 히치하이커를 위한 안내서에 오신 것을 환영합니다." #: ../../index.rst:11 msgid "" -"**This guide is currently under heavy active development.** If you'd like " -"to help, `fork us on GitHub `_!" +"**This is a living, breathing guide.** If you'd like to contribute, " +"`fork us on GitHub `_!" msgstr "" -"**이 가이드는 현재 많은 변화가 진행 중입니다.** 도와주고 싶으시다면, `fork us on GitHub " +"**이 안내서는 현재 많은 변화가 진행 중입니다.** 도와주고 싶으시다면, `fork us on GitHub " "`_!" #: ../../index.rst:14 msgid "" -"This *opinionated* guide exists to provide both novice and expert Python " -"developers a best-practice handbook to the installation, configuration, and " -"usage of Python on a daily basis." +"This handcrafted guide exists to provide both novice and expert Python " +"developers a best practice handbook to the installation, configuration, " +"and usage of Python on a daily basis." msgstr "" -"이 *자부심 강한* 가이드는 파이썬 초보자와 전문 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는 우수 사례 " -"안내서입니다." +"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는 모범 사례 안내서입니다." + +#: ../../index.rst:18 +msgid "" +"This guide is **opinionated** in a way that is almost, but not quite, " +"entirely *unlike* Python's official documentation. You won't find a list " +"of every Python web framework available here. Rather, you'll find a nice " +"concise list of highly recommended options." +msgstr "" +"이 안내서는 거의 **독단적**입니다. 하지만 파이썬 공식 문서만큼 완벽하게 독단적이지는 않습니다. " +"여기서 사용 가능한 세상의 모든 파이썬 웹 프레임워크의 목록을 찾을 수 있다는 것은 아닙니다. " +"그보다는 강력 추천하는 여러 선택 사항들의 간결하고 멋진 목록을 보게 될 것입니다. " + +#: ../../index.rst:24 +msgid "" +"Let's get started! But first, let's make sure you know where your towel " +"is." +msgstr "" +"이제 출발합시다! 그런데 우선, 당신의 타월이 어디에 있는지 확인합시다. " #: ../../contents.rst.inc:2 -msgid "Getting Started" -msgstr "시작하기" +msgid "Getting Started with Python" +msgstr "파이썬 시작하기" #: ../../contents.rst.inc:4 -msgid "This part of the guide focuses on setting up your Python environment." -msgstr "이 파트의 주제는 파이썬 환경설정입니다." +msgid "New to Python? Let's properly setup up your Python environment." +msgstr "파이썬은 처음인가요? 파이썬 환경을 잘 설치해봅시다." #: ../../contents.rst.inc:11 msgid "Properly Install Python" -msgstr "적절한 파이썬 설치" +msgstr "올바른 파이썬 설치" -#: ../../contents.rst.inc:23 -msgid "Writing Great Code" +#: ../../contents.rst.inc:24 +msgid "Writing Great Python Code" msgstr "최고의 코드 작성하기" -#: ../../contents.rst.inc:25 +#: ../../contents.rst.inc:26 msgid "" -"This part of the guide focuses on best practices for writing Python code." -msgstr "이 파트는 파이썬 코드 작성의 모범 사례를 다룹니다." - -#: ../../contents.rst.inc:41 -msgid "Scenario Guide" -msgstr "시나리오 안내" +"This part of the guide focuses on the best-practices for writing Python " +"code." +msgstr "안내서의 이 부분은 파이썬 코드 작성의 모범 사례를 다룹니다." #: ../../contents.rst.inc:43 +msgid "Scenario Guide for Python Applications" +msgstr "" +"파이썬 어플리케이션을 위한 시나리오 안내" + +#: ../../contents.rst.inc:45 msgid "" -"This part of the guide focuses on tool and module advice based on different " -"scenarios." +"This part of the guide focuses on tool and module advice based on " +"different scenarios." msgstr "이 파트는 다양한 시나리에오 따른 툴과 모듈에 대한 조언을 다룹니다" -#: ../../contents.rst.inc:66 -msgid "Shipping Great Code" +#: ../../contents.rst.inc:71 +msgid "Shipping Great Python Code" msgstr "최고의 코드를 진수하기" -#: ../../contents.rst.inc:68 +#: ../../contents.rst.inc:73 msgid "This part of the guide focuses on deploying your Python code." -msgstr "이 파트는 파이썬 코드 배포를 다룹니다" +msgstr "이 부분은 파이썬 코드 배포를 다룹니다" + +#: ../../contents.rst.inc:83 +msgid "Python Development Environments" +msgstr "파이썬 개발 환경" -#: ../../contents.rst.inc:78 -msgid "Development Environment" -msgstr "개발 환경" +#: ../../contents.rst.inc:85 +msgid "" +"This part of the guide focus on the Python development environment, and " +"the best-practice tools that are available for writing Python code." +msgstr "" +"이 부분은 파이썬 개발 환경, 그리고 파이썬 코드 작성을 위한 모범적인 개발도구를 다룹니다." -#: ../../contents.rst.inc:90 +#: ../../contents.rst.inc:99 msgid "Additional Notes" -msgstr "참고" +msgstr "참고 사항" -#: ../../contents.rst.inc:92 +#: ../../contents.rst.inc:101 msgid "" -"This part of the guide, which is mostly prose, begins with some background " -"information about Python, then focuses on next steps." -msgstr "대부분 산문체로 쓰여진 이 부분은 파이썬에 대한 배경 지식부터 시작하여 그 다음 단계까지 다룹니다." +"This part of the guide, which is mostly prose, begins with some " +"background information about Python, then focuses on next steps." +msgstr "" +"이 부분에서는 파이썬에 대한 배경 지식부터 시작해서 그 다음 단계를 구구절절 다룹니다." -#: ../../contents.rst.inc:109 +#: ../../contents.rst.inc:114 msgid "" -"Contribution notes and legal information are here (for those interested)." -msgstr "(관심있으신 분들을 위한) 공헌자를 위한 알림과 법적 정보는 여기에 있습니다." +"Notes defined within all diatonic and chromatic musical scales have been " +"intentionally excluded from this list of additional notes. Additionally, " +"this note." +msgstr "" +"이 참고 사항에서는 장음계와 단음계를 비롯한 음계의 모든 사항들을 다루지는 않습니다. " +"그런 것들은 이 참고 사항의 목록에서 일부러 제외시켰습니다. 이 문단도 그렇습니다." + +#: ../../contents.rst.inc:121 +msgid "Contribution notes and legal information (for those interested)." +msgstr "기여자를 위한 알림과 법적 정보(관심있으신 분들에게)." \ No newline at end of file diff --git a/docs/locale/ko/LC_MESSAGES/intro/community.mo b/docs/locale/ko/LC_MESSAGES/intro/community.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..063528a31ebb5689a4cab7c85f19b5d219725fe5 100644 GIT binary patch literal 4867 zcmeHJ&u<$=6yBBsCHyF@gpg2y#}5@qvv!ge(YmG7X`D1*Cuy93noBd@9oy6H?rdjf z<63}Ji6a+~;KCn4PjKQNpeOD~mEaF3Cr${7@6FmyD#4vYtT>-%cjnD|-}~O1d2r&$ zw*fw{;d>I_HxKb>?=y2a2##YI0-pwc0DKns5%6W;b>Qp30g!Ec2iyk!1pE;A;$uN@ z1lR$t0(-z|;E%vlz~6w^fJZS&1Gj;0fSE;7h*(CWPb(l9#8{+1-|+uVgddItOG9`g)QLcz^lOIsUSEH`~i3kocsY~ z9_k>0d1&Jw+r0r~9#SCl@FkFW_#VhS`~qYiP9qqOV;9Igd|(LdR?aGXe+wqihqxI!NYP(?~ zX}M6btORw6bebF4mzh<&k`iSdZxZROD~-(H7b#1rP?^J5#v~l=tN9obh| zJPCDSaj6+BN*fu~fkT2~X;m+SXSR?t)RUPsBB36~l)y_nL)wtqBbuD{TOio9$dnsa z9x<260d=Ktg^_+?nkU{_pQJ~p=4GzP$OI9^YA(1amEk z$)n%zep3!W)vivE2wGGTk^(zR_%>A+YPgD&zr~)C-j!xoffj7SM%EkaB%(;>kY^-m zpv|prq6f8LRXfpvo-n}%lYb<@c8h;t=Ck)gDR`V=c0 z71p9mDpb#gI+GM3?152E`qj4Rq{=~R962Ylw2d8o`Ei|%3uOGLjT8(x@FjN7YiImw z%VOhYxSiWzLkh^IuPk;>5+)ddU`+x(eN1h?wc~2`+Xo;D`;CL2?SJ#9#(PsVZ|1Ct__liVOK;dQQU?6@}AKH)Evl1GeO-NTc#atPMU1g zoVhoa?Sdzc5OfZL#Ar)glSbYyRQW^1@VK^b zz3Uq(;Y!!5%8?u9C@XOgAmnuL;^NN$nn=mHg5=Emuqn-&asN~DEG_d0r_BlO#XRShPgYR=oEhXf~S zXJqW(68(v~rS^^w3~+wd&N!O)yZ!fojXsX{RZL$*AQ`_`toY+DrenJh$C)<+{<_Pr{Wr{1_sDtZP)d z?#~~Zt;|;DrZyx?FKpSKio=DXXTwchqp9_^&F~8MZ!8NJp~f1`&(56<=jOsQvot?n zn?HAY79UIuH_*-4{Ak|wMtvh}t%Zwqy1G_tt(@LoTWw4=g>~Vk5t+q#q)m;Mwwg^^ zt+yIm%HhBCS!gzPh|sU&g#<^Kzp2IKMR2T4^=*!kVkh zPN4`WR0A>V0+=&kEME~n+a diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.mo b/docs/locale/ko/LC_MESSAGES/intro/documentation.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..94b722c3a7a5cc53303995161a5472101aeffe4d 100644 GIT binary patch literal 2171 zcmeHHO^+Kj7#=7eRRlunfm4OvGuxR=b`e@lcUMiDv_zUTQ5q`2g*Y>wj9ZUA*q+@D z^au3X181&q;2-b@_z%FD3tTvI;c+Ir-CZGm!CD$Ue(l$fUq6q>zu$W6y8!Jye7Etv z@WF-lEBYV25d^;h-^ceS`X2)S0s8pXn?djckbpDbFTfG-_KhI;7+7ra6>taf&%n2V ze*nJ)$6r9t{|tkk@0)j8{+B=>e-HHhKLI`e(|23`AAz3#?=60Gv*jNFJ%0lXlG^B% zVO6rI*SXFXBrGv%oRGq;$(79c5uvPOQu3TmO0Hok4c zi0rvsli|(?e$0ufoGfQ1E2+?iuv=4c<(Ly%QDJoDR~oV!e=Vq(T5lcL9@yTYrFJEqRp3SEr`m}u3g(cAEj6t0b@>@s%dLe8 zI3uj$@a&jL!~_F%upTEkPZG|a5895!Rh zD_`gaMZiFw1dHwJ-RP7KO6O{ubi24CHmchjrp>Cm+dW!*b)LHSf2n(I>Sc4zi47dY zxijvaTG_r&WzXExNvM&A`kC3D;v&rLY?Vk z9zFoKztZ7=IiApN-1{`_#bK{U@qQBT?ZjwE3}^gUc=~PL7sLK698bbQpFW!;An77FdII3a)i`Y_Jp46^B|ma{M#6z zgEYM-MTEm1b*8d0OosTyDw~k1H=#Z3-KDmB7y26 zy0v6N-KDH##&UPqxFXzto#(4AxCw_U(>X3nLiv4Mh-k(H6f z&Gco`G6~q<= diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.po b/docs/locale/ko/LC_MESSAGES/intro/documentation.po index dfc19b59b..2f7d08655 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/intro/documentation.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../intro/documentation.rst:2 msgid "Documentation" @@ -20,8 +21,7 @@ msgid "Official Documentation" msgstr "" #: ../../intro/documentation.rst:7 -msgid "" -"The official Python Language and Library documentation can be found here:" +msgid "The official Python Language and Library documentation can be found here:" msgstr "" #: ../../intro/documentation.rst:9 @@ -38,9 +38,9 @@ msgstr "" #: ../../intro/documentation.rst:16 msgid "" -"Read the Docs is a popular community project that hosts documentation for " -"open source software. It holds documentation for many Python modules, both " -"popular and exotic." +"Read the Docs is a popular community project that hosts documentation for" +" open source software. It holds documentation for many Python modules, " +"both popular and exotic." msgstr "" #: ../../intro/documentation.rst:20 @@ -53,14 +53,26 @@ msgstr "" #: ../../intro/documentation.rst:26 msgid "" -":program:`pydoc` is a utlity that is installed when you install Python. It " -"allows you to quickly retrieve and search for documentation from your shell." -" For example, if you needed a quick refresher on the :mod:`time` module, " -"pulling up documentation would be as simple as" +":program:`pydoc` is a utility that is installed when you install Python. " +"It allows you to quickly retrieve and search for documentation from your " +"shell. For example, if you needed a quick refresher on the :mod:`time` " +"module, pulling up documentation would be as simple as" msgstr "" #: ../../intro/documentation.rst:35 msgid "" -"The above command is essentially equivalent to opening the Python REPL and " -"running" +"The above command is essentially equivalent to opening the Python REPL " +"and running" msgstr "" + +#~ msgid "" +#~ ":program:`pydoc` is a utlity that is " +#~ "installed when you install Python. It" +#~ " allows you to quickly retrieve and" +#~ " search for documentation from your " +#~ "shell. For example, if you needed " +#~ "a quick refresher on the :mod:`time` " +#~ "module, pulling up documentation would " +#~ "be as simple as" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.mo b/docs/locale/ko/LC_MESSAGES/intro/duction.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..6c8e0ed4150bbb00325c0884e244d14971ecf8fd 100644 GIT binary patch literal 6599 zcmeHLyN?`68E+2rS`cu@9o$Jsd^oYR-tOJKJ0WY%HaFf~+XK7a)p~gfiK*_cnJ!Ov zRbN&0%=STskO&Dt1UzEM5F!U82reN*mmnen#6uz=f`s2!-7`Br5%34hNaN2{Q;*;G z`h8#RpPsw+{Rp2I@%<#ef8@d1=SS~~qEn224Eb@$e?VS`y!K2Ky##p!@>7sQ$d5t_ z$nRi{h5RMP|9N*e|MP26^iPa`1NkiEFWwVHpN0G_lB^b*Z^oSo6p>bjt8u(lbET(Owj?v5V2#==q@6S+^_oqr zsN}-fS?@GsN(V>IWT*e(6QQT(sY~-PRa^5!WuIFX?0ZZewgo3Q=PS|-MXpj zHgTE4za46F(lfM5z_S+aP+Gbq8kQxXYj0JGDWikw*dM`9B%tR)mbe;rnpjiy$|yvl z@l`y5Csi;XIqzVzd(Vv_d7|G#K7$g{=yAToZK>3GF z8Z_&DD5!35kCksU()lF1hhPT8gJt+e2Ty6R2D-xxe6}?jDl7`gz<7Im1G))Krp&3} zEJE-Inkegh>{TV#G~HR5Su_aJF1{E+hk2m@ZdwXXsX~^}wlhQ_kg}Y40d_F12#LU3 zMGe2!Rte;`bT9^Npv5-^C?#*xX;evsj-<%RHno#?hr6e zdAW*>wKNKFIFAO=2r&Ta$T$e1v&PoO$*7Oq3}#xg1LA?XVf;Cy-5L!o6P0u2$tq8A z@(xLjw>8jNLhB{fG1!X-1n0ZNhtV}YBhij$lD8; zL5EdY$tbL(`{Z34!?DF_lxu9i3i^aATMO87|X zOeRa46o`KTh6N7;EyoWi1iUq{axxghnH{szZETKL!@FaIAnRKR7!+RzJIqvYzn&mt za77q2+JnU%VjhlA-Z0ni@UCFV68VSW==^{(#I8pAbukJfR1F_*tW4;k%w`?CE*-go z1;vmRI>amc298-+juK?AqbZa0rU1;o3p{7L~Qh((fKBxqXHB8`Z zta_1^JAqnv=)6fm_>Z$fGNZsf?D&KpgJ9Uw%DZ41n#qxYQoSJF{-s5D1CLRS|WQbx-!L|ee@$Q~#5-jo0L0`-C4K7@&ax{U_;~p)X_8%u3(d)FG4&AwpbBfoTER&8aY9s?^zvT zF%Lclt#@oPU@L~{kfE#H(87Ru5J?`*E&IApC8+zq{ex~!b`8}4(LNaOYJ*tVU9~uJ zj9zfcG~RVp@hFeK2$ul=fa*}VI-Bh!d&&ORIq28=_{2?B9^Y%GF1|1W+B!SEh!4;} zvOnTOMB#v5-rN67yuTOk@6+C`!QLx3_wd2O_*~8vAK$P0%F*yVJ~@pKhxG7ta5B32 z)ze2uTgL)j#|27>gU^i}(ETqQAJe1Z$r0T?IvI|RUmqSGo*zAad>2bQf*sJztOoIg z6cx|V?c?LuOBI^Ft+Ns_Q^sf(DmNfqhoQT({~E%df4Q@_buv0Rx-!6ivbV*(6!v4Mh-k(H6f z\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../intro/duction.rst:2 msgid "Introduction" @@ -21,8 +22,8 @@ msgstr "" #: ../../intro/duction.rst:6 msgid "" -"Python is a general-purpose, high-level programming language similar to Tcl," -" Perl, Ruby, Scheme, or Java. Some of its main key features include:" +"Python is a general-purpose, high-level programming language similar to " +"Tcl, Perl, Ruby, Scheme, or Java. Some of its main key features include:" msgstr "" #: ../../intro/duction.rst:10 @@ -31,9 +32,9 @@ msgstr "" #: ../../intro/duction.rst:12 msgid "" -"Python's philosophy focuses on readability, from code blocks delineated with" -" significant whitespace to intuitive keywords in place of inscrutable " -"punctuation." +"Python's philosophy focuses on readability, from code blocks delineated " +"with significant whitespace to intuitive keywords in place of inscrutable" +" punctuation." msgstr "" #: ../../intro/duction.rst:16 @@ -44,18 +45,19 @@ msgstr "" #: ../../intro/duction.rst:19 msgid "" -"Python is sometimes described with the words \"batteries included\" because " -"of its extensive `standard library `_, " -"which includes modules for regular expressions, file IO, fraction handling, " -"object serialization, and much more." +"Python is sometimes described with the words \"batteries included\" " +"because of its extensive `standard library " +"`_, which includes modules for regular " +"expressions, file IO, fraction handling, object serialization, and much " +"more." msgstr "" #: ../../intro/duction.rst:25 msgid "" -"Additionally, the `Python Package Index `_ is " -"available for users to submit their packages for widespread use, similar to " -"Perl's `CPAN `_. There is a thriving community of very " -"powerful Python frameworks and tools like the `Django " +"Additionally, the `Python Package Index `_ " +"is available for users to submit their packages for widespread use, " +"similar to Perl's `CPAN `_. There is a thriving " +"community of very powerful Python frameworks and tools like the `Django " "`_ web framework and the `NumPy " "`_ set of math routines." msgstr "" @@ -78,9 +80,9 @@ msgstr "" #: ../../intro/duction.rst:43 msgid "" -"Python is available on Windows, \\*nix, and Mac. It runs wherever the Java " -"virtual machine runs, and the reference implementation CPython can help " -"bring Python to wherever there is a working C compiler." +"Python is available on Windows, \\*nix, and Mac. It runs wherever the " +"Java virtual machine runs, and the reference implementation CPython can " +"help bring Python to wherever there is a working C compiler." msgstr "" #: ../../intro/duction.rst:47 @@ -91,8 +93,8 @@ msgstr "" msgid "" "Python has a vibrant and large :ref:`community ` which " "maintains wikis, conferences, countless repositories, mailing lists, IRC " -"channels, and so much more. Heck, the Python community is even helping to " -"write this guide!" +"channels, and so much more. Heck, the Python community is even helping to" +" write this guide!" msgstr "" #: ../../intro/duction.rst:58 @@ -105,8 +107,8 @@ msgstr "" #: ../../intro/duction.rst:63 msgid "" -"The Hitchhiker's Guide to Python exists to provide both novice and expert " -"Python developers a best-practice handbook to the installation, " +"The Hitchhiker's Guide to Python exists to provide both novice and expert" +" Python developers a best practice handbook for the installation, " "configuration, and usage of Python on a daily basis." msgstr "" @@ -117,8 +119,8 @@ msgstr "" #: ../../intro/duction.rst:71 msgid "" "This guide is architected and maintained by `Kenneth Reitz " -"`_ in an open fashion. This is a community-" -"driven effort that serves one purpose: to serve the community." +"`_ in an open fashion. This is a " +"community-driven effort that serves one purpose: to serve the community." msgstr "" #: ../../intro/duction.rst:76 @@ -127,17 +129,17 @@ msgstr "" #: ../../intro/duction.rst:78 msgid "" -"All contributions to the Guide are welcome, from Pythonistas of all levels. " -"If you think there's a gap in what the Guide covers, fork the Guide on " -"GitHub and submit a pull request." +"All contributions to the Guide are welcome, from Pythonistas of all " +"levels. If you think there's a gap in what the Guide covers, fork the " +"Guide on GitHub and submit a pull request." msgstr "" #: ../../intro/duction.rst:82 msgid "" -"Contributions are welcome from everyone, whether they're an old hand or a " -"first-time Pythonista, and the authors to the Guide will gladly help if you " -"have any questions about the appropriateness, completeness, or accuracy of a" -" contribution." +"Contributions are welcome from everyone, whether they're an old hand or a" +" first-time Pythonista, and the authors to the Guide will gladly help if " +"you have any questions about the appropriateness, completeness, or " +"accuracy of a contribution." msgstr "" #: ../../intro/duction.rst:87 @@ -145,3 +147,13 @@ msgid "" "To get started working on The Hitchhiker's Guide, see the " ":doc:`/notes/contribute` page." msgstr "" + +#~ msgid "" +#~ "The Hitchhiker's Guide to Python exists" +#~ " to provide both novice and expert" +#~ " Python developers a best-practice " +#~ "handbook to the installation, configuration," +#~ " and usage of Python on a daily" +#~ " basis." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.mo b/docs/locale/ko/LC_MESSAGES/intro/learning.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..579b242c4787bf3f0850c80cd33e6de3eafa2479 100644 GIT binary patch literal 24665 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 delta 114 zcmcb4fbjv7&OITPsSH5C2*ff#tODWyfewTM(?&o^T_At*6{8Sd6J0|?U1I|UBO@y# zi^*2TG19srsfoE(3O;M1& diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.po b/docs/locale/ko/LC_MESSAGES/intro/learning.po index 9acc40428..d742df608 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/learning.po +++ b/docs/locale/ko/LC_MESSAGES/intro/learning.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../intro/learning.rst:2 msgid "Learning Python" @@ -25,302 +26,376 @@ msgstr "" #: ../../intro/learning.rst:10 msgid "" -"This is the official tutorial. It covers all the basics, and offers a tour " -"of the language and the standard library. Recommended for those who need a " -"quickstart guide to the language." +"This is the official tutorial. It covers all the basics, and offers a " +"tour of the language and the standard library. Recommended for those who " +"need a quick-start guide to the language." msgstr "" #: ../../intro/learning.rst:14 msgid "`The Python Tutorial `_" msgstr "" -#: ../../intro/learning.rst:18 +#: ../../intro/learning.rst:17 +msgid "Python for Beginners" +msgstr "" + +#: ../../intro/learning.rst:19 +msgid "" +"thepythonguru.com is a tutorial focuses on beginner programmers. It " +"covers many python concepts in depth. It also teaches you some advance " +"constructs of python like lambda expression, regular expression. At last " +"it finishes off with tutorial \"How to access MySQL db using python\"" +msgstr "" + +#: ../../intro/learning.rst:24 +msgid "`Python for beginners `_" +msgstr "" + +#: ../../intro/learning.rst:27 msgid "Learn Python Interactive Tutorial" msgstr "" -#: ../../intro/learning.rst:20 +#: ../../intro/learning.rst:29 msgid "" -"Learnpython.org is an easy non-intimidating way to get introduced to Python." -" The website takes the same approach used on the popular `Try Ruby " -"`_ website, it has an interactive Python interpreter " -"built into the site that allows you to go through the lessons without having" -" to install Python locally." +"Learnpython.org is an easy non-intimidating way to get introduced to " +"Python. The website takes the same approach used on the popular `Try Ruby" +" `_ website, it has an interactive Python " +"interpreter built into the site that allows you to go through the lessons" +" without having to install Python locally." msgstr "" -#: ../../intro/learning.rst:25 +#: ../../intro/learning.rst:35 msgid "`Learn Python `_" msgstr "" -#: ../../intro/learning.rst:28 +#: ../../intro/learning.rst:38 msgid "" -"If you want a more traditional book, *Python For You and Me* is an excellent" -" resource for learning all aspects of the language." +"If you want a more traditional book, *Python For You and Me* is an " +"excellent resource for learning all aspects of the language." msgstr "" -#: ../../intro/learning.rst:31 -msgid "`Python for You and Me `_" +#: ../../intro/learning.rst:41 +msgid "`Python for You and Me `_" msgstr "" -#: ../../intro/learning.rst:35 +#: ../../intro/learning.rst:44 +msgid "Online Python Tutor" +msgstr "" + +#: ../../intro/learning.rst:46 +msgid "" +"Online Python Tutor gives you a visual step by step representation of how" +" your program runs. Python Tutor helps people overcome a fundamental " +"barrier to learning programming by understanding what happens as the " +"computer executes each line of a program's source code." +msgstr "" + +#: ../../intro/learning.rst:52 +msgid "`Online Python Tutor `_" +msgstr "" + +#: ../../intro/learning.rst:55 msgid "Invent Your Own Computer Games with Python" msgstr "" -#: ../../intro/learning.rst:37 +#: ../../intro/learning.rst:57 msgid "" "This beginner's book is for those with no programming experience at all. " "Each chapter has the source code to a small game, using these example " -"programs to demonstrate programming concepts to give the reader an idea of " -"what programs \"look like\"." +"programs to demonstrate programming concepts to give the reader an idea " +"of what programs \"look like\"." msgstr "" -#: ../../intro/learning.rst:42 +#: ../../intro/learning.rst:62 msgid "" -"`Invent Your Own Computer Games with Python `_" +"`Invent Your Own Computer Games with Python " +"`_" msgstr "" -#: ../../intro/learning.rst:46 +#: ../../intro/learning.rst:66 msgid "Hacking Secret Ciphers with Python" msgstr "" -#: ../../intro/learning.rst:48 +#: ../../intro/learning.rst:68 msgid "" "This book teaches Python programming and basic cryptography for absolute " -"beginners. The chapters provide the source code for various ciphers, as well" -" as programs that can break them." +"beginners. The chapters provide the source code for various ciphers, as " +"well as programs that can break them." msgstr "" -#: ../../intro/learning.rst:52 +#: ../../intro/learning.rst:72 msgid "" -"`Hacking Secret Ciphers with Python `_" +"`Hacking Secret Ciphers with Python " +"`_" msgstr "" -#: ../../intro/learning.rst:55 +#: ../../intro/learning.rst:76 msgid "Learn Python the Hard Way" msgstr "" -#: ../../intro/learning.rst:57 +#: ../../intro/learning.rst:78 msgid "" "This is an excellent beginner programmer's guide to Python. It covers " "\"hello world\" from the console to the web." msgstr "" -#: ../../intro/learning.rst:60 +#: ../../intro/learning.rst:81 msgid "`Learn Python the Hard Way `_" msgstr "" -#: ../../intro/learning.rst:64 +#: ../../intro/learning.rst:85 msgid "Crash into Python" msgstr "" -#: ../../intro/learning.rst:66 +#: ../../intro/learning.rst:87 msgid "" "Also known as *Python for Programmers with 3 Hours*, this guide gives " "experienced developers from other languages a crash course on Python." msgstr "" -#: ../../intro/learning.rst:69 +#: ../../intro/learning.rst:90 msgid "`Crash into Python `_" msgstr "" -#: ../../intro/learning.rst:73 +#: ../../intro/learning.rst:94 msgid "Dive Into Python 3" msgstr "" -#: ../../intro/learning.rst:75 +#: ../../intro/learning.rst:96 msgid "" -"Dive Into Python 3 is a good book for those ready to jump in to Python 3. " -"It's a good read if you are moving from Python 2 to 3 or if you already have" -" some experience programming in another language." +"Dive Into Python 3 is a good book for those ready to jump in to Python 3." +" It's a good read if you are moving from Python 2 to 3 or if you already " +"have some experience programming in another language." msgstr "" -#: ../../intro/learning.rst:79 +#: ../../intro/learning.rst:100 msgid "`Dive Into Python 3 `_" msgstr "" -#: ../../intro/learning.rst:82 +#: ../../intro/learning.rst:104 msgid "Think Python: How to Think Like a Computer Scientist" msgstr "" -#: ../../intro/learning.rst:84 +#: ../../intro/learning.rst:106 msgid "" -"Think Python attempts to give an introduction to basic concepts in computer " -"science through the use of the Python language. The focus was to create a " -"book with plenty of exercises, minimal jargon and a section in each chapter " -"devoted to the subject of debugging." +"Think Python attempts to give an introduction to basic concepts in " +"computer science through the use of the Python language. The focus was to" +" create a book with plenty of exercises, minimal jargon and a section in " +"each chapter devoted to the subject of debugging." msgstr "" -#: ../../intro/learning.rst:89 +#: ../../intro/learning.rst:111 msgid "" -"While exploring the various features available in the Python language the " -"author weaves in various design patterns and best practices." +"While exploring the various features available in the Python language the" +" author weaves in various design patterns and best practices." msgstr "" -#: ../../intro/learning.rst:92 +#: ../../intro/learning.rst:114 msgid "" -"The book also includes several case studies which have the reader explore " -"the topics discussed in the book in greater detail by applying those topics " -"to real-world examples. Case studies include assignments in GUI and Markov " -"Analysis." +"The book also includes several case studies which have the reader explore" +" the topics discussed in the book in greater detail by applying those " +"topics to real-world examples. Case studies include assignments in GUI " +"and Markov Analysis." msgstr "" -#: ../../intro/learning.rst:97 +#: ../../intro/learning.rst:119 msgid "`Think Python `_" msgstr "" -#: ../../intro/learning.rst:101 +#: ../../intro/learning.rst:123 msgid "Python Koans" msgstr "" -#: ../../intro/learning.rst:103 +#: ../../intro/learning.rst:125 msgid "" "Python Koans is a port of Edgecase's Ruby Koans. It uses a test-driven " -"approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive tutorial" -" teaching basic Python concepts. By fixing assertion statements that fail " -"in a test script, this provides sequential steps to learning Python." +"approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive " +"tutorial teaching basic Python concepts. By fixing assertion statements " +"that fail in a test script, this provides sequential steps to learning " +"Python." msgstr "" -#: ../../intro/learning.rst:108 +#: ../../intro/learning.rst:130 msgid "" -"For those used to languages and figuring out puzzles on their own, this can " -"be a fun, attractive option. For those new to Python and programming, having" -" an additional resource or reference will be helpful." +"For those used to languages and figuring out puzzles on their own, this " +"can be a fun, attractive option. For those new to Python and programming," +" having an additional resource or reference will be helpful." msgstr "" -#: ../../intro/learning.rst:112 +#: ../../intro/learning.rst:134 msgid "`Python Koans `_" msgstr "" -#: ../../intro/learning.rst:114 +#: ../../intro/learning.rst:136 msgid "" "More information about test driven development can be found at these " "resources:" msgstr "" -#: ../../intro/learning.rst:116 +#: ../../intro/learning.rst:138 msgid "" "`Test Driven Development `_" msgstr "" -#: ../../intro/learning.rst:119 +#: ../../intro/learning.rst:142 msgid "A Byte of Python" msgstr "" -#: ../../intro/learning.rst:121 +#: ../../intro/learning.rst:144 msgid "" "A free introductory book that teaches Python at the beginner level, it " "assumes no previous programming experience." msgstr "" -#: ../../intro/learning.rst:124 +#: ../../intro/learning.rst:147 msgid "" "`A Byte of Python for Python 2.x " -"`_ `A Byte of Python " -"for Python 3.x `_" +"`_ `A Byte of Python" +" for Python 3.x `_" +msgstr "" + +#: ../../intro/learning.rst:152 +msgid "Learn to Program in Python with Codeacademy" +msgstr "" + +#: ../../intro/learning.rst:154 +msgid "" +"A Codeacademy course for the absolute Python beginner. This free and " +"interactive course provides and teaches the basics (and beyond) of Python" +" programming whilst testing the user's knowledge in between progress. " +"This course also features a built-in interpreter for receiving instant " +"feedback on your learning." +msgstr "" + +#: ../../intro/learning.rst:157 +msgid "" +"`Learn to Program in Python with Codeacademy " +"`_" msgstr "" -#: ../../intro/learning.rst:129 +#: ../../intro/learning.rst:161 +msgid "Intermediate" +msgstr "" + +#: ../../intro/learning.rst:164 +msgid "Effective Python" +msgstr "" + +#: ../../intro/learning.rst:166 +msgid "" +"This book contains 59 specific ways to improve writing Pythonic code. At " +"227 pages, it is a very brief overview of some of the most commons " +"adapations programmers need to make to become efficient intermediate " +"level Python programmers." +msgstr "" + +#: ../../intro/learning.rst:171 +msgid "`Effective Python `_" +msgstr "" + +#: ../../intro/learning.rst:175 msgid "Advanced" msgstr "" -#: ../../intro/learning.rst:132 +#: ../../intro/learning.rst:178 msgid "Pro Python" msgstr "" -#: ../../intro/learning.rst:134 +#: ../../intro/learning.rst:180 msgid "" -"This book is for intermediate to advanced Python programmers who are looking" -" to understand how and why Python works the way it does and how they can " -"take their code to the next level." +"This book is for intermediate to advanced Python programmers who are " +"looking to understand how and why Python works the way it does and how " +"they can take their code to the next level." msgstr "" -#: ../../intro/learning.rst:137 +#: ../../intro/learning.rst:184 msgid "`Pro Python `_" msgstr "" -#: ../../intro/learning.rst:141 +#: ../../intro/learning.rst:188 msgid "Expert Python Programming" msgstr "" -#: ../../intro/learning.rst:142 +#: ../../intro/learning.rst:189 msgid "" -"Expert Python Programming deals with best practices in programming Python " -"and is focused on the more advanced crowd." +"Expert Python Programming deals with best practices in programming Python" +" and is focused on the more advanced crowd." msgstr "" -#: ../../intro/learning.rst:145 +#: ../../intro/learning.rst:192 msgid "" "It starts with topics like decorators (with caching, proxy, and context " "manager case-studies), method resolution order, using super() and meta-" "programming, and general :pep:`8` best practices." msgstr "" -#: ../../intro/learning.rst:149 +#: ../../intro/learning.rst:196 msgid "" "It has a detailed, multi-chapter case study on writing and releasing a " "package and eventually an application, including a chapter on using " -"zc.buildout. Later chapters detail best practices with writing " -"documentation, test-driven development, version control, and " -"optimization/profiling." +"zc.buildout. Later chapters detail best practices such as writing " +"documentation, test-driven development, version control, optimization and" +" profiling." msgstr "" -#: ../../intro/learning.rst:154 +#: ../../intro/learning.rst:201 msgid "" "`Expert Python Programming `_" msgstr "" -#: ../../intro/learning.rst:158 +#: ../../intro/learning.rst:205 msgid "A Guide to Python's Magic Methods" msgstr "" -#: ../../intro/learning.rst:160 +#: ../../intro/learning.rst:207 msgid "" "This is a collection of blog posts by Rafe Kettler which explain 'magic " -"methods' in Python. Magic methods are surrounded by double underscores " +"methods' in Python. Magic methods are surrounded by double underscores " "(i.e. __init__) and can make classes and objects behave in different and " "magical ways." msgstr "" -#: ../../intro/learning.rst:164 +#: ../../intro/learning.rst:211 msgid "" "`A Guide to Python's Magic Methods " "`_" msgstr "" -#: ../../intro/learning.rst:168 +#: ../../intro/learning.rst:215 msgid "For Engineers and Scientists" msgstr "" -#: ../../intro/learning.rst:171 +#: ../../intro/learning.rst:218 msgid "A Primer on Scientific Programming with Python" msgstr "" -#: ../../intro/learning.rst:173 +#: ../../intro/learning.rst:220 msgid "" "A Primer on Scientific Programming with Python, written by Hans Petter " -"Langtangen, mainly covers Python's usage in scientific field. In the book, " -"examples are chosen from mathematics and the natural sciences." +"Langtangen, mainly covers Python's usage in the scientific field. In the " +"book, examples are chosen from mathematics and the natural sciences." msgstr "" -#: ../../intro/learning.rst:177 +#: ../../intro/learning.rst:224 msgid "" "`A Primer on Scientific Programming with Python " "`_" msgstr "" -#: ../../intro/learning.rst:180 +#: ../../intro/learning.rst:227 msgid "Numerical Methods in Engineering with Python" msgstr "" -#: ../../intro/learning.rst:182 +#: ../../intro/learning.rst:229 msgid "" "Numerical Methods in Engineering with Python, written by Jaan Kiusalaas, " -"attempts to emphasis on numerical methods and how to implement them in " +"puts the emphasis on numerical methods and how to implement them in " "Python." msgstr "" -#: ../../intro/learning.rst:185 +#: ../../intro/learning.rst:232 msgid "" "`Numerical Methods in Engineering with Python " "`_" msgstr "" -#: ../../intro/learning.rst:188 +#: ../../intro/learning.rst:235 msgid "Miscellaneous topics" msgstr "" -#: ../../intro/learning.rst:191 +#: ../../intro/learning.rst:238 msgid "Problem Solving with Algorithms and Data Structures" msgstr "" -#: ../../intro/learning.rst:193 +#: ../../intro/learning.rst:240 msgid "" -"Problem Solving with Algorithms and Data Structures covers a range of data " -"structures and algorithms. All concepts are illustrated with Python code " -"along with interactive samples that can be run directly in the browser." +"Problem Solving with Algorithms and Data Structures covers a range of " +"data structures and algorithms. All concepts are illustrated with Python " +"code along with interactive samples that can be run directly in the " +"browser." msgstr "" -#: ../../intro/learning.rst:197 +#: ../../intro/learning.rst:244 msgid "" "`Problem Solving with Algorithms and Data Structures " "`_" msgstr "" -#: ../../intro/learning.rst:201 +#: ../../intro/learning.rst:248 msgid "Programming Collective Intelligence" msgstr "" -#: ../../intro/learning.rst:203 +#: ../../intro/learning.rst:250 msgid "" -"Programming Collective Intelligence introduces a wide array of basic machine" -" learning and data mining methods. The exposition is not very mathematically" -" formal, but rather focuses on explaining the underlying intuition and shows" -" how to implement the algorithms in Python." +"Programming Collective Intelligence introduces a wide array of basic " +"machine learning and data mining methods. The exposition is not very " +"mathematically formal, but rather focuses on explaining the underlying " +"intuition and shows how to implement the algorithms in Python." msgstr "" -#: ../../intro/learning.rst:207 +#: ../../intro/learning.rst:255 msgid "" "`Programming Collective Intelligence " "`_" msgstr "" -#: ../../intro/learning.rst:210 +#: ../../intro/learning.rst:259 +msgid "Transforming Code into Beautiful, Idiomatic Python" +msgstr "" + +#: ../../intro/learning.rst:261 +msgid "" +"Transforming Code into Beautiful, Idiomatic Python is a video by Raymond " +"Hettinger. Learn to take better advantage of Python's best features and " +"improve existing code through a series of code transformations, \"When " +"you see this, do that instead.\"" +msgstr "" + +#: ../../intro/learning.rst:265 +msgid "" +"`Transforming Code into Beautiful, Idiomatic Python " +"`_" +msgstr "" + +#: ../../intro/learning.rst:269 +msgid "Fullstack Python" +msgstr "" + +#: ../../intro/learning.rst:271 +msgid "" +"Fullstack Python offers a complete top-to-bottom resource for web " +"development using Python." +msgstr "" + +#: ../../intro/learning.rst:274 +msgid "" +"From setting up the webserver, to designing the front-end, choosing a " +"database, optimizing/scaling, etc." +msgstr "" + +#: ../../intro/learning.rst:277 +msgid "" +"As the name suggests, it covers everything you need to build and run a " +"complete web app from scratch." +msgstr "" + +#: ../../intro/learning.rst:280 +msgid "`Fullstack Python `_" +msgstr "" + +#: ../../intro/learning.rst:284 msgid "References" msgstr "" -#: ../../intro/learning.rst:213 +#: ../../intro/learning.rst:287 msgid "Python in a Nutshell" msgstr "" -#: ../../intro/learning.rst:215 +#: ../../intro/learning.rst:289 msgid "" -"Python in a Nutshell, written by Alex Martelli, covers most cross-platform " -"Python's usage, from its syntax to built-in libraries to advanced topics " -"such as writing C extensions." +"Python in a Nutshell, written by Alex Martelli, covers most cross-" +"platform Python's usage, from its syntax to built-in libraries to " +"advanced topics such as writing C extensions." msgstr "" -#: ../../intro/learning.rst:219 -msgid "" -"`Python in a Nutshell `_" +#: ../../intro/learning.rst:293 +msgid "`Python in a Nutshell `_" msgstr "" -#: ../../intro/learning.rst:222 +#: ../../intro/learning.rst:296 msgid "The Python Language Reference" msgstr "" -#: ../../intro/learning.rst:224 +#: ../../intro/learning.rst:298 msgid "" "This is Python's reference manual, it covers the syntax and the core " "semantics of the language." msgstr "" -#: ../../intro/learning.rst:227 +#: ../../intro/learning.rst:301 msgid "" "`The Python Language Reference " "`_" msgstr "" -#: ../../intro/learning.rst:230 +#: ../../intro/learning.rst:304 +msgid "Python Essential Reference" +msgstr "" + +#: ../../intro/learning.rst:306 +msgid "" +"Python Essential Reference, written by David Beazley, is the definitive " +"reference guide to Python. It concisely explains both the core language " +"and the most essential parts of the standard library. It covers Python 3 " +"and 2.6 versions." +msgstr "" + +#: ../../intro/learning.rst:310 +msgid "`Python Essential Reference `_" +msgstr "" + +#: ../../intro/learning.rst:313 msgid "Python Pocket Reference" msgstr "" -#: ../../intro/learning.rst:232 +#: ../../intro/learning.rst:315 msgid "" -"Python Pocket Reference, written by Mark Lutz, is an easy to use reference " -"to the core language, with descriptions of commonly used modules and " -"toolkits. It covers Python 3 and 2.6 versions." +"Python Pocket Reference, written by Mark Lutz, is an easy to use " +"reference to the core language, with descriptions of commonly used " +"modules and toolkits. It covers Python 3 and 2.6 versions." msgstr "" -#: ../../intro/learning.rst:236 +#: ../../intro/learning.rst:319 msgid "" "`Python Pocket Reference " "`_" msgstr "" -#: ../../intro/learning.rst:239 +#: ../../intro/learning.rst:322 msgid "Python Cookbook" msgstr "" -#: ../../intro/learning.rst:241 +#: ../../intro/learning.rst:324 msgid "" -"Python Cookbook, written by David Beazley and Brian K. Jones, is packed with" -" practical recipes. This book covers the core python language as well as " -"tasks common to a wide variety of application domains." +"Python Cookbook, written by David Beazley and Brian K. Jones, is packed " +"with practical recipes. This book covers the core python language as well" +" as tasks common to a wide variety of application domains." msgstr "" -#: ../../intro/learning.rst:245 +#: ../../intro/learning.rst:328 msgid "`Python Cookbook `_" msgstr "" -#: ../../intro/learning.rst:248 +#: ../../intro/learning.rst:331 msgid "Writing Idiomatic Python" msgstr "" -#: ../../intro/learning.rst:250 +#: ../../intro/learning.rst:333 msgid "" "\"Writing Idiomatic Python\", written by Jeff Knupp, contains the most " -"common and important Python idioms in a format that maximizes identification" -" and understanding. Each idiom is presented as a recommendation of a way to " -"write some commonly used piece of code, followed by an explanation of why " -"the idiom is important. It also contains two code samples for each idiom: " -"the \"Harmful\" way to write it and the \"Idiomatic\" way." +"common and important Python idioms in a format that maximizes " +"identification and understanding. Each idiom is presented as a " +"recommendation of a way to write some commonly used piece of code, " +"followed by an explanation of why the idiom is important. It also " +"contains two code samples for each idiom: the \"Harmful\" way to write it" +" and the \"Idiomatic\" way." msgstr "" -#: ../../intro/learning.rst:257 +#: ../../intro/learning.rst:340 msgid "" "`For Python 2.7.3+ `_" msgstr "" -#: ../../intro/learning.rst:259 +#: ../../intro/learning.rst:342 msgid "" "`For Python 3.3+ `_" msgstr "" + +#~ msgid "" +#~ "This is the official tutorial. It " +#~ "covers all the basics, and offers " +#~ "a tour of the language and the " +#~ "standard library. Recommended for those " +#~ "who need a quickstart guide to the" +#~ " language." +#~ msgstr "" + +#~ msgid "`Python for You and Me `_" +#~ msgstr "" + +#~ msgid "" +#~ "It has a detailed, multi-chapter " +#~ "case study on writing and releasing " +#~ "a package and eventually an application," +#~ " including a chapter on using " +#~ "zc.buildout. Later chapters detail best " +#~ "practices with writing documentation, test-" +#~ "driven development, version control, and " +#~ "optimization/profiling." +#~ msgstr "" + +#~ msgid "" +#~ "This is a collection of blog posts" +#~ " by Rafe Kettler which explain 'magic" +#~ " methods' in Python. Magic methods " +#~ "are surrounded by double underscores " +#~ "(i.e. __init__) and can make classes " +#~ "and objects behave in different and " +#~ "magical ways." +#~ msgstr "" + +#~ msgid "" +#~ "A Primer on Scientific Programming with" +#~ " Python, written by Hans Petter " +#~ "Langtangen, mainly covers Python's usage " +#~ "in scientific field. In the book, " +#~ "examples are chosen from mathematics and" +#~ " the natural sciences." +#~ msgstr "" + +#~ msgid "" +#~ "Numerical Methods in Engineering with " +#~ "Python, written by Jaan Kiusalaas, " +#~ "attempts to emphasis on numerical " +#~ "methods and how to implement them " +#~ "in Python." +#~ msgstr "" + +#~ msgid "" +#~ "\"Writing Idiomatic Python\", written by " +#~ "Jeff Knupp, contains the most common " +#~ "and important Python idioms in a " +#~ "format that maximizes identification and " +#~ "understanding. Each idiom is presented " +#~ "as a recommendation of a way to" +#~ " write some commonly used piece of" +#~ " code, followed by an explanation of" +#~ " why the idiom is important. It " +#~ "also contains two code samples for " +#~ "each idiom: the \"Harmful\" way to " +#~ "write it and the \"Idiomatic\" way." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.mo b/docs/locale/ko/LC_MESSAGES/intro/news.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..4774f2df62fa242b8d478a03280bfebb06e5dd31 100644 GIT binary patch literal 3331 zcmeH}O^@3|7{?8i3c`yjgg_t;&k4HP*hyN1mUMTu*>1{)CcDvYTGR@Ob&@B}bRCa7 z9>F zzJ=e5xL(2avw2whee#H9J&ET}!6WcXum%1Bz65SRYFW>N?}F#RyWlh66ubbQfG6O6 z@G0=+$1Lk(@Kw;*eG4Yw58y7i1}9&DAAl?13y)jY4!8xj!4JVz@JG-AAA)7jK5tnS z@HY59w0#5`-RGakbYB3C?z^DT{XJ-O{{mtu>o?Ho`5iR6AAl#|vv6W`e-0YmUxCJM zwUp_86Wqn~H=xn|C%6KBhDk>Ecc9Vz5L^YXKb`4LK%@I>(CGdNv?{6+&h%IYi#rk# z=`qs*4~IfiH+@Y5Ihn+P&@)QLteE16RfN$%E76ZNlN$_aDsdx&e2%TycQp?w;3RUa z1|`hL{*2_5)l_goa+EGKk&&iQhOzIe`Eq7TnOvpCz~?A+9=d~L*JI-;;Ydz+Zo3Ct zpS5OXwI-odh30qC^(^z=>iTZL^EXy^HjqPBuSJyGoE|ViaA~BN=c@BK7-89BG?Inf zAy3(tp$SQUHrKT@c(JSG9Uf@xsgdugOhy;>h`7Bi`_YO6RVEYZ`11WcA!ccc;6=bl z1ZnK#Xe0*0_2+9Q+^0w&3m20lakA7pQh6&5wKVmW;1Mz~7T(y$rL#<@jz>yPQkSO_ zUg#=9m8#61{u!s`0I{oMB?6BIu_`KIk=C-Q3__K#8!w#ki(+OJUJ9Dhw z7&$R%3CQ(4#U2by2`wcC3Bx8_@{~->vOzrQvoc1DTsT&)d@0&_LQOThA}}-amy2XA z5_nS#Swd$oVMYLl>y)(e z@>tA8m@*P+SLHs9oQ1DS>g;dLRp<}XmRl;q%=T3473NvNrhOTuo6gOPo;YP`#!YFb zYH}S}1LX-`-a;lG8N&ytaGvMXZVm05XkD~boial&Mv|%ORGnJsfXz3>?nIs#+S{=g z**#gOQg^>+Usb4ZOtW{8#5!H7*50sdRl8QB>RP>ed9{ik4DAD+3gbSvyVYzQ*qwcQ zr$M{>^-gQ`_WoY8)OI6n_mmq%D1E8wbnQmFO?!<_lh&J^MytKm*x5N~9v*JOH1J}4 z3+r?&iwC>M?!=7Hdb_>l3lp2oQrAc8`SvxbCQ+S&Fnx?RYF8+`-Kds2txj_hfSOY+ zT}2~s05!7^YiPcwD@djYuFzoYs)+SQtVj0R!p^83v9g;1@`v)S(^_BX(pwyG+W7YN stWMi*pMARITy|bBEsmST-TXUucJQ1XJm#Oq*}-ED#j}Iw|99~G1y7Mb;Q#;t delta 113 zcmZpcdcdS}Pl#nI0}wC*u?!HafH**)1EIjQ5l~VW$e-NF7Q$\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../intro/news.rst:2 msgid "News" @@ -20,8 +21,7 @@ msgid "Planet Python" msgstr "" #: ../../intro/news.rst:7 -msgid "" -"This is an aggregate of Python news from a growing number of developers." +msgid "This is an aggregate of Python news from a growing number of developers." msgstr "" #: ../../intro/news.rst:9 @@ -34,8 +34,8 @@ msgstr "" #: ../../intro/news.rst:14 msgid "" -"/r/python is the Reddit Python community where users contribute and vote on " -"Python-related news." +"/r/python is the Reddit Python community where users contribute and vote " +"on Python-related news." msgstr "" #: ../../intro/news.rst:17 @@ -48,8 +48,8 @@ msgstr "" #: ../../intro/news.rst:22 msgid "" -"Pycoder's Weekly is a free weekly Python newsletter for Python developers by" -" Python developers (Projects, Articles, News, and Jobs)." +"Pycoder's Weekly is a free weekly Python newsletter for Python developers" +" by Python developers (Projects, Articles, News, and Jobs)." msgstr "" #: ../../intro/news.rst:25 @@ -62,8 +62,8 @@ msgstr "" #: ../../intro/news.rst:30 msgid "" -"Python Weekly is a free weekly newsletter featuring curated news, articles, " -"new releases, jobs, etc. related to Python." +"Python Weekly is a free weekly newsletter featuring curated news, " +"articles, new releases, jobs, etc. related to Python." msgstr "" #: ../../intro/news.rst:33 @@ -76,10 +76,48 @@ msgstr "" #: ../../intro/news.rst:38 msgid "" -"News section in the official Python web site (www.python.org). It briefly " -"highlights the news from Python community." +"Python News is the news section in the official Python web site " +"(www.python.org). It briefly highlights the news from the Python " +"community." msgstr "" #: ../../intro/news.rst:41 msgid "`Python News `_" msgstr "" + +#: ../../intro/news.rst:44 +msgid "Import Python Weekly" +msgstr "" + +#: ../../intro/news.rst:46 +msgid "" +"Weekly Python Newsletter containing Python Articles, Projects, Videos, " +"Tweets delivered in your inbox. Keep Your Python Programming Skills " +"Updated." +msgstr "" + +#: ../../intro/news.rst:49 +msgid "" +"`Import Python Weekly Newsletter " +"`_" +msgstr "" + +#: ../../intro/news.rst:52 +msgid "Awesome Python Newsletter" +msgstr "" + +#: ../../intro/news.rst:54 +msgid "A weekly overview of the most popular Python news, articles and packages." +msgstr "" + +#: ../../intro/news.rst:56 +msgid "`Awesome Python Newsletter `_" +msgstr "" + +#~ msgid "" +#~ "News section in the official Python " +#~ "web site (www.python.org). It briefly " +#~ "highlights the news from Python " +#~ "community." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/notes/contribute.mo b/docs/locale/ko/LC_MESSAGES/notes/contribute.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..bbf999cf44a75f110a9344b98e0a1250a5589908 100644 GIT binary patch literal 1755 zcmeHH&2Aev5ZDGOd&=X{&KezEp0DmX5Y$<=JZK)sh`a z%Q4m#S=R@7x`5kgiQD6h!9YV6SDR5RBi=*o-re=*u%~zzHYnY6t zq4GyfdLGlvfFWHdPqp+}$v4G0bb+wCLHXC&{u4RX8HdU&Wu?@pfeQAtU|Vobsmv}( zp(HqLgFrUkETBmSF;2EaQZrR8lG^wEA5PID8}(dMHhS3*5} z&CNN&osXlFTe+YiH9BX^H4DS1oR?gg8bgQV5}MsECfp3V;tJ(+9G!*1(l87;nt^}a zYII`FTh6=~<>Cjn4wFo1)7|aAIZ>YMo4H;)TVfK$tj` zo)hYIy1Sy=6;C?U>m|Lt#~mykCR1_Pr=w{y89jb8Jsz~i(s?nn zQoBleV-tG$dOW7%{$xN;2b2D2{Jej7cse*c+lQ+z8dF>imvX1?;#?QsxjbEr`&Q=U`W^$#A ng!WS9TSL}t(J<6lC3GNDuBaD3iFaFH-f#GG`SO1Mr}z62Sx7iP delta 67 zcmcc3`+!O3o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUv?9IdO6W^BU&R5Vy(tEXs@w E05jzYC;$Ke diff --git a/docs/locale/ko/LC_MESSAGES/notes/license.mo b/docs/locale/ko/LC_MESSAGES/notes/license.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..3beae4d4829db82f146eed16751e6ad92fac48f7 100644 GIT binary patch literal 759 zcmdT>&5qMB5Dq^QQjVNC%zfqjwTH?q)n?mlsYu$TO_AWjy2)&6NbSgWSM))60^W=F z;Kqa&Ew8{xpT-`4`sSPQ&zH}?dlb(IuL#5b@=xS+enBV*KL{Jb`zN0Fi*jFo_w-a> zQ}%LMp|a?eJA~Om)(Fx^<^}b z6fIltgu%3xUl9gD1RK?9mSZRc^t#I0K zxY^`6EYc!_%dAM}`BgfduCn!dOjL3x8e}DkJ%>D9%r@zaczJ%+%6{yzU(Ac_ajZCq z{E1c$74NQlfV2kd}!QHdbBd_;zkA`Kc(zR3#htXC#e})PT4NTiO Sa<~>-Y#|8-!O;J&e*ZU2gX)_A delta 66 zcmey)`hZF2o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#N9;^a8SHO!$QZj*VLlo=TS DKKTjF diff --git a/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo b/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..5465d1bf1c397c9cf3514bc94d80b5b7b41c994a 100644 GIT binary patch literal 7075 zcmeHL&u<(_6|VioE@mOHKv+Q}N={&%&2)R54NK_6NgR7(Tk^zS&xBRruv61rGgFzK zuBNKm<5?v3#Gk+gRtUib39Xh3djfGnds!qTBqSt+I4p2LLI@-dNGtKZ>Yf=pB4;jR zjpuW9S699Fz4yLX?LR*E2|dUI5a(H-Y%DxA7%` z?*KmnJohwXZva<-kHf|v1Mgt`6D;~V@Sng}fTIt?HsCLT9|!&lNPhheh!6W0zCHo` z0C*pGW{I&+0~L^-d!rhE8+Zld?*ZQe{s!0tehbDtkNw{Rei7q8KU=Q*ES&x%#%F=s zz!!mU0u7LOI|FjQiRTRPeT@Hpro8@J7^yIR8AdgLKL8S+e*qGo=RgXUV3&Zz=U0Hl z(*eGS&lvbFFa>hp6&OK$-UHISUjsoQ`xB7({40?7Y<{Zb^FEOH{5_EP`~%1!KF?#b zSAgFK5-#aNPOM`5})4%(sMtp#_s@$&-Z|D0Uvw5z2Sh)cgY048F7bBTD;grs5d?1cg z*5`u9Ibc7mPlir$P&>_Wyp6kt_?16r^`p$ zcx1a!iR4mPRo+NcUs_l5c3?keRJR~AEVlz)qzUgS=Pgy4-_jJRv|RTvP?+N;spNgX z=6E1sgvfKFbEAZlA=^08D&Z=N(;^|4oQ5SuJiw*WA#B9)u|@ZRjGe`za5B-^3;0$B zm(mG0GR0!##KFW3FguY)GSxXTHr=AIw0tVMGKEpJgRp!#PE|YvXGSj9_%ay`lr9c= zZe&jyLk}g=#zy5%9m(keE3L*pA8X?VlZ!AF5fDkpZi`IW0quH|?~<6FXs zuCUTxtRa#hU1qW5-3eJsHqkEC%0^mUm{?k5Bitzi(*>V{30Lj~JDoSPD`b^pv`7ot z;`0^;&Jvw9sZ_9jnX#wRlXpZi(wQosD$@-~VEOfdb9uD7YV(20j>BBXT8G;7S7D$F z2X2&}pU=M0c?|~2j4F)W$+VL;WOoU?8?OqJdCvW%i0x;%JmII|@;r_#zx=aGCoBaTUP<+jf%0Wgg5oXnA4qV#5wn z$c@B4X6Ri<-fPNS6tyt8b=tI26?w<$L{}m}rTNI9$YZxkbA4cL4pe`T;@7RywRxNZ z8X{I9Z)+~REJ2hUD#Yg?gfT*PMt;{Ih3Eztc4|I#P$`%Mo$L79s8f_Dq_61C1QV_+lWinx|t|U?^SWYISKXlumHJnhP6J-YNrNX0nqa;Ldrd2xg09#Tu{SVRf zaZ?!#E1$A3!z(9+7a8DtT6empC1;RJtdfqoY*iOjhS)%+N%iJ84`oW)6i--H?ojtq z(jwME?<&=HC}r+5?Q}y!Bbf;s(Nsn}FHBBJeX2gLi!Rur9JtX5SqqV_VtHb}_Wsts zW$jr{J(=?JtKffZ6cP<(Z>udyM@$hr^nt`7e|@fn44D~&6HCKNC(H1b^)~If51ke$ z9OO;MyYuKeq4F#8)iOe*ik;pKIUWepRn7=A2~r*Vq> zYJMHcSbx?)FtNbZ6AOeKyF)cHi7sxDMzv}p^&5E{OZ2!?58yava~UJtIHf?n#xOJ| zC&&KmIXmc<0>}Nz*<;e+AJ$2 zXiswNL19|WQ=zhJJ~^y(>xJtDSLgG{YKUCWz*&Hfq!GUg\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../notes/styleguide.rst:5 msgid "The Guide Style Guide" @@ -18,9 +19,9 @@ msgstr "" #: ../../notes/styleguide.rst:7 msgid "" "As with all documentation, having a consistent format helps make the " -"document more understandable. In order to make The Guide easier to digest, " -"all contributions should fit within the rules of this style guide where " -"appropriate." +"document more understandable. In order to make The Guide easier to " +"digest, all contributions should fit within the rules of this style guide" +" where appropriate." msgstr "" #: ../../notes/styleguide.rst:12 @@ -29,14 +30,14 @@ msgstr "" #: ../../notes/styleguide.rst:14 msgid "" -"Parts of The Guide may not yet match this style guide. Feel free to update " -"those parts to be in sync with The Guide Style Guide" +"Parts of The Guide may not yet match this style guide. Feel free to " +"update those parts to be in sync with The Guide Style Guide" msgstr "" #: ../../notes/styleguide.rst:17 msgid "" -"On any page of the rendered HTML you can click \"Show Source\" to see how " -"authors have styled the page." +"On any page of the rendered HTML you can click \"Show Source\" to see how" +" authors have styled the page." msgstr "" #: ../../notes/styleguide.rst:21 @@ -45,33 +46,33 @@ msgstr "" #: ../../notes/styleguide.rst:23 msgid "" -"Strive to keep any contributions relevant to the :ref:`purpose of The Guide " -"`." +"Strive to keep any contributions relevant to the :ref:`purpose of The " +"Guide `." msgstr "" #: ../../notes/styleguide.rst:26 msgid "" -"Avoid including too much information on subjects that don't directly relate " -"to Python development." +"Avoid including too much information on subjects that don't directly " +"relate to Python development." msgstr "" #: ../../notes/styleguide.rst:28 msgid "" -"Prefer to link to other sources if the information is already out there. Be " -"sure to describe what and why you are linking." +"Prefer to link to other sources if the information is already out there. " +"Be sure to describe what and why you are linking." msgstr "" #: ../../notes/styleguide.rst:30 msgid "" -"`Cite `_ " -"references where needed." +"`Cite `_" +" references where needed." msgstr "" #: ../../notes/styleguide.rst:32 msgid "" -"If a subject isn't directly relevant to Python, but useful in conjunction " -"with Python (e.g., Git, GitHub, Databases), reference by linking to useful " -"resources, and describe why it's useful to Python." +"If a subject isn't directly relevant to Python, but useful in conjunction" +" with Python (e.g., Git, GitHub, Databases), reference by linking to " +"useful resources, and describe why it's useful to Python." msgstr "" #: ../../notes/styleguide.rst:35 @@ -109,98 +110,110 @@ msgstr "" #: ../../notes/styleguide.rst:75 msgid "" "Wrap text lines at 78 characters. Where necessary, lines may exceed 78 " -"characters, especially if wrapping would make the source text more difficult" -" to read." +"characters, especially if wrapping would make the source text more " +"difficult to read." msgstr "" -#: ../../notes/styleguide.rst:81 +#: ../../notes/styleguide.rst:79 +msgid "" +"Use of the `serial comma `_ " +"(also known as the Oxford comma) is 100% non-optional. Any attempt to " +"submit content with a missing serial comma will result in permanent " +"banishment from this project, due to complete and total lack of taste." +msgstr "" + +#: ../../notes/styleguide.rst:84 +msgid "Banishment? Is this a joke? Hopefully we will never have to find out." +msgstr "" + +#: ../../notes/styleguide.rst:87 msgid "Code Examples" msgstr "" -#: ../../notes/styleguide.rst:83 -msgid "" -"Wrap all code examples at 70 characters to avoid horizontal scrollbars." +#: ../../notes/styleguide.rst:89 +msgid "Wrap all code examples at 70 characters to avoid horizontal scrollbars." msgstr "" -#: ../../notes/styleguide.rst:85 +#: ../../notes/styleguide.rst:91 msgid "Command line examples:" msgstr "" -#: ../../notes/styleguide.rst:94 +#: ../../notes/styleguide.rst:100 msgid "Be sure to include the ``$`` prefix before each line." msgstr "" -#: ../../notes/styleguide.rst:96 +#: ../../notes/styleguide.rst:102 msgid "Python interpreter examples:" msgstr "" -#: ../../notes/styleguide.rst:106 +#: ../../notes/styleguide.rst:112 msgid "Python examples:" msgstr "" -#: ../../notes/styleguide.rst:118 +#: ../../notes/styleguide.rst:124 msgid "Externally Linking" msgstr "" -#: ../../notes/styleguide.rst:120 +#: ../../notes/styleguide.rst:126 msgid "Prefer labels for well known subjects (ex: proper nouns) when linking:" msgstr "" -#: ../../notes/styleguide.rst:128 +#: ../../notes/styleguide.rst:134 msgid "" -"Prefer to use descriptive labels with inline links instead of leaving bare " -"links:" +"Prefer to use descriptive labels with inline links instead of leaving " +"bare links:" msgstr "" -#: ../../notes/styleguide.rst:135 +#: ../../notes/styleguide.rst:141 msgid "" "Avoid using labels such as \"click here\", \"this\", etc. preferring " "descriptive labels (SEO worthy) instead." msgstr "" -#: ../../notes/styleguide.rst:139 +#: ../../notes/styleguide.rst:145 msgid "Linking to Sections in The Guide" msgstr "" -#: ../../notes/styleguide.rst:141 +#: ../../notes/styleguide.rst:147 msgid "" "To cross-reference other parts of this documentation, use the `:ref: " "`_ keyword and labels." msgstr "" -#: ../../notes/styleguide.rst:145 +#: ../../notes/styleguide.rst:151 msgid "" "To make reference labels more clear and unique, always add a ``-ref`` " "suffix:" msgstr "" -#: ../../notes/styleguide.rst:155 +#: ../../notes/styleguide.rst:161 msgid "Notes and Warnings" msgstr "" -#: ../../notes/styleguide.rst:157 +#: ../../notes/styleguide.rst:163 msgid "" "Make use of the appropriate `admonitions directives " "`_ when making notes." msgstr "" -#: ../../notes/styleguide.rst:160 +#: ../../notes/styleguide.rst:166 msgid "Notes:" msgstr "" -#: ../../notes/styleguide.rst:169 +#: ../../notes/styleguide.rst:175 msgid "Warnings:" msgstr "" -#: ../../notes/styleguide.rst:176 +#: ../../notes/styleguide.rst:182 msgid "TODOs" msgstr "" -#: ../../notes/styleguide.rst:178 +#: ../../notes/styleguide.rst:184 msgid "" "Please mark any incomplete areas of The Guide with a `todo directive " -"`_. To " -"avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for stub " -"documents or large incomplete sections." +"`_. " +"To avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for " +"stub documents or large incomplete sections." msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo b/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..b8d8fc66ac4dffd91bbeddd62623a864a56b7c1b 100644 GIT binary patch literal 18391 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 TZl194kZ|*ag(p^PPgwp3^Up1i delta 114 zcmccK&-j2z=bjMDR0bem1Y#K=RsnHk3&wTUVc%!-DD{>Q|8bRx5+_j%8U#E75^1~ diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po index 489e886c9..b719989d4 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/admin.rst:2 msgid "Systems Administration" @@ -23,8 +24,8 @@ msgstr "" msgid "" "`Fabric `_ is a library for simplifying system " "administration tasks. While Chef and Puppet tend to focus on managing " -"servers and system libraries, Fabric is more focused on application level " -"tasks such as deployment." +"servers and system libraries, Fabric is more focused on application level" +" tasks such as deployment." msgstr "" #: ../../scenarios/admin.rst:12 @@ -33,11 +34,11 @@ msgstr "" #: ../../scenarios/admin.rst:18 msgid "" -"The following code will create two tasks that we can use: ``memory_usage`` " -"and ``deploy``. The former will output the memory usage on each machine. The" -" latter will ssh into each server, cd to our project directory, activate the" -" virtual environment, pull the newest codebase, and restart the application " -"server." +"The following code will create two tasks that we can use: " +"``memory_usage`` and ``deploy``. The former will output the memory usage " +"on each machine. The latter will ssh into each server, cd to our project " +"directory, activate the virtual environment, pull the newest codebase, " +"and restart the application server." msgstr "" #: ../../scenarios/admin.rst:41 @@ -66,244 +67,402 @@ msgstr "" #: ../../scenarios/admin.rst:75 msgid "" -"`Salt `_ is an open source infrastructure management " -"tool. It supports remote command execution from a central point (master " -"host) to multiple hosts (minions). It also supports system states which can " -"be used to configure multiple servers using simple template files." +"`Salt `_ is an open source infrastructure " +"management tool. It supports remote command execution from a central " +"point (master host) to multiple hosts (minions). It also supports system " +"states which can be used to configure multiple servers using simple " +"template files." msgstr "" #: ../../scenarios/admin.rst:80 -msgid "" -"Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" +msgid "Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" #: ../../scenarios/admin.rst:86 msgid "" -"After configuring a master server and any number of minion hosts, we can run" -" arbitrary shell commands or use pre-built modules of complex commands on " -"our minions." +"After configuring a master server and any number of minion hosts, we can " +"run arbitrary shell commands or use pre-built modules of complex commands" +" on our minions." msgstr "" -#: ../../scenarios/admin.rst:89 +#: ../../scenarios/admin.rst:90 msgid "" "The following command lists all available minion hosts, using the ping " "module." msgstr "" -#: ../../scenarios/admin.rst:95 +#: ../../scenarios/admin.rst:96 msgid "" -"The host filtering is accomplished by matching the minion id, or using the " -"grains system. The `grains " -"`_ system " -"uses static host information like the operating system version or the CPU " -"architecture to provide a host taxonomy for the Salt modules." +"The host filtering is accomplished by matching the minion id, or using " +"the grains system. The `grains " +"`_ " +"system uses static host information like the operating system version or " +"the CPU architecture to provide a host taxonomy for the Salt modules." msgstr "" -#: ../../scenarios/admin.rst:100 +#: ../../scenarios/admin.rst:102 msgid "" -"The following command lists all available minions running CentOS using the " -"grains system:" +"The following command lists all available minions running CentOS using " +"the grains system:" msgstr "" -#: ../../scenarios/admin.rst:106 +#: ../../scenarios/admin.rst:109 msgid "" "Salt also provides a state system. States can be used to configure the " "minion hosts." msgstr "" -#: ../../scenarios/admin.rst:108 +#: ../../scenarios/admin.rst:112 msgid "" -"For example, when a minion host is ordered to read the following state file," -" it will install and start the Apache server:" +"For example, when a minion host is ordered to read the following state " +"file, it will install and start the Apache server:" msgstr "" -#: ../../scenarios/admin.rst:122 +#: ../../scenarios/admin.rst:126 msgid "" -"State files can be written using YAML, the Jinja2 template system or pure " -"Python." +"State files can be written using YAML, the Jinja2 template system or pure" +" Python." msgstr "" -#: ../../scenarios/admin.rst:124 +#: ../../scenarios/admin.rst:128 msgid "`Salt Documentation `_" msgstr "" -#: ../../scenarios/admin.rst:128 +#: ../../scenarios/admin.rst:132 msgid "Psutil" msgstr "" -#: ../../scenarios/admin.rst:130 +#: ../../scenarios/admin.rst:134 msgid "" -"`Psutil `_ is an interface to different " -"system information (e.g. CPU, memory, disks, network, users and processes)." +"`Psutil `_ is an interface to " +"different system information (e.g. CPU, memory, disks, network, users and" +" processes)." msgstr "" -#: ../../scenarios/admin.rst:133 +#: ../../scenarios/admin.rst:137 msgid "" -"Here is an example to be aware of some server overload. If any of the tests " -"(net, CPU) fail, it will send an email." +"Here is an example to be aware of some server overload. If any of the " +"tests (net, CPU) fail, it will send an email." msgstr "" -#: ../../scenarios/admin.rst:179 +#: ../../scenarios/admin.rst:183 msgid "" "A full terminal application like a widely extended top which is based on " "psutil and with the ability of a client-server monitoring is `glance " "`_." msgstr "" -#: ../../scenarios/admin.rst:184 +#: ../../scenarios/admin.rst:188 msgid "Ansible" msgstr "" -#: ../../scenarios/admin.rst:186 +#: ../../scenarios/admin.rst:190 msgid "" -"`Ansible `_ is an open source system automation tool. " -"The biggest advantage over Puppet or Chef is it does not require an agent on" -" the client machine. Playbooks are Ansible’s configuration, deployment, and " -"orchestration language and are written in in YAML with Jinja2 for " -"templating." +"`Ansible `_ is an open source system automation " +"tool. The biggest advantage over Puppet or Chef is it does not require an" +" agent on the client machine. Playbooks are Ansible’s configuration, " +"deployment, and orchestration language and are written in YAML with " +"Jinja2 for templating." msgstr "" -#: ../../scenarios/admin.rst:191 -msgid "" -"Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" +#: ../../scenarios/admin.rst:195 +msgid "Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" -#: ../../scenarios/admin.rst:197 +#: ../../scenarios/admin.rst:201 msgid "" -"Ansible requires an inventory file that describes the hosts to which it has " -"access. Below is an example of a host and playbook that will ping all the " -"hosts in the inventory file." +"Ansible requires an inventory file that describes the hosts to which it " +"has access. Below is an example of a host and playbook that will ping all" +" the hosts in the inventory file." msgstr "" -#: ../../scenarios/admin.rst:201 +#: ../../scenarios/admin.rst:205 msgid "Here is an example inventory file: :file:`hosts.yml`" msgstr "" -#: ../../scenarios/admin.rst:209 +#: ../../scenarios/admin.rst:213 msgid "Here is an example playbook: :file:`ping.yml`" msgstr "" -#: ../../scenarios/admin.rst:221 +#: ../../scenarios/admin.rst:225 msgid "To run the playbook:" msgstr "" -#: ../../scenarios/admin.rst:227 +#: ../../scenarios/admin.rst:231 msgid "" -"The Ansible playbook will ping all of the servers in the :file:`hosts.yml` " -"file. You can also select groups of servers using Ansible. For more " -"information about Ansible, read the `Ansible Docs " +"The Ansible playbook will ping all of the servers in the " +":file:`hosts.yml` file. You can also select groups of servers using " +"Ansible. For more information about Ansible, read the `Ansible Docs " "`_." msgstr "" -#: ../../scenarios/admin.rst:233 +#: ../../scenarios/admin.rst:235 +msgid "" +"`An Ansible tutorial `_ is also a great and detailed introduction to getting started" +" with Ansible." +msgstr "" + +#: ../../scenarios/admin.rst:240 msgid "Chef" msgstr "" -#: ../../scenarios/admin.rst:235 -msgid "Write about Chef" +#: ../../scenarios/admin.rst:241 +msgid "" +"`Chef `_ is a systems and cloud " +"infrastructure automation framework that makes it easy to deploy servers " +"and applications to any physical, virtual, or cloud location. In case " +"this is your choice for configuration management, you will primarily use " +"Ruby to write your infrastructure code." msgstr "" -#: ../../scenarios/admin.rst:237 +#: ../../scenarios/admin.rst:246 msgid "" -"`Chef Documentation `_" +"Chef clients run on every server that is part of your infrastructure and " +"these regularly check with your Chef server to ensure your system is " +"always aligned and represents the desired state. Since each individual " +"server has its own distinct Chef client, each server configures itself " +"and this distributed approach makes Chef a scalable automation platform." msgstr "" -#: ../../scenarios/admin.rst:241 +#: ../../scenarios/admin.rst:251 +msgid "" +"Chef works by using custom recipes (configuration elements), implemented " +"in cookbooks. Cookbooks, which are basically packages for infrastructure " +"choices, are usually stored in your Chef server. Read the `Digital Ocean " +"tutorial series `_ " +"on chef to learn how to create a simple Chef Server." +msgstr "" + +#: ../../scenarios/admin.rst:257 +msgid "" +"To create a simple cookbook the `knife " +"`_ command is used:" +msgstr "" + +#: ../../scenarios/admin.rst:263 +msgid "" +"`Getting started with Chef `_ is a good starting point for Chef Beginners and " +"many community maintained cookbooks that can serve as a good reference or" +" tweaked to serve your infrastructure configuration needs can be found on" +" the `Chef Supermarket `_." +msgstr "" + +#: ../../scenarios/admin.rst:268 +msgid "`Chef Documentation `_" +msgstr "" + +#: ../../scenarios/admin.rst:271 msgid "Puppet" msgstr "" -#: ../../scenarios/admin.rst:243 +#: ../../scenarios/admin.rst:273 msgid "" -"`Puppet `_ is an IT Automation and configuration " -"management software from Puppet Labs that allows System Administrators to " -"define the state of their IT Infrastructure, thereby providing an elegant " -"way to manage their fleet of physical and virtual machines." +"`Puppet `_ is IT Automation and configuration " +"management software from Puppet Labs that allows System Administrators to" +" define the state of their IT Infrastructure, thereby providing an " +"elegant way to manage their fleet of physical and virtual machines." msgstr "" -#: ../../scenarios/admin.rst:248 +#: ../../scenarios/admin.rst:278 msgid "" "Puppet is available both as an Open Source and an Enterprise variant. " -"Modules are small,shareable units of code written to automate or define the " -"state of a system. `Puppet Forge `_ is a " -"repository for modules written by the community for Open Source and " +"Modules are small, shareable units of code written to automate or define " +"the state of a system. `Puppet Forge `_ " +"is a repository for modules written by the community for Open Source and " "Enterprise Puppet." msgstr "" -#: ../../scenarios/admin.rst:253 +#: ../../scenarios/admin.rst:283 msgid "" -"Puppet Agents are installed on nodes whose state needs to be monitored or " -"changed. A desginated server known as the Puppet Master is responsible for " -"orchastrating the agent nodes." +"Puppet Agents are installed on nodes whose state needs to be monitored or" +" changed. A designated server known as the Puppet Master is responsible " +"for orchestrating the agent nodes." msgstr "" -#: ../../scenarios/admin.rst:257 +#: ../../scenarios/admin.rst:287 msgid "" "Agent nodes send basic facts about the system such as to the operating " "system, kernel, architecture, ip address, hostname etc. to the Puppet " -"Master. The Puppet Master then compiles a catalog with information provided " -"by the agents on how each node should be configured and sends it to the " -"agent. The agent enforces the change as prescribed in the catalog and sends " -"a report back to the Puppet Master." +"Master. The Puppet Master then compiles a catalog with information " +"provided by the agents on how each node should be configured and sends it" +" to the agent. The agent enforces the change as prescribed in the catalog" +" and sends a report back to the Puppet Master." msgstr "" -#: ../../scenarios/admin.rst:263 +#: ../../scenarios/admin.rst:294 msgid "" -"Facter is an interesting tool that ships with Puppet that pulls basic facts " -"about the System. These facts can be referenced as a variable while writing " -"your Puppet modules." +"Facter is an interesting tool that ships with Puppet that pulls basic " +"facts about the system. These facts can be referenced as a variable while" +" writing your Puppet modules." msgstr "" -#: ../../scenarios/admin.rst:276 +#: ../../scenarios/admin.rst:307 msgid "" "Writing Modules in Puppet is pretty straight forward. Puppet Manifests " "together form Puppet Modules. Puppet manifest end with an extension of " "``.pp``. Here is an example of 'Hello World' in Puppet." msgstr "" -#: ../../scenarios/admin.rst:288 +#: ../../scenarios/admin.rst:319 msgid "" -"Here is another example with system based logic. Note how the " -"operatingsystem fact is being used as a variable prepended with the ``$`` " -"sign. Similarly, this holds true for other facts such as hostname which can " -"be referenced by ``$hostname``" +"Here is another example with system based logic. Note how the operating " +"system fact is being used as a variable prepended with the ``$`` sign. " +"Similarly, this holds true for other facts such as hostname which can be " +"referenced by ``$hostname``" msgstr "" -#: ../../scenarios/admin.rst:301 +#: ../../scenarios/admin.rst:333 msgid "" "There are several resource types for Puppet but the package-file-service " "paradigm is all you need for undertaking majority of the configuration " "management. The following Puppet code makes sure that the OpenSSH-Server " -"package is installed in a system and the sshd service is notified to restart" -" everytime the sshd configuration file is changed." +"package is installed in a system and the sshd service is notified to " +"restart everytime the sshd configuration file is changed." msgstr "" -#: ../../scenarios/admin.rst:331 +#: ../../scenarios/admin.rst:364 msgid "" -"For more information checkout `Puppet Labs Documentation " +"For more information, refer to the `Puppet Labs Documentation " "`_" msgstr "" -#: ../../scenarios/admin.rst:334 +#: ../../scenarios/admin.rst:367 msgid "Blueprint" msgstr "" -#: ../../scenarios/admin.rst:336 +#: ../../scenarios/admin.rst +msgid "Todo" +msgstr "" + +#: ../../scenarios/admin.rst:369 msgid "Write about Blueprint" msgstr "" -#: ../../scenarios/admin.rst:339 +#: ../../scenarios/admin.rst:372 msgid "Buildout" msgstr "" -#: ../../scenarios/admin.rst:341 -msgid "Write about Buildout" +#: ../../scenarios/admin.rst:374 +msgid "" +"`Buildout `_ is an open source software build " +"tool. Buildout is created using the Python programming language. It " +"implements a principle of separation of configuration from the scripts " +"that do the setting up. Buildout is primarily used to download and set up" +" dependencies in Python eggs format of the software being developed or " +"deployed. Recipes for build tasks in any environment can be created, and " +"many are already available." msgstr "" -#: ../../scenarios/admin.rst:343 -msgid "`Buildout Website `_" +#: ../../scenarios/admin.rst:382 +msgid "Shinken" msgstr "" -#: ../../scenarios/admin.rst:0 ../../scenarios/admin.rst:0 -#: ../../scenarios/admin.rst:0 -msgid "Todo" +#: ../../scenarios/admin.rst:384 +msgid "" +"`Shinken `_ is a modern, Nagios " +"compatible monitoring framework written in Python. Its main goal is to " +"give users a flexible architecture for their monitoring system that is " +"designed to scale to large environments." msgstr "" + +#: ../../scenarios/admin.rst:389 +msgid "" +"Shinken is backwards-compatible with the Nagios configuration standard, " +"and plugins.It works on any operating system, and architecture that " +"supports Python which includes Windows, GNU/Linux, and FreeBSD." +msgstr "" + +#~ msgid "" +#~ "`Salt `_ is an open " +#~ "source infrastructure management tool. It " +#~ "supports remote command execution from a" +#~ " central point (master host) to " +#~ "multiple hosts (minions). It also " +#~ "supports system states which can be " +#~ "used to configure multiple servers using" +#~ " simple template files." +#~ msgstr "" + +#~ msgid "" +#~ "`Ansible `_ is an open" +#~ " source system automation tool. The " +#~ "biggest advantage over Puppet or Chef" +#~ " is it does not require an " +#~ "agent on the client machine. Playbooks" +#~ " are Ansible’s configuration, deployment, " +#~ "and orchestration language and are " +#~ "written in in YAML with Jinja2 for" +#~ " templating." +#~ msgstr "" + +#~ msgid "Write about Chef" +#~ msgstr "" + +#~ msgid "" +#~ "`Chef Documentation " +#~ "`_" +#~ msgstr "" + +#~ msgid "" +#~ "`Puppet `_ is an IT " +#~ "Automation and configuration management " +#~ "software from Puppet Labs that allows" +#~ " System Administrators to define the " +#~ "state of their IT Infrastructure, " +#~ "thereby providing an elegant way to " +#~ "manage their fleet of physical and " +#~ "virtual machines." +#~ msgstr "" + +#~ msgid "" +#~ "Puppet is available both as an " +#~ "Open Source and an Enterprise variant." +#~ " Modules are small,shareable units of " +#~ "code written to automate or define " +#~ "the state of a system. `Puppet " +#~ "Forge `_ is a " +#~ "repository for modules written by the" +#~ " community for Open Source and " +#~ "Enterprise Puppet." +#~ msgstr "" + +#~ msgid "" +#~ "Puppet Agents are installed on nodes " +#~ "whose state needs to be monitored " +#~ "or changed. A desginated server known" +#~ " as the Puppet Master is responsible" +#~ " for orchastrating the agent nodes." +#~ msgstr "" + +#~ msgid "" +#~ "Facter is an interesting tool that " +#~ "ships with Puppet that pulls basic " +#~ "facts about the System. These facts " +#~ "can be referenced as a variable " +#~ "while writing your Puppet modules." +#~ msgstr "" + +#~ msgid "" +#~ "Here is another example with system " +#~ "based logic. Note how the " +#~ "operatingsystem fact is being used as" +#~ " a variable prepended with the ``$``" +#~ " sign. Similarly, this holds true for" +#~ " other facts such as hostname which" +#~ " can be referenced by ``$hostname``" +#~ msgstr "" + +#~ msgid "" +#~ "For more information checkout `Puppet " +#~ "Labs Documentation `_" +#~ msgstr "" + +#~ msgid "Write about Buildout" +#~ msgstr "" + +#~ msgid "`Buildout Website `_" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo b/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..dcecf97dcaa29f66029b80d56e72cf8c1d3bce91 100644 GIT binary patch literal 6077 zcmeHL&u=8f6>ffnz(Ar65Dp{~?-DH$(>>z_MXP3a!Rz(HBpz&ez2S#IxTd?hyKr|` zQ&nxd#ex5T8z{Hr!VM{xC`v9lB!^t`4{*spkuy@hS2Z*CM$0AV8OeUrt*Tewd+&SS zEBoKiKK^Bd&vW?sIez}c50^fBk3>XL45B6WMFTnod(J1;B-*3Ra$nPGH zq5|)?eh@`Jg#8`t-(dd$yAS*E6H)Xb*8LIoF+4v5r%%CNfyLJ7McB__UxNJz_V=)V z!TRrDufYC!6h)uG{`2X8Yv)G+*I!{7*WY0o*Ux?&a9x9CT+dtyxUT*r;Q9iVaeW2L zxb8n2aD5HSxE_5z;CcdU^PHv{T9Kgjc&tIO;@pB1&mVwbqHcrc4_nGgl9Erd&n2Dhg?2>*!!` z70@sgpaOUttN_z=M&h@P9uEI|UX$YRtuEY|Fp_e4Dr?;}d{AcuGL%U=t8g-cYZh=% zy1)h}MdMH9o8bzn(r5S@lIzj=Vt@*jwCYq|l&R4uh!LI2>mi9| zEoqY@HQ2)?JM|?Agrhxmk&kIYY+u`2EF9C9YWw(d6nZq z-jG`jfC=3-x}jE|k#5K9t&IOFQj5?maG*;T*w!QbmOxxHP}kdvT?A+krlypR&|3zS z7?a46a7r0WdYpuKlcA}PQC8rC3ybc9G;72{_l}Mq-k>4-NPgp;6y8UY>1M*uSuO2^4-CRIyU?Yi za!t)8df8UmxD@Kc+(xu$+kpBv+|IWlH)Al~W=1U_G+cicDiB$F=B3eL-?qO0e1Z{( zZ(KAyua)hof=aS9Km!4#P-Sm;xz7|A1;^@|1tP07gd;lQzVLP8+&@4FUXEr!;aKe0 zf35tR|CKj1Gb$WlVO5DffD|K!4pip0@&0v-4hwzGz8a_sf?pWXW|b!<_{I7rsMd~r z`{<5U-7+jfiy}UOUK|6*i3IbU?_9rR44R>hg2s!2J;Qw$$lLU2d3NZJL0hd`D%Y7^ z7uA=3$usnu?<-#5n@gT!h9KRXijZw9X^Afc$=E%?q5VepWtBun`aC)chwaRwcdOxz z=y)|;*2nS@iO&m0PSQ#@$$HF{*7s{;OYXo!g~Z#IC2yyR5W zDrc3+bdFz@Xfe8y=y=%&%qy=YVDl%THI^|mPx(}&`y9RFMb-Dwa^7ARN7+JdkkQjZzxtK~k>UbC;7pygBN9z(LCjTD@ZeQssZR9%ih9iHNe;FEM79&Y zL)i;fB86dm^KAF35^BJ56Rt}52AtT#uQ=bi>}oxP)D^3WtS>f3m6hXb9w-ihfP7gE zE+aQsRsCG~U{x>GgE_>MK)xurNN981EPB-rwCmjOY9Doo#x1Kb_BB`C$K@ z-O(PzGDdH;7Ddn|rMvg{_UN7M`7Yhqoo~fVStzN<}RQ))Z^Xm4)4PT}j#>1aNi?_MNeE18a%K@g|-Xy|Z; zgGNleGQQ6IHn=q0>|GIGzgWkpaW9T{TTmEDPU-qWxzSr(K%@qF8&bM07P6*m$*ak0 zqs^_~|1INbzHW}qt$%at-`x5)w|>50Y;OITAFcQsXLIWh*PP9*fBCv4Mh-k(H6f zWF4LuY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$!B>?nL|U|CbRM?Gco`G_=Oc} diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po index 4301ebe05..047d68838 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/ci.rst:2 msgid "Continuous Integration" @@ -22,19 +23,19 @@ msgstr "" #: ../../scenarios/ci.rst:8 msgid "" "Martin Fowler, who first wrote about `Continuous Integration " -"`_ (short: CI) " -"together with Kent Beck, describes the CI as follows:" +"`_ (short: " +"CI) together with Kent Beck, describes the CI as follows:" msgstr "" #: ../../scenarios/ci.rst:11 msgid "" -"Continuous Integration is a software development practice where members of a" -" team integrate their work frequently, usually each person integrates at " -"least daily - leading to multiple integrations per day. Each integration is " -"verified by an automated build (including test) to detect integration errors" -" as quickly as possible. Many teams find that this approach leads to " -"significantly reduced integration problems and allows a team to develop " -"cohesive software more rapidly." +"Continuous Integration is a software development practice where members " +"of a team integrate their work frequently, usually each person integrates" +" at least daily - leading to multiple integrations per day. Each " +"integration is verified by an automated build (including test) to detect " +"integration errors as quickly as possible. Many teams find that this " +"approach leads to significantly reduced integration problems and allows a" +" team to develop cohesive software more rapidly." msgstr "" #: ../../scenarios/ci.rst:20 @@ -57,85 +58,101 @@ msgid "" "automate the compile/test cycle to validate code changes." msgstr "" -#: ../../scenarios/ci.rst:35 -msgid "Mule" -msgstr "" - -#: ../../scenarios/ci.rst:37 -msgid "" -"`Mule " -"`_ " -"is a lightweight integration platform that enables you to connect anything, " -"anywhere. You can use Mule to intelligently manage message routing, data " -"mapping, orchestration, reliability, security and scalability between nodes." -" Plug other systems and applications into Mule and let it handle all the " -"communication between systems, enabling you to track and monitor everything " -"that happens." -msgstr "" - -#: ../../scenarios/ci.rst:47 +#: ../../scenarios/ci.rst:36 msgid "Tox" msgstr "" -#: ../../scenarios/ci.rst:49 +#: ../../scenarios/ci.rst:38 msgid "" -"`tox `_ is an automation tool " -"providing packaging, testing and deployment of Python software right from " -"the console or CI server. It is a generic virtualenv management and test " -"command line tool which provides the following features:" +"`tox `_ is an automation tool " +"providing packaging, testing and deployment of Python software right from" +" the console or CI server. It is a generic virtualenv management and test" +" command line tool which provides the following features:" msgstr "" -#: ../../scenarios/ci.rst:54 +#: ../../scenarios/ci.rst:43 msgid "" -"Checking that packages install correctly with different Python versions and " -"interpreters" +"Checking that packages install correctly with different Python versions " +"and interpreters" msgstr "" -#: ../../scenarios/ci.rst:56 +#: ../../scenarios/ci.rst:45 msgid "" "Running tests in each of the environments, configuring your test tool of " "choice" msgstr "" -#: ../../scenarios/ci.rst:58 +#: ../../scenarios/ci.rst:47 msgid "" "Acting as a front-end to Continuous Integration servers, reducing " "boilerplate and merging CI and shell-based testing." msgstr "" -#: ../../scenarios/ci.rst:63 +#: ../../scenarios/ci.rst:52 msgid "Travis-CI" msgstr "" -#: ../../scenarios/ci.rst:65 +#: ../../scenarios/ci.rst:54 msgid "" "`Travis-CI `_ is a distributed CI server which " -"builds tests for open source projects for free. It provides multiple workers" -" to run Python tests on and seamlessly integrates with GitHub. You can even " -"have it comment on your Pull Requests whether this particular changeset " -"breaks the build or not. So if you are hosting your code on GitHub, travis-" -"ci is a great and easy way to get started with Continuous Integration." +"builds tests for open source projects for free. It provides multiple " +"workers to run Python tests on and seamlessly integrates with GitHub. You" +" can even have it comment on your Pull Requests whether this particular " +"changeset breaks the build or not. So if you are hosting your code on " +"GitHub, travis-ci is a great and easy way to get started with Continuous " +"Integration." msgstr "" -#: ../../scenarios/ci.rst:72 +#: ../../scenarios/ci.rst:61 msgid "" -"In order to get started, add a :file:`.travis.yml` file to your repository " -"with this example content::" +"In order to get started, add a :file:`.travis.yml` file to your " +"repository with this example content::" msgstr "" -#: ../../scenarios/ci.rst:88 +#: ../../scenarios/ci.rst:77 msgid "" "This will get your project tested on all the listed Python versions by " -"running the given script, and will only build the master branch. There are a" -" lot more options you can enable, like notifications, before and after steps" -" and much more. The `travis-ci docs `_ " -"explain all of these options, and are very thorough." +"running the given script, and will only build the master branch. There " +"are a lot more options you can enable, like notifications, before and " +"after steps and much more. The `travis-ci docs `_ explain all of these options, and are very thorough." msgstr "" -#: ../../scenarios/ci.rst:94 +#: ../../scenarios/ci.rst:83 msgid "" "In order to activate testing for your project, go to `the travis-ci site " -"`_ and login with your GitHub account. Then activate" -" your project in your profile settings and you're ready to go. From now on, " -"your project's tests will be run on every push to GitHub." -msgstr "" +"`_ and login with your GitHub account. Then " +"activate your project in your profile settings and you're ready to go. " +"From now on, your project's tests will be run on every push to GitHub." +msgstr "" + +#~ msgid "Mule" +#~ msgstr "" + +#~ msgid "" +#~ "`Mule " +#~ "`_" +#~ " is a lightweight integration platform " +#~ "that enables you to connect anything," +#~ " anywhere. You can use Mule to " +#~ "intelligently manage message routing, data " +#~ "mapping, orchestration, reliability, security " +#~ "and scalability between nodes. Plug " +#~ "other systems and applications into Mule" +#~ " and let it handle all the " +#~ "communication between systems, enabling you" +#~ " to track and monitor everything that" +#~ " happens." +#~ msgstr "" + +#~ msgid "" +#~ "`tox `_ is an" +#~ " automation tool providing packaging, " +#~ "testing and deployment of Python " +#~ "software right from the console or " +#~ "CI server. It is a generic " +#~ "virtualenv management and test command " +#~ "line tool which provides the following" +#~ " features:" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo b/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..90c8042f6d51154352fcbaeb8b18266160be6e06 100644 GIT binary patch literal 6069 zcmeHL%Z?jG6m8yM6!8WjAyEq!M44`T5P>#2yK;$bv86130(Z?eRduV{dEh>*}tqd+OeE&n?ey&p!NR zfY)<)zk>I7G+1~I9|(d+Fy5Tm-I=`w`!cTIf&CWmDc%ob96l5TUD(sGpX1sX_6Ej( z;O2`D2EjTOJAv!B9}9w$u=(RbFu?sUo(O{PVSj~PhyAh>1P1mOSPeUTG6)`p{Q>r4 zJoh6k;d=W-V>f2@IxOLO7nX4C!xFAnpK5Tu21~g1UnB*kb@8PJ*Eg`ix{~oeeWodWmM&P=MZwD?#6YmMs=@^Bq%Q68 zJAC2J3ggOZW<)BC5eajeamz;Qcu1?`i?H*#b5+0F6=gJ$`?3;=R z_A$|BpQYHyxRxqG{EmBV6Bx09qpVqGg{v#4wXzIBGE<;M@+>h4lMiGfC?-cC(X~Tl z$wk2(MGa9Z6Q*4bejxS0N|cS*UM?0O0bwC{>1f@SF!&l9!JS}5t(*)MZLP%%WHaKx z{Q>-7RqrX2ZiP+YO)&Um1(#*ZOO^wQqD@iQ$K1+zo_>ZrTZ#vv#e*d%a-jDynJ*@t z@Fm)>OreZ|(N!a=c|z`8J2Zvz5VAE^DF6z65hUDUZNUu+pmtJ8Hw{Kai)J~CTCAp( zjH;>2b?LK9<1UtnX*r)&D~k%1JTV{)BCHV#k8ayP#6XNP;U-~9jtxipM&LVbRm?Ga z5-s>R-JQ+two{|r6$&0Ht`cB#WF7g^)}dsW1RIclpg6=1*mw%!_&`DhV(=Oobs&x^ zzVG3+Rp-MF$k>Z4XCj3sh%64-!oDO}R3he+l9tA9MYE!s5{HO4I;jx>hb0A|2wRC* z`kJqyauudH5=tl#2u*yPk-YE&JGCKC3R&WYjU_ma`A9lg0ODk#ggeD5p_?d6M_Y5b z(UXu*_!Q3=S>XYyDZnnQPzM5QO>(d|*BXI7;xTX8+i3V)1wr|k107;Xk@&EN^m_*We6_x)UV~QO**aA))#i2S?tbz$Z7-Ku4n>Z2 znaZp--qjeI0neb7cbI9NfIcZl;X^lZ6GWqO9_zy<8juPfjr&#!VpKXWe{jj$c+AMs z@EA8zsT7#uouYJzyCSU>az=_rQJV?s-{Q6?&|WTWT~*o;6|m#lkjyj+b&jnM2iTp` z=phZUlBVIzikGfcdV-D!&zM&iBw0Q&E1(1so)nu?7xm;7)?(PMhSHNUm@}^_FLMA) zk*dv6N2NiO^TWf)3LhB~B-&}SQIaEPcxh3GO+;?)44Ivljvodi$OL-aoPy2p82g|x zS?(r+K3Cc-H#~&UwoF7>1FBMb0@?87_yzZ;6xFO=x8Ko zl1YriI(a?z%Y4B1>#@-vIUP&YZ6>y24>#1&5g44~Rp9&scde|V;+q5oO+JHdqdyR_3kON~ zUei?jtmzF|O})Ms^`h0zjv%Ion>Le4c&W~8xTpK9v%R$!w)GxfhUE6y>E7yF;c72j zU1hzq{oa{VJ-je6+z|(odiHGIt&O#vaC0lXyvD9=^*0BnZg1V#=nT1a;T};^Q3>?f zm7BvMyRo*p!Om}Nt__CotX;mmv$4B-5mU>oM)vz`U(W~Op5O&tVdsa#ca$W$UhHfu zh>i-c;D}=TtgQUdURXVc=1g}k^g5e^&5fe~tVX>K&cEnGKr^l2gZel1VOgGo%2PXa z7iyP=XOHI13Mt$up_wSgK07;>u5;CQ6mTuPH0`rXe2gQ_>F7-KMrV2AzxU~BdE!sg xxd!;d+VaG|Jn=72{L2$RohFwje)<=c|6RO1@h?yO_|MYv#6SPx@?TE;e*&ajL6HCe delta 113 zcmdn0|A0y7o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#klcL=YEuA!l>v4Mh-k(H6f zWDTAeY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$tQVCnL|U|CNuIXGco`G^92=B diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po index ca055059c..b9cc5d2c6 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/cli.rst:2 msgid "Command-line Applications" @@ -18,12 +19,12 @@ msgstr "" #: ../../scenarios/cli.rst:4 msgid "" "Command-line applications, also referred to as `Console Applications " -"`_, are computer programs " -"designed to be used from a text interface, such as a `shell " +"`_, are computer " +"programs designed to be used from a text interface, such as a `shell " "`_. Command-line " -"applications usually accept various inputs as arguments, often referred to " -"as parameters or sub-commands, as well as options, often referred to as " -"flags or switches." +"applications usually accept various inputs as arguments, often referred " +"to as parameters or sub-commands, as well as options, often referred to " +"as flags or switches." msgstr "" #: ../../scenarios/cli.rst:12 @@ -37,14 +38,13 @@ msgid "" msgstr "" #: ../../scenarios/cli.rst:15 -msgid "" -"`curl `_ - A tool for data transfer with URL syntax" +msgid "`curl `_ - A tool for data transfer with URL syntax" msgstr "" #: ../../scenarios/cli.rst:16 msgid "" -"`httpie `_ - A command line HTTP " -"client, a user-friendly cURL replacement" +"`httpie `_ - A command line HTTP" +" client, a user-friendly cURL replacement" msgstr "" #: ../../scenarios/cli.rst:18 @@ -53,8 +53,8 @@ msgstr "" #: ../../scenarios/cli.rst:19 msgid "" -"`mercurial `_ - A distributed version control" -" system primarily written in Python" +"`mercurial `_ - A distributed version " +"control system primarily written in Python" msgstr "" #: ../../scenarios/cli.rst:23 @@ -63,10 +63,11 @@ msgstr "" #: ../../scenarios/cli.rst:25 msgid "" -"`clint `_ is a Python module which is " -"filled with very useful tools for developing command-line applications. It " -"supports features such as; CLI colors and indents, simple and powerful " -"column printer, iterator based progress bars and implicit argument handling." +"`clint `_ is a Python module which " +"is filled with very useful tools for developing command-line " +"applications. It supports features such as; CLI colors and indents, " +"simple and powerful column printer, iterator based progress bars and " +"implicit argument handling." msgstr "" #: ../../scenarios/cli.rst:31 @@ -76,9 +77,9 @@ msgstr "" #: ../../scenarios/cli.rst:33 msgid "" "`click `_ is an upcoming Python package for " -"creating command-line interfaces in a composable way with as little code as " -"possible. This “Command-line Interface Creation Kit” is highly configurable " -"but comes with good defaults out of the box." +"creating command-line interfaces in a composable way with as little code " +"as possible. This “Command-line Interface Creation Kit” is highly " +"configurable but comes with good defaults out of the box." msgstr "" #: ../../scenarios/cli.rst:39 @@ -100,12 +101,12 @@ msgstr "" msgid "" "`Plac `_ is a simple wrapper over the " "Python standard library `argparse " -"`_, which hides most of its " -"complexity by using a declarative interface: the argument parser is inferred" -" rather than written down by imperatively. This module targets especially " -"unsophisticated users, programmers, sys-admins, scientists and in general " -"people writing throw-away scripts for themselves, who choose to create a " -"command-line interface because it is quick and simple." +"`_, which hides most of " +"its complexity by using a declarative interface: the argument parser is " +"inferred rather than written down by imperatively. This module targets " +"especially unsophisticated users, programmers, sys-admins, scientists and" +" in general people writing throw-away scripts for themselves, who choose " +"to create a command-line interface because it is quick and simple." msgstr "" #: ../../scenarios/cli.rst:57 @@ -114,10 +115,25 @@ msgstr "" #: ../../scenarios/cli.rst:59 msgid "" -"`Cliff `_ is a framework for " -"building command-line programs. It uses setuptools entry points to provide " -"subcommands, output formatters, and other extensions. The framework is meant" -" to be used to create multi-level commands such as subversion and git, where" -" the main program handles some basic argument parsing and then invokes a " -"sub-command to do the work." -msgstr "" +"`Cliff `_ is a framework for" +" building command-line programs. It uses setuptools entry points to " +"provide subcommands, output formatters, and other extensions. The " +"framework is meant to be used to create multi-level commands such as " +"subversion and git, where the main program handles some basic argument " +"parsing and then invokes a sub-command to do the work." +msgstr "" + +#~ msgid "" +#~ "`Cliff `_ is " +#~ "a framework for building command-line" +#~ " programs. It uses setuptools entry " +#~ "points to provide subcommands, output " +#~ "formatters, and other extensions. The " +#~ "framework is meant to be used to" +#~ " create multi-level commands such as" +#~ " subversion and git, where the main" +#~ " program handles some basic argument " +#~ "parsing and then invokes a sub-" +#~ "command to do the work." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo b/docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo new file mode 100644 index 0000000000000000000000000000000000000000..65f2fc83ea03ba2b71403249b75c41f789ae9721 GIT binary patch literal 6255 zcmeHKzi%W-6>hi#aTdSsAh_U=UV`Ms(>>!|4(-kD9_Jm~$4KL|<@K=wA=x$EHPf}* zUDZ@od)y)=AV4Czl!zR`|3FTFL`F)6goKFsURBT7mR6S|jiu4^^i;q4-h1EsUe!O| zdGqrGe{bXS9zK8IFL(Y1Uy8q_uQ&R3r>H9-@gsZ7=QbX z`2O!<8ONVs`T1X98OPsY8OJ|i8OMKM8OPh-j5vm{jN=TJaeM~LI7(Q?@i#bO9KVKB z#__N3MjYk4SUg^+N{+8ix=AIR%gU?UC(pfYbN{+WO}ANAcX@bGT_p$4rZm-FT9JEY zbn?s?=d-iUm-sTFV`HUSYC3Lp_&u&&h+HN|H==F;gHErdt&Av?Uee{Im5sf;OoC6W zj!NfMTgW>;R#r5Pw2prjc`lu!v+gvYaahja1_0_qeUMA`o>Ko-58DmG zR`MEK$$Bn}fDTbR#v5x1U)Z5Dtqt+!rjS{3H90<>#vD5&IbSSPW~C?q8Yy;}GDE3{ zmGIK}AtyD)9+K)5SD#_G$YCw>QfTFBS{TcFNqevOw6Lb8xnUyofH*s6-C38>)RSwQ z##jLMD}!1U(v1-l992q7Vv^>jZiH8J#ia>LXjeuGu3;54mz7yP7|^Ozc}b{`Svd}x zVHTYhwaW3ZBc^M}nQir^=q`ekH!^R1s5XGK6{6imSwKz|-VLl_THlubE^A0Qn!$Z! zdPhh{QJF?+z~Yb*)xp^`1n_#C^Hx;_O}OY%JM<*4Wf-Ve;MU!qa4WUU&=M#P2v(YQ zS&}x$r?)Eih_p}k!sIAZLA#*yCf9;0VV9D03({ETip#BPJO@_^y==u&I=}}11u|%= zP~4@|P>Zl=t~65(iCY)FvC?Ck&D$}hvG+?b3)`@ExlnZYWoFA-0_Z(HjYD#Cqg`9$ zmGE0fTFN3cN+B0ai$IXbH1r?b(rzKWz&{1I4%f%G-dNNvq#m4xJM94;o;k3-9eHKY z3#UBvAShKt+qV|egcrrygj9&7P}+HZTxay6oxrZ31}# z+k?jC$j}^l3JM67oh5P0Bp5Jf=hxf3{@GYIaqzHVy;iFJLzdzyaC5Sj`6 zGtf+i$tCeAUaKYeUm({&0xeh9%qlBWXgA8l36wXv1iMjt_J_pe!b7%L*XQd_!RtOp zr{%tDfG6}CYh%#ECX5*Fx8WlmIv8c$Fs{r>Uso)VAT=`uRe%6un||4Ci`>)2K((Na zy)4G!-mMU~v(boU(SjKLjDTa_MT5$q+GL}+VM5gy;h1$V(UdV)+|aIbpbBeQw#)|f zN?I+eM-SneUZ4~Z$^mN?;O6}77eCPI23+A0C@N=e8Pm&02xvX_xe)7;@n(S-z2Np4 zz|0?j)-2184repWCNy>_ESfb=U)0kRI?bzE27L&)YJ63rsvz917l_Nf?@bxjvJHY%?9M zBC;=FZT9|#w{h);w{ghCjzv-E?#S!Mei12%t-ZxC;D$sAR`FC(2#+BVng-HDIIw8P zx)g|Ef*OWYAc}Rz32Ja+qRH;w-h;kO`P7h}xTPx6XYJCZ7iLU5XQvnGgcSv^rH249riY{bAEo=Fbbp^lkH@1&dn5c| zVR|mF6}#`({p{%AJUuy04-e=kr{k09-p@}zJ=&Q;Leh&qBxA>P{Ml?qpB|hX(UYT- zgX!$!gTuq~qvy{*!qPZ6$MniB-S;0`{}f&IH*9Wzq|z8ex9b@7LfZ65 zV>W<`V|t9E;m#*Kenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../scenarios/clibs.rst:2 +msgid "Interfacing with C/C++ Libraries" +msgstr "" + +#: ../../scenarios/clibs.rst:5 +msgid "C Foreign Function Interface" +msgstr "" + +#: ../../scenarios/clibs.rst:7 +msgid "" +"`CFFI `_ provides a simple to use" +" mechanism for interfacing with C from both CPython and PyPy. It supports" +" two modes: an inline ABI compatibility mode (example provided below), " +"which allows you to dynamically load and run functions from executable " +"modules (essentially exposing the same functionality as LoadLibrary or " +"dlopen), and an API mode, which allows you to build C extension modules." +msgstr "" + +#: ../../scenarios/clibs.rst:15 +msgid "ABI Interaction" +msgstr "" + +#: ../../scenarios/clibs.rst:29 +msgid "ctypes" +msgstr "" + +#: ../../scenarios/clibs.rst:31 +msgid "" +"`ctypes `_ is the de facto" +" library for interfacing with C/C++ from CPython, and it provides not " +"only full access to the native C interface of most major operating " +"systems (e.g., kernel32 on Windows, or libc on \\*nix), but also provides" +" support for loading and interfacing with dynamic libraries, such as DLLs" +" or shared objects at runtime. It does bring along with it a whole host " +"of types for interacting with system APIs, and allows you to rather " +"easily define your own complex types, such as structs and unions, and " +"allows you to modify things such as padding and alignment, if needed. It " +"can be a bit crufty to use, but in conjunction with the `struct " +"`_ module, you are " +"essentially provided full control over how your data types get translated" +" into something usable by a pure C(++) method." +msgstr "" + +#: ../../scenarios/clibs.rst:45 +msgid "Struct Equivalents" +msgstr "" + +#: ../../scenarios/clibs.rst:47 +msgid ":file:`MyStruct.h`" +msgstr "" + +#: ../../scenarios/clibs.rst:57 +msgid ":file:`MyStruct.py`" +msgstr "" + +#: ../../scenarios/clibs.rst:68 +msgid "SWIG" +msgstr "" + +#: ../../scenarios/clibs.rst:70 +msgid "" +"`SWIG `_, though not strictly Python focused (it " +"supports a large number of scripting languages), is a tool for generating" +" bindings for interpreted languages from C/C++ header files. It is " +"extremely simple to use: the consumer simply needs to define an interface" +" file (detailed in the tutorial and documentations), include the " +"requisite C/C++ headers, and run the build tool against them. While it " +"does have some limits, (it currently seems to have issues with a small " +"subset of newer C++ features, and getting template-heavy code to work can" +" be a bit verbose), it provides a great deal of power and exposes lots of" +" features to Python with little effort. Additionally, you can easily " +"extend the bindings SWIG creates (in the interface file) to overload " +"operators and built-in methods, effectively re- cast C++ exceptions to be" +" catchable by Python, etc." +msgstr "" + +#: ../../scenarios/clibs.rst:84 +msgid "Example: Overloading __repr__" +msgstr "" + +#: ../../scenarios/clibs.rst:86 +msgid ":file:`MyClass.h`" +msgstr "" + +#: ../../scenarios/clibs.rst:99 +msgid ":file:`myclass.i`" +msgstr "" + +#: ../../scenarios/clibs.rst:123 +msgid "Boost.Python" +msgstr "" + +#: ../../scenarios/clibs.rst:125 +msgid "" +"`Boost.Python `_ " +"requires a bit more manual work to expose C++ object functionality, but " +"it is capable of providing all the same features SWIG does and then some," +" to include providing wrappers to access PyObjects in C++, extracting " +"SWIG- wrapper objects, and even embedding bits of Python into your C++ " +"code." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.mo b/docs/locale/ko/LC_MESSAGES/scenarios/client.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..47618612f3b0aebbe2adc56e3a16bc540d6e235b 100644 GIT binary patch literal 4349 zcmeHJO^+Kz5FI`R=1U12b0`j=M0jTH1VQ9{fRo*1SFE$%jYA+DNPDJjcXpecJ{<@lptB={Y} zbpqGdJUH}gKa?cTW1PZ13fqT$0rm>)F;Utl`pTqL_r$>_H9LB%Feuwdk zk0r_Duz$c_h5ZZmRoK_@@EmLj`!eh|uo>(Ru@IS-h@-e@#B*b$M3L=<4;(| z@lY$qeg3J4;{+_@_~hw`<5Sr0F#i6Th~u+oBaSa%8OP7CjN|xo5yv%H#?insj;~>p zb>+NO+ut(mJrI*gqsGa)~d#2zUZwHT{Xd4;!2(~y?3XcJDP}xC%}2&#X^q5QY$}bltoCPNor#& z)8HQeSPXb!lPBd|YN{lH7i8wrTHeAb@`h?@5wZ#povP|muC^uIzRQw5F&-;F*gd%6 zJs^^);n11J<`RCL6H^)YWASw27s5)o6rO_13OnJgOX?SMp>q^tuv)a+$VTZY4XyDe zHzl3y4|a#AGNKWt-wRJpTEOPu3#+_GaHWI84O(syP37*?=jQeX)y)P$efVqsyh@nt%^hSS~XXs5GWd1oE&@ zeikr=!lI1GftX{l7=t*Wuw_Y=xPuV?g_qNfVxj=<;D)@|=h|Z7ifaL-0jV&Ke2w&D zj#OfwL4$lq6>uRXOzemZgb8U>IUG7EDwNt~oMtNn<+TZv80+Ypp z03$Pgf=)yxxD2Qm=LFuWs?jUe3B=%uH;pX|x{1!Do9ON2mb37*!~Ay>YC20- z0>`RD!Yy?^vqrNiiPYgrg}-hSuCcPo`T%`nI$V zeC<)>*R)|ycCt>^ZSBe0Sf38uR2Au^X6n+B=}~LAGfFR88TgT|16+?zce<~o-A>x= zQs->1bLN!}ewdi<$+=?pt9kEk^!L)iPP*Qw&7Iz0>y=wO*EU+)!ud3`F34Saei2in-1lhT91PMC1dgB3`R(mDOT}cm*cz6N6=iw_ z9qW3e>o9Z|y5}g~Ug)$2TZ4`J3Fu~>)@6edX`n&V_lPxRtuBSq=O~{E>!iQX_(^*9 z{=Ajoq#G=V;8%~%;tXwFm0ChTB=WZG(IqjKC7sUBWUsc4zEY09QjWe-j=oZkzEY09 MQjWe-{`V{8AKNL+z5oCK delta 113 zcmeyX_<%|0o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUu$$BZSvP*U(Vc*g(O^$jZoK z@*a*DY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$+4WK%%LG}lc#bjGco`G2lf@t diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.po b/docs/locale/ko/LC_MESSAGES/scenarios/client.po index 05a96105b..f7c460ef7 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/client.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/client.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/client.rst:2 msgid "Network Applications" @@ -32,24 +33,23 @@ msgstr "" #: ../../scenarios/client.rst:16 msgid "" -"Python’s standard urllib2 module provides most of the HTTP capabilities you " -"need, but the API is thoroughly broken. It was built for a different time — " -"and a different web. It requires an enormous amount of work (even method " -"overrides) to perform the simplest of tasks." +"Python’s standard urllib2 module provides most of the HTTP capabilities " +"you need, but the API is thoroughly broken. It was built for a different " +"time — and a different web. It requires an enormous amount of work (even " +"method overrides) to perform the simplest of tasks." msgstr "" #: ../../scenarios/client.rst:21 msgid "" -"Requests takes all of the work out of Python HTTP — making your integration " -"with web services seamless. There’s no need to manually add query strings to" -" your URLs, or to form-encode your POST data. Keep-alive and HTTP connection" -" pooling are 100% automatic, powered by urllib3, which is embedded within " -"Requests." +"Requests takes all of the work out of Python HTTP — making your " +"integration with web services seamless. There’s no need to manually add " +"query strings to your URLs, or to form-encode your POST data. Keep-alive " +"and HTTP connection pooling are 100% automatic, powered by urllib3, which" +" is embedded within Requests." msgstr "" #: ../../scenarios/client.rst:27 -msgid "" -"`Documentation `_" +msgid "`Documentation `_" msgstr "" #: ../../scenarios/client.rst:28 @@ -84,16 +84,31 @@ msgstr "" #: ../../scenarios/client.rst:48 msgid "" "RabbitMQ is an open source message broker software that implements the " -"Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written in " -"the Erlang programming language and is built on the Open Telecom Platform " -"framework for clustering and failover. Client libraries to interface with " -"the broker are available for all major programming languages." +"Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written" +" in the Erlang programming language and is built on the Open Telecom " +"Platform framework for clustering and failover. Client libraries to " +"interface with the broker are available for all major programming " +"languages." msgstr "" -#: ../../scenarios/client.rst:53 +#: ../../scenarios/client.rst:54 msgid "`Homepage `_" msgstr "" -#: ../../scenarios/client.rst:54 +#: ../../scenarios/client.rst:55 msgid "`GitHub Organization `_" msgstr "" + +#~ msgid "" +#~ "RabbitMQ is an open source message " +#~ "broker software that implements the " +#~ "Advanced Message Queuing Protocol (AMQP). " +#~ "The RabbitMQ server is written in " +#~ "the Erlang programming language and is" +#~ " built on the Open Telecom Platform" +#~ " framework for clustering and failover. " +#~ "Client libraries to interface with the" +#~ " broker are available for all major" +#~ " programming languages." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..6a6bbb3363b7c74531ab89194eac11a33c47a6c1 100644 GIT binary patch literal 1959 zcmeHH&2AGh5MH4CMVvTr;xG~yQ0vVmMWx#QsA-!*q@<17fCLxn?mD{$$6ndqq+6Z? zi6aj{UjQUtf@1~eUO8}QoTW`F^#M3^rP1f{jz51hWBb?rnU5ZRchMfA#m<@fzTo&C z+A-Qsw6AEl(LP=Cyb$p-qWgb>cn9$m@f+fA#P5j5*FEn8j>U~K?sTT)`Ge?qe%vg1 zP7oc>gIgufBSgnDhv;}t5xosvWL71bW@&N30d64XLmsmjxU>rFNP(aQ(*{%@G>dq~ z3{V+EN{^_HRc>HFEz_I|1CMbMy(d0EFJNDvogqXjW{?{$ z6G(ZILb?9Z&C6^lS74y#47S!g6YDX2NQ9N=e~!Rb{e@E19v?)%~}w zycDyFoH$WH?8IaCF$jL3sV=~#)J_tdBEz(%t3Q<@v@DoB%apbTx`j=#Zgqcw)ct33 zXa2lDKRYgFx9AqWw||z!ME7Vk@?*j6kuRC88r8QWs#!HFN(~eB3j3kY^v=O3_Q*DsSoKbM%OlI3|BQqA3IneMJgl;$=a82_>)hIs1SA*lN`tczATwhI&Sy{=a8 zSY$~nCa=nv5VCRNNscEB0zdF;m0jjaLOLelFqj7|hQG_+cQ~Wkc>H{EK_tZ0wTG4%uwLi=D93ntijg-K?~!v81P|G}vgR zL)d!RZo_t?(}d+_r_pM!H8wYQn|ph!7%G#TCb;E$b?%TJqXRbs%kB1>;J(tyYNac3 zO$FIfdSF73+1NEJwIwKrD?z2x>NF<>sQE!?Cg38Iv0!|Y0K z`($wv=T!HZCQXU=0`Ei!iwE3Ro-@fbmImuqgs@Hz@QT&3@=q%lUW*IP)zdL`vag\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/crypto.rst:2 ../../scenarios/crypto.rst:5 msgid "Cryptography" @@ -19,14 +20,15 @@ msgstr "" msgid "" "`Cryptography `_ is an actively " "developed library that provides cryptographic recipes and primitives. It " -"supports Python 2.6-2.7, Python 3.2+ and PyPy." +"supports Python 2.6-2.7, Python 3.3+ and PyPy." msgstr "" #: ../../scenarios/crypto.rst:12 msgid "" -"Cryptography is divided into two layers of recipes and hazardous materials " -"(hazmat). The recipes layer provides simple API for proper symmetric " -"encryption and the hazmat layer provides low-level cryptographic primitives." +"Cryptography is divided into two layers of recipes and hazardous " +"materials (hazmat). The recipes layer provides simple API for proper " +"symmetric encryption and the hazmat layer provides low-level " +"cryptographic primitives." msgstr "" #: ../../scenarios/crypto.rst:19 ../../scenarios/crypto.rst:49 @@ -47,7 +49,25 @@ msgstr "" #: ../../scenarios/crypto.rst:44 msgid "" -"`PyCrypto `_ is another library, " -"which provides secure hash functions and various encryption algorithms. It " -"supports Python version 2.1 through 3.3." +"`PyCrypto `_ is another " +"library, which provides secure hash functions and various encryption " +"algorithms. It supports Python version 2.1 through 3.3." msgstr "" + +#~ msgid "" +#~ "`Cryptography `_ is" +#~ " an actively developed library that " +#~ "provides cryptographic recipes and primitives." +#~ " It supports Python 2.6-2.7, Python " +#~ "3.2+ and PyPy." +#~ msgstr "" + +#~ msgid "" +#~ "Cryptography is divided into two layers" +#~ " of recipes and hazardous materials " +#~ "(hazmat). The recipes layer provides " +#~ "simple API for proper symmetric " +#~ "encryption and the hazmat layer provides" +#~ " low-level cryptographic primitives." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.mo b/docs/locale/ko/LC_MESSAGES/scenarios/db.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..45440de18de2d2bb01856438a0b8e21251f0d65f 100644 GIT binary patch literal 6611 zcmeHLO>87b6>dTZ;2;R$CyK=3NfE#6?it(5%FO;K_KpLVJZob+AmFf5(_J%NneMJh zRkg>x91usOAPxkH6L3UA;y|u&MnYVWxS%LGazV<06XL}8s=CJx3sT@bmh3m(Q$OE( z?|a{?^4rfo`I87g&*Aqo`290KT>E+LeNl7=&p(8H3ic1MABO!C>;~+cus??VE9@@p zqbH(h2>S-?&td-o`$5>BzCYMs!1BCb!ty$Az!tE-gMA0~OHW48)3DEfAc~&BnxBPT z!rsE>Z{hu~vDlliuYD+rp1}JYi+m4z%&{or``bsN=(~9TcUZ< z4av)eHcnMDI{W$&Wx|Oh8t%t?Cx_7x4-;XfjfSs?YNqM%S;&WNaduNid0g~?oApR zw}X7fkg(-)`FOqnoG~GT7YM~w)B_C?zgZjVj$_OX`a&Sy7b%ldkd!lK9VjadD7=Eg ztZiqn^4Ss$!K({t6Y@C$nd%am=K`o`u#k(vc>Cs8#tA);!W0dGu8*zME`h`|r!0-_ ztA%oMXS_+{g>6#3n2nK?49RWqRlM+&8Kb%?04v#Vmm_>Dyun@Y1JoTv=O`7UMA6a< z)mI3B%k`3HF14A{Qn{ST%bo-h{@1lBMfFW23b|%Pxim764VlSBF-^6e%gmQhTLq|6 zUD=+tS-Rct-|7YU54%9xBzI-ORTX@E*NRIyNrXvrlzyVktcT~`c7JQTzq|G2t)2ev z&6_>0hMOe8MMilryS!g=nal+|5}869}Wkm&gos z!*aAXTauv6TW!NQ+f+_mGCD4egit_6VgypFdGVPMi<}jaEZ3SKnJJ{cO(+j&Ws@f`8(6zZqXwVgfVOT1 zf9P{`3@IsOG;ZbKN}OikT|Mz}pGz#{awC;{)H6Xh+FX>XQl%)Ab-V`^YGQPH0RmHQK}%>JfZl)#HG5tn7A<#jHZgR0?EJ zP?iLZ72s9yEvWXtyQaOCU-zt$*cQ-0PA;K$Q%Yc6EY2B`uHjgA+uH%%$7uomrh5av zql8NP7@=4S0SjdFv@A6wNM34&-c9kLJKH;<;r=F_HT!6le(dOs{b82-z&%EFni^eR zBR-dlmRAd#0ps@m>PeDbvIgw1)Ld|lw zl>9f0Xd(F&wFS2-z@23K1}#zI`BjmIK(tjC%Csvy^iFg&Q5Rqnw4yy5Kzh*VuWB&( zkQj&+a^~GqnvXxNE8%+_e^fe0Yc$R)=?me|;JYRyL|3iHR+Xv{{(RsMGsrMjz24_J zdmwMljSk?09F{13on1SX{hz3e#EDE^AhI#jh(UD{?Rk~ZH*;0UmOlS6Y65I(lYnYL z3B-CD!-sgHFE`m4e9sMn#;Gm}Xdj=E;HJp37|Q)W2NvD9L8Vz4;<|cd?BYTonv+5% zQ3yzM5{{_xVHSTw8txSX3JrBub7l3DezLW3Dp|qfk)5e5-mhmiKGy@s(9tu5;B4*EMc`uM@X_!Lp(<=b)JI@mjnN5}DSkG^(17#-gD_VI&* zjU!=Qd~QT#K^AQW^wP^mNAzHCbU=3wMtg@xFYXP8rw3LEUtqU1Mp z=jiCgLa~nA+c+s|BZ~MXloeE=TKGqMck4EVk9YeUqr=g`RRFe<{>FWcQ&$Bv%>r&Y zdFguooO7GfTo^0e-P%p#-K%ko8tptjsGxTs%z$<$%58kLyGq3S&4BjB1PA)kCe}1h+TG)s5yoU2y&d Dh(EyU delta 113 zcmca?{D4X4o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#k&PYADxuA!l>v4Mh-k(H6f z\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/db.rst:2 msgid "Databases" @@ -22,17 +23,17 @@ msgstr "" #: ../../scenarios/db.rst:7 msgid "" "The Python Database API (DB-API) defines a standard interface for Python " -"database access modules. It's documented in :pep:`249`. Nearly all Python " -"database modules such as `sqlite3`, `psycopg` and `mysql-python` conform to " -"this interface." +"database access modules. It's documented in :pep:`249`. Nearly all Python" +" database modules such as `sqlite3`, `psycopg` and `mysql-python` conform" +" to this interface." msgstr "" #: ../../scenarios/db.rst:12 msgid "" "Tutorials that explain how to work with modules that conform to this " "interface can be found `here " -"`__ and " -"`here " +"`__ " +"and `here " "`__." msgstr "" @@ -44,41 +45,111 @@ msgstr "" #: ../../scenarios/db.rst:19 msgid "" "`SQLAlchemy `_ is a commonly used database " -"toolkit. Unlike many database libraries it not only provides an ORM layer " -"but also a generalized API for writing database-agnostic code without SQL." +"toolkit. Unlike many database libraries it not only provides an ORM layer" +" but also a generalized API for writing database-agnostic code without " +"SQL." msgstr "" #: ../../scenarios/db.rst:28 -msgid "Django ORM" +msgid "Records" msgstr "" #: ../../scenarios/db.rst:30 msgid "" +"`Records `_ is minimalist SQL " +"library, designed for sending raw SQL queries to various databases. Data " +"can be used programmatically, or exported to a number of useful data " +"formats." +msgstr "" + +#: ../../scenarios/db.rst:38 +msgid "Also included is a command-line tool for exporting SQL data." +msgstr "" + +#: ../../scenarios/db.rst:41 +msgid "Django ORM" +msgstr "" + +#: ../../scenarios/db.rst:43 +msgid "" "The Django ORM is the interface used by `Django " "`_ to provide database access." msgstr "" -#: ../../scenarios/db.rst:33 +#: ../../scenarios/db.rst:46 msgid "" -"It's based on the idea of `models `_, an abstraction that makes it easier to manipulate data" -" in Python." +"It's based on the idea of `models `_, an abstraction that makes it easier to manipulate " +"data in Python." msgstr "" -#: ../../scenarios/db.rst:36 +#: ../../scenarios/db.rst:50 msgid "The basics:" msgstr "" -#: ../../scenarios/db.rst:38 +#: ../../scenarios/db.rst:52 msgid "Each model is a Python class that subclasses django.db.models.Model." msgstr "" -#: ../../scenarios/db.rst:39 +#: ../../scenarios/db.rst:53 msgid "Each attribute of the model represents a database field." msgstr "" -#: ../../scenarios/db.rst:40 +#: ../../scenarios/db.rst:54 +msgid "" +"Django gives you an automatically-generated database-access API; see " +"`Making queries " +"`__." +msgstr "" + +#: ../../scenarios/db.rst:58 +msgid "peewee" +msgstr "" + +#: ../../scenarios/db.rst:60 +msgid "" +"`peewee `_ is another ORM with a " +"focus on being lightweight with support for Python 2.6+ and 3.2+ which " +"supports SQLite, MySQL and Postgres by default. The `model layer " +"`_ is similar to that of the Django ORM and it has `SQL-like " +"methods `_ to query data. While SQLite, MySQL and Postgres are " +"supported out-of-the-box, there is a `collection of add-ons " +"`_" +" available." +msgstr "" + +#: ../../scenarios/db.rst:71 +msgid "PonyORM" +msgstr "" + +#: ../../scenarios/db.rst:73 msgid "" -"Django gives you an automatically-generated database-access API; see `Making" -" queries `__." +"`PonyORM `_ is an ORM that takes a different " +"approach to querying the database. Instead of writing an SQL-like " +"language or boolean expressions, Python's generator syntax is used. " +"There's also an graphical schema editor that can generate PonyORM " +"entities for you. It supports Python 2.6+ and Python 3.3+ and can connect" +" to SQLite, MySQL, Postgres & Oracle" msgstr "" + +#: ../../scenarios/db.rst:82 +msgid "SQLObject" +msgstr "" + +#: ../../scenarios/db.rst:84 +msgid "" +"`SQLObject `_ is yet another ORM. It supports " +"a wide variety of databases: Common database systems MySQL, Postgres and " +"SQLite and more exotic systems like SAP DB, SyBase and MSSQL. It only " +"supports Python 2 from Python 2.6 upwards." +msgstr "" + +#~ msgid "" +#~ "It's based on the idea of `models" +#~ " `_, an abstraction that makes it" +#~ " easier to manipulate data in Python." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo b/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..e18d973471c0d2032fe469acfec1699cb663d968 100644 GIT binary patch literal 9173 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\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/gui.rst:2 msgid "GUI Applications" @@ -25,9 +26,9 @@ msgstr "" #: ../../scenarios/gui.rst:8 msgid "" -"`Camelot `_ provides components for building " -"applications on top of Python, SQLAlchemy and Qt. It is inspired by the " -"Django admin interface." +"`Camelot `_ provides components for " +"building applications on top of Python, SQLAlchemy and Qt. It is " +"inspired by the Django admin interface." msgstr "" #: ../../scenarios/gui.rst:12 @@ -43,7 +44,7 @@ msgstr "" #: ../../scenarios/gui.rst:18 msgid "" -"The Cocoa framework is only available on OS X. Don't pick this if you're " +"The Cocoa framework is only available on OS X. Don't pick this if you're " "writing a cross-platform application!" msgstr "" @@ -53,157 +54,196 @@ msgstr "" #: ../../scenarios/gui.rst:22 msgid "" -"PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ library " -"itself, it is currently licensed under the GNU LGPL. It is worth noting that" -" PyGTK only currently supports the Gtk-2.X API (NOT Gtk-3.0). It is " -"currently recommended that PyGTK not be used for new projects and that " -"existing applications be ported from PyGTK to PyGObject." +"PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ " +"library itself, it is currently licensed under the GNU LGPL. It is worth " +"noting that PyGTK only currently supports the Gtk-2.X API (NOT Gtk-3.0). " +"It is currently recommended that PyGTK not be used for new projects and " +"that existing applications be ported from PyGTK to PyGObject." msgstr "" #: ../../scenarios/gui.rst:29 -msgid "Kivy" +msgid "PyGObject aka (PyGi)" msgstr "" #: ../../scenarios/gui.rst:30 msgid "" -"`Kivy `_ is a Python library for development of multi-touch" -" enabled media rich applications. The aim is to allow for quick and easy " -"interaction design and rapid prototyping, while making your code reusable " -"and deployable." +"`PyGObject `_ provides Python " +"bindings, which gives access to the entire GNOME software platform. It is" +" fully compatible with GTK+ 3. Here is a tutorial to get started with " +"`Python GTK+ 3 Tutorial `_." +msgstr "" + +#: ../../scenarios/gui.rst:33 +msgid "`API Reference `_" +msgstr "" + +#: ../../scenarios/gui.rst:36 +msgid "Kivy" msgstr "" -#: ../../scenarios/gui.rst:35 +#: ../../scenarios/gui.rst:37 +msgid "" +"`Kivy `_ is a Python library for development of multi-" +"touch enabled media rich applications. The aim is to allow for quick and " +"easy interaction design and rapid prototyping, while making your code " +"reusable and deployable." +msgstr "" + +#: ../../scenarios/gui.rst:42 msgid "" "Kivy is written in Python, based on OpenGL and supports different input " "devices such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, " "Apple's products and so on." msgstr "" -#: ../../scenarios/gui.rst:38 +#: ../../scenarios/gui.rst:46 msgid "" -"Kivy is actively being developed by a community and free to use. It operates" -" on all major platforms (Linux, OSX, Windows, Android)." +"Kivy is actively being developed by a community and is free to use. It " +"operates on all major platforms (Linux, OSX, Windows, Android)." msgstr "" -#: ../../scenarios/gui.rst:41 +#: ../../scenarios/gui.rst:49 msgid "The main resource for information is the website: http://kivy.org" msgstr "" -#: ../../scenarios/gui.rst:44 +#: ../../scenarios/gui.rst:52 msgid "PyObjC" msgstr "" -#: ../../scenarios/gui.rst:45 +#: ../../scenarios/gui.rst:53 msgid "" -"Only available on OS X. Don't pick this if you're writing a cross-platform " -"application." +"Only available on OS X. Don't pick this if you're writing a cross-" +"platform application." msgstr "" -#: ../../scenarios/gui.rst:48 +#: ../../scenarios/gui.rst:56 msgid "PySide" msgstr "" -#: ../../scenarios/gui.rst:49 +#: ../../scenarios/gui.rst:57 msgid "PySide is a Python binding of the cross-platform GUI toolkit Qt." msgstr "" -#: ../../scenarios/gui.rst:51 -msgid "http://developer.qt.nokia.com/wiki/PySideDownloads/" +#: ../../scenarios/gui.rst:59 +msgid "pip install pyside" +msgstr "" + +#: ../../scenarios/gui.rst:61 +msgid "https://wiki.qt.io/Category:LanguageBindings::PySide::Downloads" msgstr "" -#: ../../scenarios/gui.rst:54 +#: ../../scenarios/gui.rst:64 msgid "PyQt" msgstr "" -#: ../../scenarios/gui.rst:55 +#: ../../scenarios/gui.rst:65 msgid "" "If your software does not fully comply with the GPL you will need a " "commercial license!" msgstr "" -#: ../../scenarios/gui.rst:57 +#: ../../scenarios/gui.rst:67 msgid "PyQt provides Python bindings for the Qt Framework (see below)." msgstr "" -#: ../../scenarios/gui.rst:59 +#: ../../scenarios/gui.rst:69 msgid "http://www.riverbankcomputing.co.uk/software/pyqt/download" msgstr "" -#: ../../scenarios/gui.rst:62 +#: ../../scenarios/gui.rst:72 msgid "PyjamasDesktop (pyjs Desktop)" msgstr "" -#: ../../scenarios/gui.rst:63 +#: ../../scenarios/gui.rst:73 msgid "" -"PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget " -"set for desktop and a cross-platform framework. (After release v0.6 " -"PyjamasDesktop is a part of Pyjamas (Pyjs)). Briefly, it allows the exact " -"same Python web application source code to be executed as a standalone " +"PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget" +" set for desktop and a cross-platform framework. (After release v0.6 " +"PyjamasDesktop is a part of Pyjamas (Pyjs)). Briefly, it allows the exact" +" same Python web application source code to be executed as a standalone " "desktop application." msgstr "" -#: ../../scenarios/gui.rst:68 +#: ../../scenarios/gui.rst:78 msgid "" "`Python Wiki for PyjamasDesktop " "`_." msgstr "" -#: ../../scenarios/gui.rst:70 +#: ../../scenarios/gui.rst:80 msgid "The main website; `pyjs Desktop `_." msgstr "" -#: ../../scenarios/gui.rst:73 +#: ../../scenarios/gui.rst:83 msgid "Qt" msgstr "" -#: ../../scenarios/gui.rst:74 +#: ../../scenarios/gui.rst:84 msgid "" "`Qt `_ is a cross-platform application framework " -"that is widely used for developing software with a GUI but can also be used " -"for non-GUI applications." +"that is widely used for developing software with a GUI but can also be " +"used for non-GUI applications." msgstr "" -#: ../../scenarios/gui.rst:79 +#: ../../scenarios/gui.rst:89 msgid "Tk" msgstr "" -#: ../../scenarios/gui.rst:80 +#: ../../scenarios/gui.rst:90 msgid "" "Tkinter is a thin object-oriented layer on top of Tcl/Tk. **It has the " -"advantage of being included with the Python standard library, making it the " -"most convenient and compatible toolkit to program with.**" +"advantage of being included with the Python standard library, making it " +"the most convenient and compatible toolkit to program with.**" msgstr "" -#: ../../scenarios/gui.rst:84 +#: ../../scenarios/gui.rst:94 msgid "" "Both Tk and Tkinter are available on most Unix platforms, as well as on " "Windows and Macintosh systems. Starting with the 8.0 release, Tk offers " "native look and feel on all platforms." msgstr "" -#: ../../scenarios/gui.rst:88 +#: ../../scenarios/gui.rst:98 msgid "" -"There's a good multi-language Tk tutorial with Python examples at `TkDocs " -"`_. There's more information " +"There's a good multi-language Tk tutorial with Python examples at `TkDocs" +" `_. There's more information " "available on the `Python Wiki `_." msgstr "" -#: ../../scenarios/gui.rst:93 +#: ../../scenarios/gui.rst:103 msgid "wxPython" msgstr "" -#: ../../scenarios/gui.rst:94 +#: ../../scenarios/gui.rst:104 msgid "" "wxPython is a GUI toolkit for the Python programming language. It allows " "Python programmers to create programs with a robust, highly functional " -"graphical user interface, simply and easily. It is implemented as a Python " -"extension module (native code) that wraps the popular wxWidgets cross " -"platform GUI library, which is written in C++." +"graphical user interface, simply and easily. It is implemented as a " +"Python extension module (native code) that wraps the popular wxWidgets " +"cross platform GUI library, which is written in C++." msgstr "" -#: ../../scenarios/gui.rst:100 +#: ../../scenarios/gui.rst:110 msgid "" "**Install (Stable) wxPython** *go to " "http://www.wxpython.org/download.php#stable and download the appropriate " "package for your OS.*" msgstr "" + +#~ msgid "" +#~ "The Cocoa framework is only available" +#~ " on OS X. Don't pick this if " +#~ "you're writing a cross-platform " +#~ "application!" +#~ msgstr "" + +#~ msgid "" +#~ "Kivy is actively being developed by " +#~ "a community and free to use. It" +#~ " operates on all major platforms " +#~ "(Linux, OSX, Windows, Android)." +#~ msgstr "" + +#~ msgid "http://developer.qt.nokia.com/wiki/PySideDownloads/" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..d944fcd30f6aa222eff504c0295a3a47822c729b 100644 GIT binary patch literal 4493 zcmeHK&u<$=7+s+Jkonz155VC=9NMbhwUbmRxM@{4af^}NSVDo$bu5 z9Sd;=i3=Bw2nliI!XJQy#F+~hZgAu8;C;Jx;+9fz;bu$r%k0d~yzkBXzM1@S{@m9d zKCk2Z7QWweW9d_U%JZ(E?E~Ki-Ut2;{1o^+aQ|t~I}iK_7~)w9dk23on#weG6nBZ&pekcYw@8 z0hveh#ga!G$UHsBWe7H>S#rH1a{Nta8!@bX%nnRw}15 zdC0shVRD|xP?iW@bc}h5QT=k6#k8UbgIS!ux;1hxvyECUD+mQfiU{*ZI<$e(HJR2n zf_hM|&8ZhN1S2<2ZuE}=uXQ5ESt7mmSPUg~MXItK6hO*rr_`IdkxrpW(VH0^N^3dz zy!hSCWV(IGYAT*&EK?_=c^`+^?}wB1exC$F?)UHJ%moiR&%-2Mv25COlPn_p=-^FK_ZWId=zR>OWo0b?=2*H zr)8Vl5!vCo*)WJ8fkW2hh0i zQz>{S506zcTMVi4dq%=SA|-)t&+*%NMsA4nf$Nb#iR0#ctX>%d~NJ?hx7tysozH zpGM)WA1}FzoD4^)dXP&C(wu+*gG7x;=Z<6?L!=_og^#A15;ZUaV{Buw9@~{kb&8%D zU4jUgsi4M=*+(jclD73Y%Q>?Tk$nj068CK%UJks%iwgpgo~DTw5o>DnxY(}J`P38P zF(*bljpWIt-mKTY-0=Q=g(q}X;d>O2P>;tt#U>x8Se1mGI~+NNeJ;m{Xd==OY|6BI zNIuqcDG#lV9SRgG&j?~dgn-%(wa7wPl(*%yL_x9eju8nZA|2)ki=Bm4EKT8FaLTQW z0&gDrBNBT>vOd0#7Ji#fr$OmCCKVvq8pv`sS}srQyDA~8*|MD7$R5Kbm+dCm%bY18 z>vX#1#kj`^fpAJP0o_Y6m&;S(5Cj)+i=tm-30I^-4P@Dn`=csi+nIHqW z8q<2c{$9XgVtJOd*spR8e_2RbmP~Mt7v%|WyAh)3hZ=cU)Se=mMO7*V;v$WFLhbTP zk$jXbqfxaUQ?yZprFFGzc63(TmK$d!{1L{>^jOaM0a6M&<3Rc8qEaj-KV$gBW8|a; zpG5<$k55bP8IfLD;{0~xA4`7UF>h3jbqlaG=3`$b%Z+Cpv{4Dl{+%!YAm7KtU+s^8?^FQ8p{su9{2!a3r delta 113 zcmeBGe!!%2Pl#nI0}wC*u?!HafH**)1EIjQ5l~VW$e%oqBZSvP*U(Vc*g(O^$jZoK zG7D#nv~EahVy=~fkE5S^sH3~9f{l-lLr$h%eo?yJ\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/imaging.rst:3 msgid "Image Manipulation" msgstr "" -#: ../../scenarios/imaging.rst:6 -msgid "Add introduction about image manipulation and its Python libraries." +#: ../../scenarios/imaging.rst:5 +msgid "" +"Most image processing and manipulation techniques can be carried out " +"effectively using two libraries: Python Imaging Library (PIL) and " +"OpenSource Computer Vision (OpenCV)." msgstr "" #: ../../scenarios/imaging.rst:9 +msgid "A brief description of both is given below." +msgstr "" + +#: ../../scenarios/imaging.rst:12 msgid "Python Imaging Library" msgstr "" -#: ../../scenarios/imaging.rst:11 +#: ../../scenarios/imaging.rst:14 msgid "" -"The `Python Imaging Library `_, or " -"PIL for short, is *the* library for image manipulation in Python. " -"Unfortunately, its development has stagnated, with its last release in 2009." +"The `Python Imaging Library `_, " +"or PIL for short, is one of the core libraries for image manipulation in " +"Python. Unfortunately, its development has stagnated, with its last " +"release in 2009." msgstr "" -#: ../../scenarios/imaging.rst:15 +#: ../../scenarios/imaging.rst:18 msgid "" -"Luckily for you, there's an actively-developed fork of PIL called `Pillow " -"`_ - it's easier to install, runs on all " -"operating systems, and supports Python 3." +"Luckily for you, there's an actively-developed fork of PIL called `Pillow" +" `_ - it's easier to install, runs on " +"all operating systems, and supports Python 3." msgstr "" -#: ../../scenarios/imaging.rst:19 +#: ../../scenarios/imaging.rst:23 ../../scenarios/imaging.rst:71 msgid "Installation" msgstr "" -#: ../../scenarios/imaging.rst:21 +#: ../../scenarios/imaging.rst:25 msgid "" "Before installing Pillow, you'll have to install Pillow's prerequisites. " -"Find the instructions for your platform `here " -"`_." +"Find the instructions for your platform in the `Pillow installation " +"instructions " +"`_." msgstr "" -#: ../../scenarios/imaging.rst:24 +#: ../../scenarios/imaging.rst:29 msgid "After that, it's straightforward:" msgstr "" -#: ../../scenarios/imaging.rst:0 -msgid "Todo" +#: ../../scenarios/imaging.rst:36 ../../scenarios/imaging.rst:86 +msgid "Example" +msgstr "" + +#: ../../scenarios/imaging.rst:59 +msgid "" +"There are more examples of the Pillow library in the `Pillow tutorial " +"`_." +msgstr "" + +#: ../../scenarios/imaging.rst:64 +msgid "OpenSource Computer Vision" +msgstr "" + +#: ../../scenarios/imaging.rst:66 +msgid "" +"OpenSource Computer Vision, more commonly known as OpenCV, is a more " +"advanced image manipulation and processing software than PIL. It has been" +" implemented in several languages and is widely used." +msgstr "" + +#: ../../scenarios/imaging.rst:73 +msgid "" +"In Python, image processing using OpenCV is implemented using the ``cv2``" +" and ``NumPy`` modules. The `installation instructions for OpenCV " +"`_ should guide you through configuring " +"the project for yourself." +msgstr "" + +#: ../../scenarios/imaging.rst:78 +msgid "NumPy can be downloaded from the Python Package Index(PyPI):" +msgstr "" + +#: ../../scenarios/imaging.rst:105 +msgid "" +"There are more Python-implemented examples of OpenCV in this `collection " +"of tutorials `_." msgstr "" + +#~ msgid "Add introduction about image manipulation and its Python libraries." +#~ msgstr "" + +#~ msgid "" +#~ "The `Python Imaging Library " +#~ "`_, or PIL " +#~ "for short, is *the* library for " +#~ "image manipulation in Python. Unfortunately," +#~ " its development has stagnated, with " +#~ "its last release in 2009." +#~ msgstr "" + +#~ msgid "" +#~ "Before installing Pillow, you'll have to" +#~ " install Pillow's prerequisites. Find the" +#~ " instructions for your platform `here " +#~ "`_." +#~ msgstr "" + +#~ msgid "Todo" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/json.mo b/docs/locale/ko/LC_MESSAGES/scenarios/json.mo new file mode 100644 index 0000000000000000000000000000000000000000..28b599d0472d68adb3c4e7df0caf1f7105fc28ee GIT binary patch literal 2661 zcmeHIO^@3|7&f#5YCuR_;qcx#EVh#^Dl2z))oeF~pkx#62BdOfC-FF$?!*(#jFU!4 zT!1^5{s*qyIUs%q;(|BnD`{n0-X8h~hx1R-g-o$tp;~QRF zd;Y}SWBi5j4#w!EAh-?u3it-_YhVKW4)`u-Ua=LaC? z`4JejaxX2Z+1yyKiU~PPwS3}CLBbK^`{bvR#K2@KfV`J zr>g(GZS^Qm3ab^!+1QzU?OZc*d5x;WsrPf2CdqCuwo+u^ATwhZE0f3~(ZWmTljF-T zwxualwh&5-k(RVj0vQIKxcY?4stMc3Rh)TMd~EC_*-zGVCTtf^{Y+mE%=}j5)>P!y z%+L*H&5^N`D|9g?rfMCgwsy6-D!>#MQ*o84u?JCT9lL7fJou_xD6})&25{v6Wv(EU zwF3mgA*;5m%ZP)=5DeG(LJ*eCuF-3sbZZMmAycie9oe*;%A!(SMcU?*z;0puHHJs4 z|CV}LWN5UYOyxNgTzD$POr`QdH<{( zc7^lN(2Bz06O2vi(Wl)mowa&xI&Ak^o$iCy>FIg<;^G*l#iSGyq`WfQMKqLR#yfP_ z?LN?o&&hE((4`eRdW4R-l!|$^bVtqmR8Nl@VXxC`?+9qdjqo9E7RVqPuI9+$Kenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../scenarios/json.rst:2 +msgid "JSON" +msgstr "" + +#: ../../scenarios/json.rst:4 +msgid "" +"The `json `_ library can " +"parse JSON from strings or files. The library parses JSON into a Python " +"dictionary or list. It can also convert Python dictionaries or lists into" +" JSON strings." +msgstr "" + +#: ../../scenarios/json.rst:9 +msgid "Parsing JSON" +msgstr "" + +#: ../../scenarios/json.rst:11 +msgid "Take the following string containing JSON data:" +msgstr "" + +#: ../../scenarios/json.rst:17 +msgid "It can be parsed like this:" +msgstr "" + +#: ../../scenarios/json.rst:24 +msgid "and can now be used as a normal dictionary:" +msgstr "" + +#: ../../scenarios/json.rst:31 +msgid "You can also convert the following to JSON:" +msgstr "" + +#: ../../scenarios/json.rst:46 +msgid "simplejson" +msgstr "" + +#: ../../scenarios/json.rst:48 +msgid "" +"The JSON library was added to Python in version 2.6. If you're using an " +"earlier version of Python, the `simplejson " +"`_ library is available via" +" PyPI." +msgstr "" + +#: ../../scenarios/json.rst:53 +msgid "" +"simplejson mimics the json standard library. It is available so that " +"developers that use older versions of Python can use the latest features " +"available in the json lib." +msgstr "" + +#: ../../scenarios/json.rst:57 +msgid "" +"You can start using simplejson when the json library is not available by " +"importing simplejson under a different name:" +msgstr "" + +#: ../../scenarios/json.rst:64 +msgid "" +"After importing simplejson as json, the above examples will all work as " +"if you were using the standard json library." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.mo b/docs/locale/ko/LC_MESSAGES/scenarios/network.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..a4b0a79537757ccff474634d8fb551b40683e186 100644 GIT binary patch literal 3223 zcmeHI%W~sH6csQ$%CLbQRV?musEK4JnMLpnVLTI0#*`g9v4<*VL)xvj)I{o5x?A=* z1z$n&6%;%6Y+%VB09*cmVh5*X#j%T`_<^XZeJ!c`+;h)8>i+$`JKqMl-of|)<12r& zas7(_BaGiL8W_C#dz ztYwLZ&g9fEvy5n{1SJr_5sT+cIaEe^Mzs(XFT9hEI0G?3r4?~SY=tGDq$oY&0(I#U zFm)C|Q=>10iD&|4r_4%D1#?aqWh(%edd5bygY#OkwN!4UV9uP8FDt2>VfWRf!{HApa{OBEAzT2d@$GhqO_iB=fxG}oEk zA*py)R!#AyAS=vV7(ie>&m`7i&K7uSy(r_sWVA!0;b?z{dV|i0(9!Yu8EqlMg~)r; z8xMM(muP9O&5aHJLzIQQkj*2_%N#7K$|_f$CzVEPNxg4Yk17Y(renl4RB#Y2M2pbc z+JYOJ)>eT*VFa|_dcO#j2?x_^U&`EnEw%SDq|Ip4be&O;U}~oeZ!G_r0a46XJ)}(Q zA_`W_f})&e(x#y;r?&vwQ$lD zb%IE3!U)-rswlIJ?xHP)EJOw!KHSKubc}MPLY5g*p|^Ll`iDm~%t{vjainZ6C@(W7 zi%ei^5ry{zdg)8t;#4q$%>yzyW-qqMRff`d$+x*0f$z+^(1;>iZZKSzU%PNy61Y@y zv6b71Tsz^r#zkDhUK~^^n*S!VR%&GQmtYk3;_x%*4i(!}RD0EGr))*7Xt!}D3T<3C zu!)Sr$7N!}iEdM4G@OJ_{0@U<;SqCa>RxO2ez?0E?zd=fuf2D0uZ0T}!!t3L9=@LU zdAD;G4u;`Thn@}FgWkOt!;@~K&mhFaFl965v}x1R=lwpNbOv2|*d26w{YRanqqFXK ze2A$kDY2!66T$K}^*blW&pXGM*Y7{dr2i5Q8-w1UdsEhK)M`A@%K80evMfN>iI=Wf zWK60D#8YNq!;ech3lDDQc`n#K!mi@lZxU@fm`c|;7D^Zt3^mZR$83t0??wC3{l@Jn WbbAWjo~Epc)g+ZyK35Vy&y?8=M` E03xuyf{)`d#Q0H+&tv=;#w!>f&if8N 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 F{~uieqqP74 delta 113 zcmaDI_kc;~o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUyDMB81mO*U(Vc*g(O^$jZoK ya\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/scientific.rst:3 msgid "Scientific Applications" @@ -21,20 +22,21 @@ msgstr "" #: ../../scenarios/scientific.rst:8 msgid "" -"Python is frequently used for high-performance scientific applications. It " -"is widely used in academia and scientific projects because it is easy to " -"write and performs well." +"Python is frequently used for high-performance scientific applications. " +"It is widely used in academia and scientific projects because it is easy " +"to write and performs well." msgstr "" #: ../../scenarios/scientific.rst:12 msgid "" "Due to its high performance nature, scientific computing in Python often " -"utilizes external libraries, typically written in faster languages (like C, " -"or FORTRAN for matrix operations). The main libraries used are `NumPy`_, " -"`SciPy`_ and `Matplotlib`_. Going into detail about these libraries is " -"beyond the scope of the Python guide. However, a comprehensive introduction " -"to the scientific Python ecosystem can be found in the `Python Scientific " -"Lecture Notes `_" +"utilizes external libraries, typically written in faster languages (like " +"C, or FORTRAN for matrix operations). The main libraries used are " +"`NumPy`_, `SciPy`_ and `Matplotlib`_. Going into detail about these " +"libraries is beyond the scope of the Python guide. However, a " +"comprehensive introduction to the scientific Python ecosystem can be " +"found in the `Python Scientific Lecture Notes `_" msgstr "" #: ../../scenarios/scientific.rst:22 @@ -48,13 +50,13 @@ msgstr "" #: ../../scenarios/scientific.rst:27 msgid "" "`IPython `_ is an enhanced version of Python " -"interpreter, which provides features of great interest to scientists. The " -"`inline mode` allow graphics and plots to be displayed in the terminal (Qt " -"based version). Moreover, the `notebook` mode supports literate programming " -"and reproducible science generating a web-based Python notebook. This " -"notebook allows you to store chunks of Python code along side the results " -"and additional comments (HTML, LaTeX, Markdown). The notebook can then be " -"shared and exported in various file formats." +"interpreter, which provides features of great interest to scientists. The" +" `inline mode` allows graphics and plots to be displayed in the terminal " +"(Qt based version). Moreover, the `notebook` mode supports literate " +"programming and reproducible science generating a web-based Python " +"notebook. This notebook allows you to store chunks of Python code along " +"side the results and additional comments (HTML, LaTeX, Markdown). The " +"notebook can then be shared and exported in various file formats." msgstr "" #: ../../scenarios/scientific.rst:38 @@ -67,24 +69,23 @@ msgstr "" #: ../../scenarios/scientific.rst:43 msgid "" -"`NumPy `_ is a low level library written in C (and " -"FORTRAN) for high level mathematical functions. NumPy cleverly overcomes the" -" problem of running slower algorithms on Python by using multidimensional " -"arrays and functions that operate on arrays. Any algorithm can then be " -"expressed as a function on arrays, allowing the algorithms to be run " -"quickly." +"`NumPy `_ is a low level library written in C " +"(and FORTRAN) for high level mathematical functions. NumPy cleverly " +"overcomes the problem of running slower algorithms on Python by using " +"multidimensional arrays and functions that operate on arrays. Any " +"algorithm can then be expressed as a function on arrays, allowing the " +"algorithms to be run quickly." msgstr "" #: ../../scenarios/scientific.rst:49 msgid "" -"NumPy is part of the SciPy project, and is released as a separate library so" -" people who only need the basic requirements can use it without installing " -"the rest of SciPy." +"NumPy is part of the SciPy project, and is released as a separate library" +" so people who only need the basic requirements can use it without " +"installing the rest of SciPy." msgstr "" #: ../../scenarios/scientific.rst:53 -msgid "" -"NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." +msgid "NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." msgstr "" #: ../../scenarios/scientific.rst:56 @@ -93,11 +94,11 @@ msgstr "" #: ../../scenarios/scientific.rst:58 msgid "" -"`Numba `_ is an Numpy aware Python compiler (just-" -"in-time (JIT) specializing compiler) which compiles annotated Python (and " -"Numpy) code to LLVM (Low Level Virtual Machine) through special decorators. " -"Briefly, Numba uses a system that compiles Python code with LLVM to code " -"which can be natively executed at runtime." +"`Numba `_ is a NumPy aware Python compiler " +"(just-in-time (JIT) specializing compiler) which compiles annotated " +"Python (and NumPy) code to LLVM (Low Level Virtual Machine) through " +"special decorators. Briefly, Numba uses a system that compiles Python " +"code with LLVM to code which can be natively executed at runtime." msgstr "" #: ../../scenarios/scientific.rst:65 @@ -107,10 +108,10 @@ msgstr "" #: ../../scenarios/scientific.rst:67 msgid "" "`SciPy `_ is a library that uses NumPy for more " -"mathematical functions. SciPy uses NumPy arrays as the basic data structure," -" and comes with modules for various commonly used tasks in scientific " -"programming, including linear algebra, integration (calculus), ordinary " -"differential equation solving and signal processing." +"mathematical functions. SciPy uses NumPy arrays as the basic data " +"structure, and comes with modules for various commonly used tasks in " +"scientific programming, including linear algebra, integration (calculus)," +" ordinary differential equation solving and signal processing." msgstr "" #: ../../scenarios/scientific.rst:74 @@ -119,12 +120,12 @@ msgstr "" #: ../../scenarios/scientific.rst:76 msgid "" -"`Matplotlib `_ is a flexible plotting " -"library for creating interactive 2D and 3D plots that can also be saved as " -"manuscript-quality figures. The API in many ways reflects that of `MATLAB " -"`_, easing transition of MATLAB " -"users to Python. Many examples, along with the source code to re-create " -"them, are available in the `matplotlib gallery " +"`Matplotlib `_ is a flexible plotting" +" library for creating interactive 2D and 3D plots that can also be saved " +"as manuscript-quality figures. The API in many ways reflects that of " +"`MATLAB `_, easing transition " +"of MATLAB users to Python. Many examples, along with the source code to " +"re-create them, are available in the `matplotlib gallery " "`_." msgstr "" @@ -134,12 +135,12 @@ msgstr "" #: ../../scenarios/scientific.rst:87 msgid "" -"`Pandas `_ is data manipulation library based on " -"Numpy which provides many useful functions for accessing, indexing, merging " -"and grouping data easily. The main data structure (DataFrame) is close to " -"what could be found in the R statistical package; that is, heterogeneous " -"data tables with name indexing, time series operations and auto-alignment of" -" data." +"`Pandas `_ is data manipulation library based " +"on Numpy which provides many useful functions for accessing, indexing, " +"merging and grouping data easily. The main data structure (DataFrame) is " +"close to what could be found in the R statistical package; that is, " +"heterogeneous data tables with name indexing, time series operations and " +"auto-alignment of data." msgstr "" #: ../../scenarios/scientific.rst:95 @@ -148,76 +149,136 @@ msgstr "" #: ../../scenarios/scientific.rst:97 msgid "" -"`Rpy2 `_ is a Python binding for the R" -" statistical package allowing the execution of R functions from Python and " -"passing data back and forth between the two environments. Rpy2 is the object" -" oriented implementation of the `Rpy `_" -" bindings." +"`Rpy2 `_ is a Python binding for the R " +"statistical package allowing the execution of R functions from Python and" +" passing data back and forth between the two environments. Rpy2 is the " +"object oriented implementation of the `Rpy " +"`_ bindings." msgstr "" -#: ../../scenarios/scientific.rst:103 +#: ../../scenarios/scientific.rst:104 msgid "PsychoPy" msgstr "" -#: ../../scenarios/scientific.rst:105 +#: ../../scenarios/scientific.rst:106 msgid "" -"`PsychoPy `_ is a library for cognitive scientists" -" allowing the creation of cognitive psychology and neuroscience experiments." -" The library handles presentation of stimuli, scripting of experimental " -"design and data collection." +"`PsychoPy `_ is a library for cognitive " +"scientists allowing the creation of cognitive psychology and neuroscience" +" experiments. The library handles presentation of stimuli, scripting of " +"experimental design and data collection." msgstr "" -#: ../../scenarios/scientific.rst:112 +#: ../../scenarios/scientific.rst:113 msgid "Resources" msgstr "" -#: ../../scenarios/scientific.rst:114 +#: ../../scenarios/scientific.rst:115 msgid "" -"Installation of scientific Python packages can be troublesome, as many of " -"these packages are implemented as Python C extensions which need to be " +"Installation of scientific Python packages can be troublesome, as many of" +" these packages are implemented as Python C extensions which need to be " "compiled. This section lists various so-called scientific Python " -"distributions which provide precompiled and easy-to-install collections of " -"scientific Python packages." +"distributions which provide precompiled and easy-to-install collections " +"of scientific Python packages." msgstr "" -#: ../../scenarios/scientific.rst:121 +#: ../../scenarios/scientific.rst:122 msgid "Unofficial Windows Binaries for Python Extension Packages" msgstr "" -#: ../../scenarios/scientific.rst:123 +#: ../../scenarios/scientific.rst:124 msgid "" "Many people who do scientific computing are on Windows, yet many of the " -"scientific computing packages are notoriously difficult to build and install" -" on this platform. `Christoph Gohlke " -"`_ however, has compiled a list " -"of Windows binaries for many useful Python packages. The list of packages " -"has grown from a mainly scientific Python resource to a more general list. " -"If you're on Windows, you may want to check it out." +"scientific computing packages are notoriously difficult to build and " +"install on this platform. `Christoph Gohlke " +"`_ however, has compiled a " +"list of Windows binaries for many useful Python packages. The list of " +"packages has grown from a mainly scientific Python resource to a more " +"general list. If you're on Windows, you may want to check it out." msgstr "" -#: ../../scenarios/scientific.rst:131 +#: ../../scenarios/scientific.rst:133 msgid "Anaconda" msgstr "" -#: ../../scenarios/scientific.rst:133 +#: ../../scenarios/scientific.rst:135 msgid "" -"`Continuum Analytics `_ offers the `Anaconda Python " -"Distribution `_ which includes " -"all the common scientific Python packages as well as many packages related " -"to data analytics and big data. Anaconda itself is free, and Continuum sells" -" a number of proprietary add-ons. Free licenses for the add-ons are " -"available for academics and researchers." +"`Continuum Analytics `_ offers the `Anaconda Python" +" Distribution `_ which " +"includes all the common scientific Python packages as well as many " +"packages related to data analytics and big data. Anaconda itself is free," +" and Continuum sells a number of proprietary add-ons. Free licenses for " +"the add-ons are available for academics and researchers." msgstr "" -#: ../../scenarios/scientific.rst:141 +#: ../../scenarios/scientific.rst:143 msgid "Canopy" msgstr "" -#: ../../scenarios/scientific.rst:143 +#: ../../scenarios/scientific.rst:145 msgid "" -"`Canopy `_ is another scientific" -" Python distribution, produced by `Enthought `_." -" A limited 'Canopy Express' variant is available for free, but Enthought " -"charges for the full distribution. Free licenses are available for " -"academics." -msgstr "" +"`Canopy `_ is another " +"scientific Python distribution, produced by `Enthought " +"`_. A limited 'Canopy Express' variant is " +"available for free, but Enthought charges for the full distribution. Free" +" licenses are available for academics." +msgstr "" + +#~ msgid "" +#~ "`IPython `_ is an " +#~ "enhanced version of Python interpreter, " +#~ "which provides features of great " +#~ "interest to scientists. The `inline " +#~ "mode` allow graphics and plots to " +#~ "be displayed in the terminal (Qt " +#~ "based version). Moreover, the `notebook` " +#~ "mode supports literate programming and " +#~ "reproducible science generating a web-" +#~ "based Python notebook. This notebook " +#~ "allows you to store chunks of " +#~ "Python code along side the results " +#~ "and additional comments (HTML, LaTeX, " +#~ "Markdown). The notebook can then be " +#~ "shared and exported in various file " +#~ "formats." +#~ msgstr "" + +#~ msgid "" +#~ "`Numba `_ is an Numpy" +#~ " aware Python compiler (just-in-time" +#~ " (JIT) specializing compiler) which " +#~ "compiles annotated Python (and Numpy) " +#~ "code to LLVM (Low Level Virtual " +#~ "Machine) through special decorators. Briefly," +#~ " Numba uses a system that compiles" +#~ " Python code with LLVM to code " +#~ "which can be natively executed at " +#~ "runtime." +#~ msgstr "" + +#~ msgid "" +#~ "`Rpy2 `_ is a" +#~ " Python binding for the R statistical" +#~ " package allowing the execution of R" +#~ " functions from Python and passing " +#~ "data back and forth between the " +#~ "two environments. Rpy2 is the object " +#~ "oriented implementation of the `Rpy " +#~ "`_ bindings." +#~ msgstr "" + +#~ msgid "" +#~ "Many people who do scientific computing" +#~ " are on Windows, yet many of " +#~ "the scientific computing packages are " +#~ "notoriously difficult to build and " +#~ "install on this platform. `Christoph " +#~ "Gohlke `_ " +#~ "however, has compiled a list of " +#~ "Windows binaries for many useful Python" +#~ " packages. The list of packages has" +#~ " grown from a mainly scientific " +#~ "Python resource to a more general " +#~ "list. If you're on Windows, you " +#~ "may want to check it out." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..decaf70b569e67137682a2ad9ab2a87d083a1243 100644 GIT binary patch literal 6135 zcmeHK&u=6-6*jOe(EMJO9|u^OQ-d~D=}gdS)bm4|&1Be!WF{nmo#nFSu5wp-##OGd zU0rFAH~|t8AaOt(5fTTG77lwxXfJy~;>-mhF8m8f-1wed)tUVZxOAk%sj~h2-uJ%u zJ=Z^9cxjPGH59{YasVaEQ0=bt~%*e5Xl=p&4Ay#FP}zu@_uk23Zr zj88wt*dOqoPZ;|wp8xuB#(se3e_$kk9^r8E=kFNFpC5lJ`t!R_M}OYINdCO|ndr|x zM)K#|7~jSCFO1~RZ(*GL`8@z2e}411=+E02$)CTy82$O#=c7Njz7YNS_ZKnwwKpVh zq%62MymOLgSu0AJ=BDwo@ma>L@RhXOSE3mwy}Y8Ch0I0VQu$h^OKWQ9t!hflsk+rF zS6;8VylQ3c9X2o4UOG$)$5qpIKK(j7Sb7*2{As81CtNf_ubpx`yqDZbNvC?O<)*Wo z{K5;#3*iM6PZ!-<+N2S+oZ>iy z4TB~`7?!&hVTSd&7S8dh^0H1^t8zJ=vqRIAz@yW`E7Q2Ia)4Kf6@2aTTspVxGy-NSy;@Twm2XICL(bcG7v5Zj39>oi{edSLFg+ob!}r33bDgok!7Kri(b(QCmoY5m=i}0V_VjnzfUUcWp&;TIG=tg&x3rYEbu0ljfjrt|EEpq75)*fjMGK!dDALj_ zqmqD)+7#Ug8-YoaR=Q3jJ78^=c`Id>&Dn*iB~}C2kTF$AO0l6x8x+REbepz8f(c(ze7p4vbV}_OpBIEI52$_ z2iTUPaD0i?0MeQjNa&kEl{l7F<Iuh}Zzraf35+ltjvpmwauyDNcX~ z>>R#R)~T|ed5y&(KNhrw%uv2!EP{4GCLxf38p2ak9-LYt-$Rn0krAq$615VvdJxGV zp9DovcygOitx+qraa8pZibY0gO<#oqC*u$_2qYvEe_GI0+SQmhD14Xu4uB85q8dmU zMYO5>5FYpl{lz*W6?(}K6lnzHy;4YaEk#4Y!yhT|OlSp_2P6WbHJnsH)bfs$J>^s; zXhXatS)n*0$G9Vwgfi55ueV0z=^H3-+XgWkgMBgpOu5&FgfWYADk^cLz9RTJ234u$3Hjr|LvFG}-v z<$XKf-R=86?e|@Li~e8lUOBxRb8WCG{`OhpATMB@(wR9E+7^;vU7}nPjxn^Shy|( z9bbYd5ILHTsgM@#hE_7hNe^iucPW&R0g%Fbx~71nPC=u!T3CT@G!hpH2^vr7A*jij z5aI@N4)53T4x`sQ91Wwvy`U*HZ2?&wWU_0y7iCa=at=(Q8$;;w!S$e;;Bu^eT9S=d zflZEZpiA4(rISswGPc~6%`WaFxHg2ahNhz$=ONc)p$bjnz2=KfX`di7oz)2S#@M5Z z4p}mzuE&cMF_7dv#7x`8LTTmKDSvYiShOjHI}e>j_nigqQbP#1Nvd`;L9n9?2)p-B zjB!w1ghbJjF>-ch&10lIIWCg#O6yP+a~=UGJ1WFkI!pH^=aQOwa_UM|BwA`U}17DSBlIJ>)t#%I8RO=Cif2b z>ksFr$1i{H;e(^eiEuu-v`{UeZS0)i|IWz?e{gVm#BU#+9vq*%dT{UF`O(G2T`XICllxF+5WZ={qr0p6c-ETrZ)(*5)slkKMgYH<5$u>CZk>-?xv>Gsorn&$S?VEbvX{WREq8dTd) PgYBmQ?(6@LPlNvfc_%)_ delta 113 zcmeya|A0y7o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#l0cL=YEuA!l>v4Mh-k(H6f zWJjJDY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$&YwUnL|U|CQI=uGco`G9E274 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po index 7a72cf258..33a613cb2 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/scrape.rst:2 msgid "HTML Scraping" @@ -22,17 +23,18 @@ msgstr "" #: ../../scenarios/scrape.rst:7 msgid "" "Web sites are written using HTML, which means that each web page is a " -"structured document. Sometimes it would be great to obtain some data from " -"them and preserve the structure while we're at it. Web sites don't always " -"provide their data in comfortable formats such as ``csv`` or ``json``." +"structured document. Sometimes it would be great to obtain some data from" +" them and preserve the structure while we're at it. Web sites don't " +"always provide their data in comfortable formats such as ``csv`` or " +"``json``." msgstr "" #: ../../scenarios/scrape.rst:12 msgid "" -"This is where web scraping comes in. Web scraping is the practice of using a" -" computer program to sift through a web page and gather the data that you " -"need in a format most useful to you while at the same time preserving the " -"structure of the data." +"This is where web scraping comes in. Web scraping is the practice of " +"using a computer program to sift through a web page and gather the data " +"that you need in a format most useful to you while at the same time " +"preserving the structure of the data." msgstr "" #: ../../scenarios/scrape.rst:18 @@ -41,74 +43,90 @@ msgstr "" #: ../../scenarios/scrape.rst:20 msgid "" -"`lxml `_ is a pretty extensive library written for parsing " -"XML and HTML documents very quickly, even handling messed up tags in the " -"process. We will also be using the `Requests `_ module instead of the already built-in urllib2 " -"module due to improvements in speed and readability. You can easily install " -"both using ``pip install lxml`` and ``pip install requests``." +"`lxml `_ is a pretty extensive library written for " +"parsing XML and HTML documents very quickly, even handling messed up tags" +" in the process. We will also be using the `Requests `_ module instead of the already built-in urllib2" +" module due to improvements in speed and readability. You can easily " +"install both using ``pip install lxml`` and ``pip install requests``." msgstr "" -#: ../../scenarios/scrape.rst:27 +#: ../../scenarios/scrape.rst:28 msgid "Let's start with the imports:" msgstr "" -#: ../../scenarios/scrape.rst:34 +#: ../../scenarios/scrape.rst:35 msgid "" -"Next we will use ``requests.get`` to retrieve the web page with our data, " -"parse it using the ``html`` module and save the results in ``tree``:" +"Next we will use ``requests.get`` to retrieve the web page with our data," +" parse it using the ``html`` module and save the results in ``tree``:" msgstr "" -#: ../../scenarios/scrape.rst:42 +#: ../../scenarios/scrape.rst:43 msgid "" -"``tree`` now contains the whole HTML file in a nice tree structure which we " -"can go over two different ways: XPath and CSSSelect. In this example, we " -"will focus on the former." +"(We need to use ``page.content`` rather than ``page.text`` because " +"``html.fromstring`` implicitly expects ``bytes`` as input.)" msgstr "" #: ../../scenarios/scrape.rst:46 msgid "" -"XPath is a way of locating information in structured documents such as HTML " -"or XML documents. A good introduction to XPath is on `W3Schools " -"`_ ." +"``tree`` now contains the whole HTML file in a nice tree structure which " +"we can go over two different ways: XPath and CSSSelect. In this example, " +"we will focus on the former." msgstr "" #: ../../scenarios/scrape.rst:50 msgid "" +"XPath is a way of locating information in structured documents such as " +"HTML or XML documents. A good introduction to XPath is on `W3Schools " +"`_ ." +msgstr "" + +#: ../../scenarios/scrape.rst:54 +msgid "" "There are also various tools for obtaining the XPath of elements such as " -"FireBug for Firefox or the Chrome Inspector. If you're using Chrome, you can" -" right click an element, choose 'Inspect element', highlight the code, right" -" click again and choose 'Copy XPath'." +"FireBug for Firefox or the Chrome Inspector. If you're using Chrome, you " +"can right click an element, choose 'Inspect element', highlight the code," +" right click again and choose 'Copy XPath'." msgstr "" -#: ../../scenarios/scrape.rst:55 +#: ../../scenarios/scrape.rst:59 msgid "" -"After a quick analysis, we see that in our page the data is contained in two" -" elements - one is a div with title 'buyer-name' and the other is a span " -"with class 'item-price':" +"After a quick analysis, we see that in our page the data is contained in " +"two elements - one is a div with title 'buyer-name' and the other is a " +"span with class 'item-price':" msgstr "" -#: ../../scenarios/scrape.rst:64 +#: ../../scenarios/scrape.rst:68 msgid "" "Knowing this we can create the correct XPath query and use the lxml " "``xpath`` function like this:" msgstr "" -#: ../../scenarios/scrape.rst:74 +#: ../../scenarios/scrape.rst:78 msgid "Let's see what we got exactly:" msgstr "" -#: ../../scenarios/scrape.rst:94 +#: ../../scenarios/scrape.rst:98 msgid "" -"Congratulations! We have successfully scraped all the data we wanted from a " -"web page using lxml and Requests. We have it stored in memory as two lists. " -"Now we can do all sorts of cool stuff with it: we can analyze it using " -"Python or we can save it to a file and share it with the world." +"Congratulations! We have successfully scraped all the data we wanted from" +" a web page using lxml and Requests. We have it stored in memory as two " +"lists. Now we can do all sorts of cool stuff with it: we can analyze it " +"using Python or we can save it to a file and share it with the world." msgstr "" -#: ../../scenarios/scrape.rst:99 +#: ../../scenarios/scrape.rst:103 msgid "" "Some more cool ideas to think about are modifying this script to iterate " "through the rest of the pages of this example dataset, or rewriting this " "application to use threads for improved speed." msgstr "" + +#~ msgid "" +#~ "XPath is a way of locating " +#~ "information in structured documents such " +#~ "as HTML or XML documents. A good" +#~ " introduction to XPath is on " +#~ "`W3Schools `_ " +#~ "." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo b/docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo new file mode 100644 index 0000000000000000000000000000000000000000..bc4abd4b9b207b96981df9d7466f99d6fd3064fa GIT binary patch literal 1989 zcmeHH%Wm8@6jj^w5iPUmrd`}cfgo_G(Ktb2D7KqPJV^$ai3j$iMZ1YP5=UZ9kqSxK zndCeA5d{*UpV05cN8^TeO_ z;}awY9tR9O-+bQlYykt$U0~q(6&M|G&*@lL$(4M?y)?T2Bv`ta-(z6crvTd zJrmYTU6S**&3$V{K}BGb+8g4uGPdR(d3bT9%()|pp`oQ9SMd;TERs#=NlmWJE2N$C zb)O@>Lx3!$=IU~e4S^N8!Th2~Xo6HzLmYR)-R^Wc{M7}w>!3yGP*u>}se8XLL$%bh zmajyg96E>&1z!YTly+W8h{PZLF2_+J-6^?-=SZ`(gJv za%nsNI>n|57ADbL=BG+T7sSy57HOzF6aVGyMtG=czV;Q?0NW_XR)Cu)J=GOyCU;5G zg(b$8gYCga!l3CUO)6h2C`+Orf)QYPe>J}g%6=BPXOn_`k4hjqqn@;EWg#d{(qtGP ziC`d`xl$JFL0dYuFd4=3!v%Y2Mdv!hxeys`r^9dAFlECbr8`-AXDh{nKz1a~WT4-~ z{Wu;SvDqOz7}1l%Y&O~Y>G0_|o^t2e!gB2t$2QOC(X;84o{nZ?+8xhElj;4@!NJk^ z_;??o{Q_omYTgalLhw3#q21~9zLLS1{dlfg%N2WsS`ok8&JEC;VRPS8V4pE~v(4U}K$|0$Veqou%~gW1)qG fHSlen(F48|infzG$=&$FO%krA4>!sGKenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../scenarios/serialization.rst:3 +msgid "Data Serialization" +msgstr "" + +#: ../../scenarios/serialization.rst:6 +msgid "What is data serialization?" +msgstr "" + +#: ../../scenarios/serialization.rst:8 +msgid "" +"Data serialization is the concept of converting structured data into a " +"format that allows it to be shared or stored in such a way that its " +"original structure to be recovered. In some cases, the secondary " +"intention of data serialization is to minimize the size of the serialized" +" data which then minimizes disk space or bandwidth requirements." +msgstr "" + +#: ../../scenarios/serialization.rst:15 +msgid "Pickle" +msgstr "" + +#: ../../scenarios/serialization.rst:17 +msgid "" +"The native data serialization module for Python is called `Pickle " +"`_." +msgstr "" + +#: ../../scenarios/serialization.rst:20 +msgid "Here's an example:" +msgstr "" + +#: ../../scenarios/serialization.rst:36 +msgid "Protobuf" +msgstr "" + +#: ../../scenarios/serialization.rst:38 +msgid "" +"If you're looking for a serialization module that has support in multiple" +" languages, Google's `Protobuf `_ library is an option." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo b/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..abf33ebeaafd12391ac06181735815aa64f721c1 100644 GIT binary patch literal 16401 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\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/speed.rst:2 msgid "Speed" @@ -17,15 +18,15 @@ msgstr "" #: ../../scenarios/speed.rst:4 msgid "" -"CPython, the most commonly used implementation of Python, is slow for CPU " -"bound tasks. `PyPy`_ is fast." +"CPython, the most commonly used implementation of Python, is slow for CPU" +" bound tasks. `PyPy`_ is fast." msgstr "" #: ../../scenarios/speed.rst:7 msgid "" -"Using a slightly modified version of `David Beazleys`_ CPU bound test code " -"(added loop for multiple tests), you can see the difference between CPython " -"and PyPy's processing." +"Using a slightly modified version of `David Beazley's`_ CPU bound test " +"code (added loop for multiple tests), you can see the difference between " +"CPython and PyPy's processing." msgstr "" #: ../../scenarios/speed.rst:37 @@ -38,19 +39,19 @@ msgstr "" #: ../../scenarios/speed.rst:43 msgid "" -"`The GIL`_ (Global Interpreter Lock) is how Python allows multiple threads " -"to operate at the same time. Python's memory management isn't entirely " -"thread-safe, so the GIL is required to prevent multiple threads from running" -" the same Python code at once." +"`The GIL`_ (Global Interpreter Lock) is how Python allows multiple " +"threads to operate at the same time. Python's memory management isn't " +"entirely thread-safe, so the GIL is required to prevent multiple threads " +"from running the same Python code at once." msgstr "" #: ../../scenarios/speed.rst:48 msgid "" -"David Beazley has a great `guide`_ on how the GIL operates. He also covers " -"the `new GIL`_ in Python 3.2. His results show that maximizing performance " -"in a Python application requires a strong understanding of the GIL, how it " -"affects your specific application, how many cores you have, and where your " -"application bottlenecks are." +"David Beazley has a great `guide`_ on how the GIL operates. He also " +"covers the `new GIL`_ in Python 3.2. His results show that maximizing " +"performance in a Python application requires a strong understanding of " +"the GIL, how it affects your specific application, how many cores you " +"have, and where your application bottlenecks are." msgstr "" #: ../../scenarios/speed.rst:55 ../../scenarios/speed.rst:65 @@ -69,10 +70,11 @@ msgstr "" #: ../../scenarios/speed.rst:71 msgid "" -"`Cython `_ implements a superset of the Python language " -"with which you are able to write C and C++ modules for Python. Cython also " -"allows you to call functions from compiled C libraries. Using Cython allows " -"you to take advantage of Python's strong typing of variables and operations." +"`Cython `_ implements a superset of the Python " +"language with which you are able to write C and C++ modules for Python. " +"Cython also allows you to call functions from compiled C libraries. Using" +" Cython allows you to take advantage of Python's strong typing of " +"variables and operations." msgstr "" #: ../../scenarios/speed.rst:76 @@ -82,24 +84,25 @@ msgstr "" #: ../../scenarios/speed.rst:103 msgid "" "This implementation of an algorithm to find prime numbers has some " -"additional keywords compared to the next one, which is implemented in pure " -"Python:" +"additional keywords compared to the next one, which is implemented in " +"pure Python:" msgstr "" #: ../../scenarios/speed.rst:128 msgid "" -"Notice that in the Cython version you declare integers and integer arrays to" -" be compiled into C types while also creating a Python list:" +"Notice that in the Cython version you declare integers and integer arrays" +" to be compiled into C types while also creating a Python list:" msgstr "" #: ../../scenarios/speed.rst:151 msgid "" "What is the difference? In the upper Cython version you can see the " -"declaration of the variable types and the integer array in a similar way as " -"in standard C. For example `cdef int n,k,i` in line 3. This additional type " -"declaration (i.e. integer) allows the Cython compiler to generate more " -"efficient C code from the second version. While standard Python code is " -"saved in :file:`*.py` files, Cython code is saved in :file:`*.pyx` files." +"declaration of the variable types and the integer array in a similar way " +"as in standard C. For example `cdef int n,k,i` in line 3. This additional" +" type declaration (i.e. integer) allows the Cython compiler to generate " +"more efficient C code from the second version. While standard Python code" +" is saved in :file:`*.py` files, Cython code is saved in :file:`*.pyx` " +"files." msgstr "" #: ../../scenarios/speed.rst:158 @@ -114,13 +117,13 @@ msgstr "" msgid "" "The `pyximport` module allows you to import :file:`*.pyx` files (e.g., " ":file:`primesCy.pyx`) with the Cython-compiled version of the `primes` " -"function. The `pyximport.install()` command allows the Python interpreter to" -" start the Cython compiler directly to generate C-code, which is " -"automatically compiled to a :file:`*.so` C-library. Cython is then able to " -"import this library for you in your Python code, easily and efficiently. " -"With the `time.time()` function you are able to compare the time between " -"these 2 different calls to find 500 prime numbers. On a standard notebook " -"(dual core AMD E-450 1.6 GHz), the measured values are:" +"function. The `pyximport.install()` command allows the Python interpreter" +" to start the Cython compiler directly to generate C-code, which is " +"automatically compiled to a :file:`*.so` C-library. Cython is then able " +"to import this library for you in your Python code, easily and " +"efficiently. With the `time.time()` function you are able to compare the " +"time between these 2 different calls to find 500 prime numbers. On a " +"standard notebook (dual core AMD E-450 1.6 GHz), the measured values are:" msgstr "" #: ../../scenarios/speed.rst:209 @@ -141,22 +144,229 @@ msgstr "" msgid "Numba" msgstr "" +#: ../../scenarios/speed.rst +msgid "Todo" +msgstr "" + #: ../../scenarios/speed.rst:227 msgid "Write about Numba and the autojit compiler for NumPy" msgstr "" -#: ../../scenarios/speed.rst:230 ../../scenarios/speed.rst:234 +#: ../../scenarios/speed.rst:230 +msgid "Concurrency" +msgstr "" + +#: ../../scenarios/speed.rst:234 +msgid "Concurrent.futures" +msgstr "" + +#: ../../scenarios/speed.rst:236 +msgid "" +"The `concurrent.futures`_ module is a module in the standard library that" +" provides a \"high-level interface for asynchronously executing " +"callables\". It abstracts away a lot of the more complicated details " +"about using multiple threads or processes for concurrency, and allows the" +" user to focus on accomplishing the task at hand." +msgstr "" + +#: ../../scenarios/speed.rst:242 +msgid "" +"The `concurrent.futures`_ module exposes two main classes, the " +"`ThreadPoolExecutor` and the `ProcessPoolExecutor`. The " +"ThreadPoolExecutor will create a pool of worker threads that a user can " +"submit jobs to. These jobs will then be executed in another thread when " +"the next worker thread becomes available." +msgstr "" + +#: ../../scenarios/speed.rst:248 +msgid "" +"The ProcessPoolExecutor works in the same way, except instead of using " +"multiple threads for its workers, it will use multiple processes. This " +"makes it possible to side-step the GIL, however because of the way things" +" are passed to worker processes, only picklable objects can be executed " +"and returned." +msgstr "" + +#: ../../scenarios/speed.rst:253 +msgid "" +"Because of the way the GIL works, a good rule of thumb is to use a " +"ThreadPoolExecutor when the task being executed involves a lot of " +"blocking (i.e. making requests over the network) and to use a " +"ProcessPoolExecutor executor when the task is computationally expensive." +msgstr "" + +#: ../../scenarios/speed.rst:258 +msgid "" +"There are two main ways of executing things in parallel using the two " +"Executors. One way is with the `map(func, iterables)` method. This works " +"almost exactly like the builtin `map()` function, except it will execute " +"everything in parallel. :" +msgstr "" + +#: ../../scenarios/speed.rst:280 +msgid "" +"For even more control, the `submit(func, *args, **kwargs)` method will " +"schedule a callable to be executed ( as `func(*args, **kwargs)`) and " +"returns a `Future`_ object that represents the execution of the callable." +msgstr "" + +#: ../../scenarios/speed.rst:284 +msgid "" +"The Future object provides various methods that can be used to check on " +"the progress of the scheduled callable. These include:" +msgstr "" + +#: ../../scenarios/speed.rst:287 +msgid "cancel()" +msgstr "" + +#: ../../scenarios/speed.rst:288 +msgid "Attempt to cancel the call." +msgstr "" + +#: ../../scenarios/speed.rst:289 +msgid "cancelled()" +msgstr "" + +#: ../../scenarios/speed.rst:290 +msgid "Return True if the call was successfully cancelled." +msgstr "" + +#: ../../scenarios/speed.rst:292 +msgid "running()" +msgstr "" + +#: ../../scenarios/speed.rst:292 +msgid "" +"Return True if the call is currently being executed and cannot be " +"cancelled." +msgstr "" + +#: ../../scenarios/speed.rst:294 +msgid "done()" +msgstr "" + +#: ../../scenarios/speed.rst:295 +msgid "Return True if the call was successfully cancelled or finished running." +msgstr "" + +#: ../../scenarios/speed.rst:297 +msgid "result()" +msgstr "" + +#: ../../scenarios/speed.rst:297 +msgid "" +"Return the value returned by the call. Note that this call will block " +"until the scheduled callable returns by default." +msgstr "" + +#: ../../scenarios/speed.rst:300 +msgid "exception()" +msgstr "" + +#: ../../scenarios/speed.rst:300 +msgid "" +"Return the exception raised by the call. If no exception was raised then " +"this returns `None`. Note that this will block just like `result()`." +msgstr "" + +#: ../../scenarios/speed.rst:305 +msgid "add_done_callback(fn)" +msgstr "" + +#: ../../scenarios/speed.rst:303 +msgid "" +"Attach a callback function that will be executed (as `fn(future)`) when " +"the scheduled callable returns." +msgstr "" + +#: ../../scenarios/speed.rst:344 +msgid "" +"The `concurrent.futures`_ module contains two helper functions for " +"working with Futures. The `as_completed(futures)` function returns an " +"iterator over the list of futures, yielding the futures as they complete." +msgstr "" + +#: ../../scenarios/speed.rst:348 +msgid "" +"The `wait(futures)` function will simply block until all futures in the " +"list of futures provided have completed." +msgstr "" + +#: ../../scenarios/speed.rst:351 +msgid "" +"For more information, on using the `concurrent.futures`_ module, consult " +"the official documentation." +msgstr "" + +#: ../../scenarios/speed.rst:355 msgid "Threading" msgstr "" -#: ../../scenarios/speed.rst:238 +#: ../../scenarios/speed.rst:357 +msgid "" +"The standard library comes with a `threading`_ module that allows a user " +"to work with multiple threads manually." +msgstr "" + +#: ../../scenarios/speed.rst:360 +msgid "" +"Running a function in another thread is as simple as passing a callable " +"and it's arguments to `Thread`'s constructor and then calling `start()`:" +msgstr "" + +#: ../../scenarios/speed.rst:375 +msgid "To wait until the thread has terminated, call `join()`:" +msgstr "" + +#: ../../scenarios/speed.rst:381 +msgid "" +"After calling `join()`, it is always a good idea to check whether the " +"thread is still alive (because the join call timed out):" +msgstr "" + +#: ../../scenarios/speed.rst:391 +msgid "" +"Because multiple threads have access to the same section of memory, " +"sometimes there might be situations where two or more threads are trying " +"to write to the same resource at the same time or where the output is " +"dependent on the sequence or timing of certain events. This is called a " +"`data race`_ or race condition. When this happens, the output will be " +"garbled or you may encounter problems which are difficult to debug. A " +"good example is this `stackoverflow post`_." +msgstr "" + +#: ../../scenarios/speed.rst:398 +msgid "" +"The way this can be avoided is by using a `Lock`_ that each thread needs " +"to acquire before writing to a shared resource. Locks can be acquired and" +" released through either the contextmanager protocol (`with` statement), " +"or by using `acquire()` and `release()` directly. Here is a (rather " +"contrived) example:" +msgstr "" + +#: ../../scenarios/speed.rst:430 +msgid "" +"Here, we have a bunch of threads checking for changes on a list of sites " +"and whenever there are any changes, they attempt to write those changes " +"to a file by calling `log(changes)`. When `log()` is called, it will wait" +" to acquire the lock with `with file_lock:`. This ensures that at any one" +" time, only one thread is writing to the file." +msgstr "" + +#: ../../scenarios/speed.rst:437 msgid "Spawning Processes" msgstr "" -#: ../../scenarios/speed.rst:242 +#: ../../scenarios/speed.rst:441 msgid "Multiprocessing" msgstr "" -#: ../../scenarios/speed.rst:0 -msgid "Todo" -msgstr "" +#~ msgid "" +#~ "Using a slightly modified version of " +#~ "`David Beazleys`_ CPU bound test code" +#~ " (added loop for multiple tests), you" +#~ " can see the difference between " +#~ "CPython and PyPy's processing." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..a7b04560bf97976b6ecc91d738bafb1f26fb9c93 100644 GIT binary patch literal 27977 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 Y`PriR*&_SDY?+@e(%+8ye>hw8KRx^|ga7~l delta 114 zcmX?ki}3-I&OITPsSH5C2*ff#tODWyfewTM(?&o^T_At*8;cNL6J0|?U1I|UBO@y# zi^)NjG19srsfoE(3O\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../scenarios/web.rst:3 msgid "Web Applications" @@ -17,8 +18,8 @@ msgstr "" #: ../../scenarios/web.rst:5 msgid "" -"As a powerful scripting language adapted to both fast prototyping and bigger" -" projects, Python is widely used in Web applications development." +"As a powerful scripting language adapted to both fast prototyping and " +"bigger projects, Python is widely used in web application development." msgstr "" #: ../../scenarios/web.rst:10 @@ -33,10 +34,10 @@ msgstr "" msgid "" "The Web Server Gateway Interface (or \"WSGI\" for short) is a standard " "interface between web servers and Python web application frameworks. By " -"standardizing behavior and communication between web servers and Python web " -"frameworks, WSGI makes it possible to write portable Python web code that " -"can be deployed in any :ref:`WSGI-compliant web server `. " -"WSGI is documented in :pep:`3333`." +"standardizing behavior and communication between web servers and Python " +"web frameworks, WSGI makes it possible to write portable Python web code " +"that can be deployed in any :ref:`WSGI-compliant web server `. WSGI is documented in :pep:`3333`." msgstr "" #: ../../scenarios/web.rst:25 @@ -45,26 +46,42 @@ msgstr "" #: ../../scenarios/web.rst:27 msgid "" -"Broadly speaking, a web framework consists of a set of libraries and a main " -"handler within which you can build custom code to implement a web " +"Broadly speaking, a web framework consists of a set of libraries and a " +"main handler within which you can build custom code to implement a web " "application (i.e. an interactive web site). Most web frameworks include " "patterns and utilities to accomplish at least the following:" msgstr "" +#: ../../scenarios/web.rst:34 +msgid "URL Routing" +msgstr "" + #: ../../scenarios/web.rst:33 msgid "" -"Matches an incoming HTTP request to a particular piece of Python code to be " -"invoked" +"Matches an incoming HTTP request to a particular piece of Python code to " +"be invoked" +msgstr "" + +#: ../../scenarios/web.rst:37 +msgid "Request and Response Objects" msgstr "" #: ../../scenarios/web.rst:37 msgid "Encapsulate the information received from or sent to a user's browser" msgstr "" +#: ../../scenarios/web.rst:41 +msgid "Template Engine" +msgstr "" + #: ../../scenarios/web.rst:40 msgid "" -"Allows for separating Python code implementing an application's logic from " -"the HTML (or other) output that it produces" +"Allows for separating Python code implementing an application's logic " +"from the HTML (or other) output that it produces" +msgstr "" + +#: ../../scenarios/web.rst:46 +msgid "Development Web Server" msgstr "" #: ../../scenarios/web.rst:44 @@ -80,17 +97,18 @@ msgstr "" #: ../../scenarios/web.rst:51 msgid "" "`Django `_ is a \"batteries included\" web " -"application framework. By providing many utilities and patterns out of the " -"box, Django aims to make it possible to build complex, database-backed web " -"applications quickly, while encouraging best practices in code written using" -" it." +"application framework, and is an excellent choice for creating content-" +"oriented websites. By providing many utilities and patterns out of the " +"box, Django aims to make it possible to build complex, database-backed " +"web applications quickly, while encouraging best practices in code " +"written using it." msgstr "" #: ../../scenarios/web.rst:57 msgid "" "Django has a large and active community, and many pre-built `re-usable " -"modules `_ that can be incorporated into a new " -"project as-is, or customized to fit your needs." +"modules `_ that can be incorporated into a " +"new project as-is, or customized to fit your needs." msgstr "" #: ../../scenarios/web.rst:61 @@ -99,63 +117,70 @@ msgid "" "`_ and `in Europe `_." msgstr "" -#: ../../scenarios/web.rst:66 +#: ../../scenarios/web.rst:64 +msgid "The majority of new Python web applications today are built with Django." +msgstr "" + +#: ../../scenarios/web.rst:67 msgid "Flask" msgstr "" -#: ../../scenarios/web.rst:68 +#: ../../scenarios/web.rst:69 msgid "" -"`Flask `_ is a \"microframework\" for Python. " -"Rather than aiming to provide everything you could possibly need, Flask " -"implements the most commonly-used core components of a web application " -"framework, like URL routing, request and response objects, and templates. As" -" a user of Flask, it is therefore up to you to choose and integrate other " -"components you may need, such as database access or form generation and " -"validation. For many popular modules, `Extensions " -"`_ may already exist to suit your needs." +"`Flask `_ is a \"microframework\" for Python, " +"and is an excellent choice for building smaller applications, APIs, and " +"web services." +msgstr "" + +#: ../../scenarios/web.rst:72 +msgid "" +"Building an app with Flask is a lot like writing standard Python modules," +" except some functions have routes attached to them. It's really " +"beautiful." msgstr "" -#: ../../scenarios/web.rst:77 +#: ../../scenarios/web.rst:75 msgid "" -"**Support** for flask can best be found in its mailing list. Just shoot an " -"email to flask@librelist.com and reply to the confirmation email." +"Rather than aiming to provide everything you could possibly need, Flask " +"implements the most commonly-used core components of a web application " +"framework, like URL routing, request and response objects, and templates." msgstr "" -#: ../../scenarios/web.rst:82 -msgid "Werkzeug" +#: ../../scenarios/web.rst:79 +msgid "" +"If you use Flask, it is up to you to choose other components for your " +"application, if any. For example, database access or form generation and " +"validation are not built-in functions of Flask." msgstr "" -#: ../../scenarios/web.rst:84 +#: ../../scenarios/web.rst:83 msgid "" -"`Werkzeug `_ is not actually a real framework, " -"but rather a very powerful set of tools for building web applications. It " -"provides URL routing utilities, request and response objects and a basic " -"development server. It is mostly used where users need bigger flexibility " -"for their application that is not commonly found in other web frameworks." +"This is great, because many web applications don't need those features. " +"For those that do, there are many `Extensions " +"`_ available that may suit your " +"needs. Or, you can easily use any library you want yourself!" msgstr "" -#: ../../scenarios/web.rst:90 +#: ../../scenarios/web.rst:88 msgid "" -"Support can be found on its `mailing list " -"`_." +"Flask is default choice for any Python web application that isn't a good " +"fit for Django." msgstr "" -#: ../../scenarios/web.rst:94 +#: ../../scenarios/web.rst:93 msgid "Tornado" msgstr "" #: ../../scenarios/web.rst:95 msgid "" -"`Tornado `_ is a scalable, non-blocking web " -"server and web application framework with a relative simple usage. Tornado " -"is known for its high performance. It was initially developed for " -"`friendfeed `_ , a real time chat and blog system." +"`Tornado `_ is an asyncronous web framework " +"for Python that has its own event loop. This allows it to natively " +"support WebSockets, for example. Well-written Tornado applications are " +"known to have excellent performance characteristics." msgstr "" -#: ../../scenarios/web.rst:99 -msgid "" -"In the Jinja2 template engine example it is used to serve the rendered " -"pages." +#: ../../scenarios/web.rst:100 +msgid "I do not recommend using Tornado unless you think you need it." msgstr "" #: ../../scenarios/web.rst:103 @@ -164,338 +189,682 @@ msgstr "" #: ../../scenarios/web.rst:105 msgid "" -"`Pyramid `_ lies somewhere between a big " -"framework like Django and the microframeworks: It comes with a lot of " -"libraries and functionality and can thus not be considered lightweight. On " -"the other hand, it does not provide all the functionality Django does. " -"Instead Pyramid brings basic support for most regular tasks and provides a " -"great deal of extensibility. Additionally, Pyramid has a huge focus on " -"complete `documentation " -"`__. As a little " -"extra it comes with the Werkzeug Debugger which allows you to debug a " -"running web application in the browser." +"`Pyramid `_ is a very flexible framework with a " +"heavy focus on modularity. It comes with a small number of libraries " +"(\"batteries\") built-in, and encourages users to extend its base " +"functionality." msgstr "" -#: ../../scenarios/web.rst:115 +#: ../../scenarios/web.rst:109 msgid "" -"**Support** can also be found in the `documentation " -"`__." +"Pyramid does not have a large user base, unlike Django and Flask. It's a " +"capable framework, but not a very popular choice for new Python web " +"applications today." msgstr "" -#: ../../scenarios/web.rst:120 +#: ../../scenarios/web.rst:114 msgid "Web Servers" msgstr "" -#: ../../scenarios/web.rst:125 +#: ../../scenarios/web.rst:119 msgid "Nginx" msgstr "" -#: ../../scenarios/web.rst:127 +#: ../../scenarios/web.rst:121 msgid "" -"`Nginx `_ (pronounced \"engine-x\") is a web server and " -"reverse-proxy for HTTP, SMTP and other protocols. It is known for its high " -"performance, relative simplicity, and compatibility with many application " -"servers (like WSGI servers). It also includes handy features like load-" -"balancing, basic authentication, streaming, and others. Designed to serve " -"high-load websites, Nginx is gradually becoming quite popular." +"`Nginx `_ (pronounced \"engine-x\") is a web server " +"and reverse-proxy for HTTP, SMTP and other protocols. It is known for its" +" high performance, relative simplicity, and compatibility with many " +"application servers (like WSGI servers). It also includes handy features " +"like load-balancing, basic authentication, streaming, and others. " +"Designed to serve high-load websites, Nginx is gradually becoming quite " +"popular." msgstr "" -#: ../../scenarios/web.rst:138 +#: ../../scenarios/web.rst:132 msgid "WSGI Servers" msgstr "" -#: ../../scenarios/web.rst:140 +#: ../../scenarios/web.rst:134 msgid "" -"Stand-alone WSGI servers typically use less resources than traditional web " -"servers and provide top performance [3]_." +"Stand-alone WSGI servers typically use less resources than traditional " +"web servers and provide top performance [3]_." msgstr "" -#: ../../scenarios/web.rst:146 +#: ../../scenarios/web.rst:140 msgid "Gunicorn" msgstr "" -#: ../../scenarios/web.rst:148 +#: ../../scenarios/web.rst:142 msgid "" -"`Gunicorn `_ (Green Unicorn) is a WSGI server used to " -"serve Python applications. It is a Python interpretation of the Ruby " -"`Unicorn `_ server. Unicorn is designed to be " -"lightweight, easy to use, and uses many UNIX idioms. Gunicorn is not " -"designed to face the internet -- it was designed to run behind Nginx which " -"buffers slow requests and takes care of other important considerations. A " -"sample setup for Nginx + Gunicorn can be found in the `Gunicorn help " -"`_." +"`Gunicorn `_ (Green Unicorn) is a pure-python WSGI " +"server used to serve Python applications. Unlike other Python web " +"servers, it has a thoughtful user-interface, and is extremely easy to use" +" and configure." msgstr "" -#: ../../scenarios/web.rst:160 -msgid "uWSGI" -msgstr "" - -#: ../../scenarios/web.rst:162 +#: ../../scenarios/web.rst:147 msgid "" -"`uWSGI `_ is a full stack for building " -"hosting services. In addition to process management, process monitoring, " -"and other functionality, uWSGI acts as an application server for various " -"programming languages and protocols - including Python and WSGI. uWSGI can " -"either be run as a stand-alone web router, or be run behind a full web " -"server (such as Nginx or Apache). In the latter case, a web server can " -"configure uWSGI and an application's operation over the `uwsgi `_ protocol. uWSGI's " -"web server support allows for dynamically configuring Python, passing " -"environment variables and further tuning. For full details, see `uWSGI " -"magic variables `_." +"Gunicorn has sane and reasonable defaults for configurations. However, " +"some other servers, like uWSGI, are tremendously more customizable, and " +"therefore, are much more difficult to effectively use." msgstr "" -#: ../../scenarios/web.rst:180 -msgid "Server Best Practices" +#: ../../scenarios/web.rst:151 +msgid "Gunicorn is the recommended choice for new Python web applications today." msgstr "" -#: ../../scenarios/web.rst:182 -msgid "" -"The majority of self hosted Python applications today are hosted with a WSGI" -" server such as :ref:`Gunicorn `, either directly or behind a " -"lightweight web server such as :ref:`nginx `." +#: ../../scenarios/web.rst:155 +msgid "Waitress" msgstr "" -#: ../../scenarios/web.rst:186 +#: ../../scenarios/web.rst:157 msgid "" -"The WSGI servers serve the Python applications while the web server handles " -"tasks better suited for it such as static file serving, request routing, " -"DDoS protection, and basic authentication." +"`Waitress `_ is a pure-python WSGI " +"server that claims \"very acceptable performance\". Its documentation is " +"not very detailed, but it does offer some nice functionality that " +"Gunicorn doesn't have (e.g. HTTP request buffering)." msgstr "" -#: ../../scenarios/web.rst:191 -msgid "Hosting" +#: ../../scenarios/web.rst:162 +msgid "" +"Waitress is gaining popularity within the Python web development " +"community." msgstr "" -#: ../../scenarios/web.rst:194 -msgid "Platform-as-a-Service" +#: ../../scenarios/web.rst:167 +msgid "uWSGI" msgstr "" -#: ../../scenarios/web.rst:196 +#: ../../scenarios/web.rst:169 msgid "" -"Platform-as-a-Service (PaaS) is a type of cloud computing infrastructure " -"which abstracts and manages infrastructure, routing, and scaling of web " -"applications. When using PaaS, application developers can focus on writing " -"application code rather than needing to be concerned with deployment " -"details." +"`uWSGI `_ is a full stack for building" +" hosting services. In addition to process management, process " +"monitoring, and other functionality, uWSGI acts as an application server " +"for various programming languages and protocols - including Python and " +"WSGI. uWSGI can either be run as a stand-alone web router, or be run " +"behind a full web server (such as Nginx or Apache). In the latter case, " +"a web server can configure uWSGI and an application's operation over the " +"`uwsgi protocol `_. uWSGI's web server " +"support allows for dynamically configuring Python, passing environment " +"variables and further tuning. For full details, see `uWSGI magic " +"variables `_." msgstr "" -#: ../../scenarios/web.rst:202 -msgid "" -"Most PaaS services offer a command-line interface that developers can use to" -" set up and interrogate configuration, and to deploy new releases of an " -"application to the service." +#: ../../scenarios/web.rst:182 +msgid "I do not recommend using uWSGI unless you know why you need it." msgstr "" -#: ../../scenarios/web.rst:206 -msgid "" -"PaaS services and their partners offer add-on functionality which is well " -"integrated into the platform, such as database hosting, email services, " -"logging, scheduled and background tasks, billing and payment, etc." +#: ../../scenarios/web.rst:188 +msgid "Server Best Practices" msgstr "" -#: ../../scenarios/web.rst:212 -msgid "Heroku" +#: ../../scenarios/web.rst:190 +msgid "" +"The majority of self-hosted Python applications today are hosted with a " +"WSGI server such as :ref:`Gunicorn `, either directly or " +"behind a lightweight web server such as :ref:`nginx `." msgstr "" -#: ../../scenarios/web.rst:214 +#: ../../scenarios/web.rst:194 msgid "" -"`Heroku `_'s `Cedar stack " -"`_ offers first class support " -"for Python 2.7 applications." +"The WSGI servers serve the Python applications while the web server " +"handles tasks better suited for it such as static file serving, request " +"routing, DDoS protection, and basic authentication." msgstr "" -#: ../../scenarios/web.rst:218 -msgid "" -"Heroku allows you to run as many Python web applications as you like, 24/7 " -"and free of charge. Heroku is best described as a horizontal scaling " -"platform. They start to charge you once you \"scale\" your application to " -"run on more than one Dyno (abstracted servers) at a time." +#: ../../scenarios/web.rst:199 +msgid "Hosting" msgstr "" -#: ../../scenarios/web.rst:223 +#: ../../scenarios/web.rst:201 msgid "" -"Heroku maintains `articles " -"`_ on using Python with " -"Heroku as well as `step-by-step instructions " -"`_ on how" -" to set up your first application." +"Platform-as-a-Service (PaaS) is a type of cloud computing infrastructure " +"which abstracts and manages infrastructure, routing, and scaling of web " +"applications. When using a PaaS, application developers can focus on " +"writing application code rather than needing to be concerned with " +"deployment details." msgstr "" -#: ../../scenarios/web.rst:230 -msgid "DotCloud" +#: ../../scenarios/web.rst:208 +msgid "Heroku" msgstr "" -#: ../../scenarios/web.rst:232 +#: ../../scenarios/web.rst:210 msgid "" -"`DotCloud `_ supports WSGI applications and " -"background/worker tasks natively on their platform. Web applications run " -"Python version 2.6, use :ref:`nginx ` and :ref:`uWSGI `, and allow custom configuration of both for advanced users." +"`Heroku `_ offers first-class support for " +"Python 2.7–3.5 applications." msgstr "" -#: ../../scenarios/web.rst:237 +#: ../../scenarios/web.rst:213 msgid "" -"DotCloud uses a custom command-line API client which can work with " -"applications managed in git repositories or any other version control " -"system." +"Heroku supports all types of Python web applications, servers, and " +"frameworks. Applications can be developed on Heroku for free. Once your " +"application is ready for production, you can upgrade to a Hobby or " +"Professional application." msgstr "" -#: ../../scenarios/web.rst:241 +#: ../../scenarios/web.rst:217 msgid "" -"DotCloud has a free plan with limited database size, and without extra " -"services (caching…)." +"Heroku maintains `detailed articles " +"`_ on using Python with " +"Heroku, as well as `step-by-step instructions " +"`_ on " +"how to set up your first application." msgstr "" -#: ../../scenarios/web.rst:244 +#: ../../scenarios/web.rst:222 msgid "" -"See the `DotCloud documentation on Python " -"`_ for more information and help " -"getting started." +"Heroku is the recommended PaaS for deploying Python web applications " +"today." msgstr "" -#: ../../scenarios/web.rst:250 +#: ../../scenarios/web.rst:225 msgid "Gondor" msgstr "" -#: ../../scenarios/web.rst:252 +#: ../../scenarios/web.rst:227 msgid "" -"`Gondor `_ is a PaaS specialized for deploying Django " -"and Pinax applications. Gondor recommends Django version 1.6 and supports " -"any WSGI application on Python version 2.7. Gondor can automatically " -"configure your Django site if you use :file:`local_settings.py` for site-" -"specific configuration information." +"`Gondor `_ is a PaaS specialized for deploying Django" +" and Pinax applications. Gondor recommends Django version 1.6 and " +"supports any WSGI application on Python version 2.7. Gondor can " +"automatically configure your Django site if you use " +":file:`local_settings.py` for site-specific configuration information." msgstr "" -#: ../../scenarios/web.rst:257 +#: ../../scenarios/web.rst:233 msgid "" "Gondor has a guide on deploying `Django projects " "`_." msgstr "" -#: ../../scenarios/web.rst:261 +#: ../../scenarios/web.rst:235 +msgid "" +"Gondor is run by a small company and focuses on helping businesses find " +"success with Python and Django." +msgstr "" + +#: ../../scenarios/web.rst:239 msgid "Templating" msgstr "" -#: ../../scenarios/web.rst:263 +#: ../../scenarios/web.rst:241 msgid "" -"Most WSGI applications are responding to HTTP requests to serve content in " -"HTML or other markup languages. Instead of generating directly textual " -"content from Python, the concept of separation of concerns advises us to use" -" templates. A template engine manages a suite of template files, with a " -"system of hierarchy and inclusion to avoid unnecessary repetition, and is in" -" charge of rendering (generating) the actual content, filling the static " -"content of the templates with the dynamic content generated by the " -"application." +"Most WSGI applications are responding to HTTP requests to serve content " +"in HTML or other markup languages. Instead of generating directly textual" +" content from Python, the concept of separation of concerns advises us to" +" use templates. A template engine manages a suite of template files, with" +" a system of hierarchy and inclusion to avoid unnecessary repetition, and" +" is in charge of rendering (generating) the actual content, filling the " +"static content of the templates with the dynamic content generated by the" +" application." msgstr "" -#: ../../scenarios/web.rst:273 +#: ../../scenarios/web.rst:249 msgid "" "As template files are sometimes written by designers or front-end " "developers, it can be difficult to handle increasing complexity." msgstr "" -#: ../../scenarios/web.rst:277 +#: ../../scenarios/web.rst:253 msgid "" "Some general good practices apply to the part of the application passing " "dynamic content to the template engine, and to the templates themselves." msgstr "" -#: ../../scenarios/web.rst:281 +#: ../../scenarios/web.rst:256 msgid "" -"Template files should be passed only the dynamic content that is needed for " -"rendering the template. Avoid the temptation to pass additional content " -"\"just in case\": it is easier to add some missing variable when needed than" -" to remove a likely unused variable later." +"Template files should be passed only the dynamic content that is needed " +"for rendering the template. Avoid the temptation to pass additional " +"content \"just in case\": it is easier to add some missing variable when " +"needed than to remove a likely unused variable later." msgstr "" -#: ../../scenarios/web.rst:287 +#: ../../scenarios/web.rst:262 msgid "" "Many template engines allow for complex statements or assignments in the " "template itself, and many allow some Python code to be evaluated in the " -"templates. This convenience can lead to uncontrolled increase in complexity," -" and often make it harder to find bugs." +"templates. This convenience can lead to uncontrolled increase in " +"complexity, and often make it harder to find bugs." msgstr "" -#: ../../scenarios/web.rst:293 +#: ../../scenarios/web.rst:268 msgid "" "It is often necessary to mix JavaScript templates with HTML templates. A " -"sane approach to this design is to isolate the parts where the HTML template" -" passes some variable content to the JavaScript code." +"sane approach to this design is to isolate the parts where the HTML " +"template passes some variable content to the JavaScript code." msgstr "" -#: ../../scenarios/web.rst:301 +#: ../../scenarios/web.rst:276 msgid "Jinja2" msgstr "" -#: ../../scenarios/web.rst:302 +#: ../../scenarios/web.rst:277 +msgid "" +"`Jinja2 `_ is a very well-regarded template " +"engine." +msgstr "" + +#: ../../scenarios/web.rst:279 msgid "" -"`Jinja2 `_ is a template engine which is similar to" -" the Django template system with some extra features. It is a text-based " -"template language and thus can be used to generate any markup. It allows " -"customization of filters, tags, tests and globals, and unlike the template " -"system implemented in the Django Framework, also allows calling functions. " -"Jinja2 is released under the BSD license." +"It uses a text-based template language and can thus be used to generate " +"any type markup, not just HTML. It allows customization of filters, tags," +" tests and globals. It features many improvements over Django's " +"templating system." msgstr "" -#: ../../scenarios/web.rst:309 +#: ../../scenarios/web.rst:283 msgid "Here some important html tags in Jinja2:" msgstr "" -#: ../../scenarios/web.rst:330 +#: ../../scenarios/web.rst:303 msgid "" "The next listings is an example of a web site in combination with the " -"tornado web server. Tornado is not very complicate to use." +"Tornado web server. Tornado is not very complicated to use." +msgstr "" + +#: ../../scenarios/web.rst:344 +msgid "" +"The :file:`base.html` file can be used as base for all site pages which " +"are for example implemented in the content block." +msgstr "" + +#: ../../scenarios/web.rst:369 +msgid "" +"The next listing is our site page (:file:`site.html`) loaded in the " +"Python app which extends :file:`base.html`. The content block is " +"automatically set into the corresponding block in the :file:`base.html` " +"page." msgstr "" -#: ../../scenarios/web.rst:371 +#: ../../scenarios/web.rst:391 msgid "" -"The :file:`base.html` file can be used as base for all site pages which are " -"for example implemented in the content block." +"Jinja2 is the recommended templating library for new Python web " +"applications." +msgstr "" + +#: ../../scenarios/web.rst:394 +msgid "Chameleon" msgstr "" #: ../../scenarios/web.rst:396 msgid "" -"The next listing is our site page (:file:`site.html`) loaded in the Python " -"app which extends :file:`base.html`. The content block is automatically set " -"into the corresponding block in the :file:`base.html` page." +"`Chameleon `_ Page Templates are an " +"HTML/XML template engine implementation of the `Template Attribute " +"Language (TAL) " +"`_, `TAL " +"Expression Syntax (TALES) " +"`_, and `Macro Expansion TAL (Metal) " +"`_ syntaxes." msgstr "" -#: ../../scenarios/web.rst:419 -msgid "References" +#: ../../scenarios/web.rst:401 +msgid "" +"Chameleon is available for Python 2.5 and up (including 3.x and pypy), " +"and is commonly used by the `Pyramid Framework `_." msgstr "" -#: ../../scenarios/web.rst:420 +#: ../../scenarios/web.rst:404 msgid "" -"`The mod_python project is now officially dead " -"`_" +"Page Templates add within your document structure special element " +"attributes and text markup. Using a set of simple language constructs, " +"you control the document flow, element repetition, text replacement and " +"translation. Because of the attribute-based syntax, unrendered page " +"templates are valid HTML and can be viewed in a browser and even edited " +"in WYSIWYG editors. This can make round-trip collaboration with designers" +" and prototyping with static files in a browser easier." +msgstr "" + +#: ../../scenarios/web.rst:412 +msgid "The basic TAL language is simple enough to grasp from an example:" msgstr "" -#: ../../scenarios/web.rst:421 +#: ../../scenarios/web.rst:430 msgid "" -"`mod_wsgi vs mod_python " -"`_" +"The `` pattern for text insertion is " +"common enough that if you do not require strict validity in your " +"unrendered templates, you can replace it with a more terse and readable " +"syntax that uses the pattern `${expression}`, as follows:" msgstr "" -#: ../../scenarios/web.rst:422 +#: ../../scenarios/web.rst:451 msgid "" -"`Benchmark of Python WSGI Servers `_" +"But keep in mind that the full `Default " +"Text` syntax also allows for default content in the unrendered " +"template." msgstr "" -#: ../../scenarios/web.rst:34 -msgid "URL Routing" +#: ../../scenarios/web.rst:454 +msgid "Being from the Pyramid world, Chameleon is not widely used." msgstr "" -#: ../../scenarios/web.rst:37 -msgid "Request and Response Objects" +#: ../../scenarios/web.rst:457 +msgid "Mako" msgstr "" -#: ../../scenarios/web.rst:41 -msgid "Template Engine" +#: ../../scenarios/web.rst:459 +msgid "" +"`Mako `_ is a template language that " +"compiles to Python for maximum performance. Its syntax and api is " +"borrowed from the best parts of other templating languages like Django " +"and Jinja2 templates. It is the default template language included with " +"the `Pylons and Pyramid `_ web frameworks." msgstr "" -#: ../../scenarios/web.rst:46 -msgid "Development Web Server" +#: ../../scenarios/web.rst:465 +msgid "An example template in Mako looks like:" +msgstr "" + +#: ../../scenarios/web.rst:487 +msgid "To render a very basic template, you can do the following:" +msgstr "" + +#: ../../scenarios/web.rst:494 +msgid "Mako is well respected within the Python web community." +msgstr "" + +#: ../../scenarios/web.rst:497 +msgid "References" +msgstr "" + +#: ../../scenarios/web.rst:498 +msgid "" +"`The mod_python project is now officially dead " +"`_" msgstr "" + +#: ../../scenarios/web.rst:499 +msgid "" +"`mod_wsgi vs mod_python " +"`_" +msgstr "" + +#: ../../scenarios/web.rst:500 +msgid "" +"`Benchmark of Python WSGI Servers `_" +msgstr "" + +#~ msgid "" +#~ "As a powerful scripting language adapted" +#~ " to both fast prototyping and bigger" +#~ " projects, Python is widely used in" +#~ " Web applications development." +#~ msgstr "" + +#~ msgid "" +#~ "`Django `_ is a " +#~ "\"batteries included\" web application " +#~ "framework. By providing many utilities " +#~ "and patterns out of the box, " +#~ "Django aims to make it possible to" +#~ " build complex, database-backed web " +#~ "applications quickly, while encouraging best" +#~ " practices in code written using it." +#~ msgstr "" + +#~ msgid "" +#~ "`Flask `_ is a " +#~ "\"microframework\" for Python. Rather than " +#~ "aiming to provide everything you could" +#~ " possibly need, Flask implements the " +#~ "most commonly-used core components of" +#~ " a web application framework, like " +#~ "URL routing, request and response " +#~ "objects, and templates. As a user " +#~ "of Flask, it is therefore up to" +#~ " you to choose and integrate other" +#~ " components you may need, such as " +#~ "database access or form generation and" +#~ " validation. For many popular modules, " +#~ "`Extensions `_ may " +#~ "already exist to suit your needs." +#~ msgstr "" + +#~ msgid "" +#~ "**Support** for flask can best be " +#~ "found in its mailing list. Just " +#~ "shoot an email to flask@librelist.com " +#~ "and reply to the confirmation email." +#~ msgstr "" + +#~ msgid "Werkzeug" +#~ msgstr "" + +#~ msgid "" +#~ "`Werkzeug `_ is not " +#~ "actually a real framework, but rather" +#~ " a very powerful set of tools " +#~ "for building web applications. It " +#~ "provides URL routing utilities, request " +#~ "and response objects and a basic " +#~ "development server. It is mostly used" +#~ " where users need bigger flexibility " +#~ "for their application that is not " +#~ "commonly found in other web frameworks." +#~ msgstr "" + +#~ msgid "" +#~ "Support can be found on its " +#~ "`mailing list " +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "`Tornado `_ is a " +#~ "scalable, non-blocking web server and" +#~ " web application framework with a " +#~ "relative simple usage. Tornado is known" +#~ " for its high performance. It was " +#~ "initially developed for `friendfeed " +#~ "`_ , a real time " +#~ "chat and blog system." +#~ msgstr "" + +#~ msgid "" +#~ "In the Jinja2 template engine example" +#~ " it is used to serve the " +#~ "rendered pages." +#~ msgstr "" + +#~ msgid "" +#~ "`Pyramid `_ lies " +#~ "somewhere between a big framework like" +#~ " Django and the microframeworks: It " +#~ "comes with a lot of libraries and" +#~ " functionality and can thus not be" +#~ " considered lightweight. On the other " +#~ "hand, it does not provide all the" +#~ " functionality Django does. Instead Pyramid" +#~ " brings basic support for most " +#~ "regular tasks and provides a great " +#~ "deal of extensibility. Additionally, Pyramid" +#~ " has a huge focus on complete " +#~ "`documentation " +#~ "`__. " +#~ "As a little extra it comes with" +#~ " the Werkzeug Debugger which allows " +#~ "you to debug a running web " +#~ "application in the browser." +#~ msgstr "" + +#~ msgid "" +#~ "**Support** can also be found in " +#~ "the `documentation " +#~ "`__." +#~ msgstr "" + +#~ msgid "" +#~ "`Gunicorn `_ (Green Unicorn)" +#~ " is a WSGI server used to serve" +#~ " Python applications. It is a Python" +#~ " interpretation of the Ruby `Unicorn " +#~ "`_ server. Unicorn is" +#~ " designed to be lightweight, easy to" +#~ " use, and uses many UNIX idioms. " +#~ "Gunicorn is not designed to face " +#~ "the internet -- it was designed to" +#~ " run behind Nginx which buffers slow" +#~ " requests and takes care of other " +#~ "important considerations. A sample setup " +#~ "for Nginx + Gunicorn can be found" +#~ " in the `Gunicorn help " +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "`uWSGI `_ is " +#~ "a full stack for building hosting " +#~ "services. In addition to process " +#~ "management, process monitoring, and other " +#~ "functionality, uWSGI acts as an " +#~ "application server for various programming " +#~ "languages and protocols - including " +#~ "Python and WSGI. uWSGI can either " +#~ "be run as a stand-alone web " +#~ "router, or be run behind a full" +#~ " web server (such as Nginx or " +#~ "Apache). In the latter case, a " +#~ "web server can configure uWSGI and " +#~ "an application's operation over the " +#~ "`uwsgi `_ protocol. " +#~ "uWSGI's web server support allows for" +#~ " dynamically configuring Python, passing " +#~ "environment variables and further tuning. " +#~ "For full details, see `uWSGI magic " +#~ "variables `_." +#~ msgstr "" + +#~ msgid "" +#~ "The majority of self hosted Python " +#~ "applications today are hosted with a " +#~ "WSGI server such as :ref:`Gunicorn " +#~ "`, either directly or behind" +#~ " a lightweight web server such as " +#~ ":ref:`nginx `." +#~ msgstr "" + +#~ msgid "Platform-as-a-Service" +#~ msgstr "" + +#~ msgid "" +#~ "Platform-as-a-Service (PaaS) is a type" +#~ " of cloud computing infrastructure which" +#~ " abstracts and manages infrastructure, " +#~ "routing, and scaling of web " +#~ "applications. When using PaaS, application " +#~ "developers can focus on writing " +#~ "application code rather than needing to" +#~ " be concerned with deployment details." +#~ msgstr "" + +#~ msgid "" +#~ "Most PaaS services offer a command-" +#~ "line interface that developers can use" +#~ " to set up and interrogate " +#~ "configuration, and to deploy new " +#~ "releases of an application to the " +#~ "service." +#~ msgstr "" + +#~ msgid "" +#~ "PaaS services and their partners offer" +#~ " add-on functionality which is well" +#~ " integrated into the platform, such " +#~ "as database hosting, email services, " +#~ "logging, scheduled and background tasks, " +#~ "billing and payment, etc." +#~ msgstr "" + +#~ msgid "" +#~ "`Heroku `_'s `Cedar stack" +#~ " `_ offers " +#~ "first class support for Python 2.7 " +#~ "applications." +#~ msgstr "" + +#~ msgid "" +#~ "Heroku allows you to run as many" +#~ " Python web applications as you like," +#~ " 24/7 and free of charge. Heroku " +#~ "is best described as a horizontal " +#~ "scaling platform. They start to charge" +#~ " you once you \"scale\" your " +#~ "application to run on more than " +#~ "one Dyno (abstracted servers) at a " +#~ "time." +#~ msgstr "" + +#~ msgid "" +#~ "Heroku maintains `articles " +#~ "`_ on " +#~ "using Python with Heroku as well " +#~ "as `step-by-step instructions " +#~ "`_ on how to set up " +#~ "your first application." +#~ msgstr "" + +#~ msgid "DotCloud" +#~ msgstr "" + +#~ msgid "" +#~ "`DotCloud `_ supports WSGI" +#~ " applications and background/worker tasks " +#~ "natively on their platform. Web " +#~ "applications run Python version 2.6, use" +#~ " :ref:`nginx ` and :ref:`uWSGI" +#~ " `, and allow custom " +#~ "configuration of both for advanced " +#~ "users." +#~ msgstr "" + +#~ msgid "" +#~ "DotCloud uses a custom command-line " +#~ "API client which can work with " +#~ "applications managed in git repositories " +#~ "or any other version control system." +#~ msgstr "" + +#~ msgid "" +#~ "DotCloud has a free plan with " +#~ "limited database size, and without extra" +#~ " services (caching…)." +#~ msgstr "" + +#~ msgid "" +#~ "See the `DotCloud documentation on " +#~ "Python `_ for" +#~ " more information and help getting " +#~ "started." +#~ msgstr "" + +#~ msgid "" +#~ "`Jinja2 `_ is a " +#~ "template engine which is similar to " +#~ "the Django template system with some " +#~ "extra features. It is a text-based" +#~ " template language and thus can be" +#~ " used to generate any markup. It " +#~ "allows customization of filters, tags, " +#~ "tests and globals, and unlike the " +#~ "template system implemented in the " +#~ "Django Framework, also allows calling " +#~ "functions. Jinja2 is released under the" +#~ " BSD license." +#~ msgstr "" + +#~ msgid "" +#~ "The next listings is an example of" +#~ " a web site in combination with " +#~ "the tornado web server. Tornado is " +#~ "not very complicate to use." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo b/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..43fbe2dae14ba5b624d28b65bbf9fc3f1123c06e 100644 GIT binary patch literal 2253 zcmeHHL2nyH6kecEFcOCfQ4Sm);s8>*Ysalbv<*?6+6}4fI5-XhE@Zqr-W{?#vzmF^ z#77S0R1g<_0w?ZB+_`W?;)KK>p-6mVH?{-)30Z0M?asb=-+SMC^ZvSV?S}x*8(8mP zJ@FrF&r`g=h4l~CdsuJ25CpFSw}3wbyTHf5zk$2JuU`y;4}re|H-JxpZv#JgDF|K# zc7S(*4}q@%zXARP{2urTd~9D^@O}64g6~J5=lc!l`ThVt20nRZ!FS{Og6|mU`Mw2u zzF&Zz?{}c*`xEH-Zer8(y*m#^(`SP|O;sVOP^XeOS1t}77)$b8lvN>bk$Aq1KUWFs zl+J>aTC>m@oNVXJm5ZCrOmSXMqQsO<$4PFLYhD=boP0^jkszl$1BfS9*cqMWD#?k( zsl?9(X=;+Xl$!CKl9gOr?GGN#I5(QiwxOBx#e*eWWCqt(w$~Po+t* zBgeK*;7CTn$$43@Nfms|;9t{toz^4Xhnr5b^1c{3zk%Ommz@TQ9lZn03R7 zGWr(fV%}qHr6@gHiKakQiUn#)Q;_G-t?<8m|NG8C)l#G1XKb+Vmr|Anjp^lGrsFkq zl|YH2;LsZ1f#H4{ekySljEG#1 z&PN+|1r_<%|0o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU!a)C2{gXmNm?wA#RfcSd|$W E05#?bga7~l diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo b/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..2a283b07580ac39d0cb1a3ff7f387768bf5a719e 100644 GIT binary patch literal 11475 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 delta 112 zcmcZ{`G861o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU#mLcnGhFuA!l>v4Mh-k(H6f yWOa!cY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$tNUCnL|U|CP^wYG5`PqUKPav diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po index bcd7f1ff0..a0559c429 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po @@ -1,244 +1,378 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ../../shipping/freezing.rst:2 +#: ../../shipping/freezing.rst:5 msgid "Freezing Your Code" msgstr "" -#: ../../shipping/freezing.rst:4 +#: ../../shipping/freezing.rst:7 msgid "" -"An alternative to shipping your code is freezing it — shipping it as an " -"executable with a bundled Python interpreter." +"\"Freezing\" your code is creating a single-file executable file to " +"distribute to end-users, that contains all of your application code as " +"well as the Python interpreter." msgstr "" -#: ../../shipping/freezing.rst:7 -msgid "Many applications you use every day do this:" +#: ../../shipping/freezing.rst:11 +msgid "" +"Applications such as 'Dropbox', 'Eve Online', 'Civilisation IV', and " +"BitTorrent clients do this." msgstr "" -#: ../../shipping/freezing.rst:9 -msgid "Dropbox" +#: ../../shipping/freezing.rst:14 +msgid "" +"The advantage of distributing this way is that your application will " +"\"just work\", even if the user doesn't already have the required version" +" of Python (or any) installed. On Windows, and even on many Linux " +"distributions and OS X, the right version of Python will not already be " +"installed." msgstr "" -#: ../../shipping/freezing.rst:10 -msgid "BitTorrent" +#: ../../shipping/freezing.rst:19 +msgid "" +"Besides, end-user software should always be in an executable format. " +"Files ending in ``.py`` are for software engineers and system " +"administrators." msgstr "" -#: ../../shipping/freezing.rst:11 -msgid "..." +#: ../../shipping/freezing.rst:22 +msgid "" +"One disadvantage of freezing is that it will increase the size of your " +"distribution by about 2–12MB. Also, you will be responsible for shipping " +"updated versions of your application when security vulnerabilities to " +"Python are patched." +msgstr "" + +#: ../../shipping/freezing.rst:28 +msgid "Alternatives to Freezing" +msgstr "" + +#: ../../shipping/freezing.rst:30 +msgid "" +":ref:`Packaging your code ` is for distributing " +"libraries or tools to other developers." +msgstr "" + +#: ../../shipping/freezing.rst:33 +msgid "" +"On Linux, an alternative to freezing is to :ref:`create a Linux distro " +"package ` (e.g. .deb files for " +"Debian or Ubuntu, or .rpm files for Red Hat and SuSE.)" +msgstr "" + +#: ../../shipping/freezing.rst +msgid "Todo" msgstr "" -#: ../../shipping/freezing.rst:13 +#: ../../shipping/freezing.rst:37 msgid "Fill in \"Freezing Your Code\" stub" msgstr "" -#: ../../shipping/freezing.rst:18 -msgid "Comparison" +#: ../../shipping/freezing.rst:41 +msgid "Comparison of Freezing Tools" msgstr "" -#: ../../shipping/freezing.rst:20 +#: ../../shipping/freezing.rst:43 msgid "Solutions and platforms/features supported:" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "Solution" msgstr "" -#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:43 +#: ../../shipping/freezing.rst:46 ../../shipping/freezing.rst:66 msgid "Windows" msgstr "" -#: ../../shipping/freezing.rst:23 ../../shipping/freezing.rst:103 +#: ../../shipping/freezing.rst:46 ../../shipping/freezing.rst:170 msgid "Linux" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 ../../shipping/freezing.rst:115 msgid "OS X" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "Python 3" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "License" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "One-file mode" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "Zipfile import" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "Eggs" msgstr "" -#: ../../shipping/freezing.rst:23 +#: ../../shipping/freezing.rst:46 msgid "pkg_resources support" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:46 -#: ../../shipping/freezing.rst:107 +#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:69 +#: ../../shipping/freezing.rst:174 msgid "bbFreeze" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:49 +#: ../../shipping/freezing.rst:50 ../../shipping/freezing.rst:51 +#: ../../shipping/freezing.rst:52 msgid "yes" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:25 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:27 -#: ../../shipping/freezing.rst:27 ../../shipping/freezing.rst:28 -#: ../../shipping/freezing.rst:28 ../../shipping/freezing.rst:29 -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:49 +#: ../../shipping/freezing.rst:50 ../../shipping/freezing.rst:51 +#: ../../shipping/freezing.rst:52 msgid "no" msgstr "" -#: ../../shipping/freezing.rst:25 ../../shipping/freezing.rst:26 -#: ../../shipping/freezing.rst:29 +#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:49 +#: ../../shipping/freezing.rst:52 msgid "MIT" msgstr "" -#: ../../shipping/freezing.rst:26 ../../shipping/freezing.rst:53 +#: ../../shipping/freezing.rst:49 ../../shipping/freezing.rst:76 msgid "py2exe" msgstr "" -#: ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:50 msgid "pyInstaller" msgstr "" -#: ../../shipping/freezing.rst:27 +#: ../../shipping/freezing.rst:50 msgid "GPL" msgstr "" -#: ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:51 msgid "cx_Freeze" msgstr "" -#: ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:51 msgid "PSF" msgstr "" -#: ../../shipping/freezing.rst:29 ../../shipping/freezing.rst:96 +#: ../../shipping/freezing.rst:52 ../../shipping/freezing.rst:119 msgid "py2app" msgstr "" -#: ../../shipping/freezing.rst:33 +#: ../../shipping/freezing.rst:56 msgid "" "Freezing Python code on Linux into a Windows executable was only once " "supported in PyInstaller `and later dropped. " -"`_." +"`_." msgstr "" -#: ../../shipping/freezing.rst:38 +#: ../../shipping/freezing.rst:61 msgid "" "All solutions need MS Visual C++ dll to be installed on target machine, " -"except py2app. Only Pyinstaller makes self-executable exe that bundles the " -"dll when passing :option:`--onefile` to :file:`Configure.py`." +"except py2app. Only Pyinstaller makes self-executable exe that bundles " +"the dll when passing :option:`--onefile` to :file:`Configure.py`." msgstr "" -#: ../../shipping/freezing.rst:48 +#: ../../shipping/freezing.rst:71 msgid "" -"Prerequisite is to install :ref:`Python, Setuptools and pywin32 dependency " -"on Windows `." +"Prerequisite is to install :ref:`Python, Setuptools and pywin32 " +"dependency on Windows `." msgstr "" -#: ../../shipping/freezing.rst:50 +#: ../../shipping/freezing.rst:73 msgid "Write steps for most basic .exe" msgstr "" -#: ../../shipping/freezing.rst:55 +#: ../../shipping/freezing.rst:78 msgid "Prerequisite is to install :ref:`Python on Windows `." msgstr "" -#: ../../shipping/freezing.rst:57 -msgid "" -"Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" +#: ../../shipping/freezing.rst:80 +msgid "Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" msgstr "" -#: ../../shipping/freezing.rst:59 +#: ../../shipping/freezing.rst:82 msgid "" "Write :file:`setup.py` (`List of configuration options " -"`_)::" +"`_):" msgstr "" -#: ../../shipping/freezing.rst:70 -msgid "" -"(Optionally) `include icon `_" +#: ../../shipping/freezing.rst:93 +msgid "(Optionally) `include icon `_" msgstr "" -#: ../../shipping/freezing.rst:72 +#: ../../shipping/freezing.rst:95 msgid "" "(Optionally) `one-file mode `_" msgstr "" -#: ../../shipping/freezing.rst:74 +#: ../../shipping/freezing.rst:97 msgid "Generate :file:`.exe` into :file:`dist` directory:" msgstr "" -#: ../../shipping/freezing.rst:80 +#: ../../shipping/freezing.rst:103 msgid "" -"Provide the Microsoft Visual C runtime DLL. Two options: `globally install " -"dll on target machine `_ or `distribute dll alongside with .exe " "`_." msgstr "" -#: ../../shipping/freezing.rst:83 ../../shipping/freezing.rst:99 -#: ../../shipping/freezing.rst:110 +#: ../../shipping/freezing.rst:106 ../../shipping/freezing.rst:122 +#: ../../shipping/freezing.rst:177 msgid "PyInstaller" msgstr "" -#: ../../shipping/freezing.rst:85 +#: ../../shipping/freezing.rst:108 msgid "" "Prerequisite is to have installed :ref:`Python, Setuptools and pywin32 " "dependency on Windows `." msgstr "" -#: ../../shipping/freezing.rst:87 +#: ../../shipping/freezing.rst:110 msgid "" "`Most basic tutorial `_" msgstr "" -#: ../../shipping/freezing.rst:88 +#: ../../shipping/freezing.rst:111 msgid "" "`Manual " "`_" msgstr "" -#: ../../shipping/freezing.rst:92 -msgid "OS X" +#: ../../shipping/freezing.rst:124 +msgid "" +"PyInstaller can be used to build Unix executables and windowed apps on " +"Mac OS X 10.6 (Snow Leopard) or newer." msgstr "" -#: ../../shipping/freezing.rst:0 ../../shipping/freezing.rst:0 -msgid "Todo" +#: ../../shipping/freezing.rst:126 +msgid "To install PyInstaller, use pip:" msgstr "" + +#: ../../shipping/freezing.rst:132 +msgid "To create a standard Unix executable, from say :code:`script.py`, use:" +msgstr "" + +#: ../../shipping/freezing.rst:138 +msgid "This creates," +msgstr "" + +#: ../../shipping/freezing.rst:140 +msgid "a :code:`script.spec` file, analogous to a :code:`make` file" +msgstr "" + +#: ../../shipping/freezing.rst:141 +msgid "a :code:`build` folder, that holds some log files" +msgstr "" + +#: ../../shipping/freezing.rst:142 +msgid "" +"a :code:`dist` folder, that holds the main executable :code:`script`, and" +" some dependent Python libraries," +msgstr "" + +#: ../../shipping/freezing.rst:144 +msgid "" +"all in the same folder as :code:`script.py`. PyInstaller puts all the " +"Python libraries used in :code:`script.py` into the :code:`dist` folder, " +"so when distributing the executable, distribute the whole :code:`dist` " +"folder." +msgstr "" + +#: ../../shipping/freezing.rst:146 +msgid "" +"The :code:`script.spec` file can be edited to `customise the build " +"`_, with " +"options such as" +msgstr "" + +#: ../../shipping/freezing.rst:148 +msgid "bundling data files with the executable" +msgstr "" + +#: ../../shipping/freezing.rst:149 +msgid "" +"including run-time libraries (:code:`.dll` or :code:`.so` files) that " +"PyInstaller can't infer automatically" +msgstr "" + +#: ../../shipping/freezing.rst:150 +msgid "adding Python run-time options to the executable," +msgstr "" + +#: ../../shipping/freezing.rst:152 +msgid "" +"Now :code:`script.spec` can be run with :code:`pyinstaller` (instead of " +"using :code:`script.py` again):" +msgstr "" + +#: ../../shipping/freezing.rst:158 +msgid "" +"To create a standalone windowed OS X application, use the " +":code:`--windowed` option" +msgstr "" + +#: ../../shipping/freezing.rst:164 +msgid "" +"This creates a :code:`script.app` in the :code:`dist` folder. Make sure " +"to use GUI packages in your Python code, like `PyQt " +"`_ or `PySide " +"`_, to control the graphical parts of the" +" app." +msgstr "" + +#: ../../shipping/freezing.rst:166 +msgid "" +"There are several options in :code:`script.spec` related to Mac OS X app " +"bundles `here `_. For example, to specify an icon for the app, " +"use the :code:`icon=\\path\\to\\icon.icns` option." +msgstr "" + +#~ msgid "" +#~ "An alternative to shipping your code " +#~ "is freezing it — shipping it as" +#~ " an executable with a bundled Python" +#~ " interpreter." +#~ msgstr "" + +#~ msgid "Many applications you use every day do this:" +#~ msgstr "" + +#~ msgid "Dropbox" +#~ msgstr "" + +#~ msgid "BitTorrent" +#~ msgstr "" + +#~ msgid "..." +#~ msgstr "" + +#~ msgid "Comparison" +#~ msgstr "" + +#~ msgid "" +#~ "Write :file:`setup.py` (`List of configuration" +#~ " options `_)::" +#~ msgstr "" + +#~ msgid "OS X" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo b/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..5d1303bb327317e5d49848e8b1ee5feecd143625 100644 GIT binary patch literal 14721 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 C`L#y? delta 113 zcmZoHe!!%2Pl#nI0}wC*u?!HafH**)1EIjQ5l~VW$e;W`HiXwi*U(Vc*g(O^$jZoK yvYT9tv~EahVy=~fkE5S^sH3~9f{l-lLr$h%eo?yJ\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ../../shipping/packaging.rst:2 +#: ../../shipping/packaging.rst:5 msgid "Packaging Your Code" msgstr "" -#: ../../shipping/packaging.rst:4 -msgid "Packaging your code is important." +#: ../../shipping/packaging.rst:7 +msgid "" +"Package your code to share it with other developers. For example to share" +" a library for other developers to use in their application, or for " +"development tools like 'py.test'." +msgstr "" + +#: ../../shipping/packaging.rst:11 +msgid "" +"An advantage of this method of distribution is its well established " +"ecosystem of tools such as PyPI and pip, which make it easy for other " +"developers to download and install your package either for casual " +"experiments, or as part of large, professional systems." +msgstr "" + +#: ../../shipping/packaging.rst:16 +msgid "" +"It is a well-established convention for Python code to be shared this " +"way. If your code isn't packaged on PyPI, then it will be harder for " +"other developers to find it, and to use it as part of their existing " +"process. They will regard such projects with substantial suspicion of " +"being either badly managed or abandoned." msgstr "" -#: ../../shipping/packaging.rst:6 +#: ../../shipping/packaging.rst:22 msgid "" -"You'll need to package your code first before sharing it with other " -"developers." +"The downside of distributing code like this is that it relies on the " +"recipient understanding how to install the required version of Python, " +"and being able and willing to use tools such as pip to install your " +"code's other dependencies. This is fine when distributing to other " +"developers, but makes this method unsuitable for distributing " +"applications to end-users." msgstr "" -#: ../../shipping/packaging.rst:8 +#: ../../shipping/packaging.rst:28 msgid "" "The `Python Packaging Guide `_ provides an extensive guide on creating " -"and maintaining Python packages." +"guide.readthedocs.io/>`_ provides an extensive guide on creating and " +"maintaining Python packages." msgstr "" -#: ../../shipping/packaging.rst:11 +#: ../../shipping/packaging.rst:32 +msgid "Alternatives to Packaging" +msgstr "" + +#: ../../shipping/packaging.rst:34 +msgid "" +"To distribute applications to end-users, you should :ref:`freeze your " +"application `." +msgstr "" + +#: ../../shipping/packaging.rst:37 +msgid "" +"On Linux, you may also want to consider :ref:`creating a Linux distro " +"package ` (e.g. a .deb file for " +"Debian or Ubuntu.)" +msgstr "" + +#: ../../shipping/packaging.rst:42 msgid "For Python Developers" msgstr "" -#: ../../shipping/packaging.rst:13 +#: ../../shipping/packaging.rst:44 msgid "" "If you're writing an open source Python module, `PyPI " -"`_, more properly known as *The Cheeseshop*, is the " -"place to host it." +"`_ , more properly known as *The Cheeseshop*, is " +"the place to host it." msgstr "" -#: ../../shipping/packaging.rst:19 +#: ../../shipping/packaging.rst:50 msgid "Pip vs. easy_install" msgstr "" -#: ../../shipping/packaging.rst:21 +#: ../../shipping/packaging.rst:52 msgid "" "Use `pip `_. More details `here " -"`_" +"`_" msgstr "" -#: ../../shipping/packaging.rst:25 +#: ../../shipping/packaging.rst:57 msgid "Personal PyPI" msgstr "" -#: ../../shipping/packaging.rst:27 +#: ../../shipping/packaging.rst:59 msgid "" -"If you want to install packages from a source different from PyPI, (say, if " +"If you want to install packages from a source other than PyPI, (say, if " "your packages are *proprietary*), you can do it by hosting a simple http " -"server, running from the directory which holds those packages which need to " -"be installed." +"server, running from the directory which holds those packages which need " +"to be installed." msgstr "" -#: ../../shipping/packaging.rst:31 +#: ../../shipping/packaging.rst:64 msgid "**Showing an example is always beneficial**" msgstr "" -#: ../../shipping/packaging.rst:33 +#: ../../shipping/packaging.rst:66 msgid "" -"Say if you are after installing a package called :file:`MyPackage.tar.gz`, " -"and assuming this is your directory structure:" +"For example, if you want to install a package called " +":file:`MyPackage.tar.gz`, and assuming this is your directory structure:" +msgstr "" + +#: ../../shipping/packaging.rst:72 +msgid "archive" +msgstr "" + +#: ../../shipping/packaging.rst:72 +msgid "MyPackage" msgstr "" -#: ../../shipping/packaging.rst:39 +#: ../../shipping/packaging.rst:72 msgid "MyPackage.tar.gz" msgstr "" -#: ../../shipping/packaging.rst:41 +#: ../../shipping/packaging.rst:74 msgid "Go to your command prompt and type:" msgstr "" -#: ../../shipping/packaging.rst:48 +#: ../../shipping/packaging.rst:81 msgid "" "This runs a simple http server running on port 9000 and will list all " -"packages (like **MyPackage**). Now you can install **MyPackage** using any " -"Python package installer. Using Pip, you would do it like:" +"packages (like **MyPackage**). Now you can install **MyPackage** using " +"any Python package installer. Using Pip, you would do it like:" msgstr "" -#: ../../shipping/packaging.rst:56 +#: ../../shipping/packaging.rst:89 msgid "" -"Having a folder with the same name as the package name is **crucial** here. " -"I got fooled by that, one time. But if you feel that creating a folder " -"called :file:`MyPackage` and keeping :file:`MyPackage.tar.gz` inside that, " -"is *redundant*, you can still install MyPackage using:" +"Having a folder with the same name as the package name is **crucial** " +"here. I got fooled by that, one time. But if you feel that creating a " +"folder called :file:`MyPackage` and keeping :file:`MyPackage.tar.gz` " +"inside that, is *redundant*, you can still install MyPackage using:" msgstr "" -#: ../../shipping/packaging.rst:66 +#: ../../shipping/packaging.rst:99 msgid "pypiserver" msgstr "" -#: ../../shipping/packaging.rst:68 +#: ../../shipping/packaging.rst:101 msgid "" -"`Pypiserver `_ is a minimal PyPI " -"compatible server. It can be used to serve a set of packages to easy_install" -" or pip. It includes helpful features like an administrative command " -"(:option:`-U`) which will update all its packages to their latest versions " -"found on PyPI." +"`Pypiserver `_ is a minimal PyPI" +" compatible server. It can be used to serve a set of packages to " +"easy_install or pip. It includes helpful features like an administrative" +" command (:option:`-U`) which will update all its packages to their " +"latest versions found on PyPI." msgstr "" -#: ../../shipping/packaging.rst:75 +#: ../../shipping/packaging.rst:109 msgid "S3-Hosted PyPi" msgstr "" -#: ../../shipping/packaging.rst:77 +#: ../../shipping/packaging.rst:111 msgid "" "One simple option for a personal PyPi server is to use Amazon S3. A " "prerequisite for this is that you have an Amazon AWS account with an S3 " "bucket." msgstr "" -#: ../../shipping/packaging.rst:79 +#: ../../shipping/packaging.rst:114 msgid "**Install all your requirements from PyPi or another source**" msgstr "" -#: ../../shipping/packaging.rst:80 +#: ../../shipping/packaging.rst:115 msgid "**Install pip2pi**" msgstr "" -#: ../../shipping/packaging.rst:82 +#: ../../shipping/packaging.rst:117 msgid ":code:`pip install git+https://github.com/wolever/pip2pi.git`" msgstr "" -#: ../../shipping/packaging.rst:84 +#: ../../shipping/packaging.rst:119 msgid "**Follow pip2pi README for pip2tgz and dir2pi commands**" msgstr "" -#: ../../shipping/packaging.rst:86 +#: ../../shipping/packaging.rst:121 msgid "" ":code:`pip2tgz packages/ YourPackage` (or :code:`pip2tgz packages/ -r " "requirements.txt`)" msgstr "" -#: ../../shipping/packaging.rst:87 +#: ../../shipping/packaging.rst:122 msgid ":code:`dir2pi packages/`" msgstr "" -#: ../../shipping/packaging.rst:89 +#: ../../shipping/packaging.rst:124 msgid "**Upload the new files**" msgstr "" -#: ../../shipping/packaging.rst:91 +#: ../../shipping/packaging.rst:126 msgid "" -"Use a client like Cyberduck to sync the entire :file:`packages` folder to " -"your s3 bucket" +"Use a client like Cyberduck to sync the entire :file:`packages` folder to" +" your s3 bucket" msgstr "" -#: ../../shipping/packaging.rst:92 +#: ../../shipping/packaging.rst:127 msgid "" -"Make sure you upload :code:`packages/simple/index.html` as well as all new " -"files and directories" +"Make sure you upload :code:`packages/simple/index.html` as well as all " +"new files and directories" msgstr "" -#: ../../shipping/packaging.rst:94 +#: ../../shipping/packaging.rst:129 msgid "**Fix new file permissions**" msgstr "" -#: ../../shipping/packaging.rst:96 +#: ../../shipping/packaging.rst:131 msgid "" -"By default, when you upload new files to the S3 bucket, they will have the " -"wrong permissions set." +"By default, when you upload new files to the S3 bucket, they will have " +"the wrong permissions set." msgstr "" -#: ../../shipping/packaging.rst:97 +#: ../../shipping/packaging.rst:132 msgid "" "Use the Amazon web console to set the READ permission of the files to " "EVERYONE." msgstr "" -#: ../../shipping/packaging.rst:98 +#: ../../shipping/packaging.rst:133 msgid "" -"If you get HTTP 403 when trying to install a package, make sure you've set " -"the permissions correctly." +"If you get HTTP 403 when trying to install a package, make sure you've " +"set the permissions correctly." msgstr "" -#: ../../shipping/packaging.rst:100 +#: ../../shipping/packaging.rst:135 msgid "**All done**" msgstr "" -#: ../../shipping/packaging.rst:102 +#: ../../shipping/packaging.rst:137 msgid "" "You can now install your package with :code:`pip install --index-" "url=http://your-s3-bucket/packages/simple/ YourPackage`" msgstr "" -#: ../../shipping/packaging.rst:105 +#: ../../shipping/packaging.rst:142 msgid "For Linux Distributions" msgstr "" -#: ../../shipping/packaging.rst:107 +#: ../../shipping/packaging.rst:144 +msgid "" +"Creating a Linux distro package is arguably the \"right way\" to " +"distribute code on Linux." +msgstr "" + +#: ../../shipping/packaging.rst:147 +msgid "" +"Because a distribution package doesn't include the Python interpreter, it" +" makes the download and install about 2MB smaller than :ref:`freezing " +"your application `." +msgstr "" + +#: ../../shipping/packaging.rst:151 +msgid "" +"Also, if a distribution releases a new security update for Python, then " +"your application will automatically start using that new version of " +"Python." +msgstr "" + +#: ../../shipping/packaging.rst:154 +msgid "" +"The bdist_rpm command makes `producing an RPM file " +"`_ for use by distributions like Red Hat or SuSE is trivially " +"easy." +msgstr "" + +#: ../../shipping/packaging.rst:157 +msgid "" +"However, creating and maintaining the different configurations required " +"for each distribution's format (e.g. .deb for Debian/Ubuntu, .rpm for Red" +" Hat/Fedora, etc) is a fair amount of work. If your code is an " +"application that you plan to distribute on other platforms, then you'll " +"also have to create and maintain the separate config required to freeze " +"your application for Windows and OSX. It would be much less work to " +"simply create and maintain a single config for one of the cross platform " +":ref:`freezing tools `, which will produce stand-" +"alone executables for all distributions of Linux, as well as Windows and " +"OSX." +msgstr "" + +#: ../../shipping/packaging.rst:167 +msgid "" +"Creating a distribution package is also problematic if your code is for a" +" version of Python that isn't currently supported by a distribution. " +"Having to tell *some versions* of Ubuntu end-users that they need to add " +"`the 'dead-snakes' PPA " +"`_ using `sudo " +"apt-repository` commands before they can install your .deb file makes for" +" an extremely hostile user experience. Not only that, but you'd have to " +"maintain a custom equivalent of these instructions for every " +"distribution, and worse, have your users read, understand, and act on " +"them." +msgstr "" + +#: ../../shipping/packaging.rst:176 +msgid "Having said all that, here's how to do it:" +msgstr "" + +#: ../../shipping/packaging.rst:178 msgid "`Fedora `_" msgstr "" -#: ../../shipping/packaging.rst:108 +#: ../../shipping/packaging.rst:179 msgid "" "`Debian and Ubuntu `_" msgstr "" -#: ../../shipping/packaging.rst:109 -msgid "" -"`Arch `_" +#: ../../shipping/packaging.rst:180 +msgid "`Arch `_" msgstr "" -#: ../../shipping/packaging.rst:112 +#: ../../shipping/packaging.rst:183 msgid "Useful Tools" msgstr "" -#: ../../shipping/packaging.rst:114 +#: ../../shipping/packaging.rst:185 msgid "`fpm `_" msgstr "" -#: ../../shipping/packaging.rst:115 +#: ../../shipping/packaging.rst:186 msgid "`alien `_" msgstr "" -#: ../../shipping/packaging.rst:39 -msgid "archive" -msgstr "" +#: ../../shipping/packaging.rst:187 +msgid "" +"`dh-virtualenv `_ (for APT/DEB omnibus " +"packaging)" +msgstr "" + +#~ msgid "Packaging your code is important." +#~ msgstr "" + +#~ msgid "" +#~ "You'll need to package your code " +#~ "first before sharing it with other " +#~ "developers." +#~ msgstr "" + +#~ msgid "" +#~ "The `Python Packaging Guide `_ provides an " +#~ "extensive guide on creating and " +#~ "maintaining Python packages." +#~ msgstr "" + +#~ msgid "" +#~ "If you're writing an open source " +#~ "Python module, `PyPI `_, " +#~ "more properly known as *The Cheeseshop*," +#~ " is the place to host it." +#~ msgstr "" + +#~ msgid "" +#~ "If you want to install packages " +#~ "from a source different from PyPI, " +#~ "(say, if your packages are " +#~ "*proprietary*), you can do it by " +#~ "hosting a simple http server, running" +#~ " from the directory which holds those" +#~ " packages which need to be installed." +#~ msgstr "" + +#~ msgid "" +#~ "Say if you are after installing a" +#~ " package called :file:`MyPackage.tar.gz`, and" +#~ " assuming this is your directory " +#~ "structure:" +#~ msgstr "" + +#~ msgid "" +#~ "`Pypiserver `_ is" +#~ " a minimal PyPI compatible server. It" +#~ " can be used to serve a set " +#~ "of packages to easy_install or pip. " +#~ "It includes helpful features like an " +#~ "administrative command (:option:`-U`) which " +#~ "will update all its packages to " +#~ "their latest versions found on PyPI." +#~ msgstr "" -#: ../../shipping/packaging.rst:39 -msgid "MyPackage" -msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo index 87012041e4ea17412ed02306ee959b865705c5c1..40e49a06bc35b7f3aae929c438fb0ee0c50c61b4 100644 GIT binary patch delta 3157 zcmbVNe@t7~6}}WgfD&LN1e&$e?b1z612&K!T_{PXcInm*sY%EpRhu*(_yJFOyyw}^ zVMvoqQj-!O4eZ**5bU~&(~!*3P;4?+BAPmB|4rHt^}k7*Hcgu3d!M#!e@@f(-S-~g zWr-%u!W_T*&OP@#-*?Wrc30_8^molw34%{EzR%*DlMiK|-U>nv<9i(6A7DN76e0Uy z{{s7G*t$wW24MdN+XUNRMaVRK1F&H{+dBwZf>o*s`4ILWuy^(Sb_xN10XqkK=4pU{{e3+lX}mwvK*)aBhp({}A;BAYf}-zOLd|6`gMzLn_sbu%+m_8fd2zW`qtY1`U|whHffY@m^BJ2+)YZ zYO0ITQxn#xY0z%p%f4gIx~^Dih`xw5YgDB{=XEy?t07GdA82=6ygi3}hs$#AYB-QP~% zPy=R2X=fFcU#R}pV8pN@%&ziPTH_|$x8wPSpfYq`8BxPj38{2|{h{WN|HQy|9Sj5V z*xpgg3Wj_9emwYs6G6qNnSRyqgONd9mA>r8&U?{;VN=)5aVI}>cvu_K6y1UC(W6)z zvLA_P$mU5QB}-w;@9ofx5eG>JVrpSJuIV~eB9=LZP(x5-VvBij+C$yV$UYR7Cz->b zcatO^Icwq(LJqr_!kc>`Df@QK7ya_(_^38CS{}fYL`puYTqrLCxu*#Xge)2f1E>R$ zb=H3VNKZ%|?io0zg{%k&IB8taLZ&eWDZ;cDzvZf0w%7sp69a6$mPTb&DSFsMM3uT> zwl|E2lwc6zmc{Uv+z8Y%>6mgJ7%i$QVGXX%iUDb5&7v$kNad&d$UDd_U{b@h^1rQp zp`ymo9ZIu*)!k@5+R@e7(bYveztYor=wK&4?8i@!o$R6K&AL9t7>OWw$5~YwlPk2h zukWk6<}*VhC+be=k&vQyykUmM!adXoI*;MwU9V90=kZSVa{ZCYh&9a2`u)#*T{YAY z#1C}5Hqk?0QwCKX&4X583-zzIir5POXod3GEWcT#_S~FE6~xsXv+H|zq^J1oG&{I! zyz?r4z{N*PKPmE$bESNSicCx_-o=hp`%+finxs4)=b0<^~gwid2k>SXO+JbhiQD zDzy_URAgf!m8AU66wiFZZ_SC74Z!EuVzTta(qvg(B0jZ~MSCg9=aYOUj!mnaW!OUV zz8-#aL#8a23vxFDCigVhOLs+P#ZDl>=_D2DX&0VMo+sz+1gqZN5k+Jk%i1$VaedCd znDaK%QgMyX+;p&Co)=dhlUpQJJ5B!1Zr@=ST`9i-nvZTm1&;iJJTZ|(SWiqopJ9J&I_)pRMa24wn9Y=>xOod~ z0cdBRHSGURxg277jo**i(>V$BrI)tV!Tse>5HIpfRwQK)I331s&!U^ejf@ZOlpq_C zzUgSa97hMRR9oA2(@6olOKYJ0!GhE;wSgXUFPbCrqLKU$Ks)&&AyP#-6ElxL)vwQoa|JSujd9DcE+zEsZLi9%mCMD+{b5)Z^uitn6=l$!bU4U3I%I7y3 zq>l^kc;*XGg<=4+U+!vYmV)3`DJx=jy!CAPz>&i<^PV%k<1F2J`mL?1^s*C)v^O20 z3zU}S4KStkoNO?+6L@ise+aH~-u1;-H$-NV`P-hal8D*qw!J&0Hwuf5v_0o8PPGlz IZe9Z9-_A?3k^lez delta 2808 zcmcIlO>7&-6&~5L8pEO-*|H=jG4dLtKV~Gd{z+`8hEX?F(t{HJpMoY@a!2CEigRWc?#`s z(LRaxFKEBOZyfD8eEvfxA#3emQ4hIaG`LLQ)f8|`gEQslXv zg!JKyI@+J2U?(livieFJ4+qCmqH2M zPJp7T@G?~mQ(?!u0!-_Ilx0lVNyVgKOn?%Nf@VQ0&k!UdS~vpqicNLZ0y{z>u7ocu zlbSy1M$>f5MmNRQ3>_wvuol&9jam>ljVVo~Dukw8FIBVbgsmZTO?O|Qo31M6Ybr#w zkg1r{0XUN?+-|kB&kNyf(gTfg#H*^$hb!) zwT3)0El|R?HbtY;5K}bW#!Dtm=uz!5h4yOLzq>ZNEG-s~PP31ncuqA!a(q{zRI}d>#$AbrCle?{FcdXH!I*+-n?b~91ywo~oYG7?p+u=ZWd%%2f{@s)0E-Xw zZ~kd#po4AO^}g@e@ZrP5N52C{j*J{R!5;34Jw1GpDzOn5JN?=#mrlPj3Ma?Lz8BR3 zhB>s{o+0#7%ynD6hWOuRd!V1_@)f*Y)vxtZt2I(wt{g&sFH z{yEFPa8@#mcYb5MDdB{>kKmlYMZ>n_F__dYYr)a8qhnGOUaTYR#sZb7C73AA0RM1} zvr^M5bz>b+Yt9NNkuzTb1nMlMow=I0yC#;aAj&tPQIRFcTXAPe_J`EWxmm!DkW67t zUd!_L*7^N)QLMq%ZrRREPU7?T;+3%>~FiDdL2Zm;JllWu~1m#jDI-G zOP|X6a2~KQ>~SbYf{O1 zoJI^T{j)P-qbgZxY+RR`HEF8y&8k>g41ho7ofzPbMRP`6o;Y1*j~xrL+4;O|BXII*v4ZAyfmaGRytt2*aPUCp%;b?1bZ$yS*mwKhI*iMCr6O)2 zn~$~wuW`Hv#jOY1L;~asw}rdQu`m0c*@2VDSJ>HYoejr|AkF10_@H6x>v F{{n>k{viMW diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po index 91d1ac8b8..04b107c03 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../starting/install/linux.rst:4 msgid "Installing Python on Linux" @@ -17,116 +18,134 @@ msgstr "리눅스에 파이썬 설치하기" #: ../../starting/install/linux.rst:6 msgid "" -"The latest versions of Ubuntu and Fedora **come with Python 2.7 out of the " -"box**." -msgstr "최신 버전의 우분투와 페도라는 **훌륭하게도 파이썬 2.7이 딸려온다**." +"The latest versions of CentOS, Fedora, Redhat Enterprise (RHEL) and " +"Ubuntu **come with Python 2.7 out of the box**." +msgstr "" +"최신 버전의 CentOS, 페도라, 레드햇 엔터프라이즈(RHEL), 그리고 우분투는 **파이썬 2.7이 딸려옵니다. 멋지죠. ** " + +#: ../../starting/install/linux.rst:9 +msgid "" +"To see which version of Python you have installed, open a command prompt " +"and run" +msgstr "" +"어느 버전의 파이썬이 설치되어 있는지 확인하려면, 명령창을 열고 아래의 스크립트를 실행하세요. " -#: ../../starting/install/linux.rst:8 +#: ../../starting/install/linux.rst:15 msgid "" -"The latest versions of Redhat Enterprise (RHEL) and CentOS come with Python " -"2.6. Some older versions of RHEL and CentOS come with Python 2.4 which is " -"unacceptable for modern Python development. Fortunately, there are `Extra " -"Packages for Enterprise Linux`_ which include high quality additional " +"Some older versions of RHEL and CentOS come with Python 2.4 which is " +"unacceptable for modern Python development. Fortunately, there are `Extra" +" Packages for Enterprise Linux`_ which include high quality additional " "packages based on their Fedora counterparts. This repository contains a " -"Python 2.6 package specifically designed to install side-by-side with the " -"system's Python 2.4 installation." +"Python 2.6 package specifically designed to install side-by-side with the" +" system's Python 2.4 installation." msgstr "" -"최신 버전의 레드햇 엔터프라이즈(RHEL)과 CentOS는 파이선 2.6이 딸려온다. 조금 옛날 버전의 RHEL과 CentOS는 파이썬 " -"2.4가 딸려온다. 하지만 이 버전의 파이썬은 요즘의 파이썬 개발에는 적당하지 않다. 다행히 `Extra Packages for " -"Enterprise Linux`_ 라는게 있다. 이 패키지는 페도라의 " -"패키지에 대응하는 훌륭한 추가 패키지를 포함하고 있다. 이 저장소는 파이썬 2.4가 설치된 시스템에서도 돌아갈 수 있도록 특별히 만들어진" -" 파이썬 2.6 패키지를 포함하고 있다." +"몇몇 오래된 버전의 RHEL와 CentOS에는 파이썬 2.4가 딸려오는데, 이 버전은 " +"요즘의 파이썬 개발에는 적당하지 않습니다. 다행히도 `Extra Packages for Enterprise Linux`가 있습니다. " +"여기에는 페도라에 대응하는 훌륭한 추가 패키지가 들어있는데, " +"파이썬 2.4가 설치된 시스템에서도 2.4버전과 2.6버전이 병행하여 " +"설치될 수 있도록 특별히 만들어진 파이썬 2.6 패키지를 포함하고 있습니다. " -#: ../../starting/install/linux.rst:18 +#: ../../starting/install/linux.rst:24 msgid "" -"You do not need to install or configure anything else to use Python. Having " -"said that, I would strongly recommend that you install the tools and " -"libraries described in the next section before you start building Python " -"applications for real-world use. In particular, you should always install " -"Setuptools, as it makes it much easier for you to use other third-party " -"Python libraries." +"You do not need to install or configure anything else to use Python. " +"Having said that, I would strongly recommend that you install the tools " +"and libraries described in the next section before you start building " +"Python applications for real-world use. In particular, you should always " +"install Setuptools and pip, as it makes it much easier for you to use " +"other third-party Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서" -" 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools는 반드시 설치해야 한다. 이것들은 다른 파이썬 " -"서드파티 라이브러리들을 사용하기 편하게 해준다." +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 " +"안내서에서 앞으로 설명할 도구와 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools와 pip는 반드시 설치해야 합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다." -#: ../../starting/install/linux.rst:25 +#: ../../starting/install/linux.rst:31 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ../../starting/install/linux.rst:27 +#: ../../starting/install/linux.rst:33 msgid "" -"The most crucial third-party Python software of all is Setuptools, which " -"extends the packaging and installation facilities provided by the distutils " -"in the standard library. Once you add Setuptools to your Python system you " -"can download and install any compliant Python software product with a single" -" command. It also enables you to add this network installation capability to" -" your own Python software with very little work." +"The two most crucial third-party Python packages are `setuptools " +"`_ and `pip " +"`_." msgstr "" -"Setuptools은 모든 파이썬 서드파티 소프트웨어 중 가장 중요하다. 표준 라이브러리인 distutils의 패키징과 설치 기능을 더욱" -" 편하게 해주기 때문이다. Setuptools을 파이썬 시스템에 설치하면 어느 파이썬 소프트웨어 제품이라도 명령어 한 줄로 설치할 수 " -"있다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." +"가장 중요한 파이썬 서드파티 패키지를 2개 뽑으라면 " +"`setuptools `_ 와 `pip `_ 입니다." -#: ../../starting/install/linux.rst:34 +#: ../../starting/install/linux.rst:35 msgid "" -"To obtain the latest version of Setuptools for Linux, refer to the " -"documentation available here: `unix-setuptools " -"`_" +"Once installed, you can download, install and uninstall any compliant " +"Python software product with a single command. It also enables you to add" +" this network installation capability to your own Python software with " +"very little work." msgstr "" -"리눅에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 된다. `unix-setuptools " -"`_" +"이것들을 설치하면 단 한 줄의 명령만으로도 pip와 setuptools에 호환되는 모든 파이썬 소프트웨어를 " +"다운로드, 설치, 삭제할 수 있습니다." +"또한 당신이 만든 파이썬 소프트웨어에 네트워크 설치 기능을 손쉽게 추가할 수 있도록 해줍니다. " -#: ../../starting/install/linux.rst:37 +#: ../../starting/install/linux.rst:39 msgid "" -"The new ``easy_install`` command you have available is considered by many to" -" be deprecated, so we will install its replacement: **pip**. Pip allows for " -"uninstallation of packages, and is actively maintained, unlike easy_install." +"Python 2.7.9 and later (on the python2 series), and Python 3.4 and later " +"include pip by default." msgstr "" -"이제 새로운 명령을 내릴 수 있게 되었다: **easy_install** 이다. 하지만 이 명령어를 불편하게 생각하는 사람들도 많다. " -"그러니 이를 대체할 것을 설치해보자. **pip** 는 패키지의 설치 제거도 가능케 하고, easy_install와 달리 현재 활발히 " -"유지 보수되고 있다." +"파이썬 2.7.9와 그 이후의 버전(파이썬2 중에서), 그리고 파이썬 3.4와 그 이후의 버전은 " +"pip를 기본적으로 포함하고 있습니다. " + +#: ../../starting/install/linux.rst:42 +msgid "To see if pip is installed, open a command prompt and run" +msgstr "pip가 설치되어 있는지 보고 싶다면, 명령창을 열어 아래의 파이썬 스크립트를 실행하면 됩니다." -#: ../../starting/install/linux.rst:41 -msgid "To install pip, simply open a command prompt and run" -msgstr "pip를 설치하려면 아래 파이썬 스크립트를 실행하면 된다." +#: ../../starting/install/linux.rst:48 +msgid "" +"To install pip, `follow the official pip installation guide " +"`_ - this will automatically " +"install the latest version of setuptools." +msgstr "" +"pip를 설치하려면 `pip 공식 설치 안내서 " +"`_ 를 따라해보세요." +" - 이 링크는 setuptools 최신 버전도 자동 설치해줍니다. " -#: ../../starting/install/linux.rst:49 +#: ../../starting/install/linux.rst:51 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/linux.rst:51 +#: ../../starting/install/linux.rst:53 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 툴이다. " -"이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " -"관리할 수 있도록 해준다." +"Virtual Environments은 파이썬 가상 환경을 만들어 서로 다른 파이썬 프로젝트들 간의 독립성을 유지시켜주는 " +"툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " +"패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." -#: ../../starting/install/linux.rst:56 +#: ../../starting/install/linux.rst:58 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." -msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해준다." +"For example, you can work on a project which requires Django 1.3 while " +"also maintaining a project which requires Django 1.0." +msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 작업하면서, 동시에 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있습니다." + +#: ../../starting/install/linux.rst:61 +msgid "" +"To start using this and see more information: :ref:`Virtual Environments " +"` docs." +msgstr "" +"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 :ref:`Virtual Environments " +"` 문서에서 볼 수 있습니다. " -#: ../../starting/install/linux.rst:59 +#: ../../starting/install/linux.rst:63 msgid "" -"To start using and see more information: `Virtual Environments " -"`_ docs." +"You can also use :ref:`virtualenvwrapper ` to make" +" it easier to manage your virtual environments." msgstr "" -"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 `Virtual Environments " -"`_ 에서 볼 수 있다." +":ref:`virtualenvwrapper ` 를 봐도 됩니다. Virtual Environments를 " +"보다 쉽게 관리할 수 있을 것입니다. " -#: ../../starting/install/linux.rst:64 +#: ../../starting/install/linux.rst:68 msgid "" "This page is a remixed version of `another guide " -"`_, which is" -" available under the same license." +"`_, which" +" is available under the same license." msgstr "" "이 페이지는 `다른 가이드 `_ 를 재배열 버전이다. 라이선스는 동일하다." +"windows/>`_ 를 풀어쓴 버전입니다. 동일한 라이선스 아래서 사용할 수 있습니다." diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo index b3f0d7a7b66597a3790e67e4b021be7ac0d887cb..2c90cfb8b759649c6b82118b4a84f659d487b766 100644 GIT binary patch delta 2012 zcmaKrYiv_x7=XXJjmx;~e(%N$$VH&t26(G%2n!OEC60iAAxh8I)2-q3oZ8DSI^2K* zmTiWSuVo#!qms$CIJM9+CN@D6O_b;#jfqCo=nsGN`^pbv;vY?XPfrI+Ogzb#=exZ3 z_dUNi&$SHvT$~#u_*LRE;<~3D7JXp@Av<-%_D@Y#&>frA^pfEWFzu6GJxdB z3&>M>gw!I7mJqTDS&v+UJc2Al_80NV%MlN0AqiO~^T_-iIaB&S7K`@?I4o z(|CWsTDLP+L&(>7zK#3^>Bn-HY7V-vPEVu4N#vKvTXlNLPXRve0s3lnN&Kqeb%UWJ zUYGMNg8q>^IADi9#Ro3YZCBh*5WwyhJze0CJzhbQK(WKo4#g&J%SiP&@Jf(83do{p z1Fr&t4bde+hvIY!vQ2WxB3>(!2ip6Q-H z-64q<>!GX_wCmOac7t8$R@@G+2rnEw3JXp^bowO0i!vCp79}~P0OsrVg3qG`?Co-R z=vVnQODt~DZn0wJN^4+Ox5MrA36dz|Mv}qX&R&tmXcV}~co8)r~lIb~Y zq{jlXD|7TTH9iCSwyA+e3Lek#dF}MOg7ww=MOkzUUeRXS+h>8jLc1uzcJmJN&V1^s zuAl{lo0jmgS$1WX?k;T0n>fpc{q$mCPwrdVW_i(?RlouP7CoOn7iHIG>E#?>h7Z)sugCV{Jy{G(7hnBc)Aq=Pe>fk4r*JU(=j4ae^n)f@CJHI}@u+qhfu zq`rBiv~`sx&xR+>z%GsgJzRQVAfu??k<5H%yqxi~cft$KE@{tfCIM+R#y*^9>L?!@ zcrtzIJRc78B-;9Tl1)uB8fK9skIX~bpWqP{*73PODmIu7MllTX49o5~}D7}7WflC{Hc zhEwq<&vY;2FdYo>sX;b10;yP-#lm<_&Bqp`uMXoQ@ZgZ13hl2n8dN%7*^}*maaHe2 z>0lVx4V6dLMP@SvN?_0V(4-bWyD-ipNxj#aU()!-b~dL1j|SNV6;jvd*|h|uZk%~& zgU}{p)xhGv8x{{w2n(R~bKz%y&{r#HJ>g@C)b$uU9RfDx=aCW22(-pwEZV>SKpF){ z*$1;Mib4tPR+~@MjYlzUmC@#EQx4XX?yjk(XRBvw+3Y+{4Jv7~!{R9H$8KeNjZ&vq zVHfzh5iENMz0(Z||49y5EP&HV|E_7smeOo|ULT2GMH2fy0H!E@l5+C{J<|Kc<2-x4P}b3c#O%vn0YjV delta 1311 zcmaiyZA_b06vyww>sZCoLg~s|@9~k317#mrP-HENL9L7$8Hn0I)2B*R6 zU?n(|%h*0}3bcZ2U=g?p>XGLsu#>R~_In-@V4*#qv1)K)7h@kFaK2#c;G?^7F?<(z z0lW&9fL%Jqz68DCIL;ls0}hxhWXuU(hDsOshn}%7z~>B%6(gh?lL{ULn{Yq71|x=r zd}OT#SHQc$YhV-j8>lI-Gck4;i5>=B@W)G$1pZC%Z}{dtTf)tj?TSH7@Fw^*I8?SJ z{7Cs$q0fRB3z1+PeSZ+Ft4ho$q)^;gn|L~VSy7ynmFr6w^A?qY_MTVW!=4xWMiLwO zb4s3_KjR*)OT1LDrqE`wzUA>juiG{39^3!&jxpxx^X&HwjEwg5_xFr?1_zo?yimtS zJl|C`5&lqH+avuR``~bIGmRGApMAXZF1(Vqq@)fnxtx{ddmTb)j^u+F7FCO=g(;iL?&^GrBG z^TzH(cClTdrjiwe{#eq4x!TmWDzfXf}CEPth->6Zz*;VsRxCratpg z#9lSO;kp&e#L@yk`V{YyvnrRDBQg->V%0CBemR@sa%NikQ{t0UCJ>kJg~ZuuUR#@a zKPVPH&V<$UYEVr1c_tW?vq^bwg*)s`u(+5`iD*o!A5wVFpw1r?%V#w0F(2tI{aJG% zI&JAtBD86#X<3)EJ}%;MITKH(cCLVobRw#$N3p70@`vQ5?Uu!grB;)Owf)rTqN+IlW6wb$4^`2xmG=~0LczDyQGHdtR-L=*2|V3uRac>=IlYE1zXOT1*LuvNokcCA zbx6BKhW%nrg+l@Bee{`?qv1EK2QZtsE7zwbARm8TOZz>)XcKA(0(j\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../starting/install/osx.rst:4 msgid "Installing Python on Mac OS X" @@ -17,32 +18,34 @@ msgstr "맥 OS X에 파이썬 설치하기" #: ../../starting/install/osx.rst:6 msgid "" -"The latest version of Mac OS X, Mavericks, **comes with Python 2.7 out of " -"the box**." -msgstr "맥 OS X의 최신 버전인 요세미티에는 **훌륭하게도 파이썬 2.7이 딸려온다**." +"The latest version of Mac OS X, El Capitan, **comes with Python 2.7 out " +"of the box**." +msgstr "맥 OS X의 최신 버전인 엘 캐피탄에는 **파이썬 2.7이 딸려옵니다**." #: ../../starting/install/osx.rst:8 msgid "" -"You do not need to install or configure anything else to use Python. Having " -"said that, I would strongly recommend that you install the tools and " -"libraries described in the next section before you start building Python " -"applications for real-world use. In particular, you should always install " -"Setuptools, as it makes it much easier for you to use other third-party " -"Python libraries." +"You do not need to install or configure anything else to use Python. " +"Having said that, I would strongly recommend that you install the tools " +"and libraries described in the next section before you start building " +"Python applications for real-world use. In particular, you should always " +"install Setuptools, as it makes it much easier for you to use other " +"third-party Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 가이드에서" -" 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다. 특히 Setuptools는 반드시 설치해야 한다. 이것들은 다른 파이썬 " -"서드파티 라이브러리들을 사용하기 편하게 해준다." +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 " +"안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 합니다. 이것들은" +" 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " #: ../../starting/install/osx.rst:14 msgid "" -"The version of Python that ships with OS X is great for learning. Yet, it's " -"not good for development. The version shipped with OS X may be out of date " -"from the `official current Python release `_, which is considered the stable production version." +"The version of Python that ships with OS X is great for learning but it's" +" not good for development. The version shipped with OS X may be out of " +"date from the `official current Python release " +"`_, which is considered the " +"stable production version." msgstr "" -"OS X에 포함된 파이썬의 버젼은 배우기에는 최고다. 하지만 개발에는 좋지 않다. OS X에 딸려온 버젼은 안정화된 `공식 릴리즈 된 " -"파이썬 `_ 보다 구버전일 것이다." +"OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. " +"OS X에 딸려온 버전은 안정화된 `공식 릴리즈 " +"된 파이썬 `_ 보다 구버전일 것입니다." #: ../../starting/install/osx.rst:20 msgid "Doing it Right" @@ -54,130 +57,139 @@ msgstr "진짜 파이썬을 설치해보자!" #: ../../starting/install/osx.rst:24 msgid "" -"Before installing Python, you'll need to install GCC. GCC can be obtained by" -" downloading `XCode `_, the smaller " -"`Command Line Tools `_ (must have an" -" Apple account) or the even smaller `OSX-GCC-Installer " +"Before installing Python, you'll need to install GCC. GCC can be obtained" +" by downloading `Xcode `_, the smaller" +" `Command Line Tools `_ (must " +"have an Apple account) or the even smaller `OSX-GCC-Installer " "`_ package." msgstr "" -"파이썬을 설치하기 전에 GCC를 설치해야 한다. GCC는 `XCode `_" -" 를 설치하면서 얻을 수 있다. 더 작은 버전인 `Command Line Tools " -"`_ (애플 계정이 있어야 한다) 에서도 얻을 수 있고, 그보다도" -" 더 작은 버젼인 `OSX-GCC-Installer `_ 패키지에서도 얻을 수 있다." +"파이썬을 설치하기 전에 우선 GCC를 설치해야 합니다. GCC는 `XCode " +"`_ 를 설치하면서 얻을 수 있습니다. 더 작은 버전인 `Command " +"Line Tools `_ (애플 계정이 있어야 한다) 에서도" +" 얻을 수 있고, 그보다도 더 작은 버젼인 `OSX-GCC-Installer " +"`_ 패키지에서도 얻을 수" +" 있습니다." #: ../../starting/install/osx.rst:31 msgid "" -"If you already have XCode installed, do not install OSX-GCC-Installer. In " -"combination, the software can cause issues that are difficult to diagnose." +"If you already have Xcode installed, do not install OSX-GCC-Installer. In" +" combination, the software can cause issues that are difficult to " +"diagnose." msgstr "" -"이미 XCode를 설치했으면 OSX-GCC-Installer는 설치하면 안된다.두개를 모두 설치하면 원인을 밝히 어려운 문제를 일으킬 수" -" 있다." +"이미 XCode를 설치했으면 OSX-GCC-Installer는 설치하면 안됩니다. 두 개를 모두 설치하면 원인을 밝히 어려운 문제를 " +"일으킬 수 있습니다. " -#: ../../starting/install/osx.rst:35 +#: ../../starting/install/osx.rst:36 msgid "" -"While OS X comes with a large number of UNIX utilities, those familiar with " -"Linux systems will notice one key component missing: a decent package " -"manager. `Homebrew `_ fills this void." +"If you perform a fresh install of Xcode, you will also need to add the " +"commandline tools by running ``xcode-select --install`` on the terminal." msgstr "" -"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 한가지가 빠져있다는 사실을 알아챌 것이다. 훌륭한 " -"패키지 매니저가 없다는 것이다. 하지만 `Homebrew `_ 가 그 빈자리를 채워준다." +"Xcode를 새로 설치했다면 터미널에서 ``xcode-select --install`` 를 실행시켜 커맨드라인 툴을 추가할 필요가 있습니다. " #: ../../starting/install/osx.rst:39 msgid "" -"To `install Homebrew " -"`_, simply run" +"While OS X comes with a large number of UNIX utilities, those familiar " +"with Linux systems will notice one key component missing: a decent " +"package manager. `Homebrew `_ fills this void." msgstr "" -"`Homebrew를 설치하기 위해서는 " -"`_, 아래 코드를 그냥 실행하기만 " -"하면 된다." +"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 요소 하나가 빠져있다는 사실을 알아차릴 것입니다. " +"바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를 채워줍니다." -#: ../../starting/install/osx.rst:46 +#: ../../starting/install/osx.rst:43 msgid "" -"The script will explain what changes it will make and prompt you before the " -"installation begins. Once you've installed Homebrew, insert the Homebrew " -"directory at the top of your :envvar:`PATH` environment variable. You can do" -" this by adding the following line at the bottom of your :file:`~/.profile` " -"file" +"To `install Homebrew `_, open :file:`Terminal` " +"or your favorite OSX terminal emulator and run" msgstr "" -"이 스크립트는 설치가 시작되기 전에 설치로 인해 변경되는 것들과 명령어를 설명해준다. Homebrew가 설치됐으면 Homebrew " -"디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣자. :file:`~/.profile` 파일의 마지막 줄에 다음과 같이 " -"덧붙이면 된다." +"`Homebrew `_ 를 설치하려면 " +" :file:`터미널` 을 열거나 마음에 드는 OSX 터미널 에뮬레이터를 열고 " +"아래 코드를 그냥 실행하기만 하면 됩니다." -#: ../../starting/install/osx.rst:56 +#: ../../starting/install/osx.rst:50 +msgid "" +"The script will explain what changes it will make and prompt you before " +"the installation begins. Once you've installed Homebrew, insert the " +"Homebrew directory at the top of your :envvar:`PATH` environment " +"variable. You can do this by adding the following line at the bottom of " +"your :file:`~/.profile` file" +msgstr "" +"이 스크립트는 설치가 시작되기 전에 설치로 인해 변경되는 것들과 명령어를 알려줍니다. Homebrew가 설치됐으면 Homebrew " +"디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣으세요. :file:`~/.profile` 파일의 마지막 줄에 다음과 " +"같이 덧붙이면 됩니다." + +#: ../../starting/install/osx.rst:60 msgid "Now, we can install Python 2.7:" -msgstr "이제 우리는 파이썬 2.7을 설치할 수 있다." +msgstr "이제 우리는 파이썬 2.7을 설치할 수 있습니다." -#: ../../starting/install/osx.rst:62 +#: ../../starting/install/osx.rst:66 msgid "This will take a minute or two." -msgstr "1~2분 정도 걸릴 것이다." +msgstr "1~2분 정도 걸릴 것입니다." -#: ../../starting/install/osx.rst:66 +#: ../../starting/install/osx.rst:70 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ../../starting/install/osx.rst:68 +#: ../../starting/install/osx.rst:72 msgid "Homebrew installs Setuptools and ``pip`` for you." -msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해준다." +msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해줍니다." -#: ../../starting/install/osx.rst:70 +#: ../../starting/install/osx.rst:74 msgid "" -"Setuptools enables you to download and install any compliant Python software" -" over a network (usually the Internet) with a single command " +"Setuptools enables you to download and install any compliant Python " +"software over a network (usually the Internet) with a single command " "(``easy_install``). It also enables you to add this network installation " "capability to your own Python software with very little work." msgstr "" -"Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 편리한 파이썬 소프트웨어를 " -"다운로드받고 설치할 수 있도록 해준다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 한다." +"Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 파이썬 " +"소프트웨어를 다운로드받고 설치할 수 있도록 해줍니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다. " -#: ../../starting/install/osx.rst:75 +#: ../../starting/install/osx.rst:79 msgid "" -"``pip`` is a tool for easily installing and managing Python packages, that " -"is recommended over ``easy_install``. It is superior to ``easy_install`` in " -"`several ways `_, and is actively maintained." +"``pip`` is a tool for easily installing and managing Python packages, " +"that is recommended over ``easy_install``. It is superior to " +"``easy_install`` in `several ways `_, and is " +"actively maintained." msgstr "" -"``pip`` 는 파이썬 패키지를 손쉽게 설치하고 관리할 수 있게 해주는 툴이다. ``easy_install`` 로 설치할 것을 " +"``pip`` 는 파이썬 패키지를 손쉽게 설치하고 관리할 수 있게 해주는 툴입니다. ``easy_install`` 로 설치할 것을 " "추천한다. ``easy_install`` 는 `많은 면 `_ 에서 탁월하고, 또한 활발히 유지 보수되고 있다." +"tools.html#easy-install>`_ 에서 탁월하고, 활발히 운영되고 있습니다." -#: ../../starting/install/osx.rst:81 +#: ../../starting/install/osx.rst:85 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/osx.rst:83 +#: ../../starting/install/osx.rst:87 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 툴이다. " -"이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. 그리고 전역 패키지를 깨끗하게 " -"관리할 수 있도록 해준다." +"Virtual Environments은 파이썬 가상 환경을 만들어 여러 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 " +"툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " +"패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:88 +#: ../../starting/install/osx.rst:92 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." -msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해준다." +"For example, you can work on a project which requires Django 1.3 while " +"also maintaining a project which requires Django 1.0." +msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:91 +#: ../../starting/install/osx.rst:95 msgid "" -"To start using and see more information: `Virtual Environments " -"`_ docs." +"To start using this and see more information: :ref:`Virtual Environments " +"` docs." msgstr "" "Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 `Virtual Environments " "`_ 에서 볼 수 있다." +"guide/blob/master/docs/dev/virtualenvs.rst>`_ 문서에서 볼 수 있습니다." -#: ../../starting/install/osx.rst:96 +#: ../../starting/install/osx.rst:100 msgid "" "This page is a remixed version of `another guide " -"`_, which is" -" available under the same license." +"`_, which" +" is available under the same license." msgstr "" "이 페이지는 `다른 가이드 `_ 를 재배열 버전이다. 라이선스는 동일하다." +"windows/>`_ 를 재배열한 버전입니다. 라이선스는 동일합니다." \ No newline at end of file diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo index 5dd1a7a6e756a8aa883fd5a0b9b15e40d4afcb53..89812d24afc7727e4093831b2ed54452f245d51e 100644 GIT binary patch delta 1656 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\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../starting/install/win.rst:4 msgid "Installing Python on Windows" @@ -18,74 +19,72 @@ msgstr "Windows에 파이썬 설치하기" #: ../../starting/install/win.rst:6 msgid "" "First, download the `latest version " -"`_ of Python 2.7 from " -"the official Website. If you want to be sure you are installing a fully up-" -"to-date version then use the \"Windows Installer\" link from the home page " -"of the `Python.org web site `_ " +"`_ of Python " +"2.7 from the official Website. If you want to be sure you are installing " +"a fully up-to-date version, click the Downloads > Windows link from the " +"home page of the `Python.org web site `_ ." msgstr "" -"우선 공식 웹사이트에서 파이썬 2.7의" -"`최신 버전 `_ " -"을 다운로드 받아야 한다. 확실한 최신 버전으로 파이썬을 설치하고자 한다면, " -"`Python.org web site `_ " -"홈페이지의 \"Windows Installer\" 링크에서 다운받으면 된다." +"우선 공식 웹사이트에서 파이썬 2.7의 `최신 버전 " +"`_ 을 다운로드 받아야 합니다. " +"최신 버전으로 파이썬을 설치하고자 한다면, `Python.org 웹사이트 `_ " +"에서 Downloads > Windows 링크에서 다운받으면 됩니다." #: ../../starting/install/win.rst:11 msgid "" -"The Windows version is provided as an MSI package. To install it manually, " -"just double-click the file. The MSI package format allows Windows " -"administrators to automate installation with their standard tools." +"The Windows version is provided as an MSI package. To install it " +"manually, just double-click the file. The MSI package format allows " +"Windows administrators to automate installation with their standard " +"tools." msgstr "" -"Windows버전은 MSI 패키지 형태로 제공된다. 수동으로 설치하고자 한다면, 그냥 파일을 " -"더블 클릭하면 된다. MSI 패키지 포맷은 Windows 관리자 계정 사용자로 하여금 Windows " -"표준 도구를 자동 설치할 수 있게 해준다." +"Windows버전은 MSI 패키지 형태로 제공됩니다. 수동으로 설치하고자 한다면, 그냥 파일을 더블 클릭하면 됩니다. " +"Windows 관리자 계정 사용자라면 MSI 패키지로 Windows 표준 도구를 자동 설치할 수 있습니다. " #: ../../starting/install/win.rst:15 msgid "" -"By design, Python installs to a directory with the version number embedded, " -"e.g. Python version 2.7 will install at :file:`C:\\\\Python27\\\\`, so that " -"you can have multiple versions of Python on the same system without " -"conflicts. Of course, only one interpreter can be the default application " -"for Python file types. It also does not automatically modify the " -":envvar:`PATH` environment variable, so that you always have control over " -"which copy of Python is run." +"By design, Python installs to a directory with the version number " +"embedded, e.g. Python version 2.7 will install at " +":file:`C:\\\\Python27\\\\`, so that you can have multiple versions of " +"Python on the same system without conflicts. Of course, only one " +"interpreter can be the default application for Python file types. It also" +" does not automatically modify the :envvar:`PATH` environment variable, " +"so that you always have control over which copy of Python is run." msgstr "" -"파이썬이 설치되는 디렉토리는 버전 숫자를 포함하도록 디자인되어 있다. 예를 들어 " -"파이썬 2.7을 설치하면 :file:`C:\\\\Python27\\\\` 디렉토리에 설치되는 것이다. " -"덕분에 하나의 시스템에서 충돌 없어 여러 버전의 파이썬을 사용할 수 있다. 물론 오직 " -"하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있다. :envvar:`PATH` " -"환경 변수가 자동으로 변경되지도 않는다. 그러니 실해되는 파이썬의 버전을 늘 관리해야 한다." +"파이썬이 설치되는 디렉토리는 버전의 숫자를 포함하도록 디자인되어 있습니다. 예를 들어 파이썬 2.7을 설치하면 " +":file:`C:\\\\Python27\\\\` 디렉토리에 설치됩니다. 덕분에 하나의 시스템에서 충돌 없어 여러 버전의 " +"파이썬을 사용할 수 있습니다. 물론 오직 하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있습니다. " +"또한 파이썬을 설치할 때 :envvar:`PATH` 환경 변수가 자동으로 변경되지도 않습니다. 그러니 어느 버전의 파이썬을 실행할지 늘 관리해야 합니다. " #: ../../starting/install/win.rst:23 msgid "" -"Typing the full path name for a Python interpreter each time quickly gets " -"tedious, so add the directories for your default Python version to the " +"Typing the full path name for a Python interpreter each time quickly gets" +" tedious, so add the directories for your default Python version to the " ":envvar:`PATH`. Assuming that your Python installation is in " ":file:`C:\\\\Python27\\\\`, add this to your :envvar:`PATH`:" msgstr "" -"파이썬 인터프리터의 전체 경로명을 매번 입력하는 일은 금새 싫증난다. 그러니 컴퓨터의 " -"기본 파이썬 버전이 있는 디렉토리에 :envvar:`PATH` 를 추가하라. 파이썬이 " -":file:`C:\\\\Python27\\\\` 에 설치되었다면 아래와 같이 추가하라." +"파이썬 인터프리터의 전체 경로명을 매번 입력하는 일은 금새 싫증납니다. 그러니 컴퓨터의 기본 파이썬 버전이 있는 디렉토리에 " +":envvar:`PATH` 를 추가하세요. 파이썬이 :file:`C:\\\\Python27\\\\` 에 설치되었다면 아래와 같이 " +"추가하세요." #: ../../starting/install/win.rst:32 msgid "You can do this easily by running the following in ``powershell``:" -msgstr "``powershell`` 에서 간단하게 설할 수도 있다." +msgstr "``powershell`` 에서 간단하게 실행할 수도 있습니다." #: ../../starting/install/win.rst:38 msgid "" -"The second (:file:`Scripts`) directory receives command files when certain " -"packages are installed, so it is a very useful addition. You do not need to " -"install or configure anything else to use Python. Having said that, I would " -"strongly recommend that you install the tools and libraries described in the" -" next section before you start building Python applications for real-world " -"use. In particular, you should always install Setuptools, as it makes it " -"much easier for you to use other third-party Python libraries." +"The second (:file:`Scripts`) directory receives command files when " +"certain packages are installed, so it is a very useful addition. You do " +"not need to install or configure anything else to use Python. Having said" +" that, I would strongly recommend that you install the tools and " +"libraries described in the next section before you start building Python " +"applications for real-world use. In particular, you should always install" +" Setuptools, as it makes it much easier for you to use other third-party " +"Python libraries." msgstr "" -"두번째 스크립트는 패키지가 설치될 때마다 디렉토리에 PATH를 설정하는 명령어를 " -"실행시키기 때문에 아주 유용하다. 이제 파이썬을 사용하기 위해 달리 설치하거나 " -"설정해줘야만 하는 것은 없다. 그렇기 해도 실제로 사용할 파이썬 어플리케이션을 " -"만들기 전에 이 가이드에서 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 " -"추천한다. 특히 Setuptools는 반드시 설치해야 한다. " -"이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." +"두번째 (:file:`스크립트`) 디렉토리는 파이썬 패키지가 설치될 때마다 커맨드 파일을 수신받기 때문에 " +"아주 유용합니다. " +"이제 파이썬을 사용하기 위해 달리 설치하거나 설정해줘야만 하는 것은 없습니다. " +"그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 설치할 것을 강력 추천합니다. " +"특히 Setuptools는 반드시 설치해야 합니다. Setuptools는 다른 파이썬 서드파티 라이브러리들을 편리하게 사용할 수 있게 해줍니다. " #: ../../starting/install/win.rst:47 msgid "Setuptools + Pip" @@ -94,17 +93,17 @@ msgstr "Setuptools + Pip" #: ../../starting/install/win.rst:49 msgid "" "The most crucial third-party Python software of all is Setuptools, which " -"extends the packaging and installation facilities provided by the distutils " -"in the standard library. Once you add Setuptools to your Python system you " -"can download and install any compliant Python software product with a single" -" command. It also enables you to add this network installation capability to" -" your own Python software with very little work." +"extends the packaging and installation facilities provided by the " +"distutils in the standard library. Once you add Setuptools to your Python" +" system you can download and install any compliant Python software " +"product with a single command. It also enables you to add this network " +"installation capability to your own Python software with very little " +"work." msgstr "" -"Setuptools은 모든 파이썬 서드파티 소프트웨어 중 가장 중요하다. 표준 라이브러리인 " -"distutils의 패키징과 설치 기능을 더욱 편하게 해주기 때문이다. Setuptools을 " -"파이썬 시스템에 설치하면 어느 파이썬 소프트웨어 제품이라도 명령어 한 줄로 설치할 " -"수 있다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 " -"가능하게 한다." +"Setuptools는 가장 중요한 파이썬 서드파티 소프트웨어입니다. " +"Setuptools는 표준 라이브러리인 distutils의 패키징 기능과 설치 기능을 확장한 것입니다. " +"Setuptools를 파이썬 시스템에 설치하면 어떤 파이썬 소프트웨어 제품이라도 명령어 한 줄로 " +"설치할 수 있습니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." #: ../../starting/install/win.rst:56 msgid "" @@ -112,8 +111,8 @@ msgid "" "script available here: `ez_setup.py " "`_" msgstr "" -"Windows에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 된다." -" `ez_setup.py `_ " +"Windows에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 됩니다. `ez_setup.py " +"`_ " #: ../../starting/install/win.rst:60 msgid "" @@ -122,18 +121,17 @@ msgid "" "**pip**. Pip allows for uninstallation of packages, and is actively " "maintained, unlike easy_install." msgstr "" -"이제 새로운 명령을 내릴 수 있게 되었다: **easy_install** 이다. 하지만 이 " -"명령어를 불편하게 생각하는 사람들도 많다. 그러니 이를 대체할 것을 설치해보자. " -"**pip** 는 패키지의 설치 제거도 가능케 하고, easy_install와 달리 현재 " -"활발히 유지 보수되고 있다." +"이제 새로운 명령을 내릴 수 있게 되었습니다: **easy_install** 입니다. 하지만 이 명령어를 불편하게 생각하는 사람들도 많습니다. " +"그러니 이를 대체할 것을 설치해봅시다. **pip**로 패키지의 설치와 제거도 가능하고, easy_install와 달리 " +"현재 활발히 운영되고 있습니다." #: ../../starting/install/win.rst:65 msgid "" "To install pip, run the Python script available here: `get-pip.py " "`_" msgstr "" -"pip를 설치하려면 아래 파이썬 스크립트를 실행하면 된다. " -"`get-pip.py `_" +"pip를 설치하려면 아래 파이썬 스크립트를 실행하면 됩니다. `get-pip.py " +"`_" #: ../../starting/install/win.rst:70 msgid "Virtual Environments" @@ -143,38 +141,35 @@ msgstr "Virtual Environments" msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x but," -" Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 독립된 위치의 다양한 " -"프로젝트들 간의 독립성을 유지시켜주는 툴이다. 이는 \"프로젝트 X는 버전 " -"1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해준다. " -"그리고 전역 패키지를 깨끗하게 관리할 수 있도록 해준다." +"Virtual Environments은 파이썬 가상 환경을 만들어 여러 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 " +"툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " +"패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." #: ../../starting/install/win.rst:77 msgid "" -"For example, you can work on a project which requires Django 1.3 while also " -"maintaining a project which requires Django 1.0." -msgstr "" -"예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 " -"프로젝트를 유지보수 할 수 있도록 해준다." +"For example, you can work on a project which requires Django 1.3 while " +"also maintaining a project which requires Django 1.0." +msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." #: ../../starting/install/win.rst:80 msgid "" -"To start using and see more information: `Virtual Environments " -"`_ docs." +"To start using this and see more information: :ref:`Virtual Environments " +"` docs." msgstr "" -"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면" -" `Virtual Environments `_ " -"에서 볼 수 있다." +"Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 `Virtual Environments " +"`_ 문서에서 볼 수 있습니다." #: ../../starting/install/win.rst:85 msgid "" "This page is a remixed version of `another guide " -"`_, which is" -" available under the same license." +"`_, which" +" is available under the same license." msgstr "" -"이 페이지는 `다른 가이드 `_ " -"를 재배열한 버전이다. 라이선스는 동일하다." \ No newline at end of file +"이 페이지는 `다른 가이드 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." + diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.mo b/docs/locale/ko/LC_MESSAGES/starting/installation.mo index 52de2a3d3bf62a25dfd48d7a5d3e01590ebb256e..8af37b6286162ac12a2579b654ace561ecbe07fb 100644 GIT binary patch delta 659 zcmZvYO=uHA6vrn`vau1NTESAZJW)`n8#cBzc5SN`)JqN(>am!$o$LlT*{~lRfcfZ$mvcrSQR5O;bPPrfAU7dY_W-+OOn{_pLS`o0{j3@j0U z)saJ}SEymsd(=tPchu7WA;(bt7&m(e8AN_SCXru}E^;hLNEy$3M7DiyhPyuZkZqqW z-)>ehGw*pJZo>!X2zp6jz3wJ4}gW`SCu8erU^ zCfFKjfm2A5L6UpQyJrgrbbt*ceJEo$GR}C|3 z$&kx;Qfo4P0lML&#I(>@(6Q637CJF_jpnGS*mOahUX)>4xkYuHY9uxqU9Bg&|Hjti`VY6gmAp~ zJ7Ug;5h+jhNemsbnG-NN3Q>%Z(? zxr|5oO8vi&%d6;Ld%$bO_6@(G_qKvf3+*|oEwHHV6p%gxq8h|v&oFgm{a~=a}kU4y;3=9{5^2R_~0LW)y2b&|xAPQu}0tF0! zbTyFf1JaY@Sj{I-W3}8Y%P7G#xs7=~uZgaqp{}ukf{~Gxk;P87=gr(b3X{*XCa}EjUZOYI ziY-+3&D<>tuQoIQsn?U|yqP}XP0JjGH&a_)&zk|{OkT^TG5HRg0_z;GdRBIOD9e{U zR;&Re#_*?1nx4h|H15`cd^@cfb=C&xjnbY!i XD$quVDX;fW06KE=d=6W-HDEIUO=^rN diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.po b/docs/locale/ko/LC_MESSAGES/starting/installation.po index 00b9c6afc..84ff0aebb 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/installation.po +++ b/docs/locale/ko/LC_MESSAGES/starting/installation.po @@ -1,15 +1,16 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" #: ../../starting/installation.rst:2 msgid "Properly Installing Python" @@ -17,45 +18,48 @@ msgstr "올바른 파이썬 설치" #: ../../starting/installation.rst:4 msgid "" -"There's a good chance that you already have Python on your operating system." -msgstr "운좋게도 이미 파이썬이 당신의 운영체제에 설치되어 있을 수도 있다." +"There's a good chance that you already have Python on your operating " +"system." +msgstr "운좋게도 이미 파이썬이 당신의 운영체제에 설치되어 있을 수도 있습니다." #: ../../starting/installation.rst:6 msgid "" -"If so, you do not need to install or configure anything else to use Python. " -"Having said that, I would strongly recommend that you install the tools and " -"libraries described in the guides below before you start building Python " -"applications for real-world use. In particular, you should always install " -"Setuptools, Pip, and Virtualenv — they make it much easier for you to use " -"other third-party Python libraries." +"If so, you do not need to install or configure anything else to use " +"Python. Having said that, I would strongly recommend that you install the" +" tools and libraries described in the guides below before you start " +"building Python applications for real-world use. In particular, you " +"should always install Setuptools, Pip, and Virtualenv — they make it much" +" easier for you to use other third-party Python libraries." msgstr "" -"만일 그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없다.그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기 " -"전에이 가이드에서 아래에 설명할 툴과 라이브러리들을 설치할 것을 강력 추천한다.특히 Setuptools, Pip, Virtualenv는 " -"반드시 설치해야 한다.이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해준다." +"그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. " +"그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기" +" 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. " +"특히 Setuptools, Pip, " +"Virtualenv는 반드시 설치해야 합니다. " +"이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " #: ../../starting/installation.rst:14 msgid "Installation Guides" -msgstr "설치 가이드" +msgstr "설치 안내" -#: ../../starting/installation.rst:17 +#: ../../starting/installation.rst:16 msgid "" -"for development purposes, as well as setuptools, pip, and virtualenv setup." -msgstr "이 가이드는 파이썬 개발을 위한 설치 뿐만 아니라 setuptools, pip, and virtualenv의 설치도 다룬다." +"These guides go over the proper installation of :ref:`Python 2.7 ` for development purposes, as well as setuptools, pip, and " +"virtualenv setup." +msgstr "" +"이 안내서는 개발을 위한 :ref:`파이썬 2.7 ` 의 적절한 설치 뿐 아니라 " +"setuptools, pip, and virtualenv의 설치도 다룹니다." #: ../../starting/installation.rst:19 msgid ":ref:`Mac OS X `." msgstr ":ref:`Mac OS X `." #: ../../starting/installation.rst:20 -msgid ":ref:`Microsoft Windows`." -msgstr ":ref:`Microsoft Windows`." +msgid ":ref:`Microsoft Windows `." +msgstr ":ref:`Microsoft Windows `." #: ../../starting/installation.rst:21 msgid ":ref:`Ubuntu Linux `." msgstr ":ref:`Ubuntu Linux `." -#: ../../starting/installation.rst:17 -msgid "" -"These guides go over the proper installation of :ref:`Python 2.7 `" -msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..20f5719652a6132fbd4f98253bbbef2f26466bc0 100644 GIT binary patch literal 8513 zcmeHM&u=706)s4C#6f@(!tWn-O7@4R*Y@sVHH2uryWYi;yOo+?){1~4Te17?HA^wK*|9VD{Ss}iO z@x4z7aS7*tgYn<^{+CbUK8%0DGU$x!73?WD?6 z>1N8#XPmdUY7P8H2E$ZQV>D%q=K zQRX>K7RQ6J88_F)aU>trQ-o(Tj9iVhw0-`&U*?H7HkaN4R^^8^B$=60y(u4;&dXD+ zX-YXV!0m_1Gp?xtn4y|zy0vr|=nT(29coNiRJ?B6pjm-@YWz?FaJ0ykaWz?IxgrwJ zp^B%9W2RNh8IkcOJwP(r+{(-%0)@j6nu#{_^;w(b2 zxD;@T6%4W1sj4X4spWWpLPr8fY~DA6vQQj;Of@lzB~cShVWDecXCXrK4w@38W8^bi|^PgF-{S#1yDx z!84FlPjqI-6!Q7-^VEnA@`0|Uxl_~c>w>Nu7xuAEyn7V^eY-S>Dvml}9V?KnBXLV5 zoMvq%_rY+#^d-nbB8j~Tr4N=d7`B8_f+0VVL&z9nk@AzUI&X0sgH13ma@Ih$4$n^P z2v25pG&!5lDlrjcGbQec&`T!2)Wm|mBYB$%=fdz*B>>DsyEf>l&0qD%fAS6j=5*Fa z0s=Vs7aI=%@=7Mwrq$7NTdDM*x4TbxqZAWj8S@SGq^Aq;}0>w6aRBfi=3oFxavvoke@ z()?6&#Pr+~Tc5Tn5AUVR^*Z8^OBZT%tBCl|ch(71p5^T!4yB9gK4_G$dgFydn{ap<4BLey}eD zblE_=4W87b?6l15YCLV&$?WI}XJl;Q8?@BbfE`_rszy!;$y1eWpUg6?pZi}+9WH^@ zBO5cDuyxM4+8JD2z*+UgR$`&Zq^^&Y?^skJ?O2olLWi|)iv1jROKAw$BZU-q^g)N zl?>g8PPB6>RL4ShVE=h$Rd9W-KaKlcnPsVlfk|(WTNHA%I|VFxK2a%#wY|y<6m+i7 zbaYu_5>}ufMptJ3B4?m4bGTnt&B_qD8r49}wHTAR5(reN17w=;QqKkgo(s(;T<1?6 z2?(-TNFIAxTB1%a&)`{txq!DZ+cV~iZs$f&Cxr}M$xcyj4^0w2T4(Y9cnshE+tu0W6 z0$?<$h+chrlgza|Sq;Sfa;9+cqf>QiMe+!ELL#zt5=|kILc)!Z+ExAj(a0Y*;d~?> zA#v$)l{t%!ldz(dKU1C%U!59uy?IBO$!R8kI@Ss#nwJet8B?FrNakT~o^TyFREaz~ zk#GGE;%Pvmo#b$HYeGTHD?}IEk{xlwbpfVAuMlJ|bdamZv@q0ECFFQ;n(*4!+9@!S zgKi=f!^;Wk`~14wtiLc@_t~_+7+wY!J0NPNfH-i@Z4nB8!u=M%7LW`ZDRINn7}e~} z@j~f>W>7?7@lBh^K9>~MxfO{MDh9gzJgY7;uhg#u5QVlo$k){%Uk%tg`HzPF*JRB-J`wT_Ye1G%i4~%Hg4G*Y~mT!7+}4A;;)P|W%6&) zJ21Lu|LxNEJJ)B|5f-$#oxMD{$ltq6Wq;$~^R6~TKb>#YcS#|bZvVJmsP6|wmL2(+8r*RHoB q7XMwa-ilanMbNg(dMkqeb-CV(IDa4OQN4e%-iiqSp#6VuMf?X8(xdPI delta 67 zcmX@;^ngj{o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUx2=K;mR+!8OdGA#RgT2`V!( F002au3OoP+ diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.mo b/docs/locale/ko/LC_MESSAGES/starting/which-python.mo index 7518efb3e4a033c45dd2f4f8776dfb2773c72ed0..f6990c402e0a3b2827dc2d72e064d999155f377c 100644 GIT binary patch delta 2191 zcmcK4drVVT90%~z2nYqAAW~i)XaR+`x1}K10YexpI#f`TIf;)dg;q*ip^WIZKxW;T z;B+2qFe?n^gP1raYc-hZk|ic{k+DCv#cgrAm)pX<-7DG4?2mm$=;0L1#9{u1SW8k939-T~ z$PcsyVlU!>d!P?C!Mo4`%}Io;gLb$ThF}exKaUWEBu%g$`;%r|;3VWt$TxUfc_0Fp zWBe!Nm7z$h1XjX!*a=U=J8%jfKoBi#Tqwu$L5i^-Cc`tZ8eV~m;eD9hiwx&2B4jlt z^qBn;y5VoI0jnbL@f1`A8kS&lJpVH+=HsP=WWb#;A3hIx=BJCN61^VlHy&!xDxUf z*5wdV0UO~c<_|;uoDt=D0+vGTP4;V1f8N96nBaj=LJxdgM~DetggfC^&;?iL5wZw)rb%2 zqbp<(@^@eaB6;#YdXs*&xFvSc~z?MREmi!Zgf(rpMvnujt1YxF0VNl85oP zkhd@)$1L}-0^*Ql3*q52?lz;t*WqIA>Q7W>+5KEye7orJEP8G?+~WvzeO8ttLy62_Lp0t)tFL+db+Ao4c*s)@C(+Z!ErRhl28@@1uo-AXH+)9q_z3p85I zlXkbg)8@0c7;5%eX^m}{9eEoq#u8@M_%i*{a38IePE1NC!s1wv&RjYl8S;xq&xr&5 z>|Kp1SsD({OioZSFesj%ltvEn`M)%4k|QSr((q&?5EesWX&@+`3+q{RdK#O_%VIt0 zHK|fykV^eSR2u1*4qd`3ap1I(vZ?e9Dm}}{C{j^YpYaT?-^eh=%3(js&@FoOED^^C zrNA{7pV<~0on`LKsyO*RJD+C-IZIIQZ{pCP#W*Uq57oPk46H~^AG1vs~?@5?bYVUhhW-T`QnyV$L?!$7xEWd zJm{BWh=-0dz0S1YKW{o~)&)?FUv&HBwe5M$O66|kjXo%}BY#qTmN#9lbACY$mN*J@ z5AF{Z*fOXzJS1MkyD-XMlbMM=DvrOZG)lF6cf3C+*E7_*e3dG04CM~$+1;Wg?DC4W z^46+C4Z@}uZcI?hh&N?#;VI=fsYN4+vnt4}$vSqs=mq6&v)(zYH~N$;_K$v(F1ibi zymU#r@)q4F|6`ynC^{7{_lsw*@wTovJf{S?X;^~;q!^o&4zw6oDtCg$kaE=|IF+lb MLhttf^&f)#3;6S#`2YX_ delta 1742 zcmb`_`%jZs7zgmD7MMdEARxB_Z=nTBX(>0EI1%iC$#8j^=yl3nyVS{0u$=^#MfZp$R^K3-CEO z97yyf9EXpgJ&5Q6+=Cz)eh)*5dg$(EqMtFa1cTx2XNfZ5Jk;Yb>kzRNx`n6^ZinI^ z)ew786KsL)uo^ysxiBMy$O@0aSK(E-7e0kpl8Uzym0^FXKm#YCVJJ43fMUWbOozWf zQJGMrl?O9nE40B$xCrk<2Np?zd&2zd)k6vWE*JqvU@^Q7x50Io*naD6Z}) z?D-0fz&Ml`0gF&%@DQttyZjT11KmgZSK)L5N{D&;6a7~*ltiRL{~{DucUdCZ2`6D6 z#@C>@x~61*f}Ie1(rqZN?z?2ve*%pa3^YRrcF%&VunLCgh}z&$C^GvNimOS}``>3n zvB5jg3i}|6NsF)uuE7|Xfb#5sJD?r5!v**t75D!bjo~yRREt_suWOdGKe;ze+P!bIitU#-((^=yk9XP4&xJM|JB_?mg4Gu3r7Qo zp)iX-!vc%v1NC^2I@g@biq^{A!ON+z$CYnD=gr zC~Y}$ys5Jzt73yP+Z$Qs_71zl*0!&sp)+M)SDpVw-SH-SU6-xhUe{*pXnfPwXs@$% z)m3c-nRClHAf{$(o+&%qlxvZ4atd>v=a!iEcvFqt)?O%8mb_A4TT)&sy--5f>e$oEh|uIDP%I%9ZPgQ7#TCPB(kwDkFTCUCP+3&ov`^W|RRpV$EC` ze}LWbM*cefFehuwo5p6iR-=oO2PVxVPYo)r1xX&5QwGMBu}j>qY2-gNySXrd1H=q| zl<>NU*qt~b_&hC*gOf_RD#@a9voooJmy?PT$7aM-$$QJKII+r%q)a(|qkWPxIgB1> zOG~O=R%;8?a{mYyYYPzimNrdg<_YbKs!P1Ct=R0n)r+Yz^RDFcypkNnPm=T4kYWhW z_s$I}Q@vQSSGh9ebGf-8WhuzNBNyqkSgT%V#s9QU$ICixm~Zr&?}}5Br_ai#ov7>u zy@iYQBm9H@BxW5-eNE)yNge0IX|qAsW;c?IPv6VO(sg_;-4=-|$Tv~KaY=R!;#iVA z^*#p}>JjGYH0)HVMOAKQ9K&Ma##lBQ4+gq77CB@5NGxs6{7{WPS48Ofugp_o=#;6M z6_YOVp#Q58iQ-b_JLlw&Z*YkD5IfB$12\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\starting\which-python.rst:2 +#: ../../starting/which-python.rst:2 msgid "Picking an Interpreter" msgstr "인터프리터 고르기" -#: ..\..\starting\which-python.rst:7 +#: ../../starting/which-python.rst:7 msgid "The State of Python (2 vs 3)" msgstr "파이썬 현황(2 vs 3)" -#: ..\..\starting\which-python.rst:9 +#: ../../starting/which-python.rst:9 msgid "" -"When choosing a Python interpreter, one looming question is always present: " -"\"Should I choose Python 2 or Python 3\"? The answer is not as obvious as " -"one might think." +"When choosing a Python interpreter, one looming question is always " +"present: \"Should I choose Python 2 or Python 3\"? The answer is not as " +"obvious as one might think." msgstr "" -"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오른다.\"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\"답은 생각처럼 간단하지 " -"않다." +"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오릅니다. \"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\" 답은 생각처럼 " +"간단하지 않습니다." -#: ..\..\starting\which-python.rst:14 +#: ../../starting/which-python.rst:14 msgid "The basic gist of the state of things is as follows:" -msgstr "이 문제의 기본적인 요지는 다음과 같다." +msgstr "이 문제의 기본적인 요지는 다음과 같습니다." -#: ..\..\starting\which-python.rst:16 +#: ../../starting/which-python.rst:16 msgid "Python 2.7 has been the standard for a *long* time." -msgstr "파이썬2.7이 *오랫동안* 표준이었다." +msgstr "파이썬2.7이 *오랫동안* 표준이었다." -#: ..\..\starting\which-python.rst:17 +#: ../../starting/which-python.rst:17 msgid "" -"Python 3 introduced major changes to the language, which many developers are" -" unhappy with." +"Python 3 introduced major changes to the language, which many developers " +"are unhappy with." msgstr "파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." -#: ..\..\starting\which-python.rst:18 -msgid "Python 2.7 will receive necessary security updates for a few years." -msgstr "파이썬2.7은 향후 몇년은 필수 보안 업데이트를 받을 것이다." +#: ../../starting/which-python.rst:18 +msgid "" +"Python 2.7 will receive necessary security updates until 2020 " +"[#pep373_eol]_." +msgstr "" +"파이썬2.7은 2020년까지는 필수 보안 업데이트를 받을 것이다. " +"[#pep373_eol]_." -#: ..\..\starting\which-python.rst:19 +#: ../../starting/which-python.rst:19 msgid "Python 3 is continually evolving, like Python 2 did in years past." -msgstr "파이썬3는 파이썬2가 지난 몇년간 그랬던 것처럼 계속 진화하고 있다." +msgstr "파이썬3는 파이썬2가 지난 몇 년간 그랬던 것처럼 계속 진화하고 있다." -#: ..\..\starting\which-python.rst:21 +#: ../../starting/which-python.rst:21 msgid "So, you can now see why this is not such an easy decision." -msgstr "이제 왜 이 문제가 쉽지 않은지 알 수 있을 것이다." +msgstr "이제 왜 이 문제가 쉽지 않은지 알 수 있을 것입니다." -#: ..\..\starting\which-python.rst:25 +#: ../../starting/which-python.rst:25 msgid "Recommendations" msgstr "추천" -#: ..\..\starting\which-python.rst:27 +#: ../../starting/which-python.rst:27 msgid "I'll be blunt:" -msgstr "단도직입적으로 말하겠다." +msgstr "단도직입적으로 말하겠습니다." -#: ..\..\starting\which-python.rst:30 +#: ../../starting/which-python.rst:30 msgid "**Use Python 3 if...**" msgstr "**이런 경우에는 파이썬3를...**" -#: ..\..\starting\which-python.rst:32 +#: ../../starting/which-python.rst:32 msgid "You don't care." msgstr "아무렴 어때." -#: ..\..\starting\which-python.rst:33 +#: ../../starting/which-python.rst:33 msgid "You love Python 3." msgstr "나는 파이썬3를 사랑해." -#: ..\..\starting\which-python.rst:34 +#: ../../starting/which-python.rst:34 msgid "You are indifferent towards 2 vs 3." msgstr "2건 3건 상관없다." -#: ..\..\starting\which-python.rst:35 +#: ../../starting/which-python.rst:35 msgid "You don't know which one to use." msgstr "어떤 것을 써야할지 모르겠다." -#: ..\..\starting\which-python.rst:36 +#: ../../starting/which-python.rst:36 msgid "You embrace change." msgstr "변화를 받아들이겠다." -#: ..\..\starting\which-python.rst:38 +#: ../../starting/which-python.rst:38 msgid "**Use Python 2 if...**" msgstr "**이런 경우에는 파이썬2를...**" -#: ..\..\starting\which-python.rst:40 +#: ../../starting/which-python.rst:40 msgid "You love Python 2 and are saddened by the future being Python 3." msgstr "파이썬2를 사랑하고 파이썬3의 미래에 대해 비관적일 때." -#: ..\..\starting\which-python.rst:41 +#: ../../starting/which-python.rst:41 msgid "" -"The stability requirements of your software would be improved by a language " -"and runtime that never changes." +"The stability requirements of your software would be improved by a " +"language and runtime that never changes." msgstr "절대 변하지 않는 언어와 런타임으로 소프트웨어의 안정성을 향상시키겠다." -#: ..\..\starting\which-python.rst:42 +#: ../../starting/which-python.rst:42 msgid "Software that you depend on requires it." msgstr "사용하는 소프트웨어가 파이썬2를 사용한다면." -#: ..\..\starting\which-python.rst:46 +#: ../../starting/which-python.rst:46 msgid "So.... 3?" msgstr "그러면.... 3?" -#: ..\..\starting\which-python.rst:48 +#: ../../starting/which-python.rst:48 msgid "" -"If you're choosing a Python interpreter to use, and aren't opinionated, then" -" I recommend you use the newest Python 3.x, since every version brings new " -"and improved standard library modules, security and bug fixes. Progress is " -"progress." +"If you're choosing a Python interpreter to use, and aren't opinionated, " +"then I recommend you use the newest Python 3.x, since every version " +"brings new and improved standard library modules, security and bug fixes." +" Progress is progress." msgstr "" -"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면,최신 버젼의 파이썬3.x 사용을 추천한다. 모든 버젼이 새롭고 " -"향상된 표준 라이브러리 모듈과보안, 그리고 버그 수정을 제공하고 있기 때문이다. 개선이 진행 중이다." +"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면, 최신 버젼의 파이썬3.x 사용을 추천합니다. 모든 버젼이 " +"새롭고 향상된 표준 라이브러리 모듈과 보안, 그리고 버그 수정을 제공하고 있기 때문입니다. 개선도 진행 중입니다." -#: ..\..\starting\which-python.rst:52 +#: ../../starting/which-python.rst:52 msgid "" "Given such, only use Python 2 if you have a strong reason to, such as a " -"Python 2 exclusive library which has no adequate Python 3 ready alternative," -" or you (like me) absolutely love and are inspired by Python 2." +"Python 2 exclusive library which has no adequate Python 3 ready " +"alternative, or you (like me) absolutely love and are inspired by Python " +"2." msgstr "" -"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고 오로지 파이썬2에서만 돌아가는라이브러리라든가 아니면 파이썬 2를 너무나도 " -"사랑한다면(나처럼) 파이썬2를 사용할 수밖에 없을 것이다." +"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고, 오로지 파이썬2에서만 돌아가는 라이브러리라든가 아니면 파이썬 2를 너무나도" +" 사랑한다면(나처럼), 파이썬2를 사용할 수밖에 없을 것입니다." -#: ..\..\starting\which-python.rst:56 +#: ../../starting/which-python.rst:56 msgid "" -"Check out `Can I Use Python 3? `_ to see if any" -" software you're depending on will block your adoption of Python 3." +"Check out `Can I Use Python 3? `_ to see if " +"any software you're depending on will block your adoption of Python 3." msgstr "" -"`Can I Use Python 3? `_ 에서 당신이 사용 중인소프트웨어에서 " -"파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 확인해보시라." +"`Can I Use Python 3? `_ 에서 확인해보시면, 당신이 사용 중인 소프트웨어가 " +"파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 알 수 있습니다. " -#: ..\..\starting\which-python.rst:59 +#: ../../starting/which-python.rst:59 msgid "`Further Reading `_" msgstr "`더 읽을 거리 `_" -#: ..\..\starting\which-python.rst:61 +#: ../../starting/which-python.rst:61 msgid "" -"It is possible to `write code that works on Python 2.6, 2.7, and 3.3 " -"`_. This " -"ranges from trivial to hard depending upon the kind of software you are " -"writing; if you're a beginner there are far more important things to worry " -"about." +"It is possible to `write code that works on Python 2.6, 2.7, and Python 3" +" `_. This ranges from " +"trivial to hard depending upon the kind of software you are writing; if " +"you're a beginner there are far more important things to worry about." msgstr "" -"파이썬 2.6, 2.7, 3.3에서 모두 돌아가는 코드를 작성하는 것도 " -" `가능하다 `_. 이 " -"가이드는 사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있다. 초보자라면 신경써야할 대단히 " -"중요한 사항들도 있다." +"파이썬 2.6, 2.7, 3에서 모두 돌아가는 코드를 작성하는 것도 `가능합니다 " +"`_. 이 안내서는 " +"사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있습니다. 초보자라면 반드시 신경써야할 대단히 중요한 사항들도 있습니다." -#: ..\..\starting\which-python.rst:68 +#: ../../starting/which-python.rst:68 msgid "Implementations" msgstr "구현" -#: ..\..\starting\which-python.rst:70 +#: ../../starting/which-python.rst:70 msgid "" -"When people speak of *Python* they often mean not just the language but also" -" the CPython implementation. *Python* is actually a specification for a " -"language that can be implemented in many different ways." +"When people speak of *Python* they often mean not just the language but " +"also the CPython implementation. *Python* is actually a specification for" +" a language that can be implemented in many different ways." msgstr "" -"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을의미할 때가 많다. *파이썬* 은 실제로 다양한 방법으로 " -"구현될 수 있는 언어를 위한 명세이다." +"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을 의미할 때가 많습니다. *파이썬* 은 실제로 다양한 방법으로" +" 구현될 수 있는 언어를 위한 명세서입니다." -#: ..\..\starting\which-python.rst:75 +#: ../../starting/which-python.rst:75 msgid "CPython" msgstr "CPython" -#: ..\..\starting\which-python.rst:77 +#: ../../starting/which-python.rst:77 msgid "" "`CPython `_ is the reference implementation of " -"Python, written in C. It compiles Python code to intermediate bytecode which" -" is then interpreted by a virtual machine. CPython provides the highest " -"level of compatibility with Python packages and C extension modules." +"Python, written in C. It compiles Python code to intermediate bytecode " +"which is then interpreted by a virtual machine. CPython provides the " +"highest level of compatibility with Python packages and C extension " +"modules." msgstr "" -"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스다.파이썬 코드를 가상 머신에 의해 " -"해석되는 중간 바이트코드로 컴파일한다. CPython은 파이썬패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공한다." +"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스로서, 파이썬 코드를 가상 머신에 " +"의해 해석되는 중간 바이트코드로 컴파일합니다. CPython은 파이썬 패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공합니다. " -#: ..\..\starting\which-python.rst:82 +#: ../../starting/which-python.rst:82 msgid "" "If you are writing open-source Python code and want to reach the widest " -"possible audience, targeting CPython is best. To use packages which rely on " -"C extensions to function, CPython is your only implementation option." +"possible audience, targeting CPython is best. To use packages which rely " +"on C extensions to function, CPython is your only implementation option." msgstr "" -"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고다.C언어 확장 기능을 쓰는 패키지를 " -"사용하려면 CPython이 유일한 구현 방법이다." +"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고입니다. C언어 확장 기능을 쓰는 패키지를 " +"사용하려면 CPython이 유일한 구현 방법입니다." -#: ..\..\starting\which-python.rst:86 +#: ../../starting/which-python.rst:86 msgid "" -"All versions of the Python language are implemented in C because CPython is " -"the reference implementation." -msgstr "파이선 언어의 모든 버젼은 C언어로 구현된다. CPython이 파이썬 구현의 리퍼런스라 그렇다." +"All versions of the Python language are implemented in C because CPython " +"is the reference implementation." +msgstr "파이선 언어의 모든 버전은 C언어로 구현됩니다. CPython이 파이썬 구현의 리퍼런스이기 때문입니다." -#: ..\..\starting\which-python.rst:90 +#: ../../starting/which-python.rst:90 msgid "PyPy" msgstr "PyPy" -#: ..\..\starting\which-python.rst:92 +#: ../../starting/which-python.rst:92 msgid "" "`PyPy `_ is a Python interpreter implemented in a " -"restricted statically-typed subset of the Python language called RPython. " -"The interpreter features a just-in-time compiler and supports multiple back-" -"ends (C, CLI, JVM)." +"restricted statically-typed subset of the Python language called RPython." +" The interpreter features a just-in-time compiler and supports multiple " +"back-ends (C, CLI, JVM)." msgstr "" -"`PyPy `_ 는 RPython이라 불리는 파이썬 언어의 정적 타입으로만 구현된 파이썬 인터프리터다. " -"이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 지원한다는 것이다." +"`PyPy `_ 는 파이썬 언어의 정적 타입으로만 구현된 파이썬 " +"인터프리터로서 통칭 RPython이라 불립니다. 이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 지원한다는 것입니다." -#: ..\..\starting\which-python.rst:96 +#: ../../starting/which-python.rst:96 msgid "" "PyPy aims for maximum compatibility with the reference CPython " "implementation while improving performance." -msgstr "" -"PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 유지하는 동시에 그 성능을 향상시키는 것이다." +msgstr "PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 유지하는 동시에 그 성능을 향상시키는 것입니다. " -#: ..\..\starting\which-python.rst:99 +#: ../../starting/which-python.rst:99 msgid "" -"If you are looking to increase performance of your Python code, it's worth " -"giving PyPy a try. On a suite of benchmarks, it's currently `over 5 times " -"faster than CPython `_." +"If you are looking to increase performance of your Python code, it's " +"worth giving PyPy a try. On a suite of benchmarks, it's currently `over 5" +" times faster than CPython `_." msgstr "" -"만약 당신의 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 가치가 있다. 벤치마크에서 PyPy는 CPython보다" -" `5배나 빨랐다 `_." +"만약 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 가치가 있습니다. 벤치마크에서 PyPy는 " +"CPython보다 `5배나 빨랐습니다 `_." -#: ..\..\starting\which-python.rst:103 +#: ../../starting/which-python.rst:103 msgid "" "PyPy supports Python 2.7. PyPy3 [#pypy_ver]_, released in beta, targets " "Python 3." -msgstr "PyPy는 파이썬2.7을 지원한다. 베타로 나온 PyPy3 [#pypy_ver]_,는 파이썬3를 지원한다." +msgstr "PyPy는 파이썬2.7을 지원합니다. 베타로 나온 PyPy3 [#pypy_ver]_,는 파이썬3를 지원합니다." -#: ..\..\starting\which-python.rst:106 +#: ../../starting/which-python.rst:106 msgid "Jython" msgstr "Jython" -#: ..\..\starting\which-python.rst:108 +#: ../../starting/which-python.rst:108 msgid "" -"`Jython `_ is a Python implementation that compiles " -"Python code to Java bytecode which is then executed by the JVM (Java Virtual" -" Machine). Additionally, it is able to import and use any Java class like a " -"Python module." +"`Jython `_ is a Python implementation that " +"compiles Python code to Java bytecode which is then executed by the JVM " +"(Java Virtual Machine). Additionally, it is able to import and use any " +"Java class like a Python module." msgstr "" -"`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 JVM(자바 가상 머신)에서 " -"실행시키는 파이썬 구현이다. 뿐만 아니라 Jython은 자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있다." +"`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 JVM(자바 가상 " +"머신)에서 실행시키는 파이썬 구현입니다. 뿐만 아니라 Jython은 자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있습니다." -#: ..\..\starting\which-python.rst:113 +#: ../../starting/which-python.rst:113 msgid "" "If you need to interface with an existing Java codebase or have other " -"reasons to need to write Python code for the JVM, Jython is the best choice." -msgstr "" -"자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면, Jython은 최고의 선택이 될 것이다." +"reasons to need to write Python code for the JVM, Jython is the best " +"choice." +msgstr "자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면, Jython은 최고의 선택이 될 것입니다." -#: ..\..\starting\which-python.rst:116 -msgid "Jython currently supports up to Python 2.5. [#jython_ver]_" -msgstr "Jython은 현재 파이썬 2.5까지 지원한다. [#jython_ver]_" +#: ../../starting/which-python.rst:116 +msgid "Jython currently supports up to Python 2.7. [#jython_ver]_" +msgstr "Jython은 현재 파이썬 2.7까지 지원합니다. [#jython_ver]_" -#: ..\..\starting\which-python.rst:119 +#: ../../starting/which-python.rst:119 msgid "IronPython" msgstr "IronPython" -#: ..\..\starting\which-python.rst:121 +#: ../../starting/which-python.rst:121 msgid "" -"`IronPython `_ is an implementation of Python for " -"the .NET framework. It can use both Python and .NET framework libraries, and" -" can also expose Python code to other languages in the .NET framework." +"`IronPython `_ is an implementation of Python " +"for the .NET framework. It can use both Python and .NET framework " +"libraries, and can also expose Python code to other languages in the .NET" +" framework." msgstr "" -"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현이다. 파이썬과 닷넷 " -"프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있다." +"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현입니다. 파이썬과 닷넷 " +"프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있습니다. " -#: ..\..\starting\which-python.rst:125 +#: ../../starting/which-python.rst:125 msgid "" -"`Python Tools for Visual Studio `_ integrates " -"IronPython directly into the Visual Studio development environment, making " -"it an ideal choice for Windows developers." +"`Python Tools for Visual Studio `_ " +"integrates IronPython directly into the Visual Studio development " +"environment, making it an ideal choice for Windows developers." msgstr "" "`Python Tools for Visual Studio `_ " -"는IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있다. 이는 Windows 개발자들에게 좋은 선택이다." +"는 IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있습니다. 이는 Windows 개발자들에게 좋은 선택입니다." -#: ..\..\starting\which-python.rst:129 +#: ../../starting/which-python.rst:129 msgid "IronPython supports Python 2.7. [#iron_ver]_" -msgstr "IronPython은 파이썬 2.7을 지원한다. [#iron_ver]_" +msgstr "IronPython은 파이썬 2.7을 지원합니다. [#iron_ver]_" -#: ..\..\starting\which-python.rst:132 +#: ../../starting/which-python.rst:132 msgid "PythonNet" msgstr "PythonNet" -#: ..\..\starting\which-python.rst:134 +#: ../../starting/which-python.rst:134 msgid "" -"`Python for .NET `_ is a package which provides" -" near seamless integration of a natively installed Python installation with " -"the .NET Common Language Runtime (CLR). This is the inverse approach to " -"that taken by IronPython (see above), to which it is more complementary than" -" competing with." +"`Python for .NET `_ is a package which " +"provides near seamless integration of a natively installed Python " +"installation with the .NET Common Language Runtime (CLR). This is the " +"inverse approach to that taken by IronPython (see above), to which it is " +"more complementary than competing with." msgstr "" -"`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 닷넷 공통 언어 " -"런타임(CLR)을 말끔하게 통합시켜주는 패키지이다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다 상호 " -"보완적이다." +"`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 닷넷 공통 " +"언어 런타임(CLR)을 말끔하게 통합시켜주는 패키지입니다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다 " +"상호 보완적입니다." -#: ..\..\starting\which-python.rst:140 +#: ../../starting/which-python.rst:140 msgid "" -"In conjunction with Mono, PythonNet enables native Python installations on " -"non-Windows operating systems, such as OS X and Linux, to operate within the" -" .NET framework. It can be run in addition to IronPython without conflict." +"In conjunction with Mono, PythonNet enables native Python installations " +"on non-Windows operating systems, such as OS X and Linux, to operate " +"within the .NET framework. It can be run in addition to IronPython " +"without conflict." msgstr "" -"Mono와 함께 사용하면 PythonNet은 OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 프레임워크" -" 안에서 수행될 수 있도록 해준다. IronPython과 같이 사용해도 충돌하지 않는다." +"Mono와 함께 사용하면 PythonNet은 OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 " +"프레임워크 안에서 수행될 수 있도록 해줍니다. IronPython과 같이 사용해도 충돌하지 않습니다." -#: ..\..\starting\which-python.rst:145 +#: ../../starting/which-python.rst:145 msgid "PythonNet supports from Python 2.3 up to Python 2.7. [#pythonnet_ver]_" -msgstr "PythonNet은 파이썬 2.3부터 2.7버젼까지 지원한다. [#pythonnet_ver]_" +msgstr "PythonNet은 파이썬 2.3부터 2.7버젼까지 지원합니다. [#pythonnet_ver]_" -#: ..\..\starting\which-python.rst:147 +#: ../../starting/which-python.rst:147 msgid "http://pypy.org/compat.html" msgstr "http://pypy.org/compat.html" -#: ..\..\starting\which-python.rst:149 -msgid "" -"http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" -msgstr "" -"http://wiki.python.org/jython/JythonFaq/GeneralInfo#Is_Jython_the_same_language_as_Python.3F" +#: ../../starting/which-python.rst:149 +msgid "https://hg.python.org/jython/file/412a8f9445f7/NEWS" +msgstr "https://hg.python.org/jython/file/412a8f9445f7/NEWS" -#: ..\..\starting\which-python.rst:151 +#: ../../starting/which-python.rst:151 msgid "http://ironpython.codeplex.com/releases/view/81726" msgstr "http://ironpython.codeplex.com/releases/view/81726" -#: ..\..\starting\which-python.rst:153 +#: ../../starting/which-python.rst:153 msgid "http://pythonnet.github.io/readme.html" msgstr "http://pythonnet.github.io/readme.html" + +#: ../../starting/which-python.rst:155 +msgid "https://www.python.org/dev/peps/pep-0373/#id2" +msgstr "https://www.python.org/dev/peps/pep-0373/#id2" \ No newline at end of file diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.mo b/docs/locale/ko/LC_MESSAGES/writing/documentation.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..28e17604efb47a8fc56918b0b7358acb2536eea0 100644 GIT binary patch literal 10763 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 Df}U=G delta 113 zcmeAUdBCJ|Pl#nI0}wC*u?!HafH**)1EIjQ5l~VW$e+AaG=$eg*U(Vc*g(O^$jZoK zGPhWav~EahVy=~fkE5S^sH3~9f{l-lLr$h%eo?yJ?IZe diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.po b/docs/locale/ko/LC_MESSAGES/writing/documentation.po index 4508e4e8c..3363657d2 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/writing/documentation.po @@ -1,43 +1,45 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\documentation.rst:2 +#: ../../writing/documentation.rst:2 msgid "Documentation" msgstr "" -#: ..\..\writing\documentation.rst:4 +#: ../../writing/documentation.rst:4 msgid "" -"Readability is a primary focus for Python developers, in both project and " -"code documentation. Following some simple best practices can save both you " -"and others a lot of time." +"Readability is a primary focus for Python developers, in both project and" +" code documentation. Following some simple best practices can save both " +"you and others a lot of time." msgstr "" -#: ..\..\writing\documentation.rst:9 +#: ../../writing/documentation.rst:9 msgid "Project Documentation" msgstr "" -#: ..\..\writing\documentation.rst:11 +#: ../../writing/documentation.rst:11 msgid "" -"A :file:`README` file at the root directory should give general information " -"to both users and maintainers of a project. It should be raw text or written" -" in some very easy to read markup, such as :ref:`reStructuredText-ref` or " -"Markdown. It should contain a few lines explaining the purpose of the " -"project or library (without assuming the user knows anything about the " -"project), the url of the main source for the software, and some basic credit" -" information. This file is the main entry point for readers of the code." +"A :file:`README` file at the root directory should give general " +"information to both users and maintainers of a project. It should be raw " +"text or written in some very easy to read markup, such as :ref" +":`reStructuredText-ref` or Markdown. It should contain a few lines " +"explaining the purpose of the project or library (without assuming the " +"user knows anything about the project), the URL of the main source for " +"the software, and some basic credit information. This file is the main " +"entry point for readers of the code." msgstr "" -#: ..\..\writing\documentation.rst:19 +#: ../../writing/documentation.rst:19 msgid "" "An :file:`INSTALL` file is less necessary with Python. The installation " "instructions are often reduced to one command, such as ``pip install " @@ -45,206 +47,241 @@ msgid "" "file." msgstr "" -#: ..\..\writing\documentation.rst:24 +#: ../../writing/documentation.rst:24 msgid "" -"A :file:`LICENSE` file should *always* be present and specify the license " -"under which the software is made available to the public." +"A :file:`LICENSE` file should *always* be present and specify the license" +" under which the software is made available to the public." msgstr "" -#: ..\..\writing\documentation.rst:27 +#: ../../writing/documentation.rst:27 msgid "" -"A :file:`TODO` file or a ``TODO`` section in :file:`README` should list the " -"planned development for the code." +"A :file:`TODO` file or a ``TODO`` section in :file:`README` should list " +"the planned development for the code." msgstr "" -#: ..\..\writing\documentation.rst:30 +#: ../../writing/documentation.rst:30 msgid "" -"A :file:`CHANGELOG` file or section in :file:`README` should compile a short" -" overview of the changes in the code base for the latest versions." +"A :file:`CHANGELOG` file or section in :file:`README` should compile a " +"short overview of the changes in the code base for the latest versions." msgstr "" -#: ..\..\writing\documentation.rst:34 +#: ../../writing/documentation.rst:34 msgid "Project Publication" msgstr "" -#: ..\..\writing\documentation.rst:36 +#: ../../writing/documentation.rst:36 msgid "" -"Depending on the project, your documentation might include some or all of " -"the following components:" +"Depending on the project, your documentation might include some or all of" +" the following components:" msgstr "" -#: ..\..\writing\documentation.rst:39 +#: ../../writing/documentation.rst:39 msgid "" -"An *introduction* should show a very short overview of what can be done with" -" the product, using one or two extremely simplified use cases. This is the " -"thirty-second pitch for your project." +"An *introduction* should show a very short overview of what can be done " +"with the product, using one or two extremely simplified use cases. This " +"is the thirty-second pitch for your project." msgstr "" -#: ..\..\writing\documentation.rst:43 +#: ../../writing/documentation.rst:43 msgid "" -"A *tutorial* should show some primary use cases in more detail. The reader " -"will follow a step-by-step procedure to set-up a working prototype." +"A *tutorial* should show some primary use cases in more detail. The " +"reader will follow a step-by-step procedure to set-up a working " +"prototype." msgstr "" -#: ..\..\writing\documentation.rst:46 +#: ../../writing/documentation.rst:46 msgid "" "An *API reference* is typically generated from the code (see " ":ref:`docstrings `). It will list all publicly available " "interfaces, parameters, and return values." msgstr "" -#: ..\..\writing\documentation.rst:50 +#: ../../writing/documentation.rst:50 msgid "" -"*Developer documentation* is intended for potential contributors. This can " -"include code convention and general design strategy of the project." +"*Developer documentation* is intended for potential contributors. This " +"can include code convention and general design strategy of the project." msgstr "" -#: ..\..\writing\documentation.rst:56 +#: ../../writing/documentation.rst:56 msgid "Sphinx" msgstr "" -#: ..\..\writing\documentation.rst:58 +#: ../../writing/documentation.rst:58 msgid "" -"Sphinx_ is far and away the most popular Python documentation tool. **Use " -"it.** It converts :ref:`restructuredtext-ref` markup language into a range " -"of output formats including HTML, LaTeX (for printable PDF versions), manual" -" pages, and plain text." +"Sphinx_ is far and away the most popular Python documentation tool. **Use" +" it.** It converts :ref:`restructuredtext-ref` markup language into a " +"range of output formats including HTML, LaTeX (for printable PDF " +"versions), manual pages, and plain text." msgstr "" -#: ..\..\writing\documentation.rst:63 +#: ../../writing/documentation.rst:63 msgid "" -"There is also **great**, **free** hosting for your Sphinx_ docs: `Read The " -"Docs`_. Use it. You can configure it with commit hooks to your source " -"repository so that rebuilding your documentation will happen automatically." +"There is also **great**, **free** hosting for your Sphinx_ docs: `Read " +"The Docs`_. Use it. You can configure it with commit hooks to your source" +" repository so that rebuilding your documentation will happen " +"automatically." msgstr "" -#: ..\..\writing\documentation.rst:70 +#: ../../writing/documentation.rst:70 msgid "" -"Sphinx is famous for its API generation, but it also works well for general " -"project documentation. This Guide is built with Sphinx_ and is hosted on " -"`Read The Docs`_" +"Sphinx is famous for its API generation, but it also works well for " +"general project documentation. This Guide is built with Sphinx_ and is " +"hosted on `Read The Docs`_" msgstr "" -#: ..\..\writing\documentation.rst:80 +#: ../../writing/documentation.rst:80 msgid "reStructuredText" msgstr "" -#: ..\..\writing\documentation.rst:82 +#: ../../writing/documentation.rst:82 msgid "" "Most Python documentation is written with reStructuredText_. It's like " "Markdown with all the optional extensions built in." msgstr "" -#: ..\..\writing\documentation.rst:85 +#: ../../writing/documentation.rst:85 msgid "" -"The `reStructuredText Primer`_ and the `reStructuredText Quick Reference`_ " -"should help you familiarize yourself with its syntax." +"The `reStructuredText Primer`_ and the `reStructuredText Quick " +"Reference`_ should help you familiarize yourself with its syntax." msgstr "" -#: ..\..\writing\documentation.rst:94 +#: ../../writing/documentation.rst:94 msgid "Code Documentation Advice" msgstr "" -#: ..\..\writing\documentation.rst:96 +#: ../../writing/documentation.rst:96 msgid "" -"Comments clarify the code and they are added with purpose of making the code" -" easier to understand. In Python, comments begin with a hash (number sign) " -"(``#``)." +"Comments clarify the code and they are added with purpose of making the " +"code easier to understand. In Python, comments begin with a hash (number " +"sign) (``#``)." msgstr "" -#: ..\..\writing\documentation.rst:102 +#: ../../writing/documentation.rst:102 msgid "In Python, *docstrings* describe modules, classes, and functions:" msgstr "" -#: ..\..\writing\documentation.rst:110 +#: ../../writing/documentation.rst:110 msgid "" -"In general, follow the comment section of :pep:`8#comments` (the \"Python " -"Style Guide\")." +"In general, follow the comment section of :pep:`8#comments` (the \"Python" +" Style Guide\"). More information about docstrings can be found at " +":pep:`0257#specification` (The Docstring Conventions Guide)." msgstr "" -#: ..\..\writing\documentation.rst:113 +#: ../../writing/documentation.rst:114 msgid "Commenting Sections of Code" msgstr "" -#: ..\..\writing\documentation.rst:115 +#: ../../writing/documentation.rst:116 msgid "" "*Do not use triple-quote strings to comment code*. This is not a good " -"practice, because line-oriented command-line tools such as grep will not be " -"aware that the commented code is inactive. It is better to add hashes at the" -" proper indentation level for every commented line. Your editor probably has" -" the ability to do this easily, and it is worth learning the " +"practice, because line-oriented command-line tools such as grep will not " +"be aware that the commented code is inactive. It is better to add hashes " +"at the proper indentation level for every commented line. Your editor " +"probably has the ability to do this easily, and it is worth learning the " "comment/uncomment toggle." msgstr "" -#: ..\..\writing\documentation.rst:123 +#: ../../writing/documentation.rst:124 msgid "Docstrings and Magic" msgstr "" -#: ..\..\writing\documentation.rst:125 +#: ../../writing/documentation.rst:126 msgid "" -"Some tools use docstrings to embed more-than-documentation behavior, such as" -" unit test logic. Those can be nice, but you won't ever go wrong with " +"Some tools use docstrings to embed more-than-documentation behavior, such" +" as unit test logic. Those can be nice, but you won't ever go wrong with " "vanilla \"here's what this does.\"" msgstr "" -#: ..\..\writing\documentation.rst:130 +#: ../../writing/documentation.rst:131 msgid "Docstrings versus Block comments" msgstr "" -#: ..\..\writing\documentation.rst:132 +#: ../../writing/documentation.rst:133 msgid "" -"These aren't interchangeable. For a function or class, the leading comment " -"block is a programmer's note. The docstring describes the *operation* of the" -" function or class:" +"These aren't interchangeable. For a function or class, the leading " +"comment block is a programmer's note. The docstring describes the " +"*operation* of the function or class:" msgstr "" -#: ..\..\writing\documentation.rst:147 +#: ../../writing/documentation.rst:148 msgid "Other Tools" msgstr "" -#: ..\..\writing\documentation.rst:149 +#: ../../writing/documentation.rst:150 msgid "You might see these in the wild. Use :ref:`sphinx-ref`." msgstr "" -#: ..\..\writing\documentation.rst:152 -msgid "" -"Pycco is a \"literate-programming-style documentation generator\" and is a " -"port of the node.js Docco_. It makes code into a side-by-side HTML code and " -"documentation." +#: ../../writing/documentation.rst:155 +msgid "Pycco_" msgstr "" -#: ..\..\writing\documentation.rst:160 +#: ../../writing/documentation.rst:153 msgid "" -"Ronn builds unix manuals. It converts human readable textfiles to roff for " -"terminal display, and also to HTML for the web." +"Pycco is a \"literate-programming-style documentation generator\" and is " +"a port of the node.js Docco_. It makes code into a side-by-side HTML code" +" and documentation." msgstr "" -#: ..\..\writing\documentation.rst:166 -msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." +#: ../../writing/documentation.rst:162 +msgid "Ronn_" msgstr "" -#: ..\..\writing\documentation.rst:171 +#: ../../writing/documentation.rst:161 msgid "" -"MkDocs is a fast and simple static site generator that's geared towards " -"building project documentation with Markdown." +"Ronn builds Unix manuals. It converts human readable textfiles to roff " +"for terminal display, and also to HTML for the web." msgstr "" -#: ..\..\writing\documentation.rst:143 -msgid "Further reading on docstrings: :pep:`257`" +#: ../../writing/documentation.rst:167 +msgid "Epydoc_" msgstr "" -#: ..\..\writing\documentation.rst:154 -msgid "Pycco_" +#: ../../writing/documentation.rst:167 +msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." msgstr "" -#: ..\..\writing\documentation.rst:161 -msgid "Ronn_" +#: ../../writing/documentation.rst:173 +msgid "MkDocs_" msgstr "" -#: ..\..\writing\documentation.rst:166 -msgid "Epydoc_" +#: ../../writing/documentation.rst:172 +msgid "" +"MkDocs is a fast and simple static site generator that's geared towards " +"building project documentation with Markdown." msgstr "" -#: ..\..\writing\documentation.rst:172 -msgid "MkDocs_" -msgstr "" +#~ msgid "" +#~ "A :file:`README` file at the root " +#~ "directory should give general information " +#~ "to both users and maintainers of a" +#~ " project. It should be raw text " +#~ "or written in some very easy to" +#~ " read markup, such as :ref" +#~ ":`reStructuredText-ref` or Markdown. It " +#~ "should contain a few lines explaining" +#~ " the purpose of the project or " +#~ "library (without assuming the user knows" +#~ " anything about the project), the url" +#~ " of the main source for the " +#~ "software, and some basic credit " +#~ "information. This file is the main " +#~ "entry point for readers of the " +#~ "code." +#~ msgstr "" + +#~ msgid "" +#~ "In general, follow the comment section" +#~ " of :pep:`8#comments` (the \"Python Style" +#~ " Guide\")." +#~ msgstr "" + +#~ msgid "" +#~ "Ronn builds unix manuals. It converts" +#~ " human readable textfiles to roff for" +#~ " terminal display, and also to HTML" +#~ " for the web." +#~ msgstr "" + +#~ msgid "Further reading on docstrings: :pep:`257`" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo b/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..04b9a3aa0e51937c0a1d05c65c4aa722b45bceaf 100644 GIT binary patch literal 9675 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 RJwIfUGphL^)Bod;>EG7-^\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\gotchas.rst:2 +#: ../../writing/gotchas.rst:2 msgid "Common Gotchas" msgstr "" -#: ..\..\writing\gotchas.rst:4 +#: ../../writing/gotchas.rst:4 msgid "" -"For the most part, Python aims to be a clean and consistent language that " -"avoids surprises. However, there are a few cases that can be confusing to " -"newcomers." +"For the most part, Python aims to be a clean and consistent language that" +" avoids surprises. However, there are a few cases that can be confusing " +"to newcomers." msgstr "" -#: ..\..\writing\gotchas.rst:8 +#: ../../writing/gotchas.rst:8 msgid "" -"Some of these cases are intentional but can be potentially surprising. Some " -"could arguably be considered language warts. In general though, what follows" -" is a collection of potentially tricky behavior that might seem strange at " -"first glance, but is generally sensible once you're aware of the underlying " -"cause for the surprise." +"Some of these cases are intentional but can be potentially surprising. " +"Some could arguably be considered language warts. In general, what " +"follows is a collection of potentially tricky behavior that might seem " +"strange at first glance, but is generally sensible once you're aware of " +"the underlying cause for the surprise." msgstr "" -#: ..\..\writing\gotchas.rst:17 +#: ../../writing/gotchas.rst:18 msgid "Mutable Default Arguments" msgstr "" -#: ..\..\writing\gotchas.rst:19 +#: ../../writing/gotchas.rst:20 msgid "" "Seemingly the *most* common surprise new Python programmers encounter is " "Python's treatment of mutable default arguments in function definitions." msgstr "" -#: ..\..\writing\gotchas.rst:23 ..\..\writing\gotchas.rst:94 +#: ../../writing/gotchas.rst:24 ../../writing/gotchas.rst:95 msgid "What You Wrote" msgstr "" -#: ..\..\writing\gotchas.rst:32 ..\..\writing\gotchas.rst:102 +#: ../../writing/gotchas.rst:33 ../../writing/gotchas.rst:103 msgid "What You Might Have Expected to Happen" msgstr "" -#: ..\..\writing\gotchas.rst:42 +#: ../../writing/gotchas.rst:43 msgid "" -"A new list is created each time the function is called if a second argument " -"isn't provided, so that the output is::" +"A new list is created each time the function is called if a second " +"argument isn't provided, so that the output is::" msgstr "" -#: ..\..\writing\gotchas.rst:49 ..\..\writing\gotchas.rst:119 +#: ../../writing/gotchas.rst:50 ../../writing/gotchas.rst:120 msgid "What Does Happen" msgstr "" -#: ..\..\writing\gotchas.rst:56 +#: ../../writing/gotchas.rst:57 msgid "" -"A new list is created *once* when the function is defined, and the same list" -" is used in each successive call." +"A new list is created *once* when the function is defined, and the same " +"list is used in each successive call." msgstr "" -#: ..\..\writing\gotchas.rst:59 +#: ../../writing/gotchas.rst:60 msgid "" "Python's default arguments are evaluated *once* when the function is " "defined, not each time the function is called (like it is in say, Ruby). " "This means that if you use a mutable default argument and mutate it, you " -"*will* and have mutated that object for all future calls to the function as " -"well." +"*will* and have mutated that object for all future calls to the function " +"as well." msgstr "" -#: ..\..\writing\gotchas.rst:65 ..\..\writing\gotchas.rst:157 +#: ../../writing/gotchas.rst:66 ../../writing/gotchas.rst:159 msgid "What You Should Do Instead" msgstr "" -#: ..\..\writing\gotchas.rst:67 +#: ../../writing/gotchas.rst:68 msgid "" -"Create a new object each time the function is called, by using a default arg" -" to signal that no argument was provided (:py:data:`None` is often a good " -"choice)." +"Create a new object each time the function is called, by using a default " +"arg to signal that no argument was provided (:py:data:`None` is often a " +"good choice)." msgstr "" -#: ..\..\writing\gotchas.rst:80 ..\..\writing\gotchas.rst:180 +#: ../../writing/gotchas.rst:81 ../../writing/gotchas.rst:182 msgid "When the Gotcha Isn't a Gotcha" msgstr "" -#: ..\..\writing\gotchas.rst:82 +#: ../../writing/gotchas.rst:83 msgid "" "Sometimes you can specifically \"exploit\" (read: use as intended) this " -"behavior to maintain state between calls of a function. This is often done " -"when writing a caching function." +"behavior to maintain state between calls of a function. This is often " +"done when writing a caching function." msgstr "" -#: ..\..\writing\gotchas.rst:88 +#: ../../writing/gotchas.rst:89 msgid "Late Binding Closures" msgstr "" -#: ..\..\writing\gotchas.rst:90 +#: ../../writing/gotchas.rst:91 msgid "" -"Another common source of confusion is the way Python binds its variables in " -"closures (or in the surrounding global scope)." +"Another common source of confusion is the way Python binds its variables " +"in closures (or in the surrounding global scope)." msgstr "" -#: ..\..\writing\gotchas.rst:109 +#: ../../writing/gotchas.rst:110 msgid "" -"A list containing five functions that each have their own closed-over ``i`` " -"variable that multiplies their argument, producing::" +"A list containing five functions that each have their own closed-over " +"``i`` variable that multiplies their argument, producing::" msgstr "" -#: ..\..\writing\gotchas.rst:129 -msgid "" -"Five functions are created; instead all of them just multiply ``x`` by 4." +#: ../../writing/gotchas.rst:130 +msgid "Five functions are created; instead all of them just multiply ``x`` by 4." msgstr "" -#: ..\..\writing\gotchas.rst:131 +#: ../../writing/gotchas.rst:132 msgid "" "Python's closures are *late binding*. This means that the values of " -"variables used in closures are looked up at the time the inner function is " -"called." +"variables used in closures are looked up at the time the inner function " +"is called." msgstr "" -#: ..\..\writing\gotchas.rst:135 +#: ../../writing/gotchas.rst:136 msgid "" "Here, whenever *any* of the returned functions are called, the value of " -"``i`` is looked up in the surrounding scope at call time. By then, the loop " -"has completed and ``i`` is left with its final value of 4." +"``i`` is looked up in the surrounding scope at call time. By then, the " +"loop has completed and ``i`` is left with its final value of 4." msgstr "" -#: ..\..\writing\gotchas.rst:139 +#: ../../writing/gotchas.rst:140 msgid "" "What's particularly nasty about this gotcha is the seemingly prevalent " "misinformation that this has something to do with :ref:`lambdas " -"` in Python. Functions created with a ``lambda`` expression " -"are in no way special, and in fact the same exact behavior is exhibited by " -"just using an ordinary ``def``:" +"` in Python. Functions created with a ``lambda`` " +"expression are in no way special, and in fact the same exact behavior is " +"exhibited by just using an ordinary ``def``:" msgstr "" -#: ..\..\writing\gotchas.rst:159 +#: ../../writing/gotchas.rst:161 msgid "" "The most general solution is arguably a bit of a hack. Due to Python's " -"aforementioned behavior concerning evaluating default arguments to functions" -" (see :ref:`default_args`), you can create a closure that binds immediately " -"to its arguments by using a default arg like so:" +"aforementioned behavior concerning evaluating default arguments to " +"functions (see :ref:`default_args`), you can create a closure that binds " +"immediately to its arguments by using a default arg like so:" msgstr "" -#: ..\..\writing\gotchas.rst:169 +#: ../../writing/gotchas.rst:171 msgid "Alternatively, you can use the functools.partial function:" msgstr "" -#: ..\..\writing\gotchas.rst:182 +#: ../../writing/gotchas.rst:184 +msgid "" +"Sometimes you want your closures to behave this way. Late binding is good" +" in lots of situations. Looping to create unique functions is " +"unfortunately a case where they can cause hiccups." +msgstr "" + +#: ../../writing/gotchas.rst:191 +msgid "Bytecode (.pyc) Files Everywhere!" +msgstr "" + +#: ../../writing/gotchas.rst:193 +msgid "" +"By default, when executing Python code from files, the Python interpreter" +" will automatically write a bytecode version of that file to disk, e.g. " +"``module.pyc``." +msgstr "" + +#: ../../writing/gotchas.rst:197 +msgid "" +"These ``.pyc`` files should not be checked into your source code " +"repositories." +msgstr "" + +#: ../../writing/gotchas.rst:199 +msgid "" +"Theoretically, this behavior is on by default, for performance reasons. " +"Without these bytecode files present, Python would re-generate the " +"bytecode every time the file is loaded." +msgstr "" + +#: ../../writing/gotchas.rst:205 +msgid "Disabling Bytecode (.pyc) Files" +msgstr "" + +#: ../../writing/gotchas.rst:207 msgid "" -"Sometimes you want your closures to behave this way. Late binding is good in" -" lots of situations. Looping to create unique functions is unfortunately a " -"case where they can cause hiccups." +"Luckily, the process of generating the bytecode is extremely fast, and " +"isn't something you need to worry about while developing your code." msgstr "" + +#: ../../writing/gotchas.rst:210 +msgid "Those files are annoying, so let's get rid of them!" +msgstr "" + +#: ../../writing/gotchas.rst:216 +msgid "" +"With the ``$PYTHONDONTWRITEBYTECODE`` environment variable set, Python " +"will no longer write these files to disk, and your development " +"environment will remain nice and clean." +msgstr "" + +#: ../../writing/gotchas.rst:220 +msgid "I recommend setting this environment variable in your ``~/.profile``." +msgstr "" + +#: ../../writing/gotchas.rst:223 +msgid "Removing Bytecode (.pyc) Files" +msgstr "" + +#: ../../writing/gotchas.rst:225 +msgid "Here's nice trick for removing all of these files, if they already exist::" +msgstr "" + +#: ../../writing/gotchas.rst:229 +msgid "" +"Run that from the root directory of your project, and all ``.pyc`` files " +"will suddenly vanish. Much better." +msgstr "" + +#~ msgid "" +#~ "Some of these cases are intentional " +#~ "but can be potentially surprising. Some" +#~ " could arguably be considered language " +#~ "warts. In general though, what follows" +#~ " is a collection of potentially " +#~ "tricky behavior that might seem strange" +#~ " at first glance, but is generally" +#~ " sensible once you're aware of the" +#~ " underlying cause for the surprise." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/license.mo b/docs/locale/ko/LC_MESSAGES/writing/license.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..b74cad606d0581b1bf7816fce320729edc701c17 100644 GIT binary patch literal 3847 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 GI{q(QgyTg3 literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.po b/docs/locale/ko/LC_MESSAGES/writing/logging.po new file mode 100644 index 000000000..812292946 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/writing/logging.po @@ -0,0 +1,207 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2016. A Kenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../writing/logging.rst:2 +msgid "Logging" +msgstr "" + +#: ../../writing/logging.rst:4 +msgid "" +"The :mod:`logging` module has been a part of Python's Standard Library " +"since version 2.3. It is succinctly described in :pep:`282`. The " +"documentation is notoriously hard to read, except for the `basic logging " +"tutorial`_." +msgstr "" + +#: ../../writing/logging.rst:8 +msgid "Logging serves two purposes:" +msgstr "" + +#: ../../writing/logging.rst:10 +msgid "" +"**Diagnostic logging** records events related to the application's " +"operation. If a user calls in to report an error, for example, the logs " +"can be searched for context." +msgstr "" + +#: ../../writing/logging.rst:13 +msgid "" +"**Audit logging** records events for business analysis. A user's " +"transactions can be extracted and combined with other user details for " +"reports or to optimize a business goal." +msgstr "" + +#: ../../writing/logging.rst:19 +msgid "... or Print?" +msgstr "" + +#: ../../writing/logging.rst:21 +msgid "" +"The only time that ``print`` is a better option than logging is when the " +"goal is to display a help statement for a command line application. Other" +" reasons why logging is better than ``print``:" +msgstr "" + +#: ../../writing/logging.rst:25 +msgid "" +"The `log record`_, which is created with every logging event, contains " +"readily available diagnostic information such as the file name, full " +"path, function, and line number of the logging event." +msgstr "" + +#: ../../writing/logging.rst:28 +msgid "" +"Events logged in included modules are automatically accessible via the " +"root logger to your application's logging stream, unless you filter them " +"out." +msgstr "" + +#: ../../writing/logging.rst:30 +msgid "" +"Logging can be selectively silenced by using the method " +":meth:`logging.Logger.setLevel` or disabled by setting the attribute " +":attr:`logging.Logger.disabled` to ``True``." +msgstr "" + +#: ../../writing/logging.rst:36 +msgid "Logging in a Library" +msgstr "" + +#: ../../writing/logging.rst:38 +msgid "" +"Notes for `configuring logging for a library`_ are in the `logging " +"tutorial`_. Because the *user*, not the library, should dictate what " +"happens when a logging event occurs, one admonition bears repeating:" +msgstr "" + +#: ../../writing/logging.rst:44 +msgid "" +"It is strongly advised that you do not add any handlers other than " +"NullHandler to your library’s loggers." +msgstr "" + +#: ../../writing/logging.rst:48 +msgid "" +"Best practice when instantiating loggers in a library is to only create " +"them using the ``__name__`` global variable: the :mod:`logging` module " +"creates a hierarchy of loggers using dot notation, so using ``__name__`` " +"ensures no name collisions." +msgstr "" + +#: ../../writing/logging.rst:53 +msgid "" +"Here is an example of best practice from the `requests source`_ -- place " +"this in your ``__init__.py``" +msgstr "" + +#: ../../writing/logging.rst:72 +msgid "Logging in an Application" +msgstr "" + +#: ../../writing/logging.rst:74 +msgid "" +"The `twelve factor app `_, an authoritative " +"reference for good practice in application development, contains a " +"section on `logging best practice `_. It " +"emphatically advocates for treating log events as an event stream, and " +"for sending that event stream to standard output to be handled by the " +"application environment." +msgstr "" + +#: ../../writing/logging.rst:82 +msgid "There are at least three ways to configure a logger:" +msgstr "" + +#: ../../writing/logging.rst:87 +msgid "Using an INI-formatted file:" +msgstr "" + +#: ../../writing/logging.rst:85 +msgid "" +"**Pro**: possible to update configuration while running using the " +"function :func:`logging.config.listen` to listen on a socket." +msgstr "" + +#: ../../writing/logging.rst:87 +msgid "" +"**Con**: less control (*e.g.* custom subclassed filters or loggers) than " +"possible when configuring a logger in code." +msgstr "" + +#: ../../writing/logging.rst:92 +msgid "Using a dictionary or a JSON-formatted file:" +msgstr "" + +#: ../../writing/logging.rst:90 +msgid "" +"**Pro**: in addition to updating while running, it is possible to load " +"from a file using the :mod:`json` module, in the standard library since " +"Python 2.6." +msgstr "" + +#: ../../writing/logging.rst:93 +msgid "**Con**: less control than when configuring a logger in code." +msgstr "" + +#: ../../writing/logging.rst:97 +msgid "Using code:" +msgstr "" + +#: ../../writing/logging.rst:95 +msgid "**Pro**: complete control over the configuration." +msgstr "" + +#: ../../writing/logging.rst:96 +msgid "**Con**: modifications require a change to source code." +msgstr "" + +#: ../../writing/logging.rst:100 +msgid "Example Configuration via an INI File" +msgstr "" + +#: ../../writing/logging.rst:102 +msgid "" +"Let us say the file is named ``logging_config.ini``. More details for the" +" file format are in the `logging configuration`_ section of the `logging " +"tutorial`_." +msgstr "" + +#: ../../writing/logging.rst:131 +msgid "Then use :meth:`logging.config.fileConfig` in the code:" +msgstr "" + +#: ../../writing/logging.rst:144 +msgid "Example Configuration via a Dictionary" +msgstr "" + +#: ../../writing/logging.rst:146 +msgid "" +"As of Python 2.7, you can use a dictionary with configuration details. " +":pep:`391` contains a list of the mandatory and optional elements in the " +"configuration dictionary." +msgstr "" + +#: ../../writing/logging.rst:179 +msgid "Example Configuration Directly in Code" +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.mo b/docs/locale/ko/LC_MESSAGES/writing/reading.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..8017ef9c2f1c4c3788c2071831f1b73f66eb49a0 100644 GIT binary patch literal 5049 zcmeHK&5j#I5FQ|aFbO|7bEup+#AACmD2kjPWs`L_j=b5`#vuw)lm&vZO9J?ZXQ zuY-id5eadE7XTsg25{hv#EBaRkaz$tyaHeKc-H||aO7fZcgyxv)mQb^Pxtv zUT@;}9sGXIAD(-iejx~0;S6L3`4!~Hkf&b^f{!3SgZz%4zZ3)-@(0MXkQYw{0e*rZ z{yc=uUC5vC`J0!6;1T5ED?#uH2!np zB_!jXJJaC)0?D{{-e_`tp@jZNXB(9il$Lbu_)S8pq`r}p{yy71wr-xw{Wgg*p+rMZIZKhW zj+`cWSQ%+835s(mj8}?v87nK{#xXdw7|2MGNYg=7RW5+wWSo`iX$^ zm2;94#4Pb%n0fPPVst@L#2G(hKb6r>WQ-(pWt~hqbQJO|Lx7F|A^$>chwdZYSTn*Q zo;6U%5hP#>e6yYKJ{ibJ=ohj~!1wOlWx8DAPPFlKaT+x6ks;3}IshHV=N(qUh!oa% zyzqmBJpnt%Mu^Rz0c0tC=`sZZInzX1l|F9@k1-16VDBRkQQi>Pp)vFe?bHFD0xpsZ zFEClS!8@y%gT7ZT>mrhdG@@|OP4O3nTIQM>0Rjxyi>cxM@CE4v&joHJ;z7{JE@H;m zkD!!e{HH5+!@UGgZK^@7u@1e`v@Vy&$PA4Cy?VhO4A}9OcY6~}AB=UPgZ)h<3JrrR znRAuxce^PXu#P(L)vbKd!lY5@E>y4WKc*uqL?ftCLpw`&YAA>?e!jm7>5Ph-ey-{W z?UwO0WU}BiwlEW!awt4V#FvI55l<1n?aHg<0ah(XhTZ;@Ub)%>q@U zh^&$d4wGXz%FNG}$P0~aA<8*fU7J{Tg8f^$Km;f8T424@nVRbEgmswEM%mL@sMzQU zI!AI^9(B=Ck+2vgaQr};=`&fQPf)o#s(d2WnXq@UxOgG)!1-XM^QoXk45pk8Bo@Nc zTE$bWAvT=}?(74MZiUA)RKD4I%~}Ip?2yor3G%tEXIMKYCY0t&I!Gw`qnYhcMZ9lNr44N#2tfgOdnDOQ6b`@hE1Y$vDSWjD$i~*d%hDMk-o-wO3|8R@xNT2URu{01B&uo=$ruf%qW_M=c|DF|Vd1j{?}c!oNJ}(?iV0dZ z7O`LUR=R%)2GGZKJ&A;6*UT2>XY6B>qavfE&5Al|U0!7vp95i(t}WG0nsi!hnX4coMMav;hW)OyRt*&JIlsd4l)Q`;O$@I;kHsFONJ zlSOr!N&~{{JP#Mcmtc?is{3ZdFjfcvkdZ%|+D-MA@nT_Q=vu669#J<3w<%7|m}`z? zOJ{UWnLmT^wJ$x6SUy-|t*1&h)~GU~Q1DV$ye#t(zzlsuzyu6)>DUbX|W}x=e8<3C+4xVjUr?u4s5;p$H4|G8P+33vG> J{=eJ_{{+E;*DC-3 delta 113 zcmdm~{(wp6o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kUx0|X9%x}uA!l>v4Mh-k(H6f zWG=24Y2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$*Z|cnL|U|CO_sW=8YB2 diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.po b/docs/locale/ko/LC_MESSAGES/writing/reading.po index 124e34125..0edef6889 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/reading.po +++ b/docs/locale/ko/LC_MESSAGES/writing/reading.po @@ -1,103 +1,123 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\reading.rst:2 +#: ../../writing/reading.rst:2 msgid "Reading Great Code" msgstr "" -#: ..\..\writing\reading.rst:4 +#: ../../writing/reading.rst:4 msgid "" -"One of the core tenants behind the design of Python is creating readable " -"code. The motivation behind this design is simple: The number one thing that" -" Python programmers do is read code." +"One of the core tenets behind the design of Python is creating readable " +"code. The motivation behind this design is simple: The number one thing " +"that Python programmers do is read code." msgstr "" -#: ..\..\writing\reading.rst:8 +#: ../../writing/reading.rst:8 msgid "" "One of the secrets of becoming a great Python programmer is to read, " "understand, and comprehend excellent code." msgstr "" -#: ..\..\writing\reading.rst:11 +#: ../../writing/reading.rst:19 msgid "" "Excellent code typically follows the guidelines outlined in " -":ref:`code_style`, and does its best to express a clear and concise intent " -"to the reader." +":ref:`code_style`, and does its best to express a clear and concise " +"intent to the reader." msgstr "" -#: ..\..\writing\reading.rst:15 +#: ../../writing/reading.rst:23 msgid "" -"Included below is a list of recommended Python projects for reading. Each " -"one of these projects is a paragon of Python coding." +"Included below is a list of recommended Python projects for reading. Each" +" one of these projects is a paragon of Python coding." msgstr "" -#: ..\..\writing\reading.rst:18 +#: ../../writing/reading.rst:26 msgid "" -"`Howdoi `_ Howdoi is a code search tool, " -"written in Python." +"`Howdoi `_ Howdoi is a code search " +"tool, written in Python." msgstr "" -#: ..\..\writing\reading.rst:21 +#: ../../writing/reading.rst:29 msgid "" -"`Flask `_ Flask is a microframework for " -"Python based on Werkzeug and Jinja2. It's intended for getting started very " -"quickly and was developed with best intentions in mind." +"`Flask `_ Flask is a microframework " +"for Python based on Werkzeug and Jinja2. It's intended for getting " +"started very quickly and was developed with best intentions in mind." msgstr "" -#: ..\..\writing\reading.rst:26 +#: ../../writing/reading.rst:34 +msgid "" +"`Diamond `_ Diamond is a " +"python daemon that collects metrics and publishes them to Graphite or " +"other backends. It is capable of collecting cpu, memory, network, i/o, " +"load and disk metrics. Additionally, it features an API for implementing " +"custom collectors for gathering metrics from almost any source." +msgstr "" + +#: ../../writing/reading.rst:41 msgid "" "`Werkzeug `_ Werkzeug started as " -"simple collection of various utilities for WSGI applications and has become " -"one of the most advanced WSGI utility modules. It includes a powerful " -"debugger, full-featured request and response objects, HTTP utilities to " -"handle entity tags, cache control headers, HTTP dates, cookie handling, file" -" uploads, a powerful URL routing system and a bunch of community-contributed" -" addon modules." +"simple collection of various utilities for WSGI applications and has " +"become one of the most advanced WSGI utility modules. It includes a " +"powerful debugger, full-featured request and response objects, HTTP " +"utilities to handle entity tags, cache control headers, HTTP dates, " +"cookie handling, file uploads, a powerful URL routing system and a bunch " +"of community-contributed addon modules." msgstr "" -#: ..\..\writing\reading.rst:34 +#: ../../writing/reading.rst:49 msgid "" "`Requests `_ Requests is an " "Apache2 Licensed HTTP library, written in Python, for human beings." msgstr "" -#: ..\..\writing\reading.rst:38 +#: ../../writing/reading.rst:53 msgid "" "`Tablib `_ Tablib is a format-" "agnostic tabular dataset library, written in Python." msgstr "" -#: ..\..\writing\reading.rst:41 -msgid "" -"Embed and explain YouTube video showing python code reading: " -"http://www.youtube.com/watch?v=Jc8M9-LoEuo This may require installing a " -"Sphinx plugin. https://bitbucket.org/birkenfeld/sphinx-" -"contrib/src/a09f29fc16970f34350ca36ac7f229e00b1b1674/youtube?at=default" +#: ../../writing/reading.rst +msgid "Todo" msgstr "" -#: ..\..\writing\reading.rst:43 +#: ../../writing/reading.rst:57 msgid "" -"Include code examples of exemplary code from each of the projects listed. " -"Explain why it is excellent code. Use complex examples." +"Include code examples of exemplary code from each of the projects listed." +" Explain why it is excellent code. Use complex examples." msgstr "" -#: ..\..\writing\reading.rst:45 +#: ../../writing/reading.rst:59 msgid "" "Explain techniques to rapidly identify data structures, algorithms and " "determine what the code is doing." msgstr "" -#: ..\..\writing\reading.rst:0 ..\..\writing\reading.rst:0 -#: ..\..\writing\reading.rst:0 -msgid "Todo" -msgstr "" +#~ msgid "" +#~ "One of the core tenants behind the" +#~ " design of Python is creating " +#~ "readable code. The motivation behind " +#~ "this design is simple: The number " +#~ "one thing that Python programmers do " +#~ "is read code." +#~ msgstr "" + +#~ msgid "" +#~ "Embed and explain YouTube video showing" +#~ " python code reading: " +#~ "http://www.youtube.com/watch?v=Jc8M9-LoEuo This may " +#~ "require installing a Sphinx plugin. " +#~ "https://bitbucket.org/birkenfeld/sphinx-" +#~ "contrib/src/a09f29fc16970f34350ca36ac7f229e00b1b1674/youtube?at=default" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index 83c415e43b7aee5a76f8dc7330e88830fcb788f3..2d177ed5c478f59dc7c1f0e79f13d511c79ab659 100644 GIT binary patch delta 17087 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 delta 5816 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 TIf6tFGP`{346w%Vw%YQ)N264d diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 7d48471fc..37a49d99b 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -1,334 +1,674 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\structure.rst:2 +#: ../../writing/structure.rst:2 msgid "Structuring Your Project" msgstr "프로젝트 구성하기" -#: ..\..\writing\structure.rst:4 +#: ../../writing/structure.rst:4 msgid "" -"By \"structure\" we mean the decisions you make concerning how your project " -"best meets its objective. We need to consider how to best leverage Python's " -"features to create clean, effective code. In practical terms, \"structure\" " -"means making clean code whose logic and dependencies are clear as well as " -"how the files and folders are organized in the filesystem." +"By \"structure\" we mean the decisions you make concerning how your " +"project best meets its objective. We need to consider how to best " +"leverage Python's features to create clean, effective code. In practical " +"terms, \"structure\" means making clean code whose logic and dependencies" +" are clear as well as how the files and folders are organized in the " +"filesystem." msgstr "" -"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미한다. 우리는 깔끔하고 효율적인 " -"코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한 코드를 만드는" -" 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제다." +"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미한다. 우리는 깔끔하고 " +"효율적인 코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한" +" 코드를 만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제다." -#: ..\..\writing\structure.rst:11 +#: ../../writing/structure.rst:11 msgid "" -"Which functions should go into which modules? How does data flow through the" -" project? What features and functions can be grouped together and isolated? " -"By answering questions like these you can begin to plan, in a broad sense, " -"what your finished product will look like." +"Which functions should go into which modules? How does data flow through " +"the project? What features and functions can be grouped together and " +"isolated? By answering questions like these you can begin to plan, in a " +"broad sense, what your finished product will look like." msgstr "" -"어느 모듈에 어느 기능이 들어가야 할까? 프로젝트에서 데이터는 어덯게 흘러가야 할까? 어떤 특징과 기능이 통합되거나 분리되어야 할까? " -"이러한 질문에 답함으로써 프로젝트의 계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있다." +"어느 모듈에 어느 기능이 들어가야 할까? 프로젝트에서 데이터는 어덯게 흘러가야 할까? 어떤 특징과 기능이 통합되거나 분리되어야 " +"할까? 이러한 질문에 답함으로써 프로젝트의 계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있다." -#: ..\..\writing\structure.rst:16 +#: ../../writing/structure.rst:16 msgid "" -"In this section we take a closer look at Python's module and import systems " -"as they are the central elements to enforcing structure in your project. We " -"then discuss various perspectives on how to build code which can be extended" -" and tested reliably." +"In this section we take a closer look at Python's module and import " +"systems as they are the central elements to enforcing structure in your " +"project. We then discuss various perspectives on how to build code which " +"can be extended and tested reliably." msgstr "" "이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것이다. 이 2가지가 프로젝트를 위한 강력한 구조를 만들기 위한 " -"핵심적인 요소이기 때문이다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 관점에서 " -"검토할 것이다." +"핵심적인 요소이기 때문이다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 관점에서" +" 검토할 것이다." -#: ..\..\writing\structure.rst:23 -msgid "Structure is Key" +#: ../../writing/structure.rst:24 +msgid "Structure of the Repository" +msgstr "" + +#: ../../writing/structure.rst:27 +msgid "It's Important." +msgstr "" + +#: ../../writing/structure.rst:29 +msgid "" +"Just as Code Style, API Design, and Automation are essential for a " +"healthy development cycle, Repository structure is a crucial part of your" +" project's `architecture " +"`__." +msgstr "" + +#: ../../writing/structure.rst:34 +msgid "" +"When a potential user or contributor lands on your repository's page, " +"they see a few things:" +msgstr "" + +#: ../../writing/structure.rst:37 +msgid "Project Name" +msgstr "" + +#: ../../writing/structure.rst:38 +msgid "Project Description" +msgstr "" + +#: ../../writing/structure.rst:39 +msgid "Bunch O' Files" +msgstr "" + +#: ../../writing/structure.rst:41 +msgid "" +"Only when they scroll below the fold will the user see your project's " +"README." +msgstr "" + +#: ../../writing/structure.rst:44 +msgid "" +"If your repo is a massive dump of files or a nested mess of directories, " +"they might look elsewhere before even reading your beautiful " +"documentation." +msgstr "" + +#: ../../writing/structure.rst:48 +msgid "Dress for the job you want, not the job you have." +msgstr "" + +#: ../../writing/structure.rst:50 +msgid "" +"Of course, first impressions aren't everything. You and your colleagues " +"will spend countless hours working with this repository, eventually " +"becoming intimately familiar with every nook and cranny. The layout of it" +" is important." +msgstr "" + +#: ../../writing/structure.rst:56 +msgid "Sample Repository" +msgstr "" + +#: ../../writing/structure.rst:58 +msgid "" +"**tl;dr**: This is what `Kenneth Reitz `_ " +"recommends." +msgstr "" + +#: ../../writing/structure.rst:60 +msgid "" +"This repository is `available on GitHub " +"`__." +msgstr "" + +#: ../../writing/structure.rst:77 +msgid "Let's get into some specifics." +msgstr "" + +#: ../../writing/structure.rst:80 +msgid "The Actual Module" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Location" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./sample/`` or ``./sample.py``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Purpose" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "The code of interest" +msgstr "" + +#: ../../writing/structure.rst:89 +msgid "" +"Your module package is the core focus of the repository. It should not be" +" tucked away:" +msgstr "" + +#: ../../writing/structure.rst:96 +msgid "" +"If your module consists of only a single file, you can place it directly " +"in the root of your repository:" +msgstr "" + +#: ../../writing/structure.rst:103 +msgid "Your library does not belong in an ambiguous src or python subdirectory." +msgstr "" + +#: ../../writing/structure.rst:106 +msgid "License" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./LICENSE``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Lawyering up." +msgstr "" + +#: ../../writing/structure.rst:116 +msgid "" +"This is arguably the most important part of your repository, aside from " +"the source code itself. The full license text and copyright claims should" +" exist in this file." +msgstr "" + +#: ../../writing/structure.rst:120 +msgid "" +"If you aren't sure which license you should use for your project, check " +"out `choosealicense.com `_." +msgstr "" + +#: ../../writing/structure.rst:123 +msgid "" +"Of course, you are also free to publish code without a license, but this " +"would prevent many people from potentially using your code." +msgstr "" + +#: ../../writing/structure.rst:127 +msgid "Setup.py" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./setup.py``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Package and distribution management." +msgstr "" + +#: ../../writing/structure.rst:136 +msgid "" +"If your module package is at the root of your repository, this should " +"obviously be at the root as well." +msgstr "" + +#: ../../writing/structure.rst:140 +msgid "Requirements File" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./requirements.txt``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Development dependencies." +msgstr "" + +#: ../../writing/structure.rst:149 +msgid "" +"A `pip requirements file `__ should be placed at the root of the repository. " +"It should specify the dependencies required to contribute to the project:" +" testing, building, and generating documentation." +msgstr "" + +#: ../../writing/structure.rst:155 +msgid "" +"If your project has no development dependencies, or you prefer " +"development environment setup via ``setup.py``, this file may be " +"unnecessary." +msgstr "" + +#: ../../writing/structure.rst:160 +msgid "Documentation" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./docs/``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Package reference documentation." +msgstr "" + +#: ../../writing/structure.rst:169 +msgid "There is little reason for this to exist elsewhere." +msgstr "" + +#: ../../writing/structure.rst:172 +msgid "Test Suite" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./test_sample.py`` or ``./tests``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Package integration and unit tests." +msgstr "" + +#: ../../writing/structure.rst:181 +msgid "Starting out, a small test suite will often exist in a single file:" +msgstr "" + +#: ../../writing/structure.rst:187 +msgid "Once a test suite grows, you can move your tests to a directory, like so:" +msgstr "" + +#: ../../writing/structure.rst:195 +msgid "" +"Obviously, these test modules must import your packaged module to test " +"it. You can do this a few ways:" +msgstr "" + +#: ../../writing/structure.rst:198 +msgid "Expect the package to be installed in site-packages." +msgstr "" + +#: ../../writing/structure.rst:199 +msgid "" +"Use a simple (but *explicit*) path modification to resolve the package " +"properly." +msgstr "" + +#: ../../writing/structure.rst:202 +msgid "" +"I highly recommend the latter. Requiring a developer to run `setup.py " +"`__ develop to test an actively changing codebase also " +"requires them to have an isolated environment setup for each instance of " +"the codebase." +msgstr "" + +#: ../../writing/structure.rst:207 +msgid "" +"To give the individual tests import context, create a tests/context.py " +"file:" +msgstr "" + +#: ../../writing/structure.rst:218 +msgid "Then, within the individual test modules, import the module like so:" +msgstr "" + +#: ../../writing/structure.rst:224 +msgid "This will always work as expected, regardless of installation method." +msgstr "" + +#: ../../writing/structure.rst:226 +msgid "" +"Some people will assert that you should distribute your tests within your" +" module itself -- I disagree. It often increases complexity for your " +"users; many test suites often require additional dependencies and runtime" +" contexts." +msgstr "" + +#: ../../writing/structure.rst:232 +msgid "Makefile" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "``./Makefile``" +msgstr "" + +#: ../../writing/structure.rst:1 +msgid "Generic management tasks." +msgstr "" + +#: ../../writing/structure.rst:242 +msgid "" +"If you look at most of my projects or any Pocoo project, you'll notice a " +"Makefile laying around. Why? These projects aren't written in C... In " +"short, make is a incredibly useful tool for defining generic tasks for " +"your project." +msgstr "" + +#: ../../writing/structure.rst:247 +msgid "**Sample Makefile:**" +msgstr "" + +#: ../../writing/structure.rst:259 +msgid "" +"Other generic management scripts (e.g. ``manage.py`` or ``fabfile.py``) " +"belong at the root of the repository as well." +msgstr "" + +#: ../../writing/structure.rst:263 +msgid "Regarding Django Applications" +msgstr "" + +#: ../../writing/structure.rst:265 +msgid "" +"I've noticed a new trend in Django applications since the release of " +"Django 1.4. Many developers are structuring their repositories poorly due" +" to the new bundled application templates." +msgstr "" + +#: ../../writing/structure.rst:269 +msgid "" +"How? Well, they go to their bare and fresh repository and run the " +"following, as they always have:" +msgstr "" + +#: ../../writing/structure.rst:276 +msgid "The resulting repository structure looks like this:" +msgstr "" + +#: ../../writing/structure.rst:286 +msgid "Don't do this." +msgstr "" + +#: ../../writing/structure.rst:288 +msgid "" +"Repetitive paths are confusing for both your tools and your developers. " +"Unnecessary nesting doesn't help anybody (unless they're nostalgic for " +"monolithic SVN repos)." +msgstr "" + +#: ../../writing/structure.rst:292 +msgid "Let's do it properly:" +msgstr "" + +#: ../../writing/structure.rst:298 +msgid "Note the \"``.``\"." +msgstr "" + +#: ../../writing/structure.rst:300 +msgid "The resulting structure:" +msgstr "" + +#: ../../writing/structure.rst:314 +#, fuzzy +msgid "Structure of Code is Key" msgstr "구성이 중요하다" -#: ..\..\writing\structure.rst:25 +#: ../../writing/structure.rst:316 msgid "" "Thanks to the way imports and modules are handled in Python, it is " -"relatively easy to structure a Python project. Easy, here, means that you do" -" not have many constraints and that the module importing model is easy to " -"grasp. Therefore, you are left with the pure architectural task of crafting " -"the different parts of your project and their interactions." +"relatively easy to structure a Python project. Easy, here, means that you" +" do not have many constraints and that the module importing model is easy" +" to grasp. Therefore, you are left with the pure architectural task of " +"crafting the different parts of your project and their interactions." msgstr "" -"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽다. 여기서 쉽다는 말은 제약이 많지 않고, 모듈을 " -"불러오는 방식이 이해하기 쉽다는 뜻이다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 하면 된다." +"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽다. 여기서 쉽다는 말은 제약이 많지 않고, " +"모듈을 불러오는 방식이 이해하기 쉽다는 뜻이다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 " +"하면 된다." -#: ..\..\writing\structure.rst:32 +#: ../../writing/structure.rst:323 msgid "" -"Easy structuring of a project means it is also easy to do it poorly. Some " -"signs of a poorly structured project include:" -msgstr "" -"프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻이다. 프로젝트가 엉망으로 구성되었다는 신호를 몇 가지 찾아보았다." +"Easy structuring of a project means it is also easy to do it poorly. Some" +" signs of a poorly structured project include:" +msgstr "프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻이다. 프로젝트가 엉망으로 구성되었다는 신호를 몇 가지 찾아보았다." -#: ..\..\writing\structure.rst:36 +#: ../../writing/structure.rst:327 msgid "" -"Multiple and messy circular dependencies: if your classes Table and Chair in" -" :file:`furn.py` need to import Carpenter from :file:`workers.py` to answer " -"a question such as ``table.isdoneby()``, and if conversely the class " -"Carpenter needs to import Table and Chair, to answer the question " -"``carpenter.whatdo()``, then you have a circular dependency. In this case " -"you will have to resort to fragile hacks such as using import statements " -"inside methods or functions." +"Multiple and messy circular dependencies: if your classes Table and Chair" +" in :file:`furn.py` need to import Carpenter from :file:`workers.py` to " +"answer a question such as ``table.isdoneby()``, and if conversely the " +"class Carpenter needs to import Table and Chair, to answer the question " +"``carpenter.whatdo()``, then you have a circular dependency. In this case" +" you will have to resort to fragile hacks such as using import statements" +" inside methods or functions." msgstr "" "복잡한 순환 참조: ``책상.누가 만들었나()`` 같은 질문에 답하려면 :file:`가구.py` 의 탁자와 의자가 " ":file:`작업자.py` 에서 목수를 불러와야 하는데, 반대로 ``목수.뭐하니()`` 같은 질문에 답하려면 목수가 책상과 의자를 " -"불러와야만 하는 경우가 있다. 이것이 순환 참조다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 난도질스러운 " -"방법에 의존하는 수 밖에 없다." +"불러와야만 하는 경우가 있다. 이것이 순환 참조다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 " +"난도질스러운 방법에 의존하는 수 밖에 없다." -#: ..\..\writing\structure.rst:45 +#: ../../writing/structure.rst:336 msgid "" -"Hidden coupling: each and every change in Table's implementation breaks 20 " -"tests in unrelated test cases because it breaks Carpenter's code, which " -"requires very careful surgery to adapt the change. This means you have too " -"many assumptions about Table in Carpenter's code or the reverse." +"Hidden coupling: each and every change in Table's implementation breaks " +"20 tests in unrelated test cases because it breaks Carpenter's code, " +"which requires very careful surgery to adapt the change. This means you " +"have too many assumptions about Table in Carpenter's code or the reverse." msgstr "" -"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 한다. 책상의 코드 변경이 목수의 코드를" -" 무너뜨리기 때문이다. 이럴 때 코드 변경을 하려면 아주 신중한 수술을 해야한다. 이 말인즉, 목수의 코드 안에 있는 책상의 코드를 " -"변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻이다." +"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 한다. 책상의 코드 변경이 목수의 " +"코드를 무너뜨리기 때문이다. 이럴 때 코드 변경을 하려면 아주 신중한 수술을 해야한다. 이 말인즉, 목수의 코드 안에 있는 책상의 " +"코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻이다." -#: ..\..\writing\structure.rst:51 +#: ../../writing/structure.rst:342 msgid "" "Heavy usage of global state or context: instead of explicitly passing " -"``(height, width, type, wood)`` to each other, Table and Carpenter rely on " -"global variables that can be modified and are modified on the fly by " +"``(height, width, type, wood)`` to each other, Table and Carpenter rely " +"on global variables that can be modified and are modified on the fly by " "different agents. You need to scrutinize all access to these global " "variables to understand why a rectangular table became a square, and " -"discover that remote template code is also modifying this context, messing " -"with table dimensions." +"discover that remote template code is also modifying this context, " +"messing with table dimensions." msgstr "" -"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우다. 목수가 언제든 아무나 " -"바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생긴다. 어쩌다가 이런 일이 벌어졌는지를 " -"조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 견본 코드가 문맥을 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 것이다." +"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우다. 목수가 언제든 " +"아무나 바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생긴다. 어쩌다가 이런 일이 " +"벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 견본 코드가 문맥을 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 " +"것이다." -#: ..\..\writing\structure.rst:60 +#: ../../writing/structure.rst:351 msgid "" -"Spaghetti code: multiple pages of nested if clauses and for loops with a lot" -" of copy-pasted procedural code and no proper segmentation are known as " -"spaghetti code. Python's meaningful indentation (one of its most " -"controversial features) make it very hard to maintain this kind of code. So " -"the good news is that you might not see too much of it." +"Spaghetti code: multiple pages of nested if clauses and for loops with a " +"lot of copy-pasted procedural code and no proper segmentation are known " +"as spaghetti code. Python's meaningful indentation (one of its most " +"controversial features) make it very hard to maintain this kind of code. " +"So the good news is that you might not see too much of it." msgstr "" -"스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 나눠지지도 " -"않은 코드를 스파게티 코드라고 한다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 복잡하고 어지러운 코드는" -" 유지 보수하기가 어렵다. 다행히 이런 난장판을 많이 볼 일은 없을 것이다." +"스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 " +"나눠지지도 않은 코드를 스파게티 코드라고 한다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 복잡하고" +" 어지러운 코드는 유지 보수하기가 어렵다. 다행히 이런 난장판을 많이 볼 일은 없을 것이다." -#: ..\..\writing\structure.rst:67 +#: ../../writing/structure.rst:358 msgid "" -"Ravioli code is more likely in Python: it consists of hundreds of similar " -"little pieces of logic, often classes or objects, without proper structure. " -"If you never can remember if you have to use FurnitureTable, AssetTable or " -"Table, or even TableNew for your task at hand, you might be swimming in " -"ravioli code." +"Ravioli code is more likely in Python: it consists of hundreds of similar" +" little pieces of logic, often classes or objects, without proper " +"structure. If you never can remember if you have to use FurnitureTable, " +"AssetTable or Table, or even TableNew for your task at hand, you might be" +" swimming in ravioli code." msgstr "" "라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있다. 구조화도 되어있지 않으면서 수 백개의 비슷한 " -"로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 한다. 식탁을 써야하는지, 탁자를 써야하는지, 그도 아니면" -" 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것이다." +"로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 한다. 식탁을 써야하는지, 탁자를 써야하는지, 그도 " +"아니면 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것이다." -#: ..\..\writing\structure.rst:75 +#: ../../writing/structure.rst:366 msgid "Modules" msgstr "모듈" -#: ..\..\writing\structure.rst:77 +#: ../../writing/structure.rst:368 msgid "" -"Python modules are one of the main abstraction layers available and probably" -" the most natural one. Abstraction layers allow separating code into parts " -"holding related data and functionality." +"Python modules are one of the main abstraction layers available and " +"probably the most natural one. Abstraction layers allow separating code " +"into parts holding related data and functionality." msgstr "" -"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운" -"모습이다. 추상 레이어는 코드를 기능 파트와 데이터 저장 파트로 나눌 수 있도록 해준다." +"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운모습이다. 추상 레이어는 코드를 기능 파트와" +" 데이터 저장 파트로 나눌 수 있도록 해준다." -#: ..\..\writing\structure.rst:81 +#: ../../writing/structure.rst:372 msgid "" -"For example, a layer of a project can handle interfacing with user actions, " -"while another would handle low-level manipulation of data. The most natural " -"way to separate these two layers is to regroup all interfacing functionality" -" in one file, and all low-level operations in another file. In this case, " -"the interface file needs to import the low-level file. This is done with the" -" ``import`` and ``from ... import`` statements." +"For example, a layer of a project can handle interfacing with user " +"actions, while another would handle low-level manipulation of data. The " +"most natural way to separate these two layers is to regroup all " +"interfacing functionality in one file, and all low-level operations in " +"another file. In this case, the interface file needs to import the low-" +"level file. This is done with the ``import`` and ``from ... import`` " +"statements." msgstr "" -"예를 들어 프로젝트의 레이어 중 하나는 사용자 인터페이스를 담당하고, 다른 하나는 " -"저수준의 데이터 처리를 담당할 수도 있다. 이 두 레이어를 분리시키는 가장 자연스러운" -"방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각 하나의 파일에 " -"넣는 것이다. 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 한다." -"이는 ``import`` 와 ``from ... import`` 구문으로 가능하다." +"예를 들어 프로젝트의 레이어 중 하나는 사용자 인터페이스를 담당하고, 다른 하나는 저수준의 데이터 처리를 담당할 수도 있다. 이 두" +" 레이어를 분리시키는 가장 자연스러운방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각 하나의 파일에 넣는 " +"것이다. 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 한다.이는 ``import`` 와 ``from ... " +"import`` 구문으로 가능하다." -#: ..\..\writing\structure.rst:88 +#: ../../writing/structure.rst:379 msgid "" -"As soon as you use `import` statements you use modules. These can be either " -"built-in modules such as `os` and `sys`, third-party modules you have " -"installed in your environment, or your project's internal modules." +"As soon as you use `import` statements you use modules. These can be " +"either built-in modules such as `os` and `sys`, third-party modules you " +"have installed in your environment, or your project's internal modules." msgstr "" -"`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있다. 이는 내장 모듈인" -"`os`, `sys`, 프로젝트에 포함시킨 모듈과 따로 설치한 서드파티 모듈도 마찬가지다." - +"`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있다. 이는 내장 모듈인`os`, `sys`, 프로젝트에 포함시킨 " +"모듈과 따로 설치한 서드파티 모듈도 마찬가지다." -#: ..\..\writing\structure.rst:92 +#: ../../writing/structure.rst:383 msgid "" -"To keep in line with the style guide, keep module names short, lowercase, " -"and be sure to avoid using special symbols like the dot (.) or question mark" -" (?). So a file name like :file:`my.spam.py` is one you should avoid! Naming" -" this way will interfere with the way Python looks for modules." +"To keep in line with the style guide, keep module names short, lowercase," +" and be sure to avoid using special symbols like the dot (.) or question " +"mark (?). So a file name like :file:`my.spam.py` is one you should avoid!" +" Naming this way will interfere with the way Python looks for modules." msgstr "" -"본 안내서의 스타일 가이드의 방침을 따르려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나" -"물음표(?) 같은 특수 문자의 사용을 지양해야 한다. 그러니까 :file:`my.spam.py` 같은" -"이름으로 만들면 안된다! 파이썬이 모듈을 찾는 걸 방해한다." +"본 안내서의 스타일 가이드의 방침을 따르려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나물음표(?) 같은 특수 문자의 사용을 " +"지양해야 한다. 그러니까 :file:`my.spam.py` 같은이름으로 만들면 안된다! 파이썬이 모듈을 찾는 걸 방해한다." -#: ..\..\writing\structure.rst:97 +#: ../../writing/structure.rst:388 msgid "" -"In the case of `my.spam.py` Python expects to find a :file:`spam.py` file in" -" a folder named :file:`my` which is not the case. There is an `example " -"`_ of how the dot " -"notation should be used in the Python docs." +"In the case of `my.spam.py` Python expects to find a :file:`spam.py` file" +" in a folder named :file:`my` which is not the case. There is an `example" +" `_ of how the dot" +" notation should be used in the Python docs." msgstr "" -"`my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` " -"이라는 이름의 파일을 찾는다. 이는 잘못된 경우다. 아래 글을 참조하기 바란다." -"파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한" -" `예시 `_ " +"`my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` 이라는 이름의 " +"파일을 찾는다. 이는 잘못된 경우다. 아래 글을 참조하기 바란다.파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한 `예시 " +"`_ " -#: ..\..\writing\structure.rst:102 +#: ../../writing/structure.rst:393 msgid "" -"If you'd like you could name your module :file:`my_spam.py`, but even our " -"friend the underscore should not be seen often in module names." +"If you'd like you could name your module :file:`my_spam.py`, but even our" +" friend the underscore should not be seen often in module names." msgstr "" -":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능하다. 하지만 우리의 친구" -"밑줄(_)은 모듈 이름으로는 자주 쓰이지 않는다." +":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능하다. 하지만 우리의 친구밑줄(_)은 모듈 이름으로는 자주 쓰이지" +" 않는다." -#: ..\..\writing\structure.rst:105 +#: ../../writing/structure.rst:396 msgid "" "Aside from some naming restrictions, nothing special is required for a " -"Python file to be a module, but you need to understand the import mechanism " -"in order to use this concept properly and avoid some issues." +"Python file to be a module, but you need to understand the import " +"mechanism in order to use this concept properly and avoid some issues." msgstr "" -"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없다. " -"하지만 모듈이라는 개념을 잘 사용하고 문제를 발생시키지 않기 위해서는, 모듈을 불러오는 " -"방법을 이해할 필요가 있다." +"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없다. 하지만 모듈이라는 개념을 잘 사용하고 " +"문제를 발생시키지 않기 위해서는, 모듈을 불러오는 방법을 이해할 필요가 있다." -#: ..\..\writing\structure.rst:109 +#: ../../writing/structure.rst:400 msgid "" "Concretely, the ``import modu`` statement will look for the proper file, " -"which is :file:`modu.py` in the same directory as the caller if it exists. " -"If it is not found, the Python interpreter will search for :file:`modu.py` " -"in the \"path\" recursively and raise an ImportError exception if it is not " -"found." +"which is :file:`modu.py` in the same directory as the caller if it " +"exists. If it is not found, the Python interpreter will search for " +":file:`modu.py` in the \"path\" recursively and raise an ImportError " +"exception if it is not found." msgstr "" -"구체적으로 살펴보자. ``import modu`` 구문이 있으면 이는 호출자로서 같은 디렉토리 " -"안에서 적절한 파일, 즉 :file:`modu.py` 라는 파일을 찾는다. 만약 해당 파일이" -"발견되지 않는다면 파이썬 인터프리터는 :file:`modu.py` 파일을 \"path\" 에서" -"재귀적으로 찾는다. 그래도 발견되지 않으면 ImportError exception을 띄운다." +"구체적으로 살펴보자. ``import modu`` 구문이 있으면 이는 호출자로서 같은 디렉토리 안에서 적절한 파일, 즉 " +":file:`modu.py` 라는 파일을 찾는다. 만약 해당 파일이발견되지 않는다면 파이썬 인터프리터는 " +":file:`modu.py` 파일을 \"path\" 에서재귀적으로 찾는다. 그래도 발견되지 않으면 ImportError " +"exception을 띄운다." -#: ..\..\writing\structure.rst:114 +#: ../../writing/structure.rst:405 msgid "" "Once :file:`modu.py` is found, the Python interpreter will execute the " -"module in an isolated scope. Any top-level statement in :file:`modu.py` will" -" be executed, including other imports if any. Function and class definitions" -" are stored in the module's dictionary." +"module in an isolated scope. Any top-level statement in :file:`modu.py` " +"will be executed, including other imports if any. Function and class " +"definitions are stored in the module's dictionary." msgstr "" -"일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행한다." -" :file:`modu.py` 모듈 안의 모든 최상위 구문이 실행된다. 불러온 다른 모듈이 있다면" -"그것도 함께 실행된다. 함수와 클래스 정의는 모듈의 디렉토리에 저장된다." +"일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행한다. :file:`modu.py` " +"모듈 안의 모든 최상위 구문이 실행된다. 불러온 다른 모듈이 있다면그것도 함께 실행된다. 함수와 클래스 정의는 모듈의 디렉토리에 " +"저장된다." -#: ..\..\writing\structure.rst:119 +#: ../../writing/structure.rst:410 msgid "" -"Then, the module's variables, functions, and classes will be available to " -"the caller through the module's namespace, a central concept in programming " -"that is particularly helpful and powerful in Python." +"Then, the module's variables, functions, and classes will be available to" +" the caller through the module's namespace, a central concept in " +"programming that is particularly helpful and powerful in Python." msgstr "" -"그런 다음, 모듈의 변수와 함수, 그리고 클래스는 프로그래밍의 핵심적인 개념이자," -" 특히 파이썬에서는 더욱 유용하고 강력하게 쓰이는 모듈의 명칭 공간(namespace)" -"을 통해 호출자가 사용할 수 있게 된다. " +"그런 다음, 모듈의 변수와 함수, 그리고 클래스는 프로그래밍의 핵심적인 개념이자, 특히 파이썬에서는 더욱 유용하고 강력하게 쓰이는 " +"모듈의 명칭 공간(namespace)을 통해 호출자가 사용할 수 있게 된다. " -#: ..\..\writing\structure.rst:123 +#: ../../writing/structure.rst:414 msgid "" -"In many languages, an ``include file`` directive is used by the preprocessor" -" to take all code found in the file and 'copy' it into the caller's code. It" -" is different in Python: the included code is isolated in a module " -"namespace, which means that you generally don't have to worry that the " -"included code could have unwanted effects, e.g. override an existing " -"function with the same name." +"In many languages, an ``include file`` directive is used by the " +"preprocessor to take all code found in the file and 'copy' it into the " +"caller's code. It is different in Python: the included code is isolated " +"in a module namespace, which means that you generally don't have to worry" +" that the included code could have unwanted effects, e.g. override an " +"existing function with the same name." msgstr "" -"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와" -"호출자에 '복사'해 넣는 명령어로 사용된다. 하지만 파이썬에서는 다르다. 모듈에 포함된" -"코드는 명칭 공간에 독립적으로 실행된다. 이는 일반적으로 모듈에 포함된 코드가 오작동을" -"하는 경우가 없다는 뜻이다. " +"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와호출자에" +" '복사'해 넣는 명령어로 사용된다. 하지만 파이썬에서는 다르다. 모듈에 포함된코드는 명칭 공간에 독립적으로 실행된다. 이는 " +"일반적으로 모듈에 포함된 코드가 오작동을하는 경우가 없다는 뜻이다. " -#: ..\..\writing\structure.rst:129 +#: ../../writing/structure.rst:420 msgid "" "It is possible to simulate the more standard behavior by using a special " -"syntax of the import statement: ``from modu import *``. This is generally " -"considered bad practice. **Using** ``import *`` **makes code harder to read " -"and makes dependencies less compartmentalized**." -msgstr "" -"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 " -"작동하는지 확인해보자. 일반적으로 이러한 구문은 잘못된 습관이다. " -" **Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, " -"코드의 독립성 여부를 판단하기 어렵게 한다." - -#: ..\..\writing\structure.rst:134 -msgid "" -"Using ``from modu import func`` is a way to pinpoint the function you want " -"to import and put it in the global namespace. While much less harmful than " -"``import *`` because it shows explicitly what is imported in the global " -"namespace, its only advantage over a simpler ``import modu`` is that it will" -" save a little typing." -msgstr "" -"``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 " -"전역 명칭 공간(global namespace)에 넣어둘 수 있는 좋은 방법이다. " -"뿐만 아니라 이 구문은 전역 명칭 공간(global namespace)에 무엇을 불러올지를" -"명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭다. 단순히 ``import *`` " -"구문을 사용하는 것은 단지 타이핑을 덜 한다는 이점 뿐이다." - -#: ..\..\writing\structure.rst:139 +"syntax of the import statement: ``from modu import *``. This is generally" +" considered bad practice. **Using** ``import *`` **makes code harder to " +"read and makes dependencies less compartmentalized**." +msgstr "" +"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 작동하는지 확인해보자. 일반적으로 " +"이러한 구문은 잘못된 습관이다. **Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, 코드의 독립성 " +"여부를 판단하기 어렵게 한다." + +#: ../../writing/structure.rst:425 +msgid "" +"Using ``from modu import func`` is a way to pinpoint the function you " +"want to import and put it in the global namespace. While much less " +"harmful than ``import *`` because it shows explicitly what is imported in" +" the global namespace, its only advantage over a simpler ``import modu`` " +"is that it will save a little typing." +msgstr "" +"``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 전역 명칭 공간(global " +"namespace)에 넣어둘 수 있는 좋은 방법이다. 뿐만 아니라 이 구문은 전역 명칭 공간(global namespace)에 " +"무엇을 불러올지를명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭다. 단순히 ``import *`` 구문을 사용하는 " +"것은 단지 타이핑을 덜 한다는 이점 뿐이다." + +#: ../../writing/structure.rst:431 msgid "**Very bad**" msgstr "**최악**" -#: ..\..\writing\structure.rst:148 +#: ../../writing/structure.rst:440 msgid "**Better**" msgstr "**최악보다는 낫다**" -#: ..\..\writing\structure.rst:156 ..\..\writing\structure.rst:443 +#: ../../writing/structure.rst:448 ../../writing/structure.rst:810 msgid "**Best**" msgstr "**최고**" -#: ..\..\writing\structure.rst:164 +#: ../../writing/structure.rst:456 msgid "" "As mentioned in the :ref:`code_style` section, readability is one of the " -"main features of Python. Readability means to avoid useless boilerplate text" -" and clutter, therefore some efforts are spent trying to achieve a certain " -"level of brevity. But terseness and obscurity are the limits where brevity " -"should stop. Being able to tell immediately where a class or function comes " -"from, as in the ``modu.func`` idiom, greatly improves code readability and " -"understandability in all but the simplest single file projects." -msgstr "" -":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나다." -"가독성이란 쓸데없이 긴 본문과 잡동사니를 피한다는 뜻이다. 그러므로 어느 수준까지는" -"간결성을 얻고자 하는 노력이 필요하다. 그러나 너무 간결한 나머지 모호해서는 안된다." -" ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은" -"코드의 가독성과 이해용이성을 크게 놓여준다." -"단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇다." - -#: ..\..\writing\structure.rst:174 +"main features of Python. Readability means to avoid useless boilerplate " +"text and clutter, therefore some efforts are spent trying to achieve a " +"certain level of brevity. But terseness and obscurity are the limits " +"where brevity should stop. Being able to tell immediately where a class " +"or function comes from, as in the ``modu.func`` idiom, greatly improves " +"code readability and understandability in all but the simplest single " +"file projects." +msgstr "" +":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나다.가독성이란 쓸데없이 긴 본문과 " +"잡동사니를 피한다는 뜻이다. 그러므로 어느 수준까지는간결성을 얻고자 하는 노력이 필요하다. 그러나 너무 간결한 나머지 모호해서는 " +"안된다. ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은코드의 가독성과 이해용이성을 크게 " +"놓여준다.단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇다." + +#: ../../writing/structure.rst:466 msgid "Packages" msgstr "패키지" -#: ..\..\writing\structure.rst:176 +#: ../../writing/structure.rst:468 msgid "" -"Python provides a very straightforward packaging system, which is simply an " -"extension of the module mechanism to a directory." -msgstr "" -"파이썬은 아주 간단한 패키지 만들기 시스템을 제공한다. 이 시스템은 단순히 " -"파이썬 모듈 구조를 디렉토리로 확장한 것이다." +"Python provides a very straightforward packaging system, which is simply " +"an extension of the module mechanism to a directory." +msgstr "파이썬은 아주 간단한 패키지 만들기 시스템을 제공한다. 이 시스템은 단순히 파이썬 모듈 구조를 디렉토리로 확장한 것이다." -#: ..\..\writing\structure.rst:179 +#: ../../writing/structure.rst:471 msgid "" "Any directory with an :file:`__init__.py` file is considered a Python " "package. The different modules in the package are imported in a similar " @@ -336,464 +676,500 @@ msgid "" ":file:`__init__.py` file, which is used to gather all package-wide " "definitions." msgstr "" -":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식된다." -"패키지의 여러 다른 모듈들은 일반적인 모듈과 비슷한 방법으로 불러와진다." -"그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별하다." -"이 파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰인다." +":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식된다.패키지의 여러 다른 모듈들은 일반적인 모듈과 " +"비슷한 방법으로 불러와진다.그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별하다.이 " +"파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰인다." -#: ..\..\writing\structure.rst:184 +#: ../../writing/structure.rst:476 msgid "" -"A file :file:`modu.py` in the directory :file:`pack/` is imported with the " -"statement ``import pack.modu``. This statement will look for an " +"A file :file:`modu.py` in the directory :file:`pack/` is imported with " +"the statement ``import pack.modu``. This statement will look for an " ":file:`__init__.py` file in :file:`pack`, execute all of its top-level " "statements. Then it will look for a file named :file:`pack/modu.py` and " "execute all of its top-level statements. After these operations, any " -"variable, function, or class defined in :file:`modu.py` is available in the " -"pack.modu namespace." +"variable, function, or class defined in :file:`modu.py` is available in " +"the pack.modu namespace." msgstr "" -":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로" -"불러와진다. 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾는다." -"그리고 해당 패키지의 모든 상위 구문을 실행한다. 이 작업 후에 :file:`modu.py` " -"파일에 정의된 모든 변수나 함수, 클래스를 pack.modu 명칭 공간(namespace)에서" -" 쓸 수 있다." +":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로불러와진다." +" 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾는다.그리고 해당 패키지의 모든 상위 구문을" +" 실행한다. 이 작업 후에 :file:`modu.py` 파일에 정의된 모든 변수나 함수, 클래스를 pack.modu 명칭 " +"공간(namespace)에서 쓸 수 있다." -#: ..\..\writing\structure.rst:190 +#: ../../writing/structure.rst:484 msgid "" -"A commonly seen issue is to add too much code to :file:`__init__.py` files. " -"When the project complexity grows, there may be sub-packages and sub-sub-" -"packages in a deep directory structure. In this case, importing a single " -"item from a sub-sub-package will require executing all :file:`__init__.py` " -"files met while traversing the tree." +"A commonly seen issue is to add too much code to :file:`__init__.py` " +"files. When the project complexity grows, there may be sub-packages and " +"sub-sub-packages in a deep directory structure. In this case, importing a" +" single item from a sub-sub-package will require executing all " +":file:`__init__.py` files met while traversing the tree." msgstr "" -"일반적으로 보이는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우다. " -"프로젝트가 복잡해질수록 디렉토리 구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을" -" 수 있다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 불러오려고 했더니" -" 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 " -"실행하게 될 때가 있다." +"일반적으로 보이는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우다. 프로젝트가 복잡해질수록 " +"디렉토리 구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을 수 있다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 " +"불러오려고 했더니 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 실행하게 될 때가 있다." -#: ..\..\writing\structure.rst:196 +#: ../../writing/structure.rst:490 msgid "" -"Leaving an :file:`__init__.py` file empty is considered normal and even a " -"good practice, if the package's modules and sub-packages do not need to " +"Leaving an :file:`__init__.py` file empty is considered normal and even a" +" good practice, if the package's modules and sub-packages do not need to " "share any code." msgstr "" -"따라서 패키지의 모듈과 서브-패키지에서 코드를 서로 공유할 필요가 없다면 " -":file:`__init__.py` 은 빈 파일로 남겨두는게 일반적일 뿐만 아니라 좋은 습관이다." +"따라서 패키지의 모듈과 서브-패키지에서 코드를 서로 공유할 필요가 없다면 :file:`__init__.py` 은 빈 파일로 " +"남겨두는게 일반적일 뿐만 아니라 좋은 습관이다." -#: ..\..\writing\structure.rst:199 +#: ../../writing/structure.rst:494 msgid "" "Lastly, a convenient syntax is available for importing deeply nested " -"packages: ``import very.deep.module as mod``. This allows you to use `mod` " -"in place of the verbose repetition of ``very.deep.module``." +"packages: ``import very.deep.module as mod``. This allows you to use " +"`mod` in place of the verbose repetition of ``very.deep.module``." msgstr "" -"마지막으로 패키지 안쪽 깊숙히 불러올 수 있는 편리한 구문이 있다." -"``import very.deep.module as mod`` 이다. 이 구문은 ``very.deep.module``" -"같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를 사용할 수 있게 해준다." +"마지막으로 패키지 안쪽 깊숙히 불러올 수 있는 편리한 구문이 있다.``import very.deep.module as mod`` " +"이다. 이 구문은 ``very.deep.module``같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를 사용할 수 " +"있게 해준다." -#: ..\..\writing\structure.rst:204 +#: ../../writing/structure.rst:499 msgid "Object-oriented programming" msgstr "객체지향 프로그래밍" -#: ..\..\writing\structure.rst:206 +#: ../../writing/structure.rst:501 msgid "" -"Python is sometimes described as an object-oriented programming language. " -"This can be somewhat misleading and needs to be clarified." -msgstr "" -"파이썬은 종종 객체지향 프로그래밍 언어라고 설명된다." -"이는 다소 오해의 여지가 있기에 명확히 할 필요가 있다." +"Python is sometimes described as an object-oriented programming language." +" This can be somewhat misleading and needs to be clarified." +msgstr "파이썬은 종종 객체지향 프로그래밍 언어라고 설명된다.이는 다소 오해의 여지가 있기에 명확히 할 필요가 있다." -#: ..\..\writing\structure.rst:209 +#: ../../writing/structure.rst:504 +#, fuzzy msgid "" -"In Python, everything is an object, and can be handled as such. This is what" -" is meant when we say, for example, that functions are first-class objects. " -"Functions, classes, strings, and even types are objects in Python: like any " -"objects, they have a type, they can be passed as function arguments, they " -"may have methods and properties. In this understanding, Python is an object-" -"oriented language." +"In Python, everything is an object, and can be handled as such. This is " +"what is meant when we say, for example, that functions are first-class " +"objects. Functions, classes, strings, and even types are objects in " +"Python: like any object, they have a type, they can be passed as function" +" arguments, and they may have methods and properties. In this " +"understanding, Python is an object-oriented language." msgstr "" -"파이썬에서 모든 것은 객체다. 그리고 객체처럼 다룰 수 있다. 말하자면 first-class 객체를" -" 예로 들 수 있다. 함수, 클래스, 문자열, 심지어 타입도 파이썬에서는 객체다. " -"다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 있다. 또한 메소드와" -"속성을 가질 수도 있다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것이다." +"파이썬에서 모든 것은 객체다. 그리고 객체처럼 다룰 수 있다. 말하자면 first-class 객체를 예로 들 수 있다. 함수, " +"클래스, 문자열, 심지어 타입도 파이썬에서는 객체다. 다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 있다. 또한" +" 메소드와속성을 가질 수도 있다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것이다." -#: ..\..\writing\structure.rst:216 +#: ../../writing/structure.rst:511 msgid "" -"However, unlike Java, Python does not impose object-oriented programming as " -"the main programming paradigm. It is perfectly viable for a Python project " -"to not be object-oriented, i.e. to use no or very few class definitions, " -"class inheritance, or any other mechanisms that are specific to object-" -"oriented programming." +"However, unlike Java, Python does not impose object-oriented programming " +"as the main programming paradigm. It is perfectly viable for a Python " +"project to not be object-oriented, i.e. to use no or very few class " +"definitions, class inheritance, or any other mechanisms that are specific" +" to object-oriented programming." msgstr "" -"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 " -"있지 않다. 객체지향으로 만들지 않은 파이썬 프로젝트도 완벽하게 실행 가능하다. " -"즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있다." -"클래스 상속이나 객체지향 프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지다." +"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 있지 않다. 객체지향으로 만들지 않은 파이썬 " +"프로젝트도 완벽하게 실행 가능하다. 즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있다.클래스 상속이나 객체지향 " +"프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지다." -#: ..\..\writing\structure.rst:222 +#: ../../writing/structure.rst:517 msgid "" -"Moreover, as seen in the modules_ section, the way Python handles modules " -"and namespaces gives the developer a natural way to ensure the encapsulation" -" and separation of abstraction layers, both being the most common reasons to" -" use object-orientation. Therefore, Python programmers have more latitude to" -" not use object-orientation, when it is not required by the business model." +"Moreover, as seen in the modules_ section, the way Python handles modules" +" and namespaces gives the developer a natural way to ensure the " +"encapsulation and separation of abstraction layers, both being the most " +"common reasons to use object-orientation. Therefore, Python programmers " +"have more latitude to not use object-orientation, when it is not required" +" by the business model." msgstr "" -"게다가 modules 섹션에서 볼 수 있듯이 파이썬이 모듈과 명칭 공간(namespace)를 다루는 방식은" -"개발자로 하여금 자연스럽게 캡슐화와 추상 레이어의 분리를 가능하게 해준다. 캡슐화와 추상 레이어의 " -"분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유다. 그러므로 파이썬 프로그래머는 비지니스 모델이" -" 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 된다." +"게다가 modules 섹션에서 볼 수 있듯이 파이썬이 모듈과 명칭 공간(namespace)를 다루는 방식은개발자로 하여금 자연스럽게" +" 캡슐화와 추상 레이어의 분리를 가능하게 해준다. 캡슐화와 추상 레이어의 분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유다. " +"그러므로 파이썬 프로그래머는 비지니스 모델이 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 된다." -#: ..\..\writing\structure.rst:229 +#: ../../writing/structure.rst:524 msgid "" "There are some reasons to avoid unnecessary object-orientation. Defining " -"custom classes is useful when we want to glue together some state and some " -"functionality. The problem, as pointed out by the discussions about " +"custom classes is useful when we want to glue together some state and " +"some functionality. The problem, as pointed out by the discussions about " "functional programming, comes from the \"state\" part of the equation." msgstr "" -"불필요한 객체지향을 피해야 할 이유는 여러가지가 있다. 어떤 구문과 기능은 한데 모아두는 편이 " -"더 유용할 때가 있다. 이럴 때는 사용자 정의 클래스를 정의해서 쓰면 편리하다. 문제는 " -"함수형 프로그래밍의 문제점으로 지적되는 등식 부분의 \"구문\" 에서 발생한다." +"불필요한 객체지향을 피해야 할 이유는 여러가지가 있다. 어떤 구문과 기능은 한데 모아두는 편이 더 유용할 때가 있다. 이럴 때는 " +"사용자 정의 클래스를 정의해서 쓰면 편리하다. 문제는 함수형 프로그래밍의 문제점으로 지적되는 등식 부분의 \"구문\" 에서 " +"발생한다." -#: ..\..\writing\structure.rst:234 +#: ../../writing/structure.rst:529 msgid "" "In some architectures, typically web applications, multiple instances of " -"Python processes are spawned to respond to external requests that can happen" -" at the same time. In this case, holding some state into instantiated " -"objects, which means keeping some static information about the world, is " -"prone to concurrency problems or race-conditions. Sometimes, between the " -"initialization of the state of an object (usually done with the " -"``__init__()`` method) and the actual use of the object state through one of" -" its methods, the world may have changed, and the retained state may be " -"outdated. For example, a request may load an item in memory and mark it as " -"read by a user. If another request requires the deletion of this item at the" -" same time, it may happen that the deletion actually occurs after the first " -"process loaded the item, and then we have to mark as read a deleted object." +"Python processes are spawned to respond to external requests that can " +"happen at the same time. In this case, holding some state into " +"instantiated objects, which means keeping some static information about " +"the world, is prone to concurrency problems or race-conditions. " +"Sometimes, between the initialization of the state of an object (usually " +"done with the ``__init__()`` method) and the actual use of the object " +"state through one of its methods, the world may have changed, and the " +"retained state may be outdated. For example, a request may load an item " +"in memory and mark it as read by a user. If another request requires the " +"deletion of this item at the same time, it may happen that the deletion " +"actually occurs after the first process loaded the item, and then we have" +" to mark as read a deleted object." msgstr "" -"어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생한다. 동시에 " -"발생하는 외부의 요청에 응답하기 위해서다. 이런 경우에는 구문의 실행이 멈춰져 " -" 예정된 오브젝트가 된다. " -"즉 어떤 고정된 정보를 계속 잡고 있는 것이다. 이때문에 동시성의 문제나 경합 상황이 발생하기 쉽다." +"어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생한다. 동시에 발생하는 외부의 요청에 응답하기 " +"위해서다. 이런 경우에는 구문의 실행이 멈춰져 예정된 오브젝트가 된다. 즉 어떤 고정된 정보를 계속 잡고 있는 것이다. 이때문에 " +"동시성의 문제나 경합 상황이 발생하기 쉽다." -#: ..\..\writing\structure.rst:247 +#: ../../writing/structure.rst:542 msgid "" -"This and other issues led to the idea that using stateless functions is a " -"better programming paradigm." +"This and other issues led to the idea that using stateless functions is a" +" better programming paradigm." msgstr "" -"이 문제 뿐만 아니라 다른 설명하지 않은 문제들이 발생하기도 한다. 이 때문에 구문없는 함수가 " -"더 나은 프로그래밍 패러다임으로 생각되기도 한다." +"이 문제 뿐만 아니라 다른 설명하지 않은 문제들이 발생하기도 한다. 이 때문에 구문없는 함수가 더 나은 프로그래밍 패러다임으로 " +"생각되기도 한다." -#: ..\..\writing\structure.rst:250 +#: ../../writing/structure.rst:545 msgid "" "Another way to say the same thing is to suggest using functions and " "procedures with as few implicit contexts and side-effects as possible. A " "function's implicit context is made up of any of the global variables or " -"items in the persistence layer that are accessed from within the function. " -"Side-effects are the changes that a function makes to its implicit context. " -"If a function saves or deletes data in a global variable or in the " -"persistence layer, it is said to have a side-effect." +"items in the persistence layer that are accessed from within the " +"function. Side-effects are the changes that a function makes to its " +"implicit context. If a function saves or deletes data in a global " +"variable or in the persistence layer, it is said to have a side-effect." msgstr "" -"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와" -" 프로시저를 사용하는 것이다. 전역 변수를 아무렇게나 사용하거나, 함수 내부에 있는 " -"퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해진다. 여기서 부작용이란" -" 함수가 함수 자체의 의미를 바꿔버리는 변화를 의미한다. 만약 함수가 퍼시스턴스 레이어에 " -"있는 데이터나 전역 변수에 있는 데이터를 날려버리거나 저장하는 경우를 말한다." +"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와 프로시저를 사용하는 것이다. 전역 변수를 " +"아무렇게나 사용하거나, 함수 내부에 있는 퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해진다. 여기서 부작용이란 함수가 " +"함수 자체의 의미를 바꿔버리는 변화를 의미한다. 만약 함수가 퍼시스턴스 레이어에 있는 데이터나 전역 변수에 있는 데이터를 " +"날려버리거나 저장하는 경우를 말한다." -#: ..\..\writing\structure.rst:257 +#: ../../writing/structure.rst:553 msgid "" -"Carefully isolating functions with context and side-effects from functions " -"with logic (called pure functions) allow the following benefits:" -msgstr "" -"함수가 잘 분리되어 있고 부작용도 없는 순수 함수라면 다음과 같은 장점이 있다." +"Carefully isolating functions with context and side-effects from " +"functions with logic (called pure functions) allow the following " +"benefits:" +msgstr "함수가 잘 분리되어 있고 부작용도 없는 순수 함수라면 다음과 같은 장점이 있다." -#: ..\..\writing\structure.rst:260 +#: ../../writing/structure.rst:556 msgid "" "Pure functions are deterministic: given a fixed input, the output will " "always be the same." -msgstr "" -"" -"순수 함수는 결정성이 있다. 즉, 같은 입력값이 있으면 언제나 같은 출력값을 낸다. " +msgstr "순수 함수는 결정성이 있다. 즉, 같은 입력값이 있으면 언제나 같은 출력값을 낸다. " -#: ..\..\writing\structure.rst:263 +#: ../../writing/structure.rst:559 msgid "" "Pure functions are much easier to change or replace if they need to be " "refactored or optimized." +msgstr "순수 함수는 수정하거나 최적화 작업이 필요할 때 쉽게 수정 및 변경할 수 있다." + +#: ../../writing/structure.rst:562 +msgid "" +"Pure functions are easier to test with unit-tests: There is less need for" +" complex context setup and data cleaning afterwards." +msgstr "순수 함수는 단위 테스트를 하기 쉽다. 즉, 복잡한 테스트 셋업 작업과 데이터 삭제 작업에 손이 덜 간다." + +#: ../../writing/structure.rst:565 +#, fuzzy +msgid "Pure functions are easier to manipulate, decorate, and pass around." +msgstr "순수 함수는 다루기 쉽고, 기능을 더하기도 쉽고, 없애기도 쉽다." + +#: ../../writing/structure.rst:567 +#, fuzzy +msgid "" +"In summary, pure functions are more efficient building blocks than " +"classes and objects for some architectures because they have no context " +"or side-effects." +msgstr "요약하자면, 독립적이고 부작용도 없는 순수 함수는 다른 어떠한 아키텍처의 클래스나 객체보다도 효과적인 구성 요소라고 할 수 있다." + +#: ../../writing/structure.rst:570 +msgid "" +"Obviously, object-orientation is useful and even necessary in many cases," +" for example when developing graphical desktop applications or games, " +"where the things that are manipulated (windows, buttons, avatars, " +"vehicles) have a relatively long life of their own in the computer's " +"memory." msgstr "" -"순수 함수는 수정하거나 최적화 작업이 필요할 때 쉽게 수정 및 변경할 수 있다." +"분명히 객체지향은 유용하다. 그리고 꼭 필요한 경우가 많다. 예를 들면 데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼, " +"아바타, 탈것이 있는 게임같은 경우다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문이다." -#: ..\..\writing\structure.rst:266 +#: ../../writing/structure.rst:577 +msgid "Decorators" +msgstr "데코레이터" + +#: ../../writing/structure.rst:579 msgid "" -"Pure functions are easier to test with unit-tests: There is less need for " -"complex context setup and data cleaning afterwards." +"The Python language provides a simple yet powerful syntax called " +"'decorators'. A decorator is a function or a class that wraps (or " +"decorates) a function or a method. The 'decorated' function or method " +"will replace the original 'undecorated' function or method. Because " +"functions are first-class objects in Python, this can be done 'manually'," +" but using the @decorator syntax is clearer and thus preferred." msgstr "" -"순수 함수는 단위 테스트를 하기 쉽다. 즉, 복잡한 테스트 셋업 작업과 데이터 삭제 " -"작업에 손이 덜 간다." +"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있다.데코레이터는 함수나 메소드를 감싸는(장식하는) 함수나 클래스다." +" '장식된' 함수나 메소드는 원래의 '장식되지 않은' 함수나 메소드를 대체한다.함수는 파이썬에서 first-class 객체이기 " +"때문이다. 이 작업은 '수작업'으로도 가능하지만 @decorator 문법을 쓰면 깔끔하게 쓸 수 있다. 그래서 많이들 쓴다." -#: ..\..\writing\structure.rst:269 -msgid "Pure functions are easier to manipulate, decorate, and pass-around." +#: ../../writing/structure.rst:602 +#, fuzzy +msgid "" +"This mechanism is useful for separating concerns and avoiding external " +"un-related logic 'polluting' the core logic of the function or method. A " +"good example of a piece of functionality that is better handled with " +"decoration is `memoization " +"` or caching: you " +"want to store the results of an expensive function in a table and use " +"them directly instead of recomputing them when they have already been " +"computed. This is clearly not part of the function logic." msgstr "" -"순수 함수는 다루기 쉽고, 기능을 더하기도 쉽고, 없애기도 쉽다." +"이 방법으로 함수나 메소드의 핵심 로직을 외부의 관련없는 로직이 오염시키는 일을 피할 수 있기 때문에 유용하다. 예를 들면 " +"데코레이션을 써서 다루는 편이 좋은 기능으로 메모이제이션과 캐싱을 들 수 있다. 무거운 함수의 결과값을 테이블에 저장한 다음, 이미" +" 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 것이다. 이는 함수에서 자체적으로 가지고 있어야 할 기능은 아니다." -#: ..\..\writing\structure.rst:271 +#: ../../writing/structure.rst:611 +msgid "Context Managers" +msgstr "" + +#: ../../writing/structure.rst:613 msgid "" -"In summary, pure functions, without any context or side-effects, are more " -"efficient building blocks than classes and objects for some architectures." +"A context manager is a Python object that provides extra contextual " +"information to an action. This extra information takes the form of " +"running a callable upon initiating the context using the ``with`` " +"statement, as well as running a callable upon completing all the code " +"inside the ``with`` block. The most well known example of using a context" +" manager is shown here, opening on a file:" msgstr "" -"요약하자면, 독립적이고 부작용도 없는 순수 함수는 다른 어떠한 아키텍처의 클래스나 " -"객체보다도 효과적인 구성 요소라고 할 수 있다." -#: ..\..\writing\structure.rst:274 +#: ../../writing/structure.rst:624 msgid "" -"Obviously, object-orientation is useful and even necessary in many cases, " -"for example when developing graphical desktop applications or games, where " -"the things that are manipulated (windows, buttons, avatars, vehicles) have a" -" relatively long life of their own in the computer's memory." +"Anyone familiar with this pattern knows that invoking ``open`` in this " +"fashion ensures that ``f``'s ``close`` method will be called at some " +"point. This reduces a developer's cognitive load and makes the code " +"easier to read." msgstr "" -"분명히 객체지향은 유용하다. 그리고 꼭 필요한 경우가 많다. 예를 들면 " -"데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼, 아바타, 탈것이 있는 게임같은 " -"경우다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문이다." -#: ..\..\writing\structure.rst:281 -msgid "Decorators" -msgstr "데코레이터" +#: ../../writing/structure.rst:628 +msgid "" +"There are two easy ways to implement this functionality yourself: using a" +" class or using a generator. Let's implement the above functionality " +"ourselves, starting with the class approach:" +msgstr "" -#: ..\..\writing\structure.rst:283 +#: ../../writing/structure.rst:647 msgid "" -"The Python language provides a simple yet powerful syntax called " -"'decorators'. A decorator is a function or a class that wraps (or decorates)" -" a function or a method. The 'decorated' function or method will replace the" -" original 'undecorated' function or method. Because functions are first-" -"class objects in Python, this can be done 'manually', but using the " -"@decorator syntax is clearer and thus preferred." -msgstr "" -"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있다." -"데코레이터는 함수나 메소드를 감싸는(장식하는) 함수나 클래스다. " -"'장식된' 함수나 메소드는 원래의 '장식되지 않은' 함수나 메소드를 대체한다." -"함수는 파이썬에서 first-class 객체이기 때문이다. 이 작업은 '수작업'으로도 가능하지만 " -"@decorator 문법을 쓰면 깔끔하게 쓸 수 있다. 그래서 많이들 쓴다." - -#: ..\..\writing\structure.rst:306 -msgid "" -"This mechanism is useful for separating concerns and avoiding external un-" -"related logic 'polluting' the core logic of the function or method. A good " -"example of a piece of functionality that is better handled with decoration " -"is memoization or caching: you want to store the results of an expensive " -"function in a table and use them directly instead of recomputing them when " -"they have already been computed. This is clearly not part of the function " -"logic." -msgstr "" -"이 방법으로 함수나 메소드의 핵심 로직을 외부의 관련없는 로직이 오염시키는 일을 피할 " -"수 있기 때문에 유용하다. 예를 들면 데코레이션을 써서 다루는 편이 좋은 기능으로 " -"메모이제이션과 캐싱을 들 수 있다. 무거운 함수의 결과값을 테이블에 저장한 다음, " -"이미 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 것이다. 이는 " -"함수에서 자체적으로 가지고 있어야 할 기능은 아니다." - -#: ..\..\writing\structure.rst:315 +"This is just a regular Python object with two extra methods that are used" +" by the ``with`` statement. CustomOpen is first instantiated and then its" +" ``__enter__`` method is called and whatever ``__enter__`` returns is " +"assigned to ``f`` in the ``as f`` part of the statement. When the " +"contents of the ``with`` block is finished executing, the ``__exit__`` " +"method is then called." +msgstr "" + +#: ../../writing/structure.rst:653 +msgid "" +"And now the generator approach using Python's own `contextlib " +"`_:" +msgstr "" + +#: ../../writing/structure.rst:671 +msgid "" +"This works in exactly the same way as the class example above, albeit " +"it's more terse. The ``custom_open`` function executes until it reaches " +"the ``yield`` statement. It then gives control back to the ``with`` " +"statement, which assigns whatever was ``yield``'ed to `f` in the ``as f``" +" portion. The ``finally`` clause ensures that ``close()`` is called " +"whether or not there was an exception inside the ``with``." +msgstr "" + +#: ../../writing/structure.rst:678 +msgid "" +"Since the two approaches appear the same, we should follow the Zen of " +"Python to decide when to use which. The class approach might be better if" +" there's a considerable amount of logic to encapsulate. The function " +"approach might be better for situations where we're dealing with a simple" +" action." +msgstr "" + +#: ../../writing/structure.rst:684 msgid "Dynamic typing" msgstr "동적 타입" -#: ..\..\writing\structure.rst:317 +#: ../../writing/structure.rst:686 +#, fuzzy msgid "" -"Python is said to be dynamically typed, which means that variables do not " -"have a fixed type. In fact, in Python, variables are very different from " -"what they are in many other languages, specifically statically-typed " -"languages. Variables are not a segment of the computer's memory where some " -"value is written, they are 'tags' or 'names' pointing to objects. It is " -"therefore possible for the variable 'a' to be set to the value 1, then to " -"the value 'a string', then to a function." +"Python is dynamically typed, which means that variables do not have a " +"fixed type. In fact, in Python, variables are very different from what " +"they are in many other languages, specifically statically-typed " +"languages. Variables are not a segment of the computer's memory where " +"some value is written, they are 'tags' or 'names' pointing to objects. It" +" is therefore possible for the variable 'a' to be set to the value 1, " +"then to the value 'a string', then to a function." msgstr "" -"파이썬은 동적 타입이 되는 언어라고 불린다. 이 말은 변수가 고정된 타입을 가지고 있지 " -"않다는 뜻이다. 사실 파이썬의 변수는 다른 수많은 언어, 특히 정적 타입 언어의" -" 변수와는 아주 다르다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 객체를" -" 가리키는 컴퓨터 메모리의 한 조각이 아니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, " -"값 'a string'을 가지고, 또 함수가 될 수도 있는 것이다." +"파이썬은 동적 타입이 되는 언어라고 불린다. 이 말은 변수가 고정된 타입을 가지고 있지 않다는 뜻이다. 사실 파이썬의 변수는 다른 " +"수많은 언어, 특히 정적 타입 언어의 변수와는 아주 다르다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 객체를 " +"가리키는 컴퓨터 메모리의 한 조각이 아니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, 값 'a string'을 가지고, 또" +" 함수가 될 수도 있는 것이다." -#: ..\..\writing\structure.rst:325 +#: ../../writing/structure.rst:693 msgid "" "The dynamic typing of Python is often considered to be a weakness, and " -"indeed it can lead to complexities and hard-to-debug code. Something named " -"'a' can be set to many different things, and the developer or the maintainer" -" needs to track this name in the code to make sure it has not been set to a " -"completely unrelated object." +"indeed it can lead to complexities and hard-to-debug code. Something " +"named 'a' can be set to many different things, and the developer or the " +"maintainer needs to track this name in the code to make sure it has not " +"been set to a completely unrelated object." msgstr "" -"동적 타입은 종종 파이썬의 약점으로 여겨지기도 한다. 실제로 동적 타입은 코드를 " -"복잡하게 만들고 디버깅하기 어렵게 만든다. 'a'라는 이름이 너무나 많은 것이 될 수 " -"있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 " -"무관한 객체인지를 확인하기 위해 코드 전체를 뒤져야 한다." +"동적 타입은 종종 파이썬의 약점으로 여겨지기도 한다. 실제로 동적 타입은 코드를 복잡하게 만들고 디버깅하기 어렵게 만든다. " +"'a'라는 이름이 너무나 많은 것이 될 수 있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 무관한 " +"객체인지를 확인하기 위해 코드 전체를 뒤져야 한다." -#: ..\..\writing\structure.rst:331 +#: ../../writing/structure.rst:699 msgid "Some guidelines help to avoid this issue:" -msgstr "" -"이러한 문제를 피하기 위한 가이드라인을 소개한다." +msgstr "이러한 문제를 피하기 위한 가이드라인을 소개한다." -#: ..\..\writing\structure.rst:333 +#: ../../writing/structure.rst:701 msgid "Avoid using the same variable name for different things." msgstr "다른 것에 같은 변수명을 붙이지 마라." -#: ..\..\writing\structure.rst:335 ..\..\writing\structure.rst:359 -#: ..\..\writing\structure.rst:423 +#: ../../writing/structure.rst:703 ../../writing/structure.rst:727 +#: ../../writing/structure.rst:790 msgid "**Bad**" msgstr "**나쁜 예**" -#: ..\..\writing\structure.rst:344 ..\..\writing\structure.rst:433 +#: ../../writing/structure.rst:712 ../../writing/structure.rst:800 msgid "**Good**" msgstr "**좋은 예**" -#: ..\..\writing\structure.rst:353 +#: ../../writing/structure.rst:721 msgid "" "Using short functions or methods helps reduce the risk of using the same " "name for two unrelated things." -msgstr "" -"메소드나 함수를 짧게 쓰는 방법은 상관없는 것들에게 같은 이름을 붙이는 위험을 줄일 " -"수 있다." +msgstr "메소드나 함수를 짧게 쓰는 방법은 상관없는 것들에게 같은 이름을 붙이는 위험을 줄일 수 있다." -#: ..\..\writing\structure.rst:356 +#: ../../writing/structure.rst:724 msgid "" -"It is better to use different names even for things that are related, when " -"they have a different type:" -msgstr "" -"관련된 것이라고 해도 다른 타입을 가진다면 다른 이름을 붙이는 편이 좋다." +"It is better to use different names even for things that are related, " +"when they have a different type:" +msgstr "관련된 것이라고 해도 다른 타입을 가진다면 다른 이름을 붙이는 편이 좋다." -#: ..\..\writing\structure.rst:367 +#: ../../writing/structure.rst:735 msgid "" -"There is no efficiency gain when reusing names: the assignments will have to" -" create new objects anyway. However, when the complexity grows and each " -"assignment is separated by other lines of code, including 'if' branches and " -"loops, it becomes harder to ascertain what a given variable's type is." +"There is no efficiency gain when reusing names: the assignments will have" +" to create new objects anyway. However, when the complexity grows and " +"each assignment is separated by other lines of code, including 'if' " +"branches and loops, it becomes harder to ascertain what a given " +"variable's type is." msgstr "" -"한 번 쓴 이름을 재활용 하는 것은 비효율적이다. 대입문은 반드시 새로운 객체를 만들어야 " -"한다. 하지만 너무 복잡해지고, 'if' 분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 " -"변수가 어떤 타입인지 확인하기 어려워진다." +"한 번 쓴 이름을 재활용 하는 것은 비효율적이다. 대입문은 반드시 새로운 객체를 만들어야 한다. 하지만 너무 복잡해지고, 'if' " +"분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 변수가 어떤 타입인지 확인하기 어려워진다." -#: ..\..\writing\structure.rst:373 +#: ../../writing/structure.rst:741 msgid "" "Some coding practices, like functional programming, recommend never " "reassigning a variable. In Java this is done with the `final` keyword. " "Python does not have a `final` keyword and it would be against its " -"philosophy anyway. However, it may be a good discipline to avoid assigning " -"to a variable more than once, and it helps in grasping the concept of " -"mutable and immutable types." +"philosophy anyway. However, it may be a good discipline to avoid " +"assigning to a variable more than once, and it helps in grasping the " +"concept of mutable and immutable types." msgstr "" -"함수형 프로그래밍의 코딩 습관처럼 재할당이 불가능한 변수의 사용을 추천한다. " -"자바에서는 `final` 키워드로 가능하다. 파이썬은 `final` 키워드가 없고, " -"또한 이러한 방법은 파이썬의 철학에 반하는 일이다. 하지만 변수를 한 번 이상 " -"재할당하지 않는 것은 좋은 습관이며, 가변 타입과 불변 타입을 이해하는데 " -"도움이 될 것이다." +"함수형 프로그래밍의 코딩 습관처럼 재할당이 불가능한 변수의 사용을 추천한다. 자바에서는 `final` 키워드로 가능하다. 파이썬은 " +"`final` 키워드가 없고, 또한 이러한 방법은 파이썬의 철학에 반하는 일이다. 하지만 변수를 한 번 이상 재할당하지 않는 것은 " +"좋은 습관이며, 가변 타입과 불변 타입을 이해하는데 도움이 될 것이다." -#: ..\..\writing\structure.rst:380 +#: ../../writing/structure.rst:748 msgid "Mutable and immutable types" msgstr "가변 타입과 불변 타입" -#: ..\..\writing\structure.rst:382 +#: ../../writing/structure.rst:750 msgid "Python has two kinds of built-in or user-defined types." msgstr "파이썬에는 내장 타입과 사용자 정의 타입이 있다." -#: ..\..\writing\structure.rst:384 +#: ../../writing/structure.rst:752 msgid "" "Mutable types are those that allow in-place modification of the content. " "Typical mutables are lists and dictionaries: All lists have mutating " "methods, like :py:meth:`list.append` or :py:meth:`list.pop`, and can be " "modified in place. The same goes for dictionaries." msgstr "" -"가변 타입은 내부에서 자체적으로 변경이 가능하다. " -"일반적인 가변 타입은 리스트와 딕셔너리다. 모든 리스트에는 " -" :py:meth:`list.append` 나 :py:meth:`list.pop` 처럼 자체적으로 변경 가능한 " -"메소드가 있다. 딕셔너리도 마찬가지다. " +"가변 타입은 내부에서 자체적으로 변경이 가능하다. 일반적인 가변 타입은 리스트와 딕셔너리다. 모든 리스트에는 " +":py:meth:`list.append` 나 :py:meth:`list.pop` 처럼 자체적으로 변경 가능한 메소드가 있다. " +"딕셔너리도 마찬가지다. " -#: ..\..\writing\structure.rst:389 +#: ../../writing/structure.rst:757 msgid "" -"Immutable types provide no method for changing their content. For instance, " -"the variable x set to the integer 6 has no \"increment\" method. If you want" -" to compute x + 1, you have to create another integer and give it a name." +"Immutable types provide no method for changing their content. For " +"instance, the variable x set to the integer 6 has no \"increment\" " +"method. If you want to compute x + 1, you have to create another integer " +"and give it a name." msgstr "" -"불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않는다. 예를 들면 " -"integer 6으로 설정된 변수 x에는 \"increment\" 가 없다. 만약 x에 1을 더하고 " -"싶다면 다른 integer 변수를 만들어서 이름을 부여해야 한다. " +"불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않는다. 예를 들면 integer 6으로 설정된 변수 x에는 " +"\"increment\" 가 없다. 만약 x에 1을 더하고 싶다면 다른 integer 변수를 만들어서 이름을 부여해야 한다. " -#: ..\..\writing\structure.rst:403 +#: ../../writing/structure.rst:770 msgid "" -"One consequence of this difference in behavior is that mutable types are not" -" \"stable\", and therefore cannot be used as dictionary keys." -msgstr "" -"이러한 차이 때문에 가변 타입은 \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없다." +"One consequence of this difference in behavior is that mutable types are " +"not \"stable\", and therefore cannot be used as dictionary keys." +msgstr "이러한 차이 때문에 가변 타입은 \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없다." -#: ..\..\writing\structure.rst:407 +#: ../../writing/structure.rst:774 msgid "" "Using properly mutable types for things that are mutable in nature and " "immutable types for things that are fixed in nature helps to clarify the " "intent of the code." msgstr "" -"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, " -"원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 " -"코드의 목적을 명확히 하는데 도움이 된다." +"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, 원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 코드의 " +"목적을 명확히 하는데 도움이 된다." -#: ..\..\writing\structure.rst:411 +#: ../../writing/structure.rst:778 msgid "" -"For example, the immutable equivalent of a list is the tuple, created with " -"``(1, 2)``. This tuple is a pair that cannot be changed in-place, and can be" -" used as a key for a dictionary." +"For example, the immutable equivalent of a list is the tuple, created " +"with ``(1, 2)``. This tuple is a pair that cannot be changed in-place, " +"and can be used as a key for a dictionary." msgstr "" -"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능하다. ``(1, 2)`` 로 만든다. " -"튜플은 자체적으로 변경이 불가능하면서, 딕셔너리의 키로 사용할 수 있다." +"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능하다. ``(1, 2)`` 로 만든다. 튜플은 자체적으로 변경이 불가능하면서, " +"딕셔너리의 키로 사용할 수 있다." -#: ..\..\writing\structure.rst:415 +#: ../../writing/structure.rst:782 msgid "" -"One peculiarity of Python that can surprise beginners is that strings are " -"immutable. This means that when constructing a string from its parts, it is " -"much more efficient to accumulate the parts in a list, which is mutable, and" -" then glue ('join') the parts together when the full string is needed. One " -"thing to notice, however, is that list comprehensions are better and faster " -"than constructing a list in a loop with calls to ``append()``." +"One peculiarity of Python that can surprise beginners is that strings are" +" immutable. This means that when constructing a string from its parts, it" +" is much more efficient to accumulate the parts in a list, which is " +"mutable, and then glue ('join') the parts together when the full string " +"is needed. One thing to notice, however, is that list comprehensions are " +"better and faster than constructing a list in a loop with calls to " +"``append()``." msgstr "" -"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점이다." -"이는 문자열의 일부를 다시 만들고 싶을 때, 애시당초 리스트로 만들어서 그 일부를 " -"변경하는 편이 효율적이라는 뜻이다. 리스트는 변경 가능하고, 전체 문자열이 필요하면 " -"('join')을 사용하여 한데 이어 붙일 수 있기 때문이다. 하지만 한가지 알아둬야 할 점은 " -"반복문에서 ``append()`` 메소드를 호출해 리스트를 만드는 것보다 " -"리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 것이다." +"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점이다.이는 문자열의 일부를 다시 만들고 싶을 때, 애시당초" +" 리스트로 만들어서 그 일부를 변경하는 편이 효율적이라는 뜻이다. 리스트는 변경 가능하고, 전체 문자열이 필요하면 ('join')을" +" 사용하여 한데 이어 붙일 수 있기 때문이다. 하지만 한가지 알아둬야 할 점은 반복문에서 ``append()`` 메소드를 호출해 " +"리스트를 만드는 것보다 리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 것이다." -#: ..\..\writing\structure.rst:451 +#: ../../writing/structure.rst:818 msgid "" "One final thing to mention about strings is that using ``join()`` is not " "always best. In the instances where you are creating a new string from a " -"pre-determined number of strings, using the addition operator is actually " -"faster, but in cases like above or in cases where you are adding to an " +"pre-determined number of strings, using the addition operator is actually" +" faster, but in cases like above or in cases where you are adding to an " "existing string, using ``join()`` should be your preferred method." msgstr "" -"문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것이다." -" 문자열이 몇 개 있을지 미리 정해져 있는 상태에서 새로운 문자열을 만들 때는 " -"더하기 연산자를 쓰는 편이 실제로 더 빠르다." -" 하지만 문자열이 몇 개 있을지 정해져 있지 않거나, 이미 만들어진 문자열에 추가로 " -"문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것이다. " +"문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것이다. 문자열이 몇 개 있을지 미리 정해져" +" 있는 상태에서 새로운 문자열을 만들 때는 더하기 연산자를 쓰는 편이 실제로 더 빠르다. 하지만 문자열이 몇 개 있을지 정해져 있지" +" 않거나, 이미 만들어진 문자열에 추가로 문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것이다. " -#: ..\..\writing\structure.rst:467 +#: ../../writing/structure.rst:834 +#, fuzzy msgid "" -"You can also use the :ref:`% ` formatting operator" -" to concatenate a pre-determined number of strings besides " -":py:meth:`str.join` and ``+``. However, according to :pep:`3101`, the ``%`` " -"operator became deprecated in Python 3.1 and will be replaced by the " -":py:meth:`str.format` method in the later versions." +"You can also use the :ref:`% ` formatting " +"operator to concatenate a pre-determined number of strings besides " +":py:meth:`str.join` and ``+``. However, :pep:`3101`, discourages the " +"usage of the ``%`` operator in favor of the :py:meth:`str.format` method." msgstr "" -"또한 :py:meth:`str.join` 와 ``+`` 외에 " -"포맷 연산자 :ref:`% ` 를 써서 " -"미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있다. " -"하지만 :pep:`3101` 에 따르면 ``%`` 연산자는 파이썬 3.1에서는 사라졌고 " -"최신 버전에서는 :py:meth:`str.format` 로 대체될 것이라고 한다." +"또한 :py:meth:`str.join` 와 ``+`` 외에 포맷 연산자 :ref:`% ` 를 써서 미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있다. 하지만 :pep:`3101` 에 따르면" +" ``%`` 연산자는 파이썬 3.1에서는 사라졌고 최신 버전에서는 :py:meth:`str.format` 로 대체될 것이라고 " +"한다." -#: ..\..\writing\structure.rst:484 +#: ../../writing/structure.rst:850 msgid "Vendorizing Dependencies" msgstr "Vendorizing Dependencies" -#: ..\..\writing\structure.rst:488 +#: ../../writing/structure.rst:854 msgid "Runners" msgstr "Runners" -#: ..\..\writing\structure.rst:492 +#: ../../writing/structure.rst:858 msgid "Further Reading" msgstr "더 알아보기" -#: ..\..\writing\structure.rst:494 +#: ../../writing/structure.rst:860 msgid "http://docs.python.org/2/library/" msgstr "http://docs.python.org/2/library/" -#: ..\..\writing\structure.rst:495 +#: ../../writing/structure.rst:861 msgid "http://www.diveintopython.net/toc/index.html" msgstr "http://www.diveintopython.net/toc/index.html" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.mo b/docs/locale/ko/LC_MESSAGES/writing/style.mo index d12c48d5d32773c3fd8f4cc3ea05d258718ef8bc..b8b4284cac7d2d43d955c786774d2d5ec233334d 100644 GIT binary patch literal 34578 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�owt)ZPCU6g1gE!tplh}m z5L8L=@sz;y8hEfwJH;w#4;I$k0OI)|F)%VclYL|C;>qS7x@h|p)+eHXO`5KToXny~ zqe4eA8|=UOh}elw)$+m?$cP!9Hm*i0!lJ7ItYSSeA5$9$`PopBHmB~w9ALEgUehxT zIcm^bC%dOJ0B?i6MSqyg*tR_g`B;GVyYI{Uv!Te(27He+pdfA<&71@t*4&UaM-#K* zxM%5c_*;|UM_}Bu!&pgCI?}YlFtV!faB0_29nlU9hw~Y)e3lA{NShe(wyouo{ z#Krbez-L1a;yW7~K%Q9Znr2m&sRdPWM)vb4?9wrX{mFPqQN@?3^qNZ&4Ha~0=Og4- z7@;pOp@Ry07bbUmMS9PUpKVXo(m18v1A15R?om);xBZOQky^yODXe!ZA)ou)e5$jQm zG#bTRPin9uvUWO))$s`ON6g&^F8X!V%B1>CNnETkYVKBQX)_TD{HPbT2*{;mfRUy) zH`+uVTo9C0H&S{QN^7fA3tEoJ<}8}P$l5@-yp!@9@}6iEEDuE~H*({Fi~z#n&^|yJ zB!t5dTuuk<90QW>k&QIf5)QL;W^Ah&uPKYx^GXt@0Uww^2CZ3~&J z2_tg^IrS14aD}zxTsq@6KY%^Gba7zcf&D(61l7|02E;;A`HYzn1Q~lV^*FNb@~{9o zVNKl$bm$pQLq$2C>e^}eXVndt2TA*J?&*NFdWxKCsD$WM@?|v^4)qM_07Fz#TLT`@ zE+8Sj*UGEe2t+4q*Gu?A_yz0dsbA)kUOR!96?1?3v_jUgLbu{22@GK=PFs04pr$a$ zRAw}zHCoAtF9;T^$tcy&0tg1Yr1#T81p(%XvVBgD=ozzwq_acijUCRw)jO-Q?&|cX9~p?S2%%b zFCznq0~8Yg>{+pH$I+I!lY6&Y^8f98z~ul81Dgq&d)yTB+YIvMfX!`hjBBG z$5VcJ-i+?2;@D&(ET&A*o}0}ph62!;>33D?;z0Dkz;W%0o5*0BsUWVfj79A=kV;6k zXkkin%Dx4u#t$h+C6^@T1AB14K{Vy(NJ@JitlEKjI+QnEVsXO68ZOCA$+tw-Y7;#q zvX6SEVBL z$%Q^SCX;*mGY{OBi<_W2!DoZ`PqMscHN+#l1s*0`UgXLY-0_LE*Y0$>Jn6g}i zO~;j|k({`xl0XgqUgP3f;|#WZTsA<8FP`)XT07p86r9bX zw@Xdav1;{=gw4xED3^~Yc?>T6f`b*o z+Zk#ENknZXbWa-E6JyhOVS(!3cE=(FN+Tir(NwtgX)?=$=ejEcc29%d+7VT*BWMTa zTXThgCMXYD1<9Td^433h6GC~Mffv9*(`x&}FnlMkYYr{sd_9E`GB~1|>Nk$E0GhzD zI!k7tY$i%u$vgPPRx4aurNbyND>5+41$#9g9UTb;TG;!YNZA$+1dvjvPK*>mlt8WF z+CZ#f{~CNLxRY}T9B%G_J1XN+L*15CVea4{+;!C_pbhTapA{mdE3MX^H%ZeNc-k%@ z+biTVKzu4M=3_$cbEmjel%X|5XyR=34J@`SxG_LZ*CiD}A=#|jFJd5sjQgqNZwI7d zOL7}Q02bEC!`>(Z(wQ4qtwf-{b}9sQm5Ej;|@&*>vjj-58Sfkpg*wdT_mQzF!!hP$qoXLTT5Ihw&$N~siBuY%Ij#)B{ zMXne$q&Az1eL*v2ru*4r>`jKI&V)HBt(No?5uQ4)sZLilSOOB`9{Q_hUL|5e%G{bN zeXsbnX`K&J>#U57ge7WJDyy5K>V;Q&d3)W7nYub(4;81zCMRgc!gy*o1=(b5^7yz&B`*IBK(XEh^&MH+S)^um@FyBx@{n<-kX1$?%{ zX@!%rVx{&v#>5z$vd%zjG<3^t|RC?yMI=gS==ezIdg;4id*EtVaxE~)Nc(phc}cF^?A9vOpU*lfirw6 z=fD(wCG`yWk&#fMGc`tsbtfsOJ2a77(IL5WXJzU2ke-*J3^NG8NkQM#l}WIw z&=Yen>89_LW@alM&?(}bWXv*cvz-QCis;x%T_Xss*_FeGOx3J?ewA&eHmL75naz-> z_ZpSk2Cp`Ry1vo_?`7tK>skWPP=cj9R{l`0Mf!(jkOO)3GX546=;8e6v}g&85v zrIV+H`egbkdM|=*Xarki)*B29eAKZL2PxSROi#5tc2i$2olb_Z%@<{*I%5Qb9qlf~ z4<+nECLEOs(awk{KOk0CqQQ?XY@m5q2>^y7C?J>iKEsnWR+ptrW1)Xyf2uO4`#8r-v!PMwezWoH)Kanwo2usVNfXZCD_0x-3i&||5ZhwP16 z7CYj$Jy%2fiDD+CQ*i)#fIgflD$hS^gq zuNx1|D_f@yo4z3)~AH##pzFm5C>m{zT&h}jt~u7amo_%S_s znwUw1lr#s?^ckMZNo6M8s;$NyWCRftHM)+w8Tm)U67Qb(>pfgW)Q9jMcWLs%f&ONP@9e^m)C(yw-w*m6K5 zfr7ad&RJm1ImVgdg(S8Z5Gq_%FN(+zOO#{MIdDASCY*puewL6}SinyaXTjhQq55#xl0G`v%+~KFRAc>Y1p3 zKFkOc<=~IJ6D?HPgK05BEAH5{7gb}5c`Y0tEK#QbGm=vp%5y5OiGx>2Q`O|W z(*;&4mYP6I_z1~=Mz{&89+uIZ{8j1=_Pl{LPw{vGvNjd>)GURAN!p(38-1kY)( z8V6ZDh(bY!*-{=kebLCB-xbIOoRC7qgX6t$qzDW9g`y$qw2>-iZ|U%NrXvz zeQ#O4u%72rE3EHHhyXk^JCXK;Jq{)LD&DiCa$7wjA#tVTuRB%EffgU)2|X9FDYEG& zLvMtdeg!^2Ri{ZBTmxr_mlu!;utbrSe1Of2$my&o!BkJLEqVnM78^khRhA-ebT#+j zk40et6jGpDQXbh=xg%?f<%`+t#qEHRW-XBW49gRci6|mGzeTTMr9Em`HPZAD+0N9T zu(btFrrjQ6$!S@l&JVbg-dxWrGav8K_sX0Zy>%YX6$Pg$MWKJug3p^H_foh7I9NSq zx&{-%Sr$EZn%SSj#$%JI8B9<9ObTZ+h^7;|+T(gWDQ+!SZHITkHE9`}Q{W z?ThywZ0kY1Z`Nx<`&2dZ=;V1C6^5#rHhWyzk!ke)NI+kKA+&X>A+_ zmSMpW;bx2t8mv8>62Twp4&vK-c$I!C1IJbf;y$!S^xad<;12Hf=hB+-dR~8M98Z(J zzKL%;cI-pFOuBx@O%L|Qbka7CB7S5!21EN;+`jMD*#EqJ?@jmJd*6{MNA@l4z3H$T ziUyE}c_54@BfreKWP@APZcU3?dHc9rZ5*6lr)>}sHjaQMBs9(VAXSB%ypI=YY}~oo zjPFcV(q6oO>A=!0H}UR*t)IU*dE!z$x%kwLuQ{0fozG34KU;r4f7!tf-3xW7>S>w) zfACtWYt3JFpmO5;We2L;&R=#gf7t!PD=<)pF?Ar$BFFp_= z(wn{JFFx=WA8h^lrzXFB{`v(BvDxGKyALRs{n@|!z~i~tBfki5xOMg7bNz2nDAzE)G3zxiPP<^#(4)?`yZd%5jVC%PBrZ$8-Z=7Y(l zbCc&u%ZF07LF~yFpPrn%6rY(qcQ)QsmjC+2*C$`Sq?A87{;!_Be(q{KdHIRS<)8vFPd&SJ?y0R`yJDZOUcCO?MS#5W{{YFl zMnKVE^2}AOBP4m%)_LYdtE|8BcjL*6=dOL_jd<(jr>HY*z5EOMLQ77b|C-(M%9C3! zpPyWM!g0=`(XZDpTr|S13L(%+jbd{7!u97aTz}!Icyi(VY%xMt+vMltX{q0t zU`zb{*S9Wz#%8$iSu0-LtG=N58xz!@Y27^YHzwHIs>BO}YV$WH@Kg-lP_(Dc-qkNe!s_R(h@{5ySem&m0aGr@&)^-oFD9^U_ zD^~*vTAw1q)|EHRaoFVeuP;80&$$#|d+o~BmDlI5RH*(JAJ%lOmZltIF0=CS1Qb3si2o_&R?m(!%Op5 zD%7u|P<%RnrGg%Eo4-VF{-O9680*Iu2e-)(*Q)kR8&XD2Vb6j$AX7q5Ng zGT-s!(U+8H4QX7j5?;T+Pp>?wJguHYn!izD{ze6Vfx-NZ3VLdu*UIp}VEzB>jSBw@ DBEJNv literal 4575 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 diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po index a22b90676..b68f87808 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/style.po +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -1,633 +1,858 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\style.rst:4 +#: ../../writing/style.rst:4 msgid "Code Style" msgstr "코드 스타일" -#: ..\..\writing\style.rst:6 +#: ../../writing/style.rst:6 +#, fuzzy msgid "" -"If you ask Python programmers what they like most in Python, they will often" -" say its high readability. Indeed, a high level of readability is at the " -"heart of the design of the Python language, following the recognised fact " -"that code is read much more often than it is written." +"If you ask Python programmers what they like most about Python, they will" +" often cite its high readability. Indeed, a high level of readability is" +" at the heart of the design of the Python language, following the " +"recognized fact that code is read much more often than it is written." msgstr "" -"파이썬에서 뭐가 가장 좋냐고 파이썬 프로그래머들에게 묻는다면, 파이썬 프로그래머들은 " -"파이썬의 높은 가독성이 좋다고 말할 것이다. 실제로 높은 수준의 가독성은 파이썬 " -"언어 디자인의 심장이다. 코드는 쓰여지기 보다는 읽혀지는 경우가 더 많다는 사실 때문이다." +"파이썬에서 뭐가 가장 좋냐고 파이썬 프로그래머들에게 묻는다면, 파이썬 프로그래머들은 파이썬의 높은 가독성이 좋다고 말할 것이다. " +"실제로 높은 수준의 가독성은 파이썬 언어 디자인의 심장이다. 코드는 쓰여지기 보다는 읽혀지는 경우가 더 많다는 사실 때문이다." -#: ..\..\writing\style.rst:11 +#: ../../writing/style.rst:11 +#, fuzzy msgid "" -"One reason for Python code to be easily read and understood is its " -"relatively complete set of Code Style guidelines and \"Pythonic\" idioms." -msgstr "" -"파이썬 코드가 쉽게 읽히고 잘 이해되는 한가지 이유는 비교적 완벽한 코드 스타일 " -"가이드라인과 \"파이썬스러운\" 관용구 때문이다." +"One reason for the high readability of Python code is its relatively " +"complete set of Code Style guidelines and \"Pythonic\" idioms." +msgstr "파이썬 코드가 쉽게 읽히고 잘 이해되는 한가지 이유는 비교적 완벽한 코드 스타일 가이드라인과 \"파이썬스러운\" 관용구 때문이다." -#: ..\..\writing\style.rst:14 +#: ../../writing/style.rst:14 +#, fuzzy msgid "" -"Moreover, when a veteran Python developer (a Pythonista) points to portions " -"of code and says they are not \"Pythonic\", it usually means that these " -"lines of code do not follow the common guidelines and fail to express the " -"intent in what is considered the best (hear: most readable) way." +"When a veteran Python developer (a Pythonista) calls portions of code not" +" \"Pythonic\", they usually mean that these lines of code do not follow " +"the common guidelines and fail to express its intent in what is " +"considered the best (hear: most readable) way." msgstr "" -"뿐만 아니라 베테랑 파이썬 개발자(파이써니스타)들이 코드의 어느 부분을 지적하며 " -"이건 \"파이썬스럽지\" 않아, 라고 한다면 이는 보통 파이썬의 일반적인 가이드라인을 " -"따르지 않았고, 가장 좋은 방법(대부분 가독성)을 따르지 않아 코드의 의도를 표현하는데 " +"뿐만 아니라 베테랑 파이썬 개발자(파이써니스타)들이 코드의 어느 부분을 지적하며 이건 \"파이썬스럽지\" 않아, 라고 한다면 이는 " +"보통 파이썬의 일반적인 가이드라인을 따르지 않았고, 가장 좋은 방법(대부분 가독성)을 따르지 않아 코드의 의도를 표현하는데 " "실패했다는 뜻이다." -#: ..\..\writing\style.rst:19 +#: ../../writing/style.rst:19 msgid "" -"On some border cases, no best way has been agreed upon on how to express an " -"intent in Python code, but these cases are rare." -msgstr "" -"어떤 경우에는 파이썬 코드의 의도를 표현하기 위한 최선의 방법을 합의하기 어려울 때도" -" 있지만, 이런 경우는 드물다." +"On some border cases, no best way has been agreed upon on how to express " +"an intent in Python code, but these cases are rare." +msgstr "어떤 경우에는 파이썬 코드의 의도를 표현하기 위한 최선의 방법을 합의하기 어려울 때도 있지만, 이런 경우는 드물다." -#: ..\..\writing\style.rst:23 +#: ../../writing/style.rst:23 msgid "General concepts" msgstr "일반적인 개념" -#: ..\..\writing\style.rst:26 +#: ../../writing/style.rst:26 msgid "Explicit code" msgstr "명쾌한 코드" -#: ..\..\writing\style.rst:28 +#: ../../writing/style.rst:28 msgid "" -"While any kind of black magic is possible with Python, the most explicit and" -" straightforward manner is preferred." -msgstr "" -"파이썬으로 어떤 마법을 부릴 수 있다면, 가장 명쾌하고 간단한 방법으로 할 것이다." +"While any kind of black magic is possible with Python, the most explicit " +"and straightforward manner is preferred." +msgstr "파이썬으로 어떤 마법을 부릴 수 있다면, 가장 명쾌하고 간단한 방법으로 할 것이다." -#: ..\..\writing\style.rst:31 ..\..\writing\style.rst:58 +#: ../../writing/style.rst:31 ../../writing/style.rst:58 msgid "**Bad**" msgstr "**나쁜 예**" -#: ..\..\writing\style.rst:39 ..\..\writing\style.rst:69 +#: ../../writing/style.rst:39 ../../writing/style.rst:69 msgid "**Good**" msgstr "**좋은 예**" -#: ..\..\writing\style.rst:46 +#: ../../writing/style.rst:46 msgid "" -"In the good code above, x and y are explicitly received from the caller, and" -" an explicit dictionary is returned. The developer using this function knows" -" exactly what to do by reading the first and last lines, which is not the " -"case with the bad example." +"In the good code above, x and y are explicitly received from the caller, " +"and an explicit dictionary is returned. The developer using this function" +" knows exactly what to do by reading the first and last lines, which is " +"not the case with the bad example." msgstr "" -"위의 좋은 코드에서 x와 y는 호출자로부터 직접 값을 받아와 곧바로 딕셔너리로 반환한다. " -"이 함수를 쓰는 개발자들은 첫 줄과 마지막 줄을 읽는 것만으로 무엇을 하는 함수인지 " -"정확히 알 수 있다. 하지만 나쁜 예에서는 그렇지 않다." +"위의 좋은 코드에서 x와 y는 호출자로부터 직접 값을 받아와 곧바로 딕셔너리로 반환한다. 이 함수를 쓰는 개발자들은 첫 줄과 마지막" +" 줄을 읽는 것만으로 무엇을 하는 함수인지 정확히 알 수 있다. 하지만 나쁜 예에서는 그렇지 않다." -#: ..\..\writing\style.rst:52 +#: ../../writing/style.rst:52 msgid "One statement per line" msgstr "한 줄에 한 구문" -#: ..\..\writing\style.rst:54 +#: ../../writing/style.rst:54 +#, fuzzy msgid "" -"While some compound statements such as list comprehensions are allowed and " -"appreciated for their brevity and their expressiveness, it is bad practice " -"to have two disjoint statements on the same line of code." +"While some compound statements such as list comprehensions are allowed " +"and appreciated for their brevity and their expressiveness, it is bad " +"practice to have two disjointed statements on the same line of code." msgstr "" -"간결성과 표현성을 위해 리스트 컴프리헨션(list comprehension) 같은 복잡한 구문을 " -"만드는 경우가 있다. 이렇게 한 줄의 코드에 두 개의 분리 가능한 코드를 " -"넣는 것은 잘못된 습관이다. " +"간결성과 표현성을 위해 리스트 컴프리헨션(list comprehension) 같은 복잡한 구문을 만드는 경우가 있다. 이렇게 한 " +"줄의 코드에 두 개의 분리 가능한 코드를 넣는 것은 잘못된 습관이다. " -#: ..\..\writing\style.rst:85 +#: ../../writing/style.rst:85 msgid "Function arguments" msgstr "함수 인자" -#: ..\..\writing\style.rst:87 +#: ../../writing/style.rst:87 msgid "Arguments can be passed to functions in four different ways." msgstr "인자는 4가지 경로를 통해 함수로 전달될 수 있다." -#: ..\..\writing\style.rst:89 +#: ../../writing/style.rst:89 +#, fuzzy msgid "" -"1. **Positional arguments** are mandatory and have no default values. They " -"are the simplest form of arguments and they can be used for the few function" -" arguments that are fully part of the functions meaning and their order is " -"natural. For instance, in ``send(message, recipient)`` or ``point(x, y)`` " -"the user of the function has no difficulty remembering that those two " -"functions require two arguments, and in which order." -msgstr "" -"1. **위치 매개 변수** 는 필수적이다. " +"**Positional arguments** are mandatory and have no default values. They " +"are the simplest form of arguments and they can be used for the few " +"function arguments that are fully part of the function's meaning and " +"their order is natural. For instance, in ``send(message, recipient)`` or " +"``point(x, y)`` the user of the function has no difficulty remembering " +"that those two functions require two arguments, and in which order." +msgstr "1. **위치 매개 변수** 는 필수적이다. " -#: ..\..\writing\style.rst:96 +#: ../../writing/style.rst:96 msgid "" -"In those two cases, it is possible to use argument names when calling the " -"functions and, doing so, it is possible to switch the order of arguments, " -"calling for instance ``send(recipient='World', message='Hello')`` and " -"``point(y=2, x=1)`` but this reduces readability and is unnecessarily " -"verbose, compared to the more straightforward calls to ``send('Hello', " -"'World')`` and ``point(1, 2)``." +"In those two cases, it is possible to use argument names when calling the" +" functions and, doing so, it is possible to switch the order of " +"arguments, calling for instance ``send(recipient='World', " +"message='Hello')`` and ``point(y=2, x=1)`` but this reduces readability " +"and is unnecessarily verbose, compared to the more straightforward calls " +"to ``send('Hello', 'World')`` and ``point(1, 2)``." msgstr "" -#: ..\..\writing\style.rst:102 +#: ../../writing/style.rst:103 msgid "" -"2. **Keyword arguments** are not mandatory and have default values. They are" -" often used for optional parameters sent to the function. When a function " -"has more than two or three positional parameters, its signature is more " -"difficult to remember and using keyword argument with default values is " -"helpful. For instance, a more complete ``send`` function could be defined as" -" ``send(message, to, cc=None, bcc=None)``. Here ``cc`` and ``bcc`` are " -"optional, and evaluate to ``None`` when they are not passed another value." +"**Keyword arguments** are not mandatory and have default values. They are" +" often used for optional parameters sent to the function. When a function" +" has more than two or three positional parameters, its signature is more " +"difficult to remember and using keyword arguments with default values is " +"helpful. For instance, a more complete ``send`` function could be defined" +" as ``send(message, to, cc=None, bcc=None)``. Here ``cc`` and ``bcc`` are" +" optional, and evaluate to ``None`` when they are not passed another " +"value." msgstr "" -#: ..\..\writing\style.rst:110 +#: ../../writing/style.rst:111 msgid "" -"Calling a function with keyword arguments can be done in multiple ways in " -"Python, for example it is possible to follow the order of arguments in the " -"definition without explicitly naming the arguments, like in ``send('Hello', " -"'World', 'Cthulhu', 'God')``, sending a blind carbon copy to God. It would " -"also be possible to name arguments in another order, like in ``send('Hello " -"again', 'World', bcc='God', cc='Cthulhu')``. Those two possibilities are " -"better avoided without any strong reason to not follow the syntax that is " -"the closest to the function definition: ``send('Hello', 'World', " -"cc='Cthulhu', bcc='God')``." +"Calling a function with keyword arguments can be done in multiple ways in" +" Python, for example it is possible to follow the order of arguments in " +"the definition without explicitly naming the arguments, like in " +"``send('Hello', 'World', 'Cthulhu', 'God')``, sending a blind carbon copy" +" to God. It would also be possible to name arguments in another order, " +"like in ``send('Hello again', 'World', bcc='God', cc='Cthulhu')``. Those " +"two possibilities are better avoided without any strong reason to not " +"follow the syntax that is the closest to the function definition: " +"``send('Hello', 'World', cc='Cthulhu', bcc='God')``." msgstr "" -#: ..\..\writing\style.rst:119 +#: ../../writing/style.rst:121 msgid "" "As a side note, following `YAGNI " -"`_ principle, it is " -"often harder to remove an optional argument (and its logic inside the " -"function) that was added \"just in case\" and is seemingly never used, than " -"to add a new optional argument and its logic when needed." +"`_ principle, it is" +" often harder to remove an optional argument (and its logic inside the " +"function) that was added \"just in case\" and is seemingly never used, " +"than to add a new optional argument and its logic when needed." msgstr "" -#: ..\..\writing\style.rst:124 +#: ../../writing/style.rst:126 msgid "" -"3. The **arbitrary argument list** is the third way to pass arguments to a " -"function. If the function intention is better expressed by a signature with" -" an extensible number of positional arguments, it can be defined with the " -"``*args`` constructs. In the function body, ``args`` will be a tuple of all" -" the remaining positional arguments. For example, ``send(message, *args)`` " -"can be called with each recipient as an argument: ``send('Hello', 'God', " -"'Mom', 'Cthulhu')``, and in the function body ``args`` will be equal to " -"``('God', 'Mom', 'Cthulhu')``." +"The **arbitrary argument list** is the third way to pass arguments to a " +"function. If the function intention is better expressed by a signature " +"with an extensible number of positional arguments, it can be defined with" +" the ``*args`` constructs. In the function body, ``args`` will be a tuple" +" of all the remaining positional arguments. For example, ``send(message, " +"*args)`` can be called with each recipient as an argument:``send('Hello'," +" 'God', 'Mom', 'Cthulhu')``, and in the function body ``args`` will be " +"equal to ``('God', 'Mom', 'Cthulhu')``." msgstr "" -#: ..\..\writing\style.rst:133 +#: ../../writing/style.rst:135 msgid "" -"However, this construct has some drawbacks and should be used with caution. " -"If a function receives a list of arguments of the same nature, it is often " -"more clear to define it as a function of one argument, that argument being a" -" list or any sequence. Here, if ``send`` has multiple recipients, it is " -"better to define it explicitly: ``send(message, recipients)`` and call it " -"with ``send('Hello', ['God', 'Mom', 'Cthulhu'])``. This way, the user of the" -" function can manipulate the recipient list as a list beforehand, and it " -"opens the possibility to pass any sequence, including iterators, that cannot" -" be unpacked as other sequences." +"However, this construct has some drawbacks and should be used with " +"caution. If a function receives a list of arguments of the same nature, " +"it is often more clear to define it as a function of one argument, that " +"argument being a list or any sequence. Here, if ``send`` has multiple " +"recipients, it is better to define it explicitly: ``send(message, " +"recipients)`` and call it with ``send('Hello', ['God', 'Mom', " +"'Cthulhu'])``. This way, the user of the function can manipulate the " +"recipient list as a list beforehand, and it opens the possibility to pass" +" any sequence, including iterators, that cannot be unpacked as other " +"sequences." msgstr "" -#: ..\..\writing\style.rst:142 +#: ../../writing/style.rst:144 msgid "" -"4. The **arbitrary keyword argument dictionary** is the last way to pass " -"arguments to functions. If the function requires an undetermined series of " -"named arguments, it is possible to use the ``**kwargs`` construct. In the " -"function body, ``kwargs`` will be a dictionary of all the passed named " -"arguments that have not been caught by other keyword arguments in the " -"function signature." +"The **arbitrary keyword argument dictionary** is the last way to pass " +"arguments to functions. If the function requires an undetermined series " +"of named arguments, it is possible to use the ``**kwargs`` construct. In " +"the function body, ``kwargs`` will be a dictionary of all the passed " +"named arguments that have not been caught by other keyword arguments in " +"the function signature." msgstr "" -#: ..\..\writing\style.rst:148 +#: ../../writing/style.rst:151 msgid "" -"The same caution as in the case of *arbitrary argument list* is necessary, " -"for similar reasons: these powerful techniques are to be used when there is " -"a proven necessity to use them, and they should not be used if the simpler " -"and clearer construct is sufficient to express the function's intention." +"The same caution as in the case of *arbitrary argument list* is " +"necessary, for similar reasons: these powerful techniques are to be used " +"when there is a proven necessity to use them, and they should not be used" +" if the simpler and clearer construct is sufficient to express the " +"function's intention." msgstr "" -#: ..\..\writing\style.rst:153 +#: ../../writing/style.rst:156 msgid "" -"It is up to the programmer writing the function to determine which arguments" -" are positional arguments and which are optional keyword arguments, and to " -"decide whether to use the advanced techniques of arbitrary argument passing." -" If the advice above is followed wisely, it is possible and enjoyable to " -"write Python functions that are:" +"It is up to the programmer writing the function to determine which " +"arguments are positional arguments and which are optional keyword " +"arguments, and to decide whether to use the advanced techniques of " +"arbitrary argument passing. If the advice above is followed wisely, it is" +" possible and enjoyable to write Python functions that are:" msgstr "" -#: ..\..\writing\style.rst:159 +#: ../../writing/style.rst:162 msgid "easy to read (the name and arguments need no explanations)" msgstr "" -#: ..\..\writing\style.rst:161 +#: ../../writing/style.rst:164 msgid "" -"easy to change (adding a new keyword argument does not break other parts of " -"the code)" +"easy to change (adding a new keyword argument does not break other parts " +"of the code)" msgstr "" -#: ..\..\writing\style.rst:165 +#: ../../writing/style.rst:168 msgid "Avoid the magical wand" msgstr "" -#: ..\..\writing\style.rst:167 +#: ../../writing/style.rst:170 msgid "" -"A powerful tool for hackers, Python comes with a very rich set of hooks and " -"tools allowing to do almost any kind of tricky tricks. For instance, it is " -"possible to do each of the following:" +"A powerful tool for hackers, Python comes with a very rich set of hooks " +"and tools allowing you to do almost any kind of tricky tricks. For " +"instance, it is possible to do each of the following:" msgstr "" -#: ..\..\writing\style.rst:171 +#: ../../writing/style.rst:174 msgid "change how objects are created and instantiated" msgstr "" -#: ..\..\writing\style.rst:173 +#: ../../writing/style.rst:176 msgid "change how the Python interpreter imports modules" msgstr "" -#: ..\..\writing\style.rst:175 +#: ../../writing/style.rst:178 msgid "" "it is even possible (and recommended if needed) to embed C routines in " "Python." msgstr "" -#: ..\..\writing\style.rst:177 +#: ../../writing/style.rst:180 msgid "" -"However, all these options have many drawbacks and it is always better to " -"use the most straightforward way to achieve your goal. The main drawback is " -"that readability suffers greatly when using these constructs. Many code " -"analysis tools, such as pylint or pyflakes, will be unable to parse this " -"\"magic\" code." +"However, all these options have many drawbacks and it is always better to" +" use the most straightforward way to achieve your goal. The main drawback" +" is that readability suffers greatly when using these constructs. Many " +"code analysis tools, such as pylint or pyflakes, will be unable to parse " +"this \"magic\" code." msgstr "" -#: ..\..\writing\style.rst:182 +#: ../../writing/style.rst:185 msgid "" -"We consider that a Python developer should know about these nearly infinite " -"possibilities, because it instills confidence that no impassable problem " -"will be on the way. However, knowing how and particularly when **not** to " -"use them is very important." +"We consider that a Python developer should know about these nearly " +"infinite possibilities, because it instills confidence that no impassable" +" problem will be on the way. However, knowing how and particularly when " +"**not** to use them is very important." msgstr "" -#: ..\..\writing\style.rst:187 +#: ../../writing/style.rst:190 msgid "" -"Like a kung fu master, a Pythonista knows how to kill with a single finger, " -"and never to actually do it." +"Like a kung fu master, a Pythonista knows how to kill with a single " +"finger, and never to actually do it." msgstr "" -#: ..\..\writing\style.rst:191 -msgid "We are all consenting adults" +#: ../../writing/style.rst:194 +msgid "We are all responsible users" msgstr "" -#: ..\..\writing\style.rst:193 +#: ../../writing/style.rst:196 msgid "" -"As seen above, Python allows many tricks, and some of them are potentially " -"dangerous. A good example is that any client code can override an object's " -"properties and methods: there is no \"private\" keyword in Python. This " -"philosophy, very different from highly defensive languages like Java, which " -"give a lot of mechanisms to prevent any misuse, is expressed by the saying: " -"\"We are all consenting adults\"." +"As seen above, Python allows many tricks, and some of them are " +"potentially dangerous. A good example is that any client code can " +"override an object's properties and methods: there is no \"private\" " +"keyword in Python. This philosophy, very different from highly defensive " +"languages like Java, which give a lot of mechanisms to prevent any " +"misuse, is expressed by the saying: \"We are all responsible users\"." msgstr "" -#: ..\..\writing\style.rst:200 +#: ../../writing/style.rst:203 msgid "" -"This doesn't mean that, for example, no properties are considered private, " -"and that no proper encapsulation is possible in Python. Rather, instead of " -"relying on concrete walls erected by the developers between their code and " -"other's, the Python community prefers to rely on a set of conventions " -"indicating that these elements should not be accessed directly." +"This doesn't mean that, for example, no properties are considered " +"private, and that no proper encapsulation is possible in Python. Rather, " +"instead of relying on concrete walls erected by the developers between " +"their code and other's, the Python community prefers to rely on a set of " +"conventions indicating that these elements should not be accessed " +"directly." msgstr "" -#: ..\..\writing\style.rst:206 +#: ../../writing/style.rst:209 msgid "" -"The main convention for private properties and implementation details is to " -"prefix all \"internals\" with an underscore. If the client code breaks this " -"rule and accesses these marked elements, any misbehavior or problems " -"encountered if the code is modified is the responsibility of the client " -"code." +"The main convention for private properties and implementation details is " +"to prefix all \"internals\" with an underscore. If the client code breaks" +" this rule and accesses these marked elements, any misbehavior or " +"problems encountered if the code is modified is the responsibility of the" +" client code." msgstr "" -#: ..\..\writing\style.rst:211 +#: ../../writing/style.rst:214 msgid "" -"Using this convention generously is encouraged: any method or property that " -"is not intended to be used by client code should be prefixed with an " -"underscore. This will guarantee a better separation of duties and easier " -"modification of existing code; it will always be possible to publicize a " -"private property, while privatising a public property might be a much harder" -" operation." +"Using this convention generously is encouraged: any method or property " +"that is not intended to be used by client code should be prefixed with an" +" underscore. This will guarantee a better separation of duties and easier" +" modification of existing code; it will always be possible to publicize a" +" private property, but making a public property private might be a much " +"harder operation." msgstr "" -#: ..\..\writing\style.rst:218 +#: ../../writing/style.rst:221 msgid "Returning values" msgstr "" -#: ..\..\writing\style.rst:220 +#: ../../writing/style.rst:223 msgid "" "When a function grows in complexity it is not uncommon to use multiple " -"return statements inside the function's body. However, in order to keep a " -"clear intent and a sustainable readability level, it is preferable to avoid " -"returning meaningful values from many output points in the body." +"return statements inside the function's body. However, in order to keep a" +" clear intent and a sustainable readability level, it is preferable to " +"avoid returning meaningful values from many output points in the body." msgstr "" -#: ..\..\writing\style.rst:225 +#: ../../writing/style.rst:228 msgid "" -"There are two main cases for returning values in a function: the result of " -"the function return when it has been processed normally, and the error cases" -" that indicate a wrong input parameter or any other reason for the function " -"to not be able to complete its computation or task." +"There are two main cases for returning values in a function: the result " +"of the function return when it has been processed normally, and the error" +" cases that indicate a wrong input parameter or any other reason for the " +"function to not be able to complete its computation or task." msgstr "" -#: ..\..\writing\style.rst:230 +#: ../../writing/style.rst:233 msgid "" -"If you do not wish to raise exceptions for the second case, then returning a" -" value, such as None or False, indicating that the function could not " -"perform correctly might be needed. In this case, it is better to return as " -"early as the incorrect context has been detected. It will help to flatten " -"the structure of the function: all the code after the return-because-of-" -"error statement can assume the condition is met to further compute the " -"function's main result. Having multiple such return statements is often " -"necessary." +"If you do not wish to raise exceptions for the second case, then " +"returning a value, such as None or False, indicating that the function " +"could not perform correctly might be needed. In this case, it is better " +"to return as early as the incorrect context has been detected. It will " +"help to flatten the structure of the function: all the code after the " +"return-because-of-error statement can assume the condition is met to " +"further compute the function's main result. Having multiple such return " +"statements is often necessary." msgstr "" -#: ..\..\writing\style.rst:237 +#: ../../writing/style.rst:241 msgid "" "However, when a function has multiple main exit points for its normal " "course, it becomes difficult to debug the returned result, so it may be " -"preferable to keep a single exit point. This will also help factoring out " -"some code paths, and the multiple exit points are a probable indication that" -" such a refactoring is needed." +"preferable to keep a single exit point. This will also help factoring out" +" some code paths, and the multiple exit points are a probable indication " +"that such a refactoring is needed." msgstr "" -#: ..\..\writing\style.rst:257 +#: ../../writing/style.rst:262 msgid "Idioms" msgstr "" -#: ..\..\writing\style.rst:259 +#: ../../writing/style.rst:264 msgid "" "A programming idiom, put simply, is a *way* to write code. The notion of " "programming idioms is discussed amply at `c2 " "`_ and at `Stack Overflow " -"`_." +"`_." msgstr "" -#: ..\..\writing\style.rst:262 +#: ../../writing/style.rst:268 msgid "Idiomatic Python code is often referred to as being *Pythonic*." msgstr "" -#: ..\..\writing\style.rst:264 +#: ../../writing/style.rst:270 msgid "" -"Although there usually is one --- and preferably only one --- obvious way to" -" do it; *the* way to write idiomatic Python code can be non-obvious to " -"Python beginners. So, good idioms must be consciously acquired." +"Although there usually is one --- and preferably only one --- obvious way" +" to do it; *the* way to write idiomatic Python code can be non-obvious to" +" Python beginners. So, good idioms must be consciously acquired." msgstr "" -#: ..\..\writing\style.rst:268 +#: ../../writing/style.rst:274 msgid "Some common Python idioms follow:" msgstr "" -#: ..\..\writing\style.rst:273 +#: ../../writing/style.rst:279 msgid "Unpacking" msgstr "" -#: ..\..\writing\style.rst:275 +#: ../../writing/style.rst:281 msgid "" "If you know the length of a list or tuple, you can assign names to its " -"elements with unpacking. For example, since ``enumerate()`` will provide a " -"tuple of two elements for each item in list:" +"elements with unpacking. For example, since ``enumerate()`` will provide " +"a tuple of two elements for each item in list:" msgstr "" -#: ..\..\writing\style.rst:284 +#: ../../writing/style.rst:290 msgid "You can use this to swap variables as well:" msgstr "" -#: ..\..\writing\style.rst:290 +#: ../../writing/style.rst:296 msgid "Nested unpacking works too:" msgstr "" -#: ..\..\writing\style.rst:296 +#: ../../writing/style.rst:302 msgid "" "In Python 3, a new method of extended unpacking was introduced by " ":pep:`3132`:" msgstr "" -#: ..\..\writing\style.rst:307 +#: ../../writing/style.rst:313 msgid "Create an ignored variable" msgstr "" -#: ..\..\writing\style.rst:309 +#: ../../writing/style.rst:315 msgid "" -"If you need to assign something (for instance, in :ref:`unpacking-ref`) but " -"will not need that variable, use ``__``:" +"If you need to assign something (for instance, in :ref:`unpacking-ref`) " +"but will not need that variable, use ``__``:" msgstr "" -#: ..\..\writing\style.rst:319 +#: ../../writing/style.rst:325 msgid "" -"Many Python style guides recommend the use of a single underscore \"``_``\" " -"for throwaway variables rather than the double underscore \"``__``\" " -"recommended here. The issue is that \"``_``\" is commonly used as an alias " -"for the :func:`~gettext.gettext` function, and is also used at the " -"interactive prompt to hold the value of the last operation. Using a double " -"underscore instead is just as clear and almost as convenient, and eliminates" -" the risk of accidentally interfering with either of these other use cases." +"Many Python style guides recommend the use of a single underscore " +"\"``_``\" for throwaway variables rather than the double underscore " +"\"``__``\" recommended here. The issue is that \"``_``\" is commonly used" +" as an alias for the :func:`~gettext.gettext` function, and is also used " +"at the interactive prompt to hold the value of the last operation. Using " +"a double underscore instead is just as clear and almost as convenient, " +"and eliminates the risk of accidentally interfering with either of these " +"other use cases." msgstr "" -#: ..\..\writing\style.rst:329 +#: ../../writing/style.rst:335 msgid "Create a length-N list of the same thing" msgstr "" -#: ..\..\writing\style.rst:331 +#: ../../writing/style.rst:337 msgid "Use the Python list ``*`` operator:" msgstr "" -#: ..\..\writing\style.rst:338 +#: ../../writing/style.rst:344 msgid "Create a length-N list of lists" msgstr "" -#: ..\..\writing\style.rst:340 +#: ../../writing/style.rst:346 msgid "" -"Because lists are mutable, the ``*`` operator (as above) will create a list " -"of N references to the `same` list, which is not likely what you want. " -"Instead, use a list comprehension:" +"Because lists are mutable, the ``*`` operator (as above) will create a " +"list of N references to the `same` list, which is not likely what you " +"want. Instead, use a list comprehension:" +msgstr "" + +#: ../../writing/style.rst:354 +msgid "Note: Use range() instead of xrange() in Python 3" msgstr "" -#: ..\..\writing\style.rst:349 +#: ../../writing/style.rst:357 +msgid "Create a string from a list" +msgstr "" + +#: ../../writing/style.rst:359 msgid "" "A common idiom for creating strings is to use :py:meth:`str.join` on an " "empty string." msgstr "" -#: ..\..\writing\style.rst:356 +#: ../../writing/style.rst:367 msgid "" -"This will set the value of the variable *word* to 'spam'. This idiom can be " -"applied to lists and tuples." +"This will set the value of the variable *word* to 'spam'. This idiom can " +"be applied to lists and tuples." msgstr "" -#: ..\..\writing\style.rst:358 +#: ../../writing/style.rst:371 +msgid "Searching for an item in a collection" +msgstr "" + +#: ../../writing/style.rst:373 msgid "" -"Sometimes we need to search through a collection of things. Let's look at " -"two options: lists and dictionaries." +"Sometimes we need to search through a collection of things. Let's look at" +" two options: lists and sets." msgstr "" -#: ..\..\writing\style.rst:360 +#: ../../writing/style.rst:376 msgid "Take the following code for example:" msgstr "" -#: ..\..\writing\style.rst:373 +#: ../../writing/style.rst:389 msgid "" -"Even though both functions look identical, because *lookup_dict* is " -"utilizing the fact that dictionaries in Python are hashtables, the lookup " -"performance between the two is very different. Python will have to go " -"through each item in the list to find a matching case, which is time " -"consuming. By analysing the hash of the dictionary, finding keys in the dict" -" can be done very quickly. For more information see this `StackOverflow " -"`_ page." +"Even though both functions look identical, because *lookup_set* is " +"utilizing the fact that sets in Python are hashtables, the lookup " +"performance between the two is very different. To determine whether an " +"item is in a list, Python will have to go through each item until it " +"finds a matching item. This is time consuming, especially for long lists." +" In a set, on the other hand, the hash of the item will tell Python where" +" in the set to look for a matching item. As a result, the search can be " +"done quickly, even if the set is large. Searching in dictionaries works " +"the same way. For more information see this `StackOverflow " +"`_ page. For detailed information on the amount of time various " +"common operations take on each of these data structures, see `this page " +"`_." msgstr "" -#: ..\..\writing\style.rst:382 +#: ../../writing/style.rst:403 +msgid "" +"Because of these differences in performance, it is often a good idea to " +"use sets or dictionaries instead of lists in cases where:" +msgstr "" + +#: ../../writing/style.rst:406 +msgid "The collection will contain a large number of items" +msgstr "" + +#: ../../writing/style.rst:408 +msgid "You will be repeatedly searching for items in the collection" +msgstr "" + +#: ../../writing/style.rst:410 +msgid "You do not have duplicate items." +msgstr "" + +#: ../../writing/style.rst:412 +msgid "" +"For small collections, or collections which you will not frequently be " +"searching through, the additional time and memory required to set up the " +"hashtable will often be greater than the time saved by the improved " +"search speed." +msgstr "" + +#: ../../writing/style.rst:419 msgid "Zen of Python" msgstr "" -#: ..\..\writing\style.rst:384 +#: ../../writing/style.rst:421 msgid "Also known as :pep:`20`, the guiding principles for Python's design." msgstr "" -#: ..\..\writing\style.rst:411 +#: ../../writing/style.rst:448 msgid "" -"For some examples of good Python style, see `this Stack Overflow question " -"`_ or `these " -"slides from a Python user group " +"For some examples of good Python style, see `these slides from a Python " +"user group " "`_." msgstr "" -#: ..\..\writing\style.rst:417 +#: ../../writing/style.rst:452 msgid "PEP 8" msgstr "" -#: ..\..\writing\style.rst:419 -msgid ":pep:`8` is the de-facto code style guide for Python." +#: ../../writing/style.rst:454 +msgid "" +":pep:`8` is the de-facto code style guide for Python. A high quality, " +"easy-to-read version of PEP 8 is also available at `pep8.org " +"`_." +msgstr "" + +#: ../../writing/style.rst:457 +msgid "" +"This is highly recommended reading. The entire Python community does " +"their best to adhere to the guidelines laid out within this document. " +"Some project may sway from it from time to time, while others may `amend " +"its recommendations `_." +msgstr "" + +#: ../../writing/style.rst:462 +msgid "" +"That being said, conforming your Python code to PEP 8 is generally a good" +" idea and helps make code more consistent when working on projects with " +"other developers. There is a command-line program, `pep8 " +"`_, that can check your code for " +"conformance. Install it by running the following command in your " +"terminal:" +msgstr "" + +#: ../../writing/style.rst:474 +msgid "" +"Then run it on a file or series of files to get a report of any " +"violations." msgstr "" -#: ..\..\writing\style.rst:421 +#: ../../writing/style.rst:488 msgid "" -"Conforming your Python code to PEP 8 is generally a good idea and helps make" -" code more consistent when working on projects with other developers. There " -"is a command-line program, `pep8 `_, that" -" can check your code for conformance. Install it by running the following " -"command in your Terminal:" +"The program `autopep8 `_ can be " +"used to automatically reformat code in the PEP 8 style. Install the " +"program with:" +msgstr "" + +#: ../../writing/style.rst:495 +msgid "Use it to format a file in-place with:" msgstr "" -#: ..\..\writing\style.rst:433 +#: ../../writing/style.rst:501 msgid "" -"Then run it on a file or series of files to get a report of any violations." +"Excluding the ``--in-place`` flag will cause the program to output the " +"modified code directly to the console for review. The ``--aggressive`` " +"flag will perform more substantial changes and can be applied multiple " +"times for greater effect." msgstr "" -#: ..\..\writing\style.rst:448 +#: ../../writing/style.rst:506 msgid "Conventions" msgstr "" -#: ..\..\writing\style.rst:450 +#: ../../writing/style.rst:508 msgid "" "Here are some conventions you should follow to make your code easier to " "read." msgstr "" -#: ..\..\writing\style.rst:453 +#: ../../writing/style.rst:511 msgid "Check if variable equals a constant" msgstr "" -#: ..\..\writing\style.rst:455 +#: ../../writing/style.rst:513 msgid "" -"You don't need to explicitly compare a value to True, or None, or 0 - you " -"can just add it to the if statement. See `Truth Value Testing " -"`_ for a " -"list of what is considered false." +"You don't need to explicitly compare a value to True, or None, or 0 - you" +" can just add it to the if statement. See `Truth Value Testing " +"`_ for " +"a list of what is considered false." msgstr "" -#: ..\..\writing\style.rst:460 ..\..\writing\style.rst:492 -#: ..\..\writing\style.rst:524 ..\..\writing\style.rst:544 -#: ..\..\writing\style.rst:583 ..\..\writing\style.rst:618 +#: ../../writing/style.rst:518 ../../writing/style.rst:550 +#: ../../writing/style.rst:582 ../../writing/style.rst:602 +#: ../../writing/style.rst:641 ../../writing/style.rst:676 msgid "**Bad**:" msgstr "" -#: ..\..\writing\style.rst:470 ..\..\writing\style.rst:502 -#: ..\..\writing\style.rst:535 ..\..\writing\style.rst:553 -#: ..\..\writing\style.rst:592 ..\..\writing\style.rst:629 +#: ../../writing/style.rst:528 ../../writing/style.rst:560 +#: ../../writing/style.rst:593 ../../writing/style.rst:611 +#: ../../writing/style.rst:650 ../../writing/style.rst:687 msgid "**Good**:" msgstr "" -#: ..\..\writing\style.rst:487 +#: ../../writing/style.rst:545 msgid "Access a Dictionary Element" msgstr "" -#: ..\..\writing\style.rst:489 +#: ../../writing/style.rst:547 msgid "" "Don't use the :py:meth:`dict.has_key` method. Instead, use ``x in d`` " "syntax, or pass a default argument to :py:meth:`dict.get`." msgstr "" -#: ..\..\writing\style.rst:516 +#: ../../writing/style.rst:574 msgid "Short Ways to Manipulate Lists" msgstr "" -#: ..\..\writing\style.rst:518 +#: ../../writing/style.rst:576 msgid "" "`List comprehensions `_ provide a powerful, concise way to work with lists. " -"Also, the :py:func:`map` and :py:func:`filter` functions can perform " -"operations on lists using a different, more concise syntax." +"#list-comprehensions>`_ provide a powerful, concise way to work with " +"lists. Also, the :py:func:`map` and :py:func:`filter` functions can " +"perform operations on lists using a different, more concise syntax." msgstr "" -#: ..\..\writing\style.rst:562 +#: ../../writing/style.rst:620 msgid "Use :py:func:`enumerate` keep a count of your place in the list." msgstr "" -#: ..\..\writing\style.rst:574 +#: ../../writing/style.rst:632 msgid "" "The :py:func:`enumerate` function has better readability than handling a " "counter manually. Moreover, it is better optimized for iterators." msgstr "" -#: ..\..\writing\style.rst:578 +#: ../../writing/style.rst:636 msgid "Read From a File" msgstr "" -#: ..\..\writing\style.rst:580 +#: ../../writing/style.rst:638 msgid "" "Use the ``with open`` syntax to read from files. This will automatically " "close files for you." msgstr "" -#: ..\..\writing\style.rst:600 +#: ../../writing/style.rst:658 msgid "" -"The ``with`` statement is better because it will ensure you always close the" -" file, even if an exception is raised inside the ``with`` block." +"The ``with`` statement is better because it will ensure you always close " +"the file, even if an exception is raised inside the ``with`` block." msgstr "" -#: ..\..\writing\style.rst:604 +#: ../../writing/style.rst:662 msgid "Line Continuations" msgstr "" -#: ..\..\writing\style.rst:606 -msgid "" -"When a logical line of code is longer than the accepted limit, you need to " -"split it over multiple physical lines. The Python interpreter will join " -"consecutive lines if the last character of the line is a backslash. This is " -"helpful in some cases, but should usually be avoided because of its " -"fragility: a white space added to the end of the line, after the backslash, " -"will break the code and may have unexpected results." -msgstr "" - -#: ..\..\writing\style.rst:613 -msgid "" -"A better solution is to use parentheses around your elements. Left with an " -"unclosed parenthesis on an end-of-line the Python interpreter will join the " -"next line until the parentheses are closed. The same behavior holds for " -"curly and square braces." -msgstr "" +#: ../../writing/style.rst:664 +msgid "" +"When a logical line of code is longer than the accepted limit, you need " +"to split it over multiple physical lines. The Python interpreter will " +"join consecutive lines if the last character of the line is a backslash. " +"This is helpful in some cases, but should usually be avoided because of " +"its fragility: a white space added to the end of the line, after the " +"backslash, will break the code and may have unexpected results." +msgstr "" + +#: ../../writing/style.rst:671 +msgid "" +"A better solution is to use parentheses around your elements. Left with " +"an unclosed parenthesis on an end-of-line the Python interpreter will " +"join the next line until the parentheses are closed. The same behavior " +"holds for curly and square braces." +msgstr "" + +#: ../../writing/style.rst:700 +msgid "" +"However, more often than not, having to split a long logical line is a " +"sign that you are trying to do too many things at the same time, which " +"may hinder readability." +msgstr "" + +#~ msgid "" +#~ "2. **Keyword arguments** are not " +#~ "mandatory and have default values. They" +#~ " are often used for optional " +#~ "parameters sent to the function. When" +#~ " a function has more than two " +#~ "or three positional parameters, its " +#~ "signature is more difficult to remember" +#~ " and using keyword argument with " +#~ "default values is helpful. For instance," +#~ " a more complete ``send`` function " +#~ "could be defined as ``send(message, to," +#~ " cc=None, bcc=None)``. Here ``cc`` and " +#~ "``bcc`` are optional, and evaluate to" +#~ " ``None`` when they are not passed" +#~ " another value." +#~ msgstr "" + +#~ msgid "" +#~ "3. The **arbitrary argument list** is" +#~ " the third way to pass arguments " +#~ "to a function. If the function " +#~ "intention is better expressed by a " +#~ "signature with an extensible number of" +#~ " positional arguments, it can be " +#~ "defined with the ``*args`` constructs. " +#~ "In the function body, ``args`` will " +#~ "be a tuple of all the remaining" +#~ " positional arguments. For example, " +#~ "``send(message, *args)`` can be called " +#~ "with each recipient as an argument: " +#~ "``send('Hello', 'God', 'Mom', 'Cthulhu')``, " +#~ "and in the function body ``args`` " +#~ "will be equal to ``('God', 'Mom', " +#~ "'Cthulhu')``." +#~ msgstr "" + +#~ msgid "" +#~ "4. The **arbitrary keyword argument " +#~ "dictionary** is the last way to " +#~ "pass arguments to functions. If the " +#~ "function requires an undetermined series " +#~ "of named arguments, it is possible " +#~ "to use the ``**kwargs`` construct. In" +#~ " the function body, ``kwargs`` will " +#~ "be a dictionary of all the passed" +#~ " named arguments that have not been" +#~ " caught by other keyword arguments in" +#~ " the function signature." +#~ msgstr "" + +#~ msgid "" +#~ "A powerful tool for hackers, Python " +#~ "comes with a very rich set of " +#~ "hooks and tools allowing to do " +#~ "almost any kind of tricky tricks. " +#~ "For instance, it is possible to do" +#~ " each of the following:" +#~ msgstr "" + +#~ msgid "We are all consenting adults" +#~ msgstr "" + +#~ msgid "" +#~ "As seen above, Python allows many " +#~ "tricks, and some of them are " +#~ "potentially dangerous. A good example is" +#~ " that any client code can override" +#~ " an object's properties and methods: " +#~ "there is no \"private\" keyword in " +#~ "Python. This philosophy, very different " +#~ "from highly defensive languages like " +#~ "Java, which give a lot of " +#~ "mechanisms to prevent any misuse, is " +#~ "expressed by the saying: \"We are " +#~ "all consenting adults\"." +#~ msgstr "" + +#~ msgid "" +#~ "Using this convention generously is " +#~ "encouraged: any method or property that" +#~ " is not intended to be used by" +#~ " client code should be prefixed with" +#~ " an underscore. This will guarantee a" +#~ " better separation of duties and " +#~ "easier modification of existing code; it" +#~ " will always be possible to publicize" +#~ " a private property, while privatising " +#~ "a public property might be a much" +#~ " harder operation." +#~ msgstr "" + +#~ msgid "" +#~ "Sometimes we need to search through " +#~ "a collection of things. Let's look " +#~ "at two options: lists and dictionaries." +#~ msgstr "" + +#~ msgid "" +#~ "Even though both functions look " +#~ "identical, because *lookup_dict* is utilizing" +#~ " the fact that dictionaries in Python" +#~ " are hashtables, the lookup performance " +#~ "between the two is very different. " +#~ "Python will have to go through " +#~ "each item in the list to find " +#~ "a matching case, which is time " +#~ "consuming. By analysing the hash of " +#~ "the dictionary, finding keys in the " +#~ "dict can be done very quickly. For" +#~ " more information see this `StackOverflow" +#~ " `_ page." +#~ msgstr "" + +#~ msgid "" +#~ "For some examples of good Python " +#~ "style, see `this Stack Overflow question" +#~ " `_ or `these slides from a" +#~ " Python user group " +#~ "`_." +#~ msgstr "" + +#~ msgid ":pep:`8` is the de-facto code style guide for Python." +#~ msgstr "" + +#~ msgid "" +#~ "Conforming your Python code to PEP " +#~ "8 is generally a good idea and " +#~ "helps make code more consistent when " +#~ "working on projects with other " +#~ "developers. There is a command-line " +#~ "program, `pep8 `_, " +#~ "that can check your code for " +#~ "conformance. Install it by running the" +#~ " following command in your Terminal:" +#~ msgstr "" + +#~ msgid "" +#~ "However, more often than not having " +#~ "to split long logical line is a" +#~ " sign that you are trying to do" +#~ " too many things at the same " +#~ "time, which may hinder readability." +#~ msgstr "" -#: ..\..\writing\style.rst:642 -msgid "" -"However, more often than not having to split long logical line is a sign " -"that you are trying to do too many things at the same time, which may hinder" -" readability." -msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.mo b/docs/locale/ko/LC_MESSAGES/writing/tests.mo index 4653064039a41be169a4818fb692c3e4f0dbb742..6de2bdf74b36443ec810242a1dde1bcd0371eb70 100644 GIT binary patch literal 15449 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 delta 113 zcmcav@qkI^o)F7a1|VPrVi_P-0dasp2SR~qBcP-%kU!Z*K7`jq*U(Vc*g(O^$jZoK y@*?>dY2A?2#9S){A4fm;P)B!H1sfk9hn!5k{GxQb$<7L<%%LG}ldBb!85sZ^OcnJ2 diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.po b/docs/locale/ko/LC_MESSAGES/writing/tests.po index e89e7592e..5f203f15a 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/tests.po +++ b/docs/locale/ko/LC_MESSAGES/writing/tests.po @@ -1,334 +1,425 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" -#: ..\..\writing\tests.rst:2 +#: ../../writing/tests.rst:2 msgid "Testing Your Code" msgstr "" -#: ..\..\writing\tests.rst:4 +#: ../../writing/tests.rst:4 msgid "Testing your code is very important." msgstr "" -#: ..\..\writing\tests.rst:6 +#: ../../writing/tests.rst:6 msgid "" -"Getting used to writing the testing code and the running code in parallel is" -" now considered a good habit. Used wisely, this method helps you define more" -" precisely your code's intent and have a more decoupled architecture." +"Getting used to writing testing code and running this code in parallel is" +" now considered a good habit. Used wisely, this method helps you define " +"more precisely your code's intent and have a more decoupled architecture." msgstr "" -#: ..\..\writing\tests.rst:10 +#: ../../writing/tests.rst:10 msgid "Some general rules of testing:" msgstr "" -#: ..\..\writing\tests.rst:12 +#: ../../writing/tests.rst:12 msgid "" -"A testing unit should focus on one tiny bit of functionality and prove it " -"correct." +"A testing unit should focus on one tiny bit of functionality and prove it" +" correct." msgstr "" -#: ..\..\writing\tests.rst:15 +#: ../../writing/tests.rst:15 msgid "" -"Each test unit must be fully independent. Each of them must be able to run " -"alone, and also within the test suite, regardless of the order they are " -"called. The implication of this rule is that each test must be loaded with a" -" fresh dataset and may have to do some cleanup afterwards. This is usually " -"handled by :meth:`setUp()` and :meth:`tearDown()` methods." +"Each test unit must be fully independent. Each test must be able to run " +"alone, and also within the test suite, regardless of the order that they " +"are called. The implication of this rule is that each test must be loaded" +" with a fresh dataset and may have to do some cleanup afterwards. This is" +" usually handled by :meth:`setUp()` and :meth:`tearDown()` methods." msgstr "" -#: ..\..\writing\tests.rst:21 +#: ../../writing/tests.rst:21 msgid "" -"Try hard to make tests that run fast. If one single test needs more than a " -"few millisecond to run, development will be slowed down or the tests will " -"not be run as often as desirable. In some cases, tests can't be fast because" -" they need a complex data structure to work on, and this data structure must" -" be loaded every time the test runs. Keep these heavier tests in a separate " -"test suite that is run by some scheduled task, and run all other tests as " -"often as needed." +"Try hard to make tests that run fast. If one single test needs more than " +"a few milliseconds to run, development will be slowed down or the tests " +"will not be run as often as is desirable. In some cases, tests can't be " +"fast because they need a complex data structure to work on, and this data" +" structure must be loaded every time the test runs. Keep these heavier " +"tests in a separate test suite that is run by some scheduled task, and " +"run all other tests as often as needed." msgstr "" -#: ..\..\writing\tests.rst:29 +#: ../../writing/tests.rst:29 msgid "" -"Learn your tools and learn how to run a single test or a test case. Then, " -"when developing a function inside a module, run this function's tests very " -"often, ideally automatically when you save the code." +"Learn your tools and learn how to run a single test or a test case. Then," +" when developing a function inside a module, run this function's tests " +"frequently, ideally automatically when you save the code." msgstr "" -#: ..\..\writing\tests.rst:33 +#: ../../writing/tests.rst:33 msgid "" "Always run the full test suite before a coding session, and run it again " -"after. This will give you more confidence that you did not break anything in" -" the rest of the code." +"after. This will give you more confidence that you did not break anything" +" in the rest of the code." msgstr "" -#: ..\..\writing\tests.rst:37 +#: ../../writing/tests.rst:37 msgid "" "It is a good idea to implement a hook that runs all tests before pushing " "code to a shared repository." msgstr "" -#: ..\..\writing\tests.rst:40 +#: ../../writing/tests.rst:40 msgid "" -"If you are in the middle of a development session and have to interrupt your" -" work, it is a good idea to write a broken unit test about what you want to " -"develop next. When coming back to work, you will have a pointer to where you" -" were and get back on track faster." +"If you are in the middle of a development session and have to interrupt " +"your work, it is a good idea to write a broken unit test about what you " +"want to develop next. When coming back to work, you will have a pointer " +"to where you were and get back on track faster." msgstr "" -#: ..\..\writing\tests.rst:45 +#: ../../writing/tests.rst:45 msgid "" "The first step when you are debugging your code is to write a new test " "pinpointing the bug. While it is not always possible to do, those bug " -"catching tests are among the most valuable pieces of code in your project." +"catching tests are among the most valuable pieces of code in your " +"project." msgstr "" -#: ..\..\writing\tests.rst:49 +#: ../../writing/tests.rst:49 msgid "" -"Use long and descriptive names for testing functions. The style guide here " -"is slightly different than that of running code, where short names are often" -" preferred. The reason is testing functions are never called explicitly. " -"``square()`` or even ``sqr()`` is ok in running code, but in testing code " -"you would have names such as ``test_square_of_number_2()``, " -"``test_square_negative_number()``. These function names are displayed when a" -" test fails, and should be as descriptive as possible." +"Use long and descriptive names for testing functions. The style guide " +"here is slightly different than that of running code, where short names " +"are often preferred. The reason is testing functions are never called " +"explicitly. ``square()`` or even ``sqr()`` is ok in running code, but in " +"testing code you would have names such as ``test_square_of_number_2()``, " +"``test_square_negative_number()``. These function names are displayed " +"when a test fails, and should be as descriptive as possible." msgstr "" -#: ..\..\writing\tests.rst:57 +#: ../../writing/tests.rst:57 msgid "" -"When something goes wrong or has to be changed, and if your code has a good " -"set of tests, you or other maintainers will rely largely on the testing " -"suite to fix the problem or modify a given behavior. Therefore the testing " -"code will be read as much as or even more than the running code. A unit test" -" whose purpose is unclear is not very helpful is this case." +"When something goes wrong or has to be changed, and if your code has a " +"good set of tests, you or other maintainers will rely largely on the " +"testing suite to fix the problem or modify a given behavior. Therefore " +"the testing code will be read as much as or even more than the running " +"code. A unit test whose purpose is unclear is not very helpful in this " +"case." msgstr "" -#: ..\..\writing\tests.rst:64 +#: ../../writing/tests.rst:64 msgid "" "Another use of the testing code is as an introduction to new developers. " "When someone will have to work on the code base, running and reading the " -"related testing code is often the best they can do. They will or should " -"discover the hot spots, where most difficulties arise, and the corner cases." -" If they have to add some functionality, the first step should be to add a " -"test and, by this means, ensure the new functionality is not already a " -"working path that has not been plugged into the interface." +"related testing code is often the best thing that they can do to start. " +"They will or should discover the hot spots, where most difficulties " +"arise, and the corner cases. If they have to add some functionality, the " +"first step should be to add a test to ensure that the new functionality " +"is not already a working path that has not been plugged into the " +"interface." msgstr "" -#: ..\..\writing\tests.rst:73 +#: ../../writing/tests.rst:73 msgid "The Basics" msgstr "" -#: ..\..\writing\tests.rst:77 +#: ../../writing/tests.rst:77 msgid "Unittest" msgstr "" -#: ..\..\writing\tests.rst:79 +#: ../../writing/tests.rst:79 msgid "" -":mod:`unittest` is the batteries-included test module in the Python standard" -" library. Its API will be familiar to anyone who has used any of the " -"JUnit/nUnit/CppUnit series of tools." +":mod:`unittest` is the batteries-included test module in the Python " +"standard library. Its API will be familiar to anyone who has used any of " +"the JUnit/nUnit/CppUnit series of tools." msgstr "" -#: ..\..\writing\tests.rst:83 +#: ../../writing/tests.rst:83 msgid "" "Creating test cases is accomplished by subclassing " ":class:`unittest.TestCase`." msgstr "" -#: ..\..\writing\tests.rst:96 -msgid "" -"As of Python 2.7 unittest also includes its own test discovery mechanisms." +#: ../../writing/tests.rst:96 +msgid "As of Python 2.7 unittest also includes its own test discovery mechanisms." msgstr "" -#: ..\..\writing\tests.rst:98 +#: ../../writing/tests.rst:98 msgid "" "`unittest in the standard library documentation " "`_" msgstr "" -#: ..\..\writing\tests.rst:102 +#: ../../writing/tests.rst:102 msgid "Doctest" msgstr "" -#: ..\..\writing\tests.rst:104 +#: ../../writing/tests.rst:104 msgid "" "The :mod:`doctest` module searches for pieces of text that look like " -"interactive Python sessions in docstrings, and then executes those sessions " -"to verify that they work exactly as shown." +"interactive Python sessions in docstrings, and then executes those " +"sessions to verify that they work exactly as shown." msgstr "" -#: ..\..\writing\tests.rst:108 +#: ../../writing/tests.rst:108 msgid "" -"Doctests have a different use case than proper unit tests: they are usually " -"less detailed and don't catch special cases or obscure regression bugs. They" -" are useful as an expressive documentation of the main use cases of a module" -" and its components. However, doctests should run automatically each time " -"the full test suite runs." +"Doctests have a different use case than proper unit tests: they are " +"usually less detailed and don't catch special cases or obscure regression" +" bugs. They are useful as an expressive documentation of the main use " +"cases of a module and its components. However, doctests should run " +"automatically each time the full test suite runs." msgstr "" -#: ..\..\writing\tests.rst:114 +#: ../../writing/tests.rst:114 msgid "A simple doctest in a function:" msgstr "" -#: ..\..\writing\tests.rst:133 +#: ../../writing/tests.rst:133 msgid "" -"When running this module from the command line as in ``python module.py``, " -"the doctests will run and complain if anything is not behaving as described " -"in the docstrings." +"When running this module from the command line as in ``python " +"module.py``, the doctests will run and complain if anything is not " +"behaving as described in the docstrings." msgstr "" -#: ..\..\writing\tests.rst:138 +#: ../../writing/tests.rst:138 msgid "Tools" msgstr "" -#: ..\..\writing\tests.rst:142 +#: ../../writing/tests.rst:142 msgid "py.test" msgstr "" -#: ..\..\writing\tests.rst:144 +#: ../../writing/tests.rst:144 msgid "" "py.test is a no-boilerplate alternative to Python's standard unittest " "module." msgstr "" -#: ..\..\writing\tests.rst:150 +#: ../../writing/tests.rst:150 msgid "" -"Despite being a fully-featured and extensible test tool, it boasts a simple " -"syntax. Creating a test suite is as easy as writing a module with a couple " -"of functions:" +"Despite being a fully-featured and extensible test tool, it boasts a " +"simple syntax. Creating a test suite is as easy as writing a module with " +"a couple of functions:" msgstr "" -#: ..\..\writing\tests.rst:163 +#: ../../writing/tests.rst:163 msgid "and then running the `py.test` command" msgstr "" -#: ..\..\writing\tests.rst:185 +#: ../../writing/tests.rst:185 msgid "" "is far less work than would be required for the equivalent functionality " "with the unittest module!" msgstr "" -#: ..\..\writing\tests.rst:188 +#: ../../writing/tests.rst:188 msgid "`py.test `_" msgstr "" -#: ..\..\writing\tests.rst:192 +#: ../../writing/tests.rst:192 msgid "Nose" msgstr "" -#: ..\..\writing\tests.rst:194 +#: ../../writing/tests.rst:194 msgid "nose extends unittest to make testing easier." msgstr "" -#: ..\..\writing\tests.rst:201 +#: ../../writing/tests.rst:201 msgid "" -"nose provides automatic test discovery to save you the hassle of manually " -"creating test suites. It also provides numerous plugins for features such as" -" xUnit-compatible test output, coverage reporting, and test selection." +"nose provides automatic test discovery to save you the hassle of manually" +" creating test suites. It also provides numerous plugins for features " +"such as xUnit-compatible test output, coverage reporting, and test " +"selection." msgstr "" -#: ..\..\writing\tests.rst:205 -msgid "`nose `_" +#: ../../writing/tests.rst:205 +msgid "`nose `_" msgstr "" -#: ..\..\writing\tests.rst:209 +#: ../../writing/tests.rst:209 msgid "tox" msgstr "" -#: ..\..\writing\tests.rst:211 +#: ../../writing/tests.rst:211 msgid "" -"tox is a tool for automating test environment management and testing against" -" multiple interpreter configurations" +"tox is a tool for automating test environment management and testing " +"against multiple interpreter configurations" msgstr "" -#: ..\..\writing\tests.rst:218 +#: ../../writing/tests.rst:218 msgid "" -"tox allows you to configure complicated multi-parameter test matrices via a " -"simple ini-style configuration file." +"tox allows you to configure complicated multi-parameter test matrices via" +" a simple ini-style configuration file." msgstr "" -#: ..\..\writing\tests.rst:221 +#: ../../writing/tests.rst:221 msgid "`tox `_" msgstr "" -#: ..\..\writing\tests.rst:224 +#: ../../writing/tests.rst:224 msgid "Unittest2" msgstr "" -#: ..\..\writing\tests.rst:226 +#: ../../writing/tests.rst:226 msgid "" "unittest2 is a backport of Python 2.7's unittest module which has an " "improved API and better assertions over the one available in previous " "versions of Python." msgstr "" -#: ..\..\writing\tests.rst:229 +#: ../../writing/tests.rst:229 msgid "If you're using Python 2.6 or below, you can install it with pip" msgstr "" -#: ..\..\writing\tests.rst:235 +#: ../../writing/tests.rst:235 msgid "" -"You may want to import the module under the name unittest to make porting " -"code to newer versions of the module easier in the future" +"You may want to import the module under the name unittest to make porting" +" code to newer versions of the module easier in the future" msgstr "" -#: ..\..\writing\tests.rst:245 +#: ../../writing/tests.rst:245 msgid "" -"This way if you ever switch to a newer Python version and no longer need the" -" unittest2 module, you can simply change the import in your test module " -"without the need to change any other code." +"This way if you ever switch to a newer Python version and no longer need " +"the unittest2 module, you can simply change the import in your test " +"module without the need to change any other code." msgstr "" -#: ..\..\writing\tests.rst:249 +#: ../../writing/tests.rst:249 msgid "`unittest2 `_" msgstr "" -#: ..\..\writing\tests.rst:253 +#: ../../writing/tests.rst:253 msgid "mock" msgstr "" -#: ..\..\writing\tests.rst:255 +#: ../../writing/tests.rst:255 msgid "" -":mod:`unittest.mock` is a library for testing in Python. As of Python 3.3, " -"it is available in the `standard library " +":mod:`unittest.mock` is a library for testing in Python. As of Python " +"3.3, it is available in the `standard library " "`_." msgstr "" -#: ..\..\writing\tests.rst:259 +#: ../../writing/tests.rst:259 msgid "For older versions of Python:" msgstr "" -#: ..\..\writing\tests.rst:265 +#: ../../writing/tests.rst:265 msgid "" -"It allows you to replace parts of your system under test with mock objects " -"and make assertions about how they have been used." +"It allows you to replace parts of your system under test with mock " +"objects and make assertions about how they have been used." msgstr "" -#: ..\..\writing\tests.rst:268 +#: ../../writing/tests.rst:268 msgid "For example, you can monkey-patch a method:" msgstr "" -#: ..\..\writing\tests.rst:279 +#: ../../writing/tests.rst:279 msgid "" "To mock classes or objects in a module under test, use the ``patch`` " -"decorator. In the example below, an external search system is replaced with " -"a mock that always returns the same result (but only for the duration of the" -" test)." +"decorator. In the example below, an external search system is replaced " +"with a mock that always returns the same result (but only for the " +"duration of the test)." msgstr "" -#: ..\..\writing\tests.rst:298 -msgid "" -"Mock has many other ways you can configure it and control its behavior." +#: ../../writing/tests.rst:298 +msgid "Mock has many other ways you can configure it and control its behavior." msgstr "" -#: ..\..\writing\tests.rst:300 +#: ../../writing/tests.rst:300 msgid "`mock `_" msgstr "" + +#~ msgid "" +#~ "Getting used to writing the testing " +#~ "code and the running code in " +#~ "parallel is now considered a good " +#~ "habit. Used wisely, this method helps" +#~ " you define more precisely your " +#~ "code's intent and have a more " +#~ "decoupled architecture." +#~ msgstr "" + +#~ msgid "" +#~ "Each test unit must be fully " +#~ "independent. Each of them must be " +#~ "able to run alone, and also within" +#~ " the test suite, regardless of the" +#~ " order they are called. The " +#~ "implication of this rule is that " +#~ "each test must be loaded with a" +#~ " fresh dataset and may have to " +#~ "do some cleanup afterwards. This is " +#~ "usually handled by :meth:`setUp()` and " +#~ ":meth:`tearDown()` methods." +#~ msgstr "" + +#~ msgid "" +#~ "Try hard to make tests that run" +#~ " fast. If one single test needs " +#~ "more than a few millisecond to " +#~ "run, development will be slowed down " +#~ "or the tests will not be run " +#~ "as often as desirable. In some " +#~ "cases, tests can't be fast because " +#~ "they need a complex data structure " +#~ "to work on, and this data " +#~ "structure must be loaded every time " +#~ "the test runs. Keep these heavier " +#~ "tests in a separate test suite " +#~ "that is run by some scheduled " +#~ "task, and run all other tests as" +#~ " often as needed." +#~ msgstr "" + +#~ msgid "" +#~ "Learn your tools and learn how to" +#~ " run a single test or a test" +#~ " case. Then, when developing a " +#~ "function inside a module, run this " +#~ "function's tests very often, ideally " +#~ "automatically when you save the code." +#~ msgstr "" + +#~ msgid "" +#~ "When something goes wrong or has " +#~ "to be changed, and if your code" +#~ " has a good set of tests, you" +#~ " or other maintainers will rely " +#~ "largely on the testing suite to " +#~ "fix the problem or modify a given" +#~ " behavior. Therefore the testing code " +#~ "will be read as much as or " +#~ "even more than the running code. A" +#~ " unit test whose purpose is unclear" +#~ " is not very helpful is this " +#~ "case." +#~ msgstr "" + +#~ msgid "" +#~ "Another use of the testing code is" +#~ " as an introduction to new " +#~ "developers. When someone will have to" +#~ " work on the code base, running " +#~ "and reading the related testing code " +#~ "is often the best they can do. " +#~ "They will or should discover the " +#~ "hot spots, where most difficulties " +#~ "arise, and the corner cases. If " +#~ "they have to add some functionality, " +#~ "the first step should be to add" +#~ " a test and, by this means, " +#~ "ensure the new functionality is not " +#~ "already a working path that has " +#~ "not been plugged into the interface." +#~ msgstr "" + +#~ msgid "`nose `_" +#~ msgstr "" + From 7e8a570018682d4329c905b1ca91738f103b809f Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Thu, 20 Oct 2016 07:18:52 +0000 Subject: [PATCH 032/117] reTranslate old.ver 2.1 --- .../ko/LC_MESSAGES/writing/structure.mo | Bin 51796 -> 58698 bytes .../ko/LC_MESSAGES/writing/structure.po | 538 +++++++++++------- 2 files changed, 330 insertions(+), 208 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index 2d177ed5c478f59dc7c1f0e79f13d511c79ab659..5c1d4a001e1392db5467158b1b82949e89b92a25 100644 GIT binary patch delta 18399 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 diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 37a49d99b..4e1d9e3dd 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -25,9 +25,9 @@ msgid "" " are clear as well as how the files and folders are organized in the " "filesystem." msgstr "" -"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미한다. 우리는 깔끔하고 " -"효율적인 코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한" -" 코드를 만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제다." +"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미합니다. 우리는 깔끔하고 " +"효율적인 코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있습니다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한" +" 코드를 만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제입니다." #: ../../writing/structure.rst:11 msgid "" @@ -36,8 +36,8 @@ msgid "" "isolated? By answering questions like these you can begin to plan, in a " "broad sense, what your finished product will look like." msgstr "" -"어느 모듈에 어느 기능이 들어가야 할까? 프로젝트에서 데이터는 어덯게 흘러가야 할까? 어떤 특징과 기능이 통합되거나 분리되어야 " -"할까? 이러한 질문에 답함으로써 프로젝트의 계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있다." +"어느 모듈에 어느 기능이 들어가야 할까요? 프로젝트에서 데이터는 어덯게 흘러가야 할까요? 어떤 특징과 기능이 통합되거나 분리되어야 " +"할까요? 이러한 질문에 답함으로써 프로젝트의 계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있습니다." #: ../../writing/structure.rst:16 msgid "" @@ -46,17 +46,17 @@ msgid "" "project. We then discuss various perspectives on how to build code which " "can be extended and tested reliably." msgstr "" -"이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것이다. 이 2가지가 프로젝트를 위한 강력한 구조를 만들기 위한 " -"핵심적인 요소이기 때문이다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 관점에서" -" 검토할 것이다." +"이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것입니다. 이 2가지가 프로젝트를 위한 강력한 구조를 만들기 위한 " +"핵심적인 요소이기 때문입니다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 관점에서" +" 검토할 것입니다." #: ../../writing/structure.rst:24 msgid "Structure of the Repository" -msgstr "" +msgstr "저장소의 구조" #: ../../writing/structure.rst:27 msgid "It's Important." -msgstr "" +msgstr "중요합니다." #: ../../writing/structure.rst:29 msgid "" @@ -65,30 +65,33 @@ msgid "" " project's `architecture " "`__." msgstr "" +"코딩 스타일, API 디자인, 자동화처럼 건강한 개발 사이클에 필수적인 요소들처럼, 저장소의 구조도 프로젝트의 " +"`아키텍처 `__ " +"에 결정적인 요소입니다. " #: ../../writing/structure.rst:34 msgid "" "When a potential user or contributor lands on your repository's page, " "they see a few things:" -msgstr "" +msgstr "당신이 만든 프로젝트의 저장소 웹페이지에 처음으로 상륙한 잠재적 사용자나 공헌자는 이런 것들을 보게 될 것입니다. " #: ../../writing/structure.rst:37 msgid "Project Name" -msgstr "" +msgstr "프로젝트 이름" #: ../../writing/structure.rst:38 msgid "Project Description" -msgstr "" +msgstr "프로젝트 설명" #: ../../writing/structure.rst:39 msgid "Bunch O' Files" -msgstr "" +msgstr "파일들 한무더기" #: ../../writing/structure.rst:41 msgid "" "Only when they scroll below the fold will the user see your project's " "README." -msgstr "" +msgstr "스크롤을 내리고 내리고 나서야 프로젝트의 README 파일을 발견할 수 있을 것입니다. " #: ../../writing/structure.rst:44 msgid "" @@ -96,10 +99,12 @@ msgid "" "they might look elsewhere before even reading your beautiful " "documentation." msgstr "" +"당신의 저장소가 엄청나게 많은 파일들과 디렉토리로 꼬여있다면, 방문자들은 " +"금방 떠나버리고 말 것입니다. 아무리 아름다운 문서가 있다고 해도 말입니다. " #: ../../writing/structure.rst:48 msgid "Dress for the job you want, not the job you have." -msgstr "" +msgstr "원하는 바가 있다면 바로 그 원하는 바인 것처럼 행동하라." #: ../../writing/structure.rst:50 msgid "" @@ -108,74 +113,84 @@ msgid "" "becoming intimately familiar with every nook and cranny. The layout of it" " is important." msgstr "" +"물론 첫인상이 전부라는 말은 아닙니다. 당신과 동료들은 저장소에 올려진 " +"프로젝트를 위해 수없이 많은 날들을 지세웠을 것입니다. " +"그러다보니 어느새 저장소의 구석구석에 이미 친숙해져있을 것입니다. " +"그래도 모양새는 중요합니다. " #: ../../writing/structure.rst:56 msgid "Sample Repository" -msgstr "" +msgstr "샘플 저장소" #: ../../writing/structure.rst:58 msgid "" "**tl;dr**: This is what `Kenneth Reitz `_ " "recommends." msgstr "" +"3줄 요약 필수(tl;dr): `Kenneth Reitz `_ 의 말입니다. " #: ../../writing/structure.rst:60 msgid "" "This repository is `available on GitHub " "`__." msgstr "" +"이 저장소는 `깃허브에서 볼 수 있습니다 " +"`__." #: ../../writing/structure.rst:77 msgid "Let's get into some specifics." -msgstr "" +msgstr "좀 더 자세히 봅시다. " #: ../../writing/structure.rst:80 msgid "The Actual Module" -msgstr "" +msgstr "실제 모듈" #: ../../writing/structure.rst:1 msgid "Location" -msgstr "" +msgstr "위치" #: ../../writing/structure.rst:1 msgid "``./sample/`` or ``./sample.py``" -msgstr "" +msgstr "``./sample/`` or ``./sample.py``" #: ../../writing/structure.rst:1 msgid "Purpose" -msgstr "" +msgstr "목적" #: ../../writing/structure.rst:1 msgid "The code of interest" -msgstr "" +msgstr "관심있는 코드" #: ../../writing/structure.rst:89 msgid "" "Your module package is the core focus of the repository. It should not be" " tucked away:" msgstr "" +"모듈 패키지는 저장소의 핵심입니다. 숨겨놓으면 안됩니다: " #: ../../writing/structure.rst:96 msgid "" "If your module consists of only a single file, you can place it directly " "in the root of your repository:" msgstr "" +"모듈 안에 단 하나의 파일밖에 없다면, 저장소의 최상위 폴더에 바로 두어도 좋습니다. " #: ../../writing/structure.rst:103 msgid "Your library does not belong in an ambiguous src or python subdirectory." msgstr "" +"라이브러리를 애매한 소스나 파이썬 하위 디렉토리에 두면 안됩니다. " #: ../../writing/structure.rst:106 msgid "License" -msgstr "" +msgstr "라이선스" #: ../../writing/structure.rst:1 msgid "``./LICENSE``" -msgstr "" +msgstr "``./LICENSE``" #: ../../writing/structure.rst:1 msgid "Lawyering up." -msgstr "" +msgstr "법적 공방" #: ../../writing/structure.rst:116 msgid "" @@ -183,48 +198,53 @@ msgid "" "the source code itself. The full license text and copyright claims should" " exist in this file." msgstr "" +"소스 코드를 외에 프로젝트 저장소의 가장 중요한 부분입니다. " +"라이선스 문서 전문과 저작권이 반드시 파일에 들어가야 합니다. " #: ../../writing/structure.rst:120 msgid "" "If you aren't sure which license you should use for your project, check " "out `choosealicense.com `_." msgstr "" +"어떤 라이선스를 써야할지 모르겠다면 `choosealicense.com `_ 를 확인하세요." #: ../../writing/structure.rst:123 msgid "" "Of course, you are also free to publish code without a license, but this " "would prevent many people from potentially using your code." msgstr "" +"라이선스 없이 코드가 배포되어도 상관없을 수도 있습니다. " +"하지만 그랬다가는 사람들이 당신의 코드를 사용하기를 꺼릴 것입니다. " #: ../../writing/structure.rst:127 msgid "Setup.py" -msgstr "" +msgstr "Setup.py" #: ../../writing/structure.rst:1 msgid "``./setup.py``" -msgstr "" +msgstr "``./setup.py``" #: ../../writing/structure.rst:1 msgid "Package and distribution management." -msgstr "" +msgstr "패키지와 배포 관리" #: ../../writing/structure.rst:136 msgid "" "If your module package is at the root of your repository, this should " "obviously be at the root as well." -msgstr "" +msgstr "모듈 패키지가 저장소의 최상위 폴더에 있다면, Setup.py도 최상위 폴더에 두어야 합니다." #: ../../writing/structure.rst:140 msgid "Requirements File" -msgstr "" +msgstr "필요한 파일" #: ../../writing/structure.rst:1 msgid "``./requirements.txt``" -msgstr "" +msgstr "``./requirements.txt``" #: ../../writing/structure.rst:1 msgid "Development dependencies." -msgstr "" +msgstr "개발 의존성" #: ../../writing/structure.rst:149 msgid "" @@ -233,6 +253,10 @@ msgid "" "It should specify the dependencies required to contribute to the project:" " testing, building, and generating documentation." msgstr "" +"`pip 필수 파일 `__ " +"은 반드시 저장소의 최상위 폴더에 두어야 합니다. " +"이 파일은 프로젝트에 기여하기 위한 작업들, 즉 테스트, 빌드, 문서 생성을 위해 필요한 " +"의존성에 대하여 명시해야 합니다. " #: ../../writing/structure.rst:155 msgid "" @@ -240,58 +264,63 @@ msgid "" "development environment setup via ``setup.py``, this file may be " "unnecessary." msgstr "" +"프로젝트에 개발 의존성이 없거나, 아니면 " +"``setup.py`` 를 통해 개발 환경을 설치하는 편을 좋아한다면 " +"이 파일은 불필요합니다. " #: ../../writing/structure.rst:160 msgid "Documentation" -msgstr "" +msgstr "문서" #: ../../writing/structure.rst:1 msgid "``./docs/``" -msgstr "" +msgstr "``./docs/``" #: ../../writing/structure.rst:1 msgid "Package reference documentation." -msgstr "" +msgstr "패키지 참조 문서" #: ../../writing/structure.rst:169 msgid "There is little reason for this to exist elsewhere." -msgstr "" +msgstr "다른 경로에 문서 파일을 둘 이유가 없습니다." #: ../../writing/structure.rst:172 msgid "Test Suite" -msgstr "" +msgstr "테스트 도구" #: ../../writing/structure.rst:1 msgid "``./test_sample.py`` or ``./tests``" -msgstr "" +msgstr "``./test_sample.py`` or ``./tests``" #: ../../writing/structure.rst:1 msgid "Package integration and unit tests." -msgstr "" +msgstr "패키지 통합 테스트와 단위 테스트" #: ../../writing/structure.rst:181 msgid "Starting out, a small test suite will often exist in a single file:" -msgstr "" +msgstr "프로젝트를 시작할 때, 보통 하나의 파일에 간단한 테스트 도구를 만들 것입니다." #: ../../writing/structure.rst:187 msgid "Once a test suite grows, you can move your tests to a directory, like so:" -msgstr "" +msgstr "테스트 도구가 커지면 이런 폴더를 만들어서 테스트 파일을 옮기면 됩니다. " #: ../../writing/structure.rst:195 msgid "" "Obviously, these test modules must import your packaged module to test " "it. You can do this a few ways:" msgstr "" +"물론 이런 테스트 모듈들은 프로젝트의 패키징된 모듈들을 임포트해서 " +"테스트를 수행합니다. 테스트를 수행하는데에는 몇 가지 방법이 있습니다. " #: ../../writing/structure.rst:198 msgid "Expect the package to be installed in site-packages." -msgstr "" +msgstr "site-packages에 패키지를 설치하게 한다. " #: ../../writing/structure.rst:199 msgid "" "Use a simple (but *explicit*) path modification to resolve the package " "properly." -msgstr "" +msgstr "패키지 경로를 잘 찾기 위해 간단한(하지만 명확한) 경로를 사용한다. " #: ../../writing/structure.rst:202 msgid "" @@ -300,20 +329,25 @@ msgid "" "requires them to have an isolated environment setup for each instance of " "the codebase." msgstr "" +"후자를 강력 추천합니다. " +"계속 변경되고 있는 코드를 테스트하기 위해 `setup.py `__ 를 " +"실행해야만 한다면, 변경 중인 코드의 각 시점마다 독립된 환경 설정을 해야만 합니다. " #: ../../writing/structure.rst:207 msgid "" "To give the individual tests import context, create a tests/context.py " "file:" msgstr "" +"각각의 테스트마다 별도의 임포트 설정을 주고 싶다면 " +"tests/context.py 파일을 이렇게 작성하세요. " #: ../../writing/structure.rst:218 msgid "Then, within the individual test modules, import the module like so:" -msgstr "" +msgstr "그 다음, 각각의 테스트 모듈마다 이렇게 모듈을 임포트 합니다. " #: ../../writing/structure.rst:224 msgid "This will always work as expected, regardless of installation method." -msgstr "" +msgstr "이렇게 하면 설치 방법과 상관없이 항상 생각한 대로 동작할 것입니다. " #: ../../writing/structure.rst:226 msgid "" @@ -322,18 +356,22 @@ msgid "" "users; many test suites often require additional dependencies and runtime" " contexts." msgstr "" +"어떤 사람들은 테스트 파일을 반드시 테스트 하려는 모듈 자체에 " +"넣고 배포를 해야한다고 주장합니다. 하지만 저는 이에 동의하지 않습니다. " +"그렇게 하면 사용자 입장에서 볼 때 프로젝트의 모듈이 복잡해집니다. " +"그리고 추가적인 의존성 관계와 실행 환경이 필요한 테스트 도구가 많기 때문입니다. " #: ../../writing/structure.rst:232 msgid "Makefile" -msgstr "" +msgstr "Makefile" #: ../../writing/structure.rst:1 msgid "``./Makefile``" -msgstr "" +msgstr "``./Makefile``" #: ../../writing/structure.rst:1 msgid "Generic management tasks." -msgstr "" +msgstr "전반적인 관리 작업" #: ../../writing/structure.rst:242 msgid "" @@ -342,20 +380,27 @@ msgid "" "short, make is a incredibly useful tool for defining generic tasks for " "your project." msgstr "" +"Makefile은 지금 이 프로젝트와 다른 Pocoo 프로젝트에도 항상 있습니다. " +"왜 그럴까요? " +"이 프로젝트들은 C로 작성되지 않았기 때문입니다... " +"즉 make는 당신의 프로젝트를 관리하는 작업들을 알려주는 " +"엄청나게 유용한 도구입니다. " #: ../../writing/structure.rst:247 msgid "**Sample Makefile:**" -msgstr "" +msgstr "**Sample Makefile:**" #: ../../writing/structure.rst:259 msgid "" "Other generic management scripts (e.g. ``manage.py`` or ``fabfile.py``) " "belong at the root of the repository as well." msgstr "" +"다른 관리 작업 스크립트(``manage.py`` 또는 ``fabfile.py``) " +"들도 Makefile과 마찬가지로 저장소의 최상위 디렉토리에 두세요. " #: ../../writing/structure.rst:263 msgid "Regarding Django Applications" -msgstr "" +msgstr "장고 어플리케이션에 대하여" #: ../../writing/structure.rst:265 msgid "" @@ -363,20 +408,25 @@ msgid "" "Django 1.4. Many developers are structuring their repositories poorly due" " to the new bundled application templates." msgstr "" +"장고 1.4 버전의 릴리즈 이후로 장고 어플리케이션에 새로운 유행이 불고 있습니다. " +"많은 개발자들이 자신들의 저장소를 지저분하게 구성하고 있습니다. " +"1.4 버전에 포함된 어플리케이션 템플릿 때문입니다. " #: ../../writing/structure.rst:269 msgid "" "How? Well, they go to their bare and fresh repository and run the " "following, as they always have:" msgstr "" +"어떻게 지저분하게 하길래? " +"음, 이런 개발자들은 자신의 정리 안 된 저장소에서 대체로 이런 명령을 실행합니다. " #: ../../writing/structure.rst:276 msgid "The resulting repository structure looks like this:" -msgstr "" +msgstr "그 결과로 뽑히는 저장소의 구조는 이렇습니다: " #: ../../writing/structure.rst:286 msgid "Don't do this." -msgstr "" +msgstr "이렇게 하지 마세요. " #: ../../writing/structure.rst:288 msgid "" @@ -384,23 +434,25 @@ msgid "" "Unnecessary nesting doesn't help anybody (unless they're nostalgic for " "monolithic SVN repos)." msgstr "" +"상위 폴더와 하위 폴더의 이름이 같으니 개발 도구도 혼란스러워하고 " +"개발자들도 혼란스러워하게 됩니다. " +"불필요한 폴더 감싸기는 (SVN 저장소를 그리워하는게 아니라면)도움이 안됩니다. " #: ../../writing/structure.rst:292 msgid "Let's do it properly:" -msgstr "" +msgstr "대신 이렇게 하면 좋습니다. " #: ../../writing/structure.rst:298 msgid "Note the \"``.``\"." -msgstr "" +msgstr "여기에 주목하세요 \"``.``\"." #: ../../writing/structure.rst:300 msgid "The resulting structure:" -msgstr "" +msgstr "결과물은 이렇습니다: " #: ../../writing/structure.rst:314 -#, fuzzy msgid "Structure of Code is Key" -msgstr "구성이 중요하다" +msgstr "코드 구성이 핵심" #: ../../writing/structure.rst:316 msgid "" @@ -410,15 +462,18 @@ msgid "" " to grasp. Therefore, you are left with the pure architectural task of " "crafting the different parts of your project and their interactions." msgstr "" -"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽다. 여기서 쉽다는 말은 제약이 많지 않고, " -"모듈을 불러오는 방식이 이해하기 쉽다는 뜻이다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 " -"하면 된다." +"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽습니다. " +"여기서 쉽다는 말은 제약이 많지 않고, 모듈을 불러오는 방식이 이해하기 쉽다는 뜻입니다. " +"따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 " +"하면 됩니다." #: ../../writing/structure.rst:323 msgid "" "Easy structuring of a project means it is also easy to do it poorly. Some" " signs of a poorly structured project include:" -msgstr "프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻이다. 프로젝트가 엉망으로 구성되었다는 신호를 몇 가지 찾아보았다." +msgstr "" +"프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻입니다. " +"프로젝트가 엉망으로 구성되었음을 알 수 있는 신호를 몇 가지 찾아보았습니다. " #: ../../writing/structure.rst:327 msgid "" @@ -432,8 +487,8 @@ msgid "" msgstr "" "복잡한 순환 참조: ``책상.누가 만들었나()`` 같은 질문에 답하려면 :file:`가구.py` 의 탁자와 의자가 " ":file:`작업자.py` 에서 목수를 불러와야 하는데, 반대로 ``목수.뭐하니()`` 같은 질문에 답하려면 목수가 책상과 의자를 " -"불러와야만 하는 경우가 있다. 이것이 순환 참조다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 " -"난도질스러운 방법에 의존하는 수 밖에 없다." +"불러와야만 하는 경우가 있습니다. 이것이 순환 참조입니다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 " +"난도질스러운 방법에 의존하는 수 밖에 없습니다." #: ../../writing/structure.rst:336 msgid "" @@ -442,9 +497,9 @@ msgid "" "which requires very careful surgery to adapt the change. This means you " "have too many assumptions about Table in Carpenter's code or the reverse." msgstr "" -"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 한다. 책상의 코드 변경이 목수의 " -"코드를 무너뜨리기 때문이다. 이럴 때 코드 변경을 하려면 아주 신중한 수술을 해야한다. 이 말인즉, 목수의 코드 안에 있는 책상의 " -"코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻이다." +"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 합니다. 책상의 코드 변경이 목수의 " +"코드를 무너뜨리기 때문입니다. 이럴 때 코드 변경을 하려면 아주 신중하게 수술을 해야합니다. 이 말인즉, 목수의 코드 안에 있는 책상의 " +"코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻입니다." #: ../../writing/structure.rst:342 msgid "" @@ -456,10 +511,10 @@ msgid "" "discover that remote template code is also modifying this context, " "messing with table dimensions." msgstr "" -"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우다. 목수가 언제든 " -"아무나 바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생긴다. 어쩌다가 이런 일이 " -"벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 견본 코드가 문맥을 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 " -"것이다." +"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우입니다. 목수가 언제든 " +"아무나 바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생깁니다. 어쩌다가 이런 일이 " +"벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 샘플 코드가 변수를 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 " +"것입니다." #: ../../writing/structure.rst:351 msgid "" @@ -470,8 +525,8 @@ msgid "" "So the good news is that you might not see too much of it." msgstr "" "스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 " -"나눠지지도 않은 코드를 스파게티 코드라고 한다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 복잡하고" -" 어지러운 코드는 유지 보수하기가 어렵다. 다행히 이런 난장판을 많이 볼 일은 없을 것이다." +"나눠지지도 않은 코드를 스파게티 코드라고 합니다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 복잡하고" +" 어지러운 코드는 유지 보수하기가 어렵습니다. 다행히 이런 난장판을 많이 볼 일은 없을 것입니다." #: ../../writing/structure.rst:358 msgid "" @@ -481,9 +536,9 @@ msgid "" "AssetTable or Table, or even TableNew for your task at hand, you might be" " swimming in ravioli code." msgstr "" -"라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있다. 구조화도 되어있지 않으면서 수 백개의 비슷한 " -"로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 한다. 식탁을 써야하는지, 탁자를 써야하는지, 그도 " -"아니면 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것이다." +"라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있습니다. 구조화도 되어있지 않으면서 수 백개의 비슷한 " +"로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 합니다. 식탁을 써야하는지, 탁자를 써야하는지, 그도 " +"아니면 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것입니다." #: ../../writing/structure.rst:366 msgid "Modules" @@ -495,8 +550,8 @@ msgid "" "probably the most natural one. Abstraction layers allow separating code " "into parts holding related data and functionality." msgstr "" -"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운모습이다. 추상 레이어는 코드를 기능 파트와" -" 데이터 저장 파트로 나눌 수 있도록 해준다." +"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운 모습입니다. 추상 레이어는 코드를 기능 파트와" +" 데이터 저장 파트로 나눌 수 있도록 해줍니다." #: ../../writing/structure.rst:372 msgid "" @@ -509,9 +564,9 @@ msgid "" "statements." msgstr "" "예를 들어 프로젝트의 레이어 중 하나는 사용자 인터페이스를 담당하고, 다른 하나는 저수준의 데이터 처리를 담당할 수도 있다. 이 두" -" 레이어를 분리시키는 가장 자연스러운방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각 하나의 파일에 넣는 " -"것이다. 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 한다.이는 ``import`` 와 ``from ... " -"import`` 구문으로 가능하다." +" 레이어를 분리시키는 가장 자연스러운 방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각의 파일에 넣는 " +"것입니다. 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 합니다. 이는 ``import`` 와 ``from ... " +"import`` 구문으로 가능합니다." #: ../../writing/structure.rst:379 msgid "" @@ -519,8 +574,8 @@ msgid "" "either built-in modules such as `os` and `sys`, third-party modules you " "have installed in your environment, or your project's internal modules." msgstr "" -"`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있다. 이는 내장 모듈인`os`, `sys`, 프로젝트에 포함시킨 " -"모듈과 따로 설치한 서드파티 모듈도 마찬가지다." +"`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있습니다. 이는 내장 모듈인`os`, `sys`, 프로젝트에 포함시킨 " +"모듈과 따로 설치한 서드파티 모듈도 마찬가지입니다." #: ../../writing/structure.rst:383 msgid "" @@ -529,8 +584,8 @@ msgid "" "mark (?). So a file name like :file:`my.spam.py` is one you should avoid!" " Naming this way will interfere with the way Python looks for modules." msgstr "" -"본 안내서의 스타일 가이드의 방침을 따르려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나물음표(?) 같은 특수 문자의 사용을 " -"지양해야 한다. 그러니까 :file:`my.spam.py` 같은이름으로 만들면 안된다! 파이썬이 모듈을 찾는 걸 방해한다." +"이 책의 스타일 안내서처럼 하려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나 물음표(?) 같은 특수 문자의 사용을 " +"지양해야 합니다. 그러니까 :file:`my.spam.py` 같은 이름으로 만들면 안됩니다! 파이썬이 모듈을 찾는 걸 방해할겁니다. " #: ../../writing/structure.rst:388 msgid "" @@ -540,7 +595,7 @@ msgid "" " notation should be used in the Python docs." msgstr "" "`my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` 이라는 이름의 " -"파일을 찾는다. 이는 잘못된 경우다. 아래 글을 참조하기 바란다.파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한 `예시 " +"파일을 찾습니다. 이렇게 하면 안됩니다. 아래 글을 참조하세요. 파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한 `예시 " "`_ " #: ../../writing/structure.rst:393 @@ -548,8 +603,8 @@ msgid "" "If you'd like you could name your module :file:`my_spam.py`, but even our" " friend the underscore should not be seen often in module names." msgstr "" -":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능하다. 하지만 우리의 친구밑줄(_)은 모듈 이름으로는 자주 쓰이지" -" 않는다." +":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능합니다. 하지만 우리의 친구 밑줄(_)은 모듈 이름으로는 자주 쓰이지" +" 않습니다." #: ../../writing/structure.rst:396 msgid "" @@ -557,8 +612,9 @@ msgid "" "Python file to be a module, but you need to understand the import " "mechanism in order to use this concept properly and avoid some issues." msgstr "" -"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없다. 하지만 모듈이라는 개념을 잘 사용하고 " -"문제를 발생시키지 않기 위해서는, 모듈을 불러오는 방법을 이해할 필요가 있다." +"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없습니다. " +"하지만 모듈이라는 개념을 잘 사용하고 " +"문제를 발생시키지 않기 위해서는, 모듈을 불러오는 방법을 이해할 필요가 있습니다." #: ../../writing/structure.rst:400 msgid "" @@ -568,10 +624,10 @@ msgid "" ":file:`modu.py` in the \"path\" recursively and raise an ImportError " "exception if it is not found." msgstr "" -"구체적으로 살펴보자. ``import modu`` 구문이 있으면 이는 호출자로서 같은 디렉토리 안에서 적절한 파일, 즉 " -":file:`modu.py` 라는 파일을 찾는다. 만약 해당 파일이발견되지 않는다면 파이썬 인터프리터는 " -":file:`modu.py` 파일을 \"path\" 에서재귀적으로 찾는다. 그래도 발견되지 않으면 ImportError " -"exception을 띄운다." +"구체적으로 살펴봅시다. ``import modu`` 구문이 있으면 이는 호출자로서 같은 디렉토리 안에서 적절한 파일, 즉 " +":file:`modu.py` 라는 파일을 찾습니다. 만약 해당 파일이 발견되지 않는다면 파이썬 인터프리터는 " +":file:`modu.py` 파일을 \"path\" 에서 재귀적으로 찾습니다. 그래도 발견되지 않으면 ImportError " +"exception을 띄웁니다." #: ../../writing/structure.rst:405 msgid "" @@ -580,9 +636,9 @@ msgid "" "will be executed, including other imports if any. Function and class " "definitions are stored in the module's dictionary." msgstr "" -"일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행한다. :file:`modu.py` " -"모듈 안의 모든 최상위 구문이 실행된다. 불러온 다른 모듈이 있다면그것도 함께 실행된다. 함수와 클래스 정의는 모듈의 디렉토리에 " -"저장된다." +"일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행합니다. :file:`modu.py` " +"모듈 안의 모든 최상위 구문이 실행됩니다. 불러온 다른 모듈이 있다면 그것도 함께 실행됩니다. 함수와 클래스 정의는 모듈의 디렉토리에 " +"저장됩니다." #: ../../writing/structure.rst:410 msgid "" @@ -590,8 +646,9 @@ msgid "" " the caller through the module's namespace, a central concept in " "programming that is particularly helpful and powerful in Python." msgstr "" -"그런 다음, 모듈의 변수와 함수, 그리고 클래스는 프로그래밍의 핵심적인 개념이자, 특히 파이썬에서는 더욱 유용하고 강력하게 쓰이는 " -"모듈의 명칭 공간(namespace)을 통해 호출자가 사용할 수 있게 된다. " +"그런 다음에야 모듈의 변수와 함수, 그리고 클래스를 사용할 수 있게 됩니다. " +"여기서 호출자는 모듈의 네임스페이스(namespace)를 통해 이것들을 사용합니다. " +"모듈의 네임스페이스(namespace)는 아주 유용하고 강력하게 사용되는 파이썬 프로그래밍의 핵심 개념입니다. " #: ../../writing/structure.rst:414 msgid "" @@ -602,9 +659,9 @@ msgid "" " that the included code could have unwanted effects, e.g. override an " "existing function with the same name." msgstr "" -"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와호출자에" -" '복사'해 넣는 명령어로 사용된다. 하지만 파이썬에서는 다르다. 모듈에 포함된코드는 명칭 공간에 독립적으로 실행된다. 이는 " -"일반적으로 모듈에 포함된 코드가 오작동을하는 경우가 없다는 뜻이다. " +"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와 호출자에" +" '복사'해 넣는 명령어로 사용됩니다. 하지만 파이썬에서는 다릅니다. 모듈에 포함된 코드는 네임스페이스(namespace)에서 독립적으로 실행됩니다. 이는 " +"일반적으로 모듈에 포함된 코드가 오작동을 하는 경우가 없다는 뜻입니다. " #: ../../writing/structure.rst:420 msgid "" @@ -613,9 +670,10 @@ msgid "" " considered bad practice. **Using** ``import *`` **makes code harder to " "read and makes dependencies less compartmentalized**." msgstr "" -"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 작동하는지 확인해보자. 일반적으로 " -"이러한 구문은 잘못된 습관이다. **Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, 코드의 독립성 " -"여부를 판단하기 어렵게 한다." +"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 작동하는지 확인해봅시다. " +"일반적으로 이러한 구문은 잘못된 습관입니다. " +"**Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, 코드의 독립성 " +"여부를 판단하기 어렵게 합니다**." #: ../../writing/structure.rst:425 msgid "" @@ -625,10 +683,10 @@ msgid "" " the global namespace, its only advantage over a simpler ``import modu`` " "is that it will save a little typing." msgstr "" -"``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 전역 명칭 공간(global " -"namespace)에 넣어둘 수 있는 좋은 방법이다. 뿐만 아니라 이 구문은 전역 명칭 공간(global namespace)에 " -"무엇을 불러올지를명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭다. 단순히 ``import *`` 구문을 사용하는 " -"것은 단지 타이핑을 덜 한다는 이점 뿐이다." +"``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 전역 네임스페이스(global " +"namespace)에 넣어둘 수 있는 좋은 방법입니다. 뿐만 아니라 이 구문은 전역 네임스페이스(global namespace)에서 " +"무엇을 불러올지를 명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭습다. 단순히 ``import *`` 구문을 사용하는 " +"것은 단지 타이핑을 덜 한다는 이점 뿐입니다." #: ../../writing/structure.rst:431 msgid "**Very bad**" @@ -636,7 +694,7 @@ msgstr "**최악**" #: ../../writing/structure.rst:440 msgid "**Better**" -msgstr "**최악보다는 낫다**" +msgstr "**좀 나음**" #: ../../writing/structure.rst:448 ../../writing/structure.rst:810 msgid "**Best**" @@ -653,10 +711,10 @@ msgid "" "code readability and understandability in all but the simplest single " "file projects." msgstr "" -":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나다.가독성이란 쓸데없이 긴 본문과 " -"잡동사니를 피한다는 뜻이다. 그러므로 어느 수준까지는간결성을 얻고자 하는 노력이 필요하다. 그러나 너무 간결한 나머지 모호해서는 " -"안된다. ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은코드의 가독성과 이해용이성을 크게 " -"놓여준다.단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇다." +":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나입니다. 가독성이란 쓸데없이 긴 본문과 " +"잡동사니들을 피한다는 뜻입니다. 그러므로 어느 수준까지는 간결성을 얻고자 하는 노력이 필요합니다. 그러나 너무 간결한 나머지 모호해서는 " +"안됩니다. ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은 코드의 가독성과 이해용이성을 크게 " +"높여줍니다. 단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇습니다." #: ../../writing/structure.rst:466 msgid "Packages" @@ -666,7 +724,7 @@ msgstr "패키지" msgid "" "Python provides a very straightforward packaging system, which is simply " "an extension of the module mechanism to a directory." -msgstr "파이썬은 아주 간단한 패키지 만들기 시스템을 제공한다. 이 시스템은 단순히 파이썬 모듈 구조를 디렉토리로 확장한 것이다." +msgstr "파이썬은 아주 간단한 패키지 만들기 시스템을 제공합니다. 이 시스템은 단순히 파이썬 모듈 구조를 디렉토리로 확장한 것입니다." #: ../../writing/structure.rst:471 msgid "" @@ -676,9 +734,9 @@ msgid "" ":file:`__init__.py` file, which is used to gather all package-wide " "definitions." msgstr "" -":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식된다.패키지의 여러 다른 모듈들은 일반적인 모듈과 " -"비슷한 방법으로 불러와진다.그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별하다.이 " -"파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰인다." +":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식됩니다. 패키지의 여러 다른 모듈들은 일반적인 모듈과 " +"비슷한 방법으로 불러와집니다. 그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별합니다.이 " +"파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰입니다." #: ../../writing/structure.rst:476 msgid "" @@ -690,10 +748,10 @@ msgid "" "variable, function, or class defined in :file:`modu.py` is available in " "the pack.modu namespace." msgstr "" -":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로불러와진다." -" 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾는다.그리고 해당 패키지의 모든 상위 구문을" -" 실행한다. 이 작업 후에 :file:`modu.py` 파일에 정의된 모든 변수나 함수, 클래스를 pack.modu 명칭 " -"공간(namespace)에서 쓸 수 있다." +":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로 불러와집니다." +" 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾습니다. 그리고 해당 패키지의 모든 상위 구문을" +" 실행합니다. 이 작업 후에 :file:`modu.py` 파일에 정의된 모든 변수나 함수, 클래스를 pack.modu 네임스페이스" +"(namespace)에서 쓸 수 있습니다." #: ../../writing/structure.rst:484 msgid "" @@ -703,9 +761,9 @@ msgid "" " single item from a sub-sub-package will require executing all " ":file:`__init__.py` files met while traversing the tree." msgstr "" -"일반적으로 보이는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우다. 프로젝트가 복잡해질수록 " -"디렉토리 구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을 수 있다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 " -"불러오려고 했더니 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 실행하게 될 때가 있다." +"흔히 보는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우입니다. 프로젝트가 복잡해질수록 " +"디렉토리 구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을 수 있습니다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 " +"불러오려고 했더니 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 실행하게 될 때가 있습니다." #: ../../writing/structure.rst:490 msgid "" @@ -714,7 +772,7 @@ msgid "" "share any code." msgstr "" "따라서 패키지의 모듈과 서브-패키지에서 코드를 서로 공유할 필요가 없다면 :file:`__init__.py` 은 빈 파일로 " -"남겨두는게 일반적일 뿐만 아니라 좋은 습관이다." +"남겨두는게 일반적일 뿐만 아니라 좋은 습관입니다." #: ../../writing/structure.rst:494 msgid "" @@ -722,9 +780,10 @@ msgid "" "packages: ``import very.deep.module as mod``. This allows you to use " "`mod` in place of the verbose repetition of ``very.deep.module``." msgstr "" -"마지막으로 패키지 안쪽 깊숙히 불러올 수 있는 편리한 구문이 있다.``import very.deep.module as mod`` " -"이다. 이 구문은 ``very.deep.module``같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를 사용할 수 " -"있게 해준다." +"마지막으로 패키지 안쪽 깊숙히를 불러올 수 있는 편리한 구문이 있습니다. " +" ``import very.deep.module as mod`` 입니다. " +"이 구문은 ``very.deep.module``같은 장황한 구문을 반복하는 대신에 " +" `mod` 만으로 패키지를 사용할 수 있게 해줍니다. " #: ../../writing/structure.rst:499 msgid "Object-oriented programming" @@ -734,10 +793,9 @@ msgstr "객체지향 프로그래밍" msgid "" "Python is sometimes described as an object-oriented programming language." " This can be somewhat misleading and needs to be clarified." -msgstr "파이썬은 종종 객체지향 프로그래밍 언어라고 설명된다.이는 다소 오해의 여지가 있기에 명확히 할 필요가 있다." +msgstr "파이썬은 종종 객체지향 프로그래밍 언어로 묘사됩니다. 이는 다소 오해의 여지가 있기에 명확히 할 필요가 있습니다." #: ../../writing/structure.rst:504 -#, fuzzy msgid "" "In Python, everything is an object, and can be handled as such. This is " "what is meant when we say, for example, that functions are first-class " @@ -746,9 +804,12 @@ msgid "" " arguments, and they may have methods and properties. In this " "understanding, Python is an object-oriented language." msgstr "" -"파이썬에서 모든 것은 객체다. 그리고 객체처럼 다룰 수 있다. 말하자면 first-class 객체를 예로 들 수 있다. 함수, " -"클래스, 문자열, 심지어 타입도 파이썬에서는 객체다. 다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 있다. 또한" -" 메소드와속성을 가질 수도 있다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것이다." +"파이썬에서 모든 것은 객체입니다. 그리고 객체처럼 다룰 수 있습니다. " +"이 말인즉 함수는 일급 객체라고 말하는 것과 같은 의미입니다. " +"클래스, 문자열, 심지어 타입도 파이썬에서는 객체입니다. " +"다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 있습니다. " +"메소드와 속성을 가질 수도 있습니다. " +"이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것입니다. " #: ../../writing/structure.rst:511 msgid "" @@ -758,9 +819,10 @@ msgid "" "definitions, class inheritance, or any other mechanisms that are specific" " to object-oriented programming." msgstr "" -"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 있지 않다. 객체지향으로 만들지 않은 파이썬 " -"프로젝트도 완벽하게 실행 가능하다. 즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있다.클래스 상속이나 객체지향 " -"프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지다." +"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 있지 않습니다. " +"객체지향으로 만들지 않은 파이썬 프로젝트도 완벽하게 실행 가능합니다. " +"즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있습니다. " +"클래스 상속이나 객체지향 프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지입니다." #: ../../writing/structure.rst:517 msgid "" @@ -771,9 +833,13 @@ msgid "" "have more latitude to not use object-orientation, when it is not required" " by the business model." msgstr "" -"게다가 modules 섹션에서 볼 수 있듯이 파이썬이 모듈과 명칭 공간(namespace)를 다루는 방식은개발자로 하여금 자연스럽게" -" 캡슐화와 추상 레이어의 분리를 가능하게 해준다. 캡슐화와 추상 레이어의 분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유다. " -"그러므로 파이썬 프로그래머는 비지니스 모델이 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 된다." +"게다가 modules_ 섹션에서 볼 수 있듯이 " +"파이썬이 모듈과 네임스페이스(namespace)를 다루는 방식은 " +"개발자로 하여금 자연스럽게 " +"캡슐화와 추상 레이어의 분리를 가능하게 해줍니다. " +"캡슐화와 추상 레이어의 분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유입니다. " +"그러므로 파이썬 프로그래머는 비지니스 모델이 굳이 객체지향을 필요로 하지 않는다면 " +"거기에 얽메이지 않아도 됩니다." #: ../../writing/structure.rst:524 msgid "" @@ -782,9 +848,8 @@ msgid "" "some functionality. The problem, as pointed out by the discussions about " "functional programming, comes from the \"state\" part of the equation." msgstr "" -"불필요한 객체지향을 피해야 할 이유는 여러가지가 있다. 어떤 구문과 기능은 한데 모아두는 편이 더 유용할 때가 있다. 이럴 때는 " -"사용자 정의 클래스를 정의해서 쓰면 편리하다. 문제는 함수형 프로그래밍의 문제점으로 지적되는 등식 부분의 \"구문\" 에서 " -"발생한다." +"불필요한 객체지향을 피해야 할 이유는 많습니다. 어떤 상태와 기능은 한데 모아두는 편이 더 유용할 때가 있습니다. 이럴 때는 " +"사용자 정의 클래스를 정의해서 쓰면 편리합니다. 문제는 함수형 프로그래밍의 문제점으로 지적되는 것처럼 \"상태\" 를 대입할 때 발생합니다." #: ../../writing/structure.rst:529 msgid "" @@ -802,16 +867,16 @@ msgid "" "actually occurs after the first process loaded the item, and then we have" " to mark as read a deleted object." msgstr "" -"어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생한다. 동시에 발생하는 외부의 요청에 응답하기 " -"위해서다. 이런 경우에는 구문의 실행이 멈춰져 예정된 오브젝트가 된다. 즉 어떤 고정된 정보를 계속 잡고 있는 것이다. 이때문에 " -"동시성의 문제나 경합 상황이 발생하기 쉽다." +"어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생합니다. 동시에 발생하는 외부의 요청에 응답하기 " +"위해서입니다. 이런 경우에는 구문의 실행이 멈춰져 예정된 오브젝트가 됩니다. 즉 어떤 고정된 정보를 계속 잡고 있는 것입니다. 이때문에 " +"동시성의 문제나 경합 상황이 발생하기 쉽습니다." #: ../../writing/structure.rst:542 msgid "" "This and other issues led to the idea that using stateless functions is a" " better programming paradigm." msgstr "" -"이 문제 뿐만 아니라 다른 설명하지 않은 문제들이 발생하기도 한다. 이 때문에 구문없는 함수가 더 나은 프로그래밍 패러다임으로 " +"이 문제 뿐만 아니라 다른 설명하지 않은 문제들이 발생하기도 합니다. 이 때문에 상태없는 함수가 더 나은 프로그래밍 패러다임으로 " "생각되기도 한다." #: ../../writing/structure.rst:545 @@ -824,48 +889,48 @@ msgid "" "implicit context. If a function saves or deletes data in a global " "variable or in the persistence layer, it is said to have a side-effect." msgstr "" -"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와 프로시저를 사용하는 것이다. 전역 변수를 " -"아무렇게나 사용하거나, 함수 내부에 있는 퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해진다. 여기서 부작용이란 함수가 " -"함수 자체의 의미를 바꿔버리는 변화를 의미한다. 만약 함수가 퍼시스턴스 레이어에 있는 데이터나 전역 변수에 있는 데이터를 " -"날려버리거나 저장하는 경우를 말한다." +"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와 프로시저를 사용하는 것입니다. 전역 변수를 " +"아무렇게나 사용하거나, 함수 내부에 있는 퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해집니다. 여기서 부작용이란 함수가 " +"함수를 둘러싼 맥락을 바꿔버리는 변화를 의미합니다. 만약 함수가 퍼시스턴스 레이어에 있는 데이터나 전역 변수에 있는 데이터를 " +"날려버리거나 저장해 버린다면, 이런 것을 부작용이라 부릅니다. " #: ../../writing/structure.rst:553 msgid "" "Carefully isolating functions with context and side-effects from " "functions with logic (called pure functions) allow the following " "benefits:" -msgstr "함수가 잘 분리되어 있고 부작용도 없는 순수 함수라면 다음과 같은 장점이 있다." +msgstr "함수가 잘 분리되어 있고 부작용도 없는 순수 함수라면 다음과 같은 장점이 있습니다." #: ../../writing/structure.rst:556 msgid "" "Pure functions are deterministic: given a fixed input, the output will " "always be the same." -msgstr "순수 함수는 결정성이 있다. 즉, 같은 입력값이 있으면 언제나 같은 출력값을 낸다. " +msgstr "순수 함수는 결정성이 있습니다. 즉, 같은 입력값이 있으면 언제나 같은 출력값을 냅니다. " #: ../../writing/structure.rst:559 msgid "" "Pure functions are much easier to change or replace if they need to be " "refactored or optimized." -msgstr "순수 함수는 수정하거나 최적화 작업이 필요할 때 쉽게 수정 및 변경할 수 있다." +msgstr "순수 함수는 수정하거나 최적화 작업이 필요할 때 쉽게 수정 및 변경할 수 있습니다." #: ../../writing/structure.rst:562 msgid "" "Pure functions are easier to test with unit-tests: There is less need for" " complex context setup and data cleaning afterwards." -msgstr "순수 함수는 단위 테스트를 하기 쉽다. 즉, 복잡한 테스트 셋업 작업과 데이터 삭제 작업에 손이 덜 간다." +msgstr "순수 함수는 단위 테스트를 하기 쉽습니다. 즉, 복잡한 테스트 셋업 작업과 데이터 삭제 작업에 손이 덜 갑니다." #: ../../writing/structure.rst:565 -#, fuzzy msgid "Pure functions are easier to manipulate, decorate, and pass around." -msgstr "순수 함수는 다루기 쉽고, 기능을 더하기도 쉽고, 없애기도 쉽다." +msgstr "순수 함수는 다루기 쉽고, 기능을 더하기도 쉽고, 없애기도 쉽습니다." #: ../../writing/structure.rst:567 -#, fuzzy msgid "" "In summary, pure functions are more efficient building blocks than " "classes and objects for some architectures because they have no context " "or side-effects." -msgstr "요약하자면, 독립적이고 부작용도 없는 순수 함수는 다른 어떠한 아키텍처의 클래스나 객체보다도 효과적인 구성 요소라고 할 수 있다." +msgstr "" +"한마디로, 많은 아키텍처에서 순수한 함수는 가장 효율적인 건축 자재입니다. " +"클래스나 오브젝트보다 낫습니다. 순수한함수는 어떤 컨텍스트나 부작용도 없기 때문입니다. " #: ../../writing/structure.rst:570 msgid "" @@ -875,8 +940,8 @@ msgid "" "vehicles) have a relatively long life of their own in the computer's " "memory." msgstr "" -"분명히 객체지향은 유용하다. 그리고 꼭 필요한 경우가 많다. 예를 들면 데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼, " -"아바타, 탈것이 있는 게임같은 경우다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문이다." +"분명히 객체지향은 유용합니다. 그리고 꼭 필요한 경우가 많습니다. 예를 들면 데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼, " +"아바타, 탈것이 있는 게임같은 경우에 그렇습니다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문입니다." #: ../../writing/structure.rst:577 msgid "Decorators" @@ -891,12 +956,11 @@ msgid "" "functions are first-class objects in Python, this can be done 'manually'," " but using the @decorator syntax is clearer and thus preferred." msgstr "" -"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있다.데코레이터는 함수나 메소드를 감싸는(장식하는) 함수나 클래스다." -" '장식된' 함수나 메소드는 원래의 '장식되지 않은' 함수나 메소드를 대체한다.함수는 파이썬에서 first-class 객체이기 " -"때문이다. 이 작업은 '수작업'으로도 가능하지만 @decorator 문법을 쓰면 깔끔하게 쓸 수 있다. 그래서 많이들 쓴다." +"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있습니다. 데코레이터는 함수나 메소드를 감싸는(데코레이트 하는) 함수나 클래스입니다." +" '데코레이트 된' 함수나 메소드는 원래의 '데코레이트 되지 않은' 함수나 메소드를 대체합니다. 함수는 파이썬에서 일급 객체이기 " +"때문입니다. 이 작업은 '수작업'으로도 가능하지만 @decorator 문법을 쓰면 깔끔하게 쓸 수 있습니다. 그래서 많이들 씁니다." #: ../../writing/structure.rst:602 -#, fuzzy msgid "" "This mechanism is useful for separating concerns and avoiding external " "un-related logic 'polluting' the core logic of the function or method. A " @@ -907,13 +971,14 @@ msgid "" "them directly instead of recomputing them when they have already been " "computed. This is clearly not part of the function logic." msgstr "" -"이 방법으로 함수나 메소드의 핵심 로직을 외부의 관련없는 로직이 오염시키는 일을 피할 수 있기 때문에 유용하다. 예를 들면 " -"데코레이션을 써서 다루는 편이 좋은 기능으로 메모이제이션과 캐싱을 들 수 있다. 무거운 함수의 결과값을 테이블에 저장한 다음, 이미" -" 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 것이다. 이는 함수에서 자체적으로 가지고 있어야 할 기능은 아니다." +"이 방법은 외부의 관련없는 로직이 함수나 메소드의 핵심 로직을 오염시키는 사태를 피할 수 있기 때문에 유용합니다. " +"데코레이션을 써서 다루는 편이 좋은 기능으로 예를 들면 `메모이제이션` 과 캐싱을 들 수 있습니다. 무거운 함수의 결과값을 테이블에 저장한 다음, 이미" +" 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 것입니다. " +"물론 이런 것은 함수 자체의 로직과는 별개입니다. " #: ../../writing/structure.rst:611 msgid "Context Managers" -msgstr "" +msgstr "컨텍스트 관리자" #: ../../writing/structure.rst:613 msgid "" @@ -924,6 +989,11 @@ msgid "" "inside the ``with`` block. The most well known example of using a context" " manager is shown here, opening on a file:" msgstr "" +"컨텍스트 관리자는 동작에 추가적인 컨텍스트 정보를 추가하는 파이썬 오브젝트입니다. " +"이 추가 정보는 ``with`` 구문으로 컨텍스트를 새로 열면서 " +"함수를 실행하는 형태로 만들어집니다. " +"마찬가지로 ``with`` 블럭 안의 모든 코드를 종료시킬 때도 함수를 실행합니다. " +"컨텍스트 관리자를 사용하는 가장 유명한 예시는 이렇습니다. 파일을 열고: " #: ../../writing/structure.rst:624 msgid "" @@ -932,6 +1002,9 @@ msgid "" "point. This reduces a developer's cognitive load and makes the code " "easier to read." msgstr "" +"이런 식의 패턴에 익숙한 사람은 " +"이런 방식으로 ``open`` 을 실행하면 ``f`` 의 ``close`` 메소드가 " +"언젠가는 반드시 실행됨을 잘 알 것입니다. " #: ../../writing/structure.rst:628 msgid "" @@ -939,6 +1012,9 @@ msgid "" " class or using a generator. Let's implement the above functionality " "ourselves, starting with the class approach:" msgstr "" +"이런 기능을 직접 구현하는 2가지 쉬운 방법이 있습니다: " +"클래스를 사용하거나, 생성자를 사용하는 것입니다. " +"먼저 클래스를 사용하는 방법으로 위의 기능을 직접 구현해 봅시다. " #: ../../writing/structure.rst:647 msgid "" @@ -949,12 +1025,18 @@ msgid "" "contents of the ``with`` block is finished executing, the ``__exit__`` " "method is then called." msgstr "" +"위 예시는 ``with`` 에서 사용될 2개의 추가 메소드가 있는 일반적인 파이썬 오브젝트입니다. " +"CustomOpen 은 먼저 인스턴스화되고, 그 다음에 ``__enter__`` 메소드가 호출됩니다. " +"그리고 ``__enter__`` 함수가 리턴하는 ``as f`` 구문 안의 모든 결과값들이 ``f`` 에 할당됩니다. " +" ``with`` 블럭 안의 구문들이 모두 수행된 후에는 ``__exit__`` 메소드가 호출됩니다. " #: ../../writing/structure.rst:653 msgid "" "And now the generator approach using Python's own `contextlib " "`_:" msgstr "" +"그러면 이번에는 파이썬의 `contextlib " +"`_ 를 써서 생성자로 위의 기능을 구현해봅시다:" #: ../../writing/structure.rst:671 msgid "" @@ -965,6 +1047,12 @@ msgid "" " portion. The ``finally`` clause ensures that ``close()`` is called " "whether or not there was an exception inside the ``with``." msgstr "" +"이렇게 해도 위의 클래스 예시와 똑같이 동작합니다. 물론 이 방법이 더 간결합니다. " +"``custom_open`` 함수는 ``yield`` 구문에 닿을 때까지 실행됩니다. " +"그 다음 ``with`` 구문에게 제어권을 넘깁니다. " +"``as f`` 안에서 어떤 ``yield`` 가 `f` 에 할당되든 상관없습니다. " +"``finally`` 명령은 ``with`` 안에서 예외현상이 발생하든 말든 " +"반드시 ``close()`` 를 실행합니다. " #: ../../writing/structure.rst:678 msgid "" @@ -974,13 +1062,16 @@ msgid "" "approach might be better for situations where we're dealing with a simple" " action." msgstr "" +"둘 중 어느 방법을 사용하든 결과는 마찬가지이기 때문에, 우리는 " +"파이썬 선(禪)에 따라 어떤 때 어느 것을 쓸지 선택해야 합니다. " +"클래스를 쓰는 방법은 캡슐화해야하는 대량의 로직이 있을 때 좋습니다. " +"생성자를 쓰는 방법은 간단한 동작을 다룰 때 좋은 방법입니다. " #: ../../writing/structure.rst:684 msgid "Dynamic typing" -msgstr "동적 타입" +msgstr "동적 타이핑" #: ../../writing/structure.rst:686 -#, fuzzy msgid "" "Python is dynamically typed, which means that variables do not have a " "fixed type. In fact, in Python, variables are very different from what " @@ -990,10 +1081,11 @@ msgid "" " is therefore possible for the variable 'a' to be set to the value 1, " "then to the value 'a string', then to a function." msgstr "" -"파이썬은 동적 타입이 되는 언어라고 불린다. 이 말은 변수가 고정된 타입을 가지고 있지 않다는 뜻이다. 사실 파이썬의 변수는 다른 " -"수많은 언어, 특히 정적 타입 언어의 변수와는 아주 다르다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 객체를 " -"가리키는 컴퓨터 메모리의 한 조각이 아니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, 값 'a string'을 가지고, 또" -" 함수가 될 수도 있는 것이다." +"파이썬은 동적 타이핑이 되는 언어라고 불립니다. " +"이 말은 변수가 고정된 타입을 가지고 있지 않다는 뜻입니다. 사실 파이썬의 변수는 다른 " +"수많은 언어, 특히 정적 타입 언어의 변수와는 아주 다릅니다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 객체를 " +"가리키는 컴퓨터 메모리의 한 조각이 아닙니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, 값 'a string'을 가지고, 또" +" 함수가 될 수도 있는 것입니다. " #: ../../writing/structure.rst:693 msgid "" @@ -1003,13 +1095,14 @@ msgid "" "maintainer needs to track this name in the code to make sure it has not " "been set to a completely unrelated object." msgstr "" -"동적 타입은 종종 파이썬의 약점으로 여겨지기도 한다. 실제로 동적 타입은 코드를 복잡하게 만들고 디버깅하기 어렵게 만든다. " +"동적 타이핑은 종종 파이썬의 약점으로 여겨지기도 합니다. " +"실제로 동적 타이핑은 코드를 복잡하게 만들고 디버깅하기 어렵게 만듭니다. " "'a'라는 이름이 너무나 많은 것이 될 수 있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 무관한 " -"객체인지를 확인하기 위해 코드 전체를 뒤져야 한다." +"객체인지를 확인하기 위해 코드 전체를 뒤져야 합니다." #: ../../writing/structure.rst:699 msgid "Some guidelines help to avoid this issue:" -msgstr "이러한 문제를 피하기 위한 가이드라인을 소개한다." +msgstr "이러한 문제를 피하기 위한 가이드라인을 소개합니다." #: ../../writing/structure.rst:701 msgid "Avoid using the same variable name for different things." @@ -1028,13 +1121,17 @@ msgstr "**좋은 예**" msgid "" "Using short functions or methods helps reduce the risk of using the same " "name for two unrelated things." -msgstr "메소드나 함수를 짧게 쓰는 방법은 상관없는 것들에게 같은 이름을 붙이는 위험을 줄일 수 있다." +msgstr "" +"메소드나 함수를 짧게 쓰는 방법은 " +"같은 이름을 상관없는 것들에게 붙이는 위험을 줄일 수 있습니다." #: ../../writing/structure.rst:724 msgid "" "It is better to use different names even for things that are related, " "when they have a different type:" -msgstr "관련된 것이라고 해도 다른 타입을 가진다면 다른 이름을 붙이는 편이 좋다." +msgstr "" +"관련된 것이라고 해도 다른 타입을 가진다면 " +"다른 이름을 붙이는 편이 좋습니다. " #: ../../writing/structure.rst:735 msgid "" @@ -1044,8 +1141,11 @@ msgid "" "branches and loops, it becomes harder to ascertain what a given " "variable's type is." msgstr "" -"한 번 쓴 이름을 재활용 하는 것은 비효율적이다. 대입문은 반드시 새로운 객체를 만들어야 한다. 하지만 너무 복잡해지고, 'if' " -"분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 변수가 어떤 타입인지 확인하기 어려워진다." +"한 번 쓴 이름을 재활용 하는 것은 비효율적입니다. " +"대입문은 반드시 새로운 객체를 만들어야 합니다. " +"하지만 너무 복잡해지고, 'if' " +"분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 " +"변수가 어떤 타입인지 확인하기 어려워집니다. " #: ../../writing/structure.rst:741 msgid "" @@ -1056,9 +1156,13 @@ msgid "" "assigning to a variable more than once, and it helps in grasping the " "concept of mutable and immutable types." msgstr "" -"함수형 프로그래밍의 코딩 습관처럼 재할당이 불가능한 변수의 사용을 추천한다. 자바에서는 `final` 키워드로 가능하다. 파이썬은 " -"`final` 키워드가 없고, 또한 이러한 방법은 파이썬의 철학에 반하는 일이다. 하지만 변수를 한 번 이상 재할당하지 않는 것은 " -"좋은 습관이며, 가변 타입과 불변 타입을 이해하는데 도움이 될 것이다." +"함수형 프로그래밍의 코딩 습관처럼 " +"재할당이 불가능한 변수의 사용을 추천합니다. " +"자바에서는 `final` 키워드로 가능합니다. " +"파이썬은 `final` 키워드가 없고, " +"이러한 방법은 파이썬의 철학에 반하는 일입니다. " +"하지만 변수를 한 번 이상 재할당하지 않는 것은 좋은 습관이며, " +"가변 타입과 불변 타입을 이해하는데 도움이 될 것입니다." #: ../../writing/structure.rst:748 msgid "Mutable and immutable types" @@ -1066,7 +1170,7 @@ msgstr "가변 타입과 불변 타입" #: ../../writing/structure.rst:750 msgid "Python has two kinds of built-in or user-defined types." -msgstr "파이썬에는 내장 타입과 사용자 정의 타입이 있다." +msgstr "파이썬에는 내장 타입과 사용자 정의 타입이 있습니다." #: ../../writing/structure.rst:752 msgid "" @@ -1075,9 +1179,11 @@ msgid "" "methods, like :py:meth:`list.append` or :py:meth:`list.pop`, and can be " "modified in place. The same goes for dictionaries." msgstr "" -"가변 타입은 내부에서 자체적으로 변경이 가능하다. 일반적인 가변 타입은 리스트와 딕셔너리다. 모든 리스트에는 " -":py:meth:`list.append` 나 :py:meth:`list.pop` 처럼 자체적으로 변경 가능한 메소드가 있다. " -"딕셔너리도 마찬가지다. " +"가변 타입은 내부에서 자체적으로 조작이 가능합니다. " +"일반적인 가변 타입에는 리스트와 딕셔너리가 있습니다. " +"모든 리스트에는 " +":py:meth:`list.append` 나 :py:meth:`list.pop` 처럼 자체적으로 조작 가능한 메소드가 있습니다. " +"딕셔너리도 마찬가지입니다. " #: ../../writing/structure.rst:757 msgid "" @@ -1086,14 +1192,18 @@ msgid "" "method. If you want to compute x + 1, you have to create another integer " "and give it a name." msgstr "" -"불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않는다. 예를 들면 integer 6으로 설정된 변수 x에는 " -"\"increment\" 가 없다. 만약 x에 1을 더하고 싶다면 다른 integer 변수를 만들어서 이름을 부여해야 한다. " +"불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않습니다. " +"예를 들면 integer 6으로 설정된 변수 x에는 " +" \"increment\" 가 없습니다. " +"만약 x에 1을 더하고 싶다면 다른 integer 변수를 만들어서 이름을 부여해야 합니다. " #: ../../writing/structure.rst:770 msgid "" "One consequence of this difference in behavior is that mutable types are " "not \"stable\", and therefore cannot be used as dictionary keys." -msgstr "이러한 차이 때문에 가변 타입은 \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없다." +msgstr "" +"이러한 차이 때문에 가변 타입은 " +" \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없습니다." #: ../../writing/structure.rst:774 msgid "" @@ -1101,8 +1211,9 @@ msgid "" "immutable types for things that are fixed in nature helps to clarify the " "intent of the code." msgstr "" -"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, 원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 코드의 " -"목적을 명확히 하는데 도움이 된다." +"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, " +"원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 코드의 " +"목적을 명확히 하는데 도움이 됩니다. " #: ../../writing/structure.rst:778 msgid "" @@ -1110,8 +1221,10 @@ msgid "" "with ``(1, 2)``. This tuple is a pair that cannot be changed in-place, " "and can be used as a key for a dictionary." msgstr "" -"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능하다. ``(1, 2)`` 로 만든다. 튜플은 자체적으로 변경이 불가능하면서, " -"딕셔너리의 키로 사용할 수 있다." +"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능합니다. " +"튜를은 ``(1, 2)`` 로 만들 수 있습니다. " +"튜플은 내부적으로 변경이 불가능하기 때문에 " +"딕셔너리의 키로 사용할 수 있습니다. " #: ../../writing/structure.rst:782 msgid "" @@ -1123,10 +1236,14 @@ msgid "" "better and faster than constructing a list in a loop with calls to " "``append()``." msgstr "" -"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점이다.이는 문자열의 일부를 다시 만들고 싶을 때, 애시당초" -" 리스트로 만들어서 그 일부를 변경하는 편이 효율적이라는 뜻이다. 리스트는 변경 가능하고, 전체 문자열이 필요하면 ('join')을" -" 사용하여 한데 이어 붙일 수 있기 때문이다. 하지만 한가지 알아둬야 할 점은 반복문에서 ``append()`` 메소드를 호출해 " -"리스트를 만드는 것보다 리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 것이다." +"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점입니다. " +"이는 문자열의 일부를 다시 만들고 싶을 때, 애시당초 " +"리스트로 만들어서 그 일부를 변경하는 편이 효율적이라는 뜻입니다. " +"리스트는 변경 가능하고, 전체 문자열이 필요하면 ('join')을 " +"사용하여 한데 이어 붙일 수 있기 때문입니다. " +"하지만 한가지 알아둬야 할 점은 반복문에서 ``append()`` 메소드를 호출해 " +"리스트를 만드는 것보다 " +"리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 것입니다." #: ../../writing/structure.rst:818 msgid "" @@ -1136,22 +1253,27 @@ msgid "" " faster, but in cases like above or in cases where you are adding to an " "existing string, using ``join()`` should be your preferred method." msgstr "" -"문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것이다. 문자열이 몇 개 있을지 미리 정해져" -" 있는 상태에서 새로운 문자열을 만들 때는 더하기 연산자를 쓰는 편이 실제로 더 빠르다. 하지만 문자열이 몇 개 있을지 정해져 있지" -" 않거나, 이미 만들어진 문자열에 추가로 문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것이다. " +"문자열에 대해 마지막으로 말할 것은 " +" ``join()`` 을 쓰는게 항상 좋지는 않다는 것입니다. " +"문자열이 몇 개 있을지 미리 정해져 있는 상태에서 새로운 문자열을 만들 때는 " +"더하기 연산자를 쓰는 편이 실제로 더 빠릅니다. " +"하지만 문자열이 몇 개 있을지 정해져 있지 않거나, " +"이미 만들어진 문자열에 추가로 문자열을 더할 때는 " +" ``join()`` 을 쓰는 편을 선호하게 될 것입니다. " #: ../../writing/structure.rst:834 -#, fuzzy msgid "" "You can also use the :ref:`% ` formatting " "operator to concatenate a pre-determined number of strings besides " ":py:meth:`str.join` and ``+``. However, :pep:`3101`, discourages the " "usage of the ``%`` operator in favor of the :py:meth:`str.format` method." msgstr "" -"또한 :py:meth:`str.join` 와 ``+`` 외에 포맷 연산자 :ref:`% ` 를 써서 미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있다. 하지만 :pep:`3101` 에 따르면" -" ``%`` 연산자는 파이썬 3.1에서는 사라졌고 최신 버전에서는 :py:meth:`str.format` 로 대체될 것이라고 " -"한다." +":py:meth:`str.join` 과 ``+`` 외에도 " +"포맷 연산자 :ref:`% ` 를 써서 " +"미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있습니다. " +"하지만 :pep:`3101` 에 따르면 " +" ``%`` 연산자는 사용하지 말 것을 권장하고 있으며 " +" :py:meth:`str.format` 를 대신 쓸 것을 권장하고 있습니다. " #: ../../writing/structure.rst:850 msgid "Vendorizing Dependencies" From 4b1ee907becf9fc9e8324eb3cd8aad99ff4769b7 Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Thu, 20 Oct 2016 07:46:56 +0000 Subject: [PATCH 033/117] update requirements.txt --- requirements.txt | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/requirements.txt b/requirements.txt index 11f918719..f0ed19318 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,8 +1,4 @@ -<<<<<<< HEAD -requests -sphinx sphinx-intl -======= alabaster==0.7.7 Babel==2.2.0 docutils==0.12 @@ -14,5 +10,4 @@ six==1.10.0 snowballstemmer==1.2.1 Sphinx==1.3.5 sphinx-rtd-theme==0.1.9 -wheel==0.29.0 ->>>>>>> master +wheel==0.29.0 \ No newline at end of file From 2ac6ba72924d66070fda63a680a88cdac45aa86c Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Wed, 16 Nov 2016 09:18:11 +0000 Subject: [PATCH 034/117] ~code style --- docs/locale/ko/LC_MESSAGES/writing/style.mo | Bin 34578 -> 41488 bytes docs/locale/ko/LC_MESSAGES/writing/style.po | 497 ++++++++++++-------- 2 files changed, 292 insertions(+), 205 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.mo b/docs/locale/ko/LC_MESSAGES/writing/style.mo index b8b4284cac7d2d43d955c786774d2d5ec233334d..6a3eabeb5a2b5573ac92430c6e1c4d3c29df2093 100644 GIT binary patch literal 41488 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 VF}|bZXu$ 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 원칙에 따르면, " +"\"만약을 위해서\" 추가했고 두 번 다시 사용하지 않은 " +"선택적인 인자(그리고 함수 안에 포함된 관련 로직)을 " +"삭제하기란, 필요할 때 새로운 선택적인 인자와 관련 로직을 추가하기보다 " +"훨씬 어렵습니다. " #: ../../writing/style.rst:126 msgid "" @@ -172,6 +221,13 @@ msgid "" " 'God', 'Mom', 'Cthulhu')``, and in the function body ``args`` will be " "equal to ``('God', 'Mom', 'Cthulhu')``." msgstr "" +"**임의 인자 리스트** 는 함수에 인자를 보내는 세번째 방법입니다. " +"위치 인자에 추가적인 번호를 달아야 함수의 의도가 보다 잘 설명되는 경우에는 " +"``*args`` 생성자를 쓰면 됩니다. " +"함수 본문에서 ``args`` 는 나머지 모든 위치 인자의 튜플이 됩니다. " +"예를 들어 ``send(message, *args)`` 는 이런 식으로 인자가 호출됩니다: " +"``send('Hello', 'God', 'Mom', 'Cthulhu')`` 를 호출하면, " +"함수 본문에서 ``args`` 는 ``('God', 'Mom', 'Cthulhu')`` 와 같습니다. " #: ../../writing/style.rst:135 msgid "" @@ -186,6 +242,16 @@ msgid "" " any sequence, including iterators, that cannot be unpacked as other " "sequences." msgstr "" +"하지만 이 생성자에는 문제점이 있으니 주의하셔야 합니다. " +"만약 함수가 같은 속성을 가진 인자의 리스트를 받는다면 ," +"이 리스트는 리스트나 시퀀스의 형태를 가진 하나의 " +"인자로 정의하는 편이 보다 명확할 때가 많습니다. " +"예를 들어 ``send`` 가 복수의 수신자를 가진다면 " +"이런 식으로 명확하게 정의하는 편이 좋습니다: " +"``send(message, recipients)`` 로 정의하고, " +"``send('Hello', ['God', 'Mom', 'Cthulhu'])`` 로 호출합니다. " +"이 방식에서는 함수를 사용하는 사람들이 미리 수신자 명단을 리스트로 가공할 수 있고, " +"어느 시퀀스를 넘겨받든 이터레이터만 있으면 원하는 방식으로 풀 수 있습니다. " #: ../../writing/style.rst:144 msgid "" @@ -196,6 +262,11 @@ msgid "" "named arguments that have not been caught by other keyword arguments in " "the function signature." msgstr "" +"**임의 키워드 인자 딕셔너리** 는 함수에 인자를 넘기는 마지막 방식입니다. " +"만약 함수가 필요로 하는 인자가 몇 개가 들어올지 알 수 없으되 이름이 붙어있다면, " +"``kwargs`` 생성자를 사용할 수 있습니다. " +"함수 본문에서 ``kwargs`` 는 이름붙은 모든 인자의 딕셔너리가 되는데 " +"이러한 인자들은 오로지 ``kwargs`` 로만 받을 수 있습니다. " #: ../../writing/style.rst:151 msgid "" @@ -205,6 +276,10 @@ msgid "" " if the simpler and clearer construct is sufficient to express the " "function's intention." msgstr "" +"비슷한 이유로 *임의 인자 리스트* 를 쓸 때도 조심해야합니다: " +"이런 강력한 테크닉은 꼭 필요한 경우에만 써야합니다. " +"그리고 다른 간단하고 명쾌한 생성자로도 함수의 의도를 표현하기에 충분하다면 " +"절대 쓰면 안됩니다. " #: ../../writing/style.rst:156 msgid "" @@ -214,20 +289,24 @@ msgid "" "arbitrary argument passing. If the advice above is followed wisely, it is" " possible and enjoyable to write Python functions that are:" msgstr "" +"어느 인자를 위치 인자로 쓸지, 어느 인자를 선택적 키워드 인자로 쓸지, " +"임의 인자를 넘기는 고급 기술을 쓸지 말지를 결정하는 것은 " +"전적으로 함수를 작성하는 프로그래머에게 달렸습니다. " +"지금까지의 조언이 현명하게 쓰인다면, 파이썬 함수를 이렇게 즐겁게 작성할 수 있습니다: " #: ../../writing/style.rst:162 msgid "easy to read (the name and arguments need no explanations)" -msgstr "" +msgstr "읽기 쉽다(이름과 인자를 설명할 필요가 없다)" #: ../../writing/style.rst:164 msgid "" "easy to change (adding a new keyword argument does not break other parts " "of the code)" -msgstr "" +msgstr "변경하기 쉽다(새 키워드 인자를 추가해도 코드의 다른 부분을 망가뜨리지 않는다)" #: ../../writing/style.rst:168 msgid "Avoid the magical wand" -msgstr "" +msgstr "마법의 지팡이를 피하기" #: ../../writing/style.rst:170 msgid "" @@ -235,20 +314,23 @@ msgid "" "and tools allowing you to do almost any kind of tricky tricks. For " "instance, it is possible to do each of the following:" msgstr "" +"파이썬은 해커를 위한 막강한 도구입니다. " +"파이썬에는 어떠한 종류의 교묘한 트릭이라도 가능하게 해주는 다양한 도구들이 있습니다. " +"예를 들자면 이런 것들입니다: " #: ../../writing/style.rst:174 msgid "change how objects are created and instantiated" -msgstr "" +msgstr "객체들이 어떻게 생성되고 초기화되었는지를 변경" #: ../../writing/style.rst:176 msgid "change how the Python interpreter imports modules" -msgstr "" +msgstr "파이썬 인터프리터가 모듈을 임포트 하는 방법을 변경" #: ../../writing/style.rst:178 msgid "" "it is even possible (and recommended if needed) to embed C routines in " "Python." -msgstr "" +msgstr "파이썬에 C 루틴을 넣는 것도 가능(필요하면 추천하기도)" #: ../../writing/style.rst:180 msgid "" @@ -258,6 +340,10 @@ msgid "" "code analysis tools, such as pylint or pyflakes, will be unable to parse " "this \"magic\" code." msgstr "" +"하지만 이 모든 방법은 결점이 있습니다. " +"그리고 목표를 향해 곧바로 나아가는 방법이 늘 더 좋습니다. " +"가장 중요한 문제점은 이러한 생성자를 쓰면 가독성이 엄청나게 훼손된다는 점입니다. " +"파이린트나 파이플레이크 같은 많은 코드 분석 툴이 이런 \"마법\" 코드를 파싱하지 못합니다. " #: ../../writing/style.rst:185 msgid "" @@ -266,16 +352,21 @@ msgid "" " problem will be on the way. However, knowing how and particularly when " "**not** to use them is very important." msgstr "" +"우리는 파이썬 개발자들이 이러한 무한한 가능성을 알았으면 좋겠습니다. " +"해결불가능한 문제는 없다는 자신감을 심어주기 때문입니다. " +"하지만 어떻게, 특히 어느 시점에 이런 마법의 지팡이를 **사용하지 말아야 하는지** 를 아는 것은 대단히 중요합니다. " #: ../../writing/style.rst:190 msgid "" "Like a kung fu master, a Pythonista knows how to kill with a single " "finger, and never to actually do it." msgstr "" +"쿵푸의 달인처럼, 파이써니스타는 한 손가락으로 사람을 죽일 수 있지만 " +"절대 실전에서 그것을 사용하지 않습니다. " #: ../../writing/style.rst:194 msgid "We are all responsible users" -msgstr "" +msgstr "우리는 모두 책임감 있는 사용자다" #: ../../writing/style.rst:196 msgid "" @@ -286,6 +377,11 @@ msgid "" "languages like Java, which give a lot of mechanisms to prevent any " "misuse, is expressed by the saying: \"We are all responsible users\"." msgstr "" +"위에서 본대로 파이썬에서는 많은 트릭이 가능하지만 이런 것들은 위험할 수 있습니다. " +"어느 클라이언트 코드가 객체의 속성과 메소드를 오버라이드 할 수 있다는 것은 " +"이 위험성에 대한 좋은 예시입니다. 파이썬에는 \"private\" 키워드가 없습니다. " +"이는 자바처럼 오류를 막기 위한 많은 메커니즘을 가지고 있는 방어적인 언어와는 아주 다릅니다. " +"이러한 철학은 다음과 같이 표현할 수 있습니다: \"우리는 모두 책임감 있는 사용자다\"." #: ../../writing/style.rst:203 msgid "" @@ -296,6 +392,11 @@ msgid "" "conventions indicating that these elements should not be accessed " "directly." msgstr "" +"이 말의 의미인즉 이런 경우를 말하는 것입니다. " +"파이썬에는 private로 인식되는 속성이 없습니다. 캡슐화도 불가능합니다. " +"파이썬에서는 개발자가 자신이 만든 코드와 다른 코드들 사이에 콘트리트 장벽을 세우고 " +"거기에 의지하지 않습니다. 대신에 파이썬 커뮤니티에는 코딩 컨벤션이 있습니다. " +"코딩 컨벤션을 통해서 직접 접근해서는 안 될 엘리먼트들을 알려줍니다. " #: ../../writing/style.rst:209 msgid "" @@ -305,6 +406,10 @@ msgid "" "problems encountered if the code is modified is the responsibility of the" " client code." msgstr "" +"private 속성과 그 상세한 구현을 위한 코딩 컨벤션은 " +"\"내부적으로 사용하는\" 모든 변수 앞에 언더스코어(_)를 붙이는 것입니다. " +"만약 클라이언트 코드가 이 룰을 무시하고 어떤 엘리먼트에 접근하려고 한다면 " +"그 코드가 겪을지도 모를 모든 문제와 오용은 전적으로 클라이언트 코드의 책임입니다. " #: ../../writing/style.rst:214 msgid "" @@ -315,10 +420,17 @@ msgid "" " private property, but making a public property private might be a much " "harder operation." msgstr "" +"이 컨벤션을 따를 것을 추천드립니다: " +"클라이언트 코드에서 가져다 쓰라고 만든 메소드나 속성이 아니라면 " +"반드시 앞에 언더스코어(_)를 붙이세요. " +"이렇게 하면 각 코드의 역할을 더 명확히 분리시켜줄 뿐만 아니라, " +"기존 코드의 수정도 쉬워집니다. " +"그리고 private 속성으로 표시하는 것은 언제든지 가능하지만, " +"public 속성을 private로 바꾸기란 훨씬 더 어려운 작업이 될겁니다. " #: ../../writing/style.rst:221 msgid "Returning values" -msgstr "" +msgstr "반환값" #: ../../writing/style.rst:223 msgid "" @@ -327,6 +439,9 @@ msgid "" " clear intent and a sustainable readability level, it is preferable to " "avoid returning meaningful values from many output points in the body." msgstr "" +"함수가 점점 더 복잡해지는 경우, 함수 본문에 여러 개의 리턴 구문이 들어가는 것이 보통입니다. " +"하지만 코드의 의도를 명확히 하면서 가독성의 수준을 유지하기 위하여, " +"함수 본문 안에 여러 개의 리턴문을 넣는 것은 피할 것을 추천합니다. " #: ../../writing/style.rst:228 msgid "" @@ -335,6 +450,11 @@ msgid "" " cases that indicate a wrong input parameter or any other reason for the " "function to not be able to complete its computation or task." msgstr "" +"다음은 함수가 값을 리턴하는 주요 케이스입니다: " +"함수가 정상적으로 실행되었을 때의 리턴값, " +"그리고 잘못된 입력 파라미터나 들어가거나 " +"다른 이유로 인하여 함수의 계산이나 작업을 완료할 수 없어 " +"에러가 발생하는 경우가 있습니다. " #: ../../writing/style.rst:233 msgid "" @@ -347,6 +467,13 @@ msgid "" "further compute the function's main result. Having multiple such return " "statements is often necessary." msgstr "" +"두번째 경우에서 예외를 발생시키고 싶지 않다면, " +"None 이나 False 같이 함수를 정상적으로 수행할 수 없다는 의미의 리턴값이 필요할 것입니다. " +"이런 경우에는 가능한 한 일찍 부정확한 구문이 발견되었음을 알리는 편이 좋습니다. " +"이 방법이 함수의 구조를 매끈하게 하는데 도움이 될 것입니다: " +"에러 때문에 리턴하는 구문 아래의 모든 코드는 " +"해당 함수의 주요 결과물을 계산하기 위한 조건을 만족한다고 볼 수 있습니다. " +"이런 경우에는 여러 개의 리턴 구문이 필요합니다. " #: ../../writing/style.rst:241 msgid "" @@ -356,10 +483,15 @@ msgid "" " some code paths, and the multiple exit points are a probable indication " "that such a refactoring is needed." msgstr "" +"하지만 정상적으로 코드가 돌아가는 부분에도 함수에 여러 개의 종료 지점이 있는 경우, " +"리턴하는 결과물을 디버깅하기 어렵습니다. " +"따라서 함수에 하나의 종료점만 두는 편을 추천합니다. " +"이렇게 하면 코드의 경로를 뽑아내기에 좋습니다. " +"그러니 여러 개의 종료점이 있으면 이는 곧 리팩토링이 필요한 지점일지도 모릅니다. " #: ../../writing/style.rst:262 msgid "Idioms" -msgstr "" +msgstr "이디엄" #: ../../writing/style.rst:264 msgid "" @@ -369,10 +501,14 @@ msgid "" "`_." msgstr "" +"프로그래밍 이디엄이란 간단히 말하자면 코드를 작성하는 *방법* 입니다. " +"이 개념은 `c2 `_ 와 " +"`Stack Overflow `_ 에서 " +"광범위하게 논의된 바 있습니다. " #: ../../writing/style.rst:268 msgid "Idiomatic Python code is often referred to as being *Pythonic*." -msgstr "" +msgstr "자연스러운 파이썬 코드를 흔히들 *파이써닉* 스럽다고 말합니다. " #: ../../writing/style.rst:270 msgid "" @@ -380,14 +516,17 @@ msgid "" " to do it; *the* way to write idiomatic Python code can be non-obvious to" " Python beginners. So, good idioms must be consciously acquired." msgstr "" +"이를 위한 명백한 방법(그리고 유일한 방법이라고 말하고 싶습니다)이 있지만, " +"파이썬 초보자에게는 이상적인 파이썬 코드 작성법이 와닿지 않을 수도 있습니다. " +"그러니 좋은 이디엄들을 의식적으로 숙지해야 합니다. " #: ../../writing/style.rst:274 msgid "Some common Python idioms follow:" -msgstr "" +msgstr "다음은 몇 가지 일반적인 파이썬 이디엄들입니다: " #: ../../writing/style.rst:279 msgid "Unpacking" -msgstr "" +msgstr "언패킹" #: ../../writing/style.rst:281 msgid "" @@ -395,30 +534,36 @@ msgid "" "elements with unpacking. For example, since ``enumerate()`` will provide " "a tuple of two elements for each item in list:" msgstr "" +"리스트나 튜플의 길이를 알고 있다면, 언패킹을 하면서 각 엘리먼트마다 이름을 붙여줄 수 있습니다. " +"예를 들면 ``enumerate()`` 는 리스트 내부에 있는 각각의 아이템에 " +"2개의 엘리먼트가 있는 튜플을 만들어줍니다: " #: ../../writing/style.rst:290 msgid "You can use this to swap variables as well:" -msgstr "" +msgstr "이런 식으로 변수들을 스왑할 수도 있습니다. " #: ../../writing/style.rst:296 msgid "Nested unpacking works too:" -msgstr "" +msgstr "중첩 언패킹도 됩니다: " #: ../../writing/style.rst:302 msgid "" "In Python 3, a new method of extended unpacking was introduced by " ":pep:`3132`:" msgstr "" +"파이썬3에서는 :pep:`3132` 에서 언패킹을 하는 새로운 방법이 소개되었습니다: " #: ../../writing/style.rst:313 msgid "Create an ignored variable" -msgstr "" +msgstr "사용하지 않을 변수 만들기" #: ../../writing/style.rst:315 msgid "" "If you need to assign something (for instance, in :ref:`unpacking-ref`) " "but will not need that variable, use ``__``:" msgstr "" +"사용하지 않을 변수를 가져다가 어딘가에 할당하는 경우 (예를 들면 :ref:`unpacking-ref` 할 경우) " +"``__`` 를 사용하세요: " #: ../../writing/style.rst:325 msgid "" @@ -431,18 +576,25 @@ msgid "" "and eliminates the risk of accidentally interfering with either of these " "other use cases." msgstr "" +"이 안내서에서는 쓸모없는 변수를 치워버리는데 언더스코어 두 줄 \"``__``\" 을 사용할 것을 추천하지만, " +"다른 많은 파이썬 스타일 안내서에서는 언더스코어 한 줄 \"``_``\" 을 사용하라고 합니다. " +"하지만 \"``_``\" 에는 문제가 있습니다. " +"\"``_``\" 이 일반적으로 :func:`~gettext.gettext` 함수의 별칭(alias)로 쓰일 뿐 아니라, " +"대화형 프롬프트상에서 이전 명령어의 결과값을 가지고 있는 변수로 쓰이기 때문입니다. " +"그 대신 언더스코어 두 줄을 사용하면 아주 깔끔하고 편리할 뿐만 아니라, " +"위에서 이야기한 경우가 돌발적으로 나타나 코드를 간섭하는 리스크를 제거할 수 있습니다. " #: ../../writing/style.rst:335 msgid "Create a length-N list of the same thing" -msgstr "" +msgstr "동일한 내용물을 가진 길이 N의 리스트 만들기" #: ../../writing/style.rst:337 msgid "Use the Python list ``*`` operator:" -msgstr "" +msgstr "파이썬 리스트의 ``*`` 연산자를 사용하세요. " #: ../../writing/style.rst:344 msgid "Create a length-N list of lists" -msgstr "" +msgstr "길이가 N인 리스트가 들어있는 리스트 만들기" #: ../../writing/style.rst:346 msgid "" @@ -450,40 +602,52 @@ msgid "" "list of N references to the `same` list, which is not likely what you " "want. Instead, use a list comprehension:" msgstr "" +"리스트는 변경 가능하기 때문에, ``*`` 연산자는 (위에서처럼) " +"N개의 리퍼런스가 있는 `같은` 리스트를 만들 것입니다. " +"하지만 아마 이렇게 만들고 싶지는 않았을 것입니다. " +"대신에 리스트 컴프리헨션(list comprehension)을 사용하세요: " +"(역주: 번역이 마땅치 않아 영문 그대로 사용하였습니다. " +"타 번역서에서는 리스트 축약, 리스트 해석, 리스트 내장, 리스트 내포 등으로 번역되어 있습니다. )" #: ../../writing/style.rst:354 msgid "Note: Use range() instead of xrange() in Python 3" -msgstr "" +msgstr "주석: 파이썬3에서는 xrange() 대신에 range()를 쓰세요. " #: ../../writing/style.rst:357 msgid "Create a string from a list" -msgstr "" +msgstr "리스트로 문자열 만들기" #: ../../writing/style.rst:359 msgid "" "A common idiom for creating strings is to use :py:meth:`str.join` on an " "empty string." msgstr "" +"문자열을 만드는 일반적인 이디엄은 빈 문자열 변수에 :py:meth:`str.join` " +"을 사용하는 것입니다. " #: ../../writing/style.rst:367 msgid "" "This will set the value of the variable *word* to 'spam'. This idiom can " "be applied to lists and tuples." msgstr "" +"이것은 변수의 *글자* 의 값을 붙여줍니다. " +"이 이디엄은 리스트와 튜플에도 적용 가능합니다. " #: ../../writing/style.rst:371 msgid "Searching for an item in a collection" -msgstr "" +msgstr "컬렉션에서 아이템 찾기" #: ../../writing/style.rst:373 msgid "" "Sometimes we need to search through a collection of things. Let's look at" " two options: lists and sets." msgstr "" +"컬렉션에서 무언가를 찾아야 할 때가 있습니다. " +"두 가지 옵션을 살펴봅시다. 리스트와 셋(set)입니다: " #: ../../writing/style.rst:376 msgid "Take the following code for example:" -msgstr "" +msgstr "예시 삼아 다음의 코드를 작성해봅시다: " #: ../../writing/style.rst:389 msgid "" @@ -501,24 +665,40 @@ msgid "" "common operations take on each of these data structures, see `this page " "`_." msgstr "" +"두 함수는 똑같아 보입니다. 하지만 검색 성능은 확연히 다릅니다. " +"*lookup_set* 함수가 파이썬에서 셋(set)은 해시테이블이라는 사실을 이용하기 때문입니다. " +"리스트 안에 어떤 아이템이 존재하는지 확인하려면 " +"파이썬은 그 아이템과 매칭되는 것을 찾을 때까지 각각의 아이템을 모두 검사해야만 합니다. " +"이 작업에는 시간이 걸립니다. 리스트가 긴 경우에는 더욱 그렇습니다. " +"반면에 셋(set)에서는 각 아이템의 해시가 " +"셋 안에의 어느 곳에 매칭되는 아이템이 위치하는지 알려줍니다. " +"결과적으로 셋(set)이 크더라도 검색이 빠르게 완료됩니다. " +"딕셔너리(dictionary)에서의 검색도 마찬가지로 수행됩니다. " +"더 많은 정보를 윈하시면 " +" `StackOverflow `_ " +"를 참조하세요. " +"데이터 구조에 따라 각 연산자들이 어느 정도의 시간을 소모하는지에 대한 자세한 정보는 " +" `이 페이지 `_ 를 참고하세요. " #: ../../writing/style.rst:403 msgid "" "Because of these differences in performance, it is often a good idea to " "use sets or dictionaries instead of lists in cases where:" msgstr "" +"이러한 성능의 차이 때문에 다음과 같은 경우에는 " +"리스트 대신 셋(set)이나 딕셔너리(dictionary)를 사용하는 편이 좋습니다: " #: ../../writing/style.rst:406 msgid "The collection will contain a large number of items" -msgstr "" +msgstr "컬렉션이 아이템을 많이 가질 경우" #: ../../writing/style.rst:408 msgid "You will be repeatedly searching for items in the collection" -msgstr "" +msgstr "컬렉션 안의 아이템을 반복적으로 검색할 경우" #: ../../writing/style.rst:410 msgid "You do not have duplicate items." -msgstr "" +msgstr "중복 아이템이 없는 경우" #: ../../writing/style.rst:412 msgid "" @@ -527,14 +707,17 @@ msgid "" "hashtable will often be greater than the time saved by the improved " "search speed." msgstr "" +"크기가 작거나 검색을 자주 하지 않는 컬렉션의 경우에는 " +"오히려 해시테이블을 만드는데 필요한 추가적인 시간과 메모리가 " +"검색할 때 절약되는 시간에 비해 더 큰 경우도 많습니다. " #: ../../writing/style.rst:419 msgid "Zen of Python" -msgstr "" +msgstr "파이썬의 선(禪)" #: ../../writing/style.rst:421 msgid "Also known as :pep:`20`, the guiding principles for Python's design." -msgstr "" +msgstr ":pep:`20` 으로도 알려진 파이썬 디자인의 기본 원칙" #: ../../writing/style.rst:448 msgid "" @@ -542,10 +725,13 @@ msgid "" "user group " "`_." msgstr "" +"좋은 파이썬 스타일의 예시를 보고 싶다면, " +"`파이썬 유저 그룹의 이 슬라이드 `_ " +"를 읽어보세요. " #: ../../writing/style.rst:452 msgid "PEP 8" -msgstr "" +msgstr "PEP 8" #: ../../writing/style.rst:454 msgid "" @@ -553,6 +739,9 @@ msgid "" "easy-to-read version of PEP 8 is also available at `pep8.org " "`_." msgstr "" +":pep:`8` 은 사실상 파이썬을 위한 코드 스타일 안내서입니다. " +"질 좋고 읽기 쉬운 버전의 PEP 8도 있습니다: " +"`pep8.org `_ " #: ../../writing/style.rst:457 msgid "" @@ -562,6 +751,11 @@ msgid "" "its recommendations `_." msgstr "" +"읽어볼 것을 강력 추천합니다. 모든 파이썬 커뮤니티가 이 문서의 가이드라인을 " +"준수하려고 노력합니다. " +"시간이 흐름에 따라 여기서 멀어지는 프로젝트도 있을겁니다. " +"그렇지 않은 분들은 " +"`이 추천사항을 수정해주세요 `_." #: ../../writing/style.rst:462 msgid "" @@ -572,12 +766,18 @@ msgid "" "conformance. Install it by running the following command in your " "terminal:" msgstr "" +"이 말인즉, PEP 8에 파이썬 코드를 맞추는 편이 대체로 좋은 생각이며, " +"프로젝트에서 다른 개발자와 함께 일할 경우 코드의 일관성을 유지하는데 도움이 된다는 뜻입니다. " +"이를 위해 여러분의 코드가 PEP 8을 지키는지를 체크하는 " +"`pep8 `_ 라는 커맨드라인 프로그램이 있습니다. " +"터미널에서 아래의 명령어를 돌려 설치해보세요. " #: ../../writing/style.rst:474 msgid "" "Then run it on a file or series of files to get a report of any " "violations." -msgstr "" +msgstr "그런 다음 파일 하나 혹은 여러 개의 파일에다 " +"돌리면 PEP 8 위반 여부 보고서를 얻을 수 있습니다. " #: ../../writing/style.rst:488 msgid "" @@ -585,10 +785,13 @@ msgid "" "used to automatically reformat code in the PEP 8 style. Install the " "program with:" msgstr "" +"`autopep8 `_ 프로그램도 " +"코드를 PEP 8 스타일로 자동 재포맷하는데 쓰일 수 있습니다. " +"이렇게 설치하시면 됩니다: " #: ../../writing/style.rst:495 msgid "Use it to format a file in-place with:" -msgstr "" +msgstr "포맷할 파일에다가 이렇게 사용하시며 됩니다: " #: ../../writing/style.rst:501 msgid "" @@ -597,20 +800,24 @@ msgid "" "flag will perform more substantial changes and can be applied multiple " "times for greater effect." msgstr "" +"``--in-place`` 플래그를 빼면 프로그램이 콘솔에 바로 뽑아준 " +"변경된 코드로 리뷰를 할 수 있습니다. " +"``--aggressive`` 플래그는 더 많은 변화를 수행하고, " +"여러 번 수행해서 더 많은 효과를 볼 수도 있습니다. " #: ../../writing/style.rst:506 msgid "Conventions" -msgstr "" +msgstr "컨벤션(convention)" #: ../../writing/style.rst:508 msgid "" "Here are some conventions you should follow to make your code easier to " "read." -msgstr "" +msgstr "읽기 쉬운 코드 작성을 위한 코딩 컨벤션을 소개합니다. " #: ../../writing/style.rst:511 msgid "Check if variable equals a constant" -msgstr "" +msgstr "변수와 상수가 같은지 여부를 체크하기" #: ../../writing/style.rst:513 msgid "" @@ -619,6 +826,10 @@ msgid "" "`_ for " "a list of what is considered false." msgstr "" +"값이 True인지, None인지, 0인지를 확실하게 비교할 필요는 없습니다 - " +"그냥 if문만 붙이면 됩니다. " +"`Truth Value Testing `_ 을 " +"보시면 어느 것이 false인지 알 수 있습니다. " #: ../../writing/style.rst:518 ../../writing/style.rst:550 #: ../../writing/style.rst:582 ../../writing/style.rst:602 @@ -634,17 +845,19 @@ msgstr "" #: ../../writing/style.rst:545 msgid "Access a Dictionary Element" -msgstr "" +msgstr "딕셔너리의 엘리먼트에 접근하기" #: ../../writing/style.rst:547 msgid "" "Don't use the :py:meth:`dict.has_key` method. Instead, use ``x in d`` " "syntax, or pass a default argument to :py:meth:`dict.get`." msgstr "" +":py:meth:`dict.has_key` 메소드를 쓰지 마세요. " +"대신에 ``x in d`` 문법을 쓰거나, :py:meth:`dict.get` 에 디폴트값을 넣어 쓰세요. " #: ../../writing/style.rst:574 msgid "Short Ways to Manipulate Lists" -msgstr "" +msgstr "리스트를 조작하는 지름길" #: ../../writing/style.rst:576 msgid "" @@ -653,36 +866,46 @@ msgid "" "lists. Also, the :py:func:`map` and :py:func:`filter` functions can " "perform operations on lists using a different, more concise syntax." msgstr "" +"`리스트 컴프리헨션(list comprehension) `_ 은 " +"리스트로 작업하는 강력하고도 간결한 방법입니다. " +":py:func:`map` 과 :py:func:`filter` 함수 또한 " +"리스트에 명령을 수행하는 또다른 간결한 문법입니다. " #: ../../writing/style.rst:620 msgid "Use :py:func:`enumerate` keep a count of your place in the list." -msgstr "" +msgstr ":py:func:`enumerate` 를 사용하면 리스트 안의 순서를 세어 기억시켜둘 수 있습니다. " #: ../../writing/style.rst:632 msgid "" "The :py:func:`enumerate` function has better readability than handling a " "counter manually. Moreover, it is better optimized for iterators." msgstr "" +":py:func:`enumerate` 함수는 직접 번호를 매기는 코드를 다루는 방법보다 " +"가독성이 좋습니다. " #: ../../writing/style.rst:636 msgid "Read From a File" -msgstr "" +msgstr "파일에서 읽기" #: ../../writing/style.rst:638 msgid "" "Use the ``with open`` syntax to read from files. This will automatically " "close files for you." msgstr "" +"``with open`` 문법으로 파일을 읽으세요. " +"파일을 자동으로 닫아줍니다. " #: ../../writing/style.rst:658 msgid "" "The ``with`` statement is better because it will ensure you always close " "the file, even if an exception is raised inside the ``with`` block." msgstr "" +"``with`` 문은 파일을 반드시 닫아주기 때문에 더 좋습니다. " +"심지어 ``with`` 블럭 안에서 예외(exception)이 발생해도 그렇습니다. " #: ../../writing/style.rst:662 msgid "Line Continuations" -msgstr "" +msgstr "줄 잇기" #: ../../writing/style.rst:664 msgid "" @@ -693,6 +916,11 @@ msgid "" "its fragility: a white space added to the end of the line, after the " "backslash, will break the code and may have unexpected results." msgstr "" +"코드의 논리적 줄이 어느 정도를 넘어서면 몇 개의 물리적 줄로 쪼갤 필요가 있습니다. " +"파이썬 인터프리터는 줄의 마지막 문자가 역슬래시(\)일 경우 " +"자동으로 줄을 이어줍니다. " +"이는 많은 경우에 도움이 되지만 망가지기 쉬운 경우가 있기에 일반적으로 피해야합니다: " +"역슬래시 뒤에 빈 칸(white space)가 있는 경우, 코드가 망가지고 예상치 못한 결과가 나옵니다. " #: ../../writing/style.rst:671 msgid "" @@ -701,6 +929,10 @@ msgid "" "join the next line until the parentheses are closed. The same behavior " "holds for curly and square braces." msgstr "" +"더 나은 해결책은 괄호()를 두르는 것입니다. " +"파이썬 인터프리터는 왼쪽의 열린 괄호에서부터 오른쪽의 닫힌 괄호까지의 줄을 " +"자동으로 연결합니다. " +"중괄호{}와 대괄호[]에서도 동일하게 동작합니다. " #: ../../writing/style.rst:700 msgid "" @@ -708,151 +940,6 @@ msgid "" "sign that you are trying to do too many things at the same time, which " "may hinder readability." msgstr "" - -#~ msgid "" -#~ "2. **Keyword arguments** are not " -#~ "mandatory and have default values. They" -#~ " are often used for optional " -#~ "parameters sent to the function. When" -#~ " a function has more than two " -#~ "or three positional parameters, its " -#~ "signature is more difficult to remember" -#~ " and using keyword argument with " -#~ "default values is helpful. For instance," -#~ " a more complete ``send`` function " -#~ "could be defined as ``send(message, to," -#~ " cc=None, bcc=None)``. Here ``cc`` and " -#~ "``bcc`` are optional, and evaluate to" -#~ " ``None`` when they are not passed" -#~ " another value." -#~ msgstr "" - -#~ msgid "" -#~ "3. The **arbitrary argument list** is" -#~ " the third way to pass arguments " -#~ "to a function. If the function " -#~ "intention is better expressed by a " -#~ "signature with an extensible number of" -#~ " positional arguments, it can be " -#~ "defined with the ``*args`` constructs. " -#~ "In the function body, ``args`` will " -#~ "be a tuple of all the remaining" -#~ " positional arguments. For example, " -#~ "``send(message, *args)`` can be called " -#~ "with each recipient as an argument: " -#~ "``send('Hello', 'God', 'Mom', 'Cthulhu')``, " -#~ "and in the function body ``args`` " -#~ "will be equal to ``('God', 'Mom', " -#~ "'Cthulhu')``." -#~ msgstr "" - -#~ msgid "" -#~ "4. The **arbitrary keyword argument " -#~ "dictionary** is the last way to " -#~ "pass arguments to functions. If the " -#~ "function requires an undetermined series " -#~ "of named arguments, it is possible " -#~ "to use the ``**kwargs`` construct. In" -#~ " the function body, ``kwargs`` will " -#~ "be a dictionary of all the passed" -#~ " named arguments that have not been" -#~ " caught by other keyword arguments in" -#~ " the function signature." -#~ msgstr "" - -#~ msgid "" -#~ "A powerful tool for hackers, Python " -#~ "comes with a very rich set of " -#~ "hooks and tools allowing to do " -#~ "almost any kind of tricky tricks. " -#~ "For instance, it is possible to do" -#~ " each of the following:" -#~ msgstr "" - -#~ msgid "We are all consenting adults" -#~ msgstr "" - -#~ msgid "" -#~ "As seen above, Python allows many " -#~ "tricks, and some of them are " -#~ "potentially dangerous. A good example is" -#~ " that any client code can override" -#~ " an object's properties and methods: " -#~ "there is no \"private\" keyword in " -#~ "Python. This philosophy, very different " -#~ "from highly defensive languages like " -#~ "Java, which give a lot of " -#~ "mechanisms to prevent any misuse, is " -#~ "expressed by the saying: \"We are " -#~ "all consenting adults\"." -#~ msgstr "" - -#~ msgid "" -#~ "Using this convention generously is " -#~ "encouraged: any method or property that" -#~ " is not intended to be used by" -#~ " client code should be prefixed with" -#~ " an underscore. This will guarantee a" -#~ " better separation of duties and " -#~ "easier modification of existing code; it" -#~ " will always be possible to publicize" -#~ " a private property, while privatising " -#~ "a public property might be a much" -#~ " harder operation." -#~ msgstr "" - -#~ msgid "" -#~ "Sometimes we need to search through " -#~ "a collection of things. Let's look " -#~ "at two options: lists and dictionaries." -#~ msgstr "" - -#~ msgid "" -#~ "Even though both functions look " -#~ "identical, because *lookup_dict* is utilizing" -#~ " the fact that dictionaries in Python" -#~ " are hashtables, the lookup performance " -#~ "between the two is very different. " -#~ "Python will have to go through " -#~ "each item in the list to find " -#~ "a matching case, which is time " -#~ "consuming. By analysing the hash of " -#~ "the dictionary, finding keys in the " -#~ "dict can be done very quickly. For" -#~ " more information see this `StackOverflow" -#~ " `_ page." -#~ msgstr "" - -#~ msgid "" -#~ "For some examples of good Python " -#~ "style, see `this Stack Overflow question" -#~ " `_ or `these slides from a" -#~ " Python user group " -#~ "`_." -#~ msgstr "" - -#~ msgid ":pep:`8` is the de-facto code style guide for Python." -#~ msgstr "" - -#~ msgid "" -#~ "Conforming your Python code to PEP " -#~ "8 is generally a good idea and " -#~ "helps make code more consistent when " -#~ "working on projects with other " -#~ "developers. There is a command-line " -#~ "program, `pep8 `_, " -#~ "that can check your code for " -#~ "conformance. Install it by running the" -#~ " following command in your Terminal:" -#~ msgstr "" - -#~ msgid "" -#~ "However, more often than not having " -#~ "to split long logical line is a" -#~ " sign that you are trying to do" -#~ " too many things at the same " -#~ "time, which may hinder readability." -#~ msgstr "" - +"그러나 대부분의 경우 긴 논리적 줄을 나누는 짓은 동시에 너무 많은 일을 " +"하려고 한다는 신호입니다. " +"이는 가독성을 해칩니다. " From 5e8fb0fe9d2efe270baf0ac8e510cbc466bcd52a Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Thu, 17 Nov 2016 02:30:58 +0000 Subject: [PATCH 035/117] update to latest version --- docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo | Bin 12175 -> 12177 bytes docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 43 +- docs/locale/ko/LC_MESSAGES/scenarios/cli.mo | Bin 6069 -> 6901 bytes docs/locale/ko/LC_MESSAGES/scenarios/cli.po | 35 +- docs/locale/ko/LC_MESSAGES/scenarios/ml.mo | Bin 0 -> 7163 bytes docs/locale/ko/LC_MESSAGES/scenarios/ml.po | 191 ++++++++ docs/locale/ko/LC_MESSAGES/scenarios/speed.mo | Bin 16401 -> 16225 bytes docs/locale/ko/LC_MESSAGES/scenarios/speed.po | 98 ++-- .../ko/LC_MESSAGES/shipping/freezing.mo | Bin 11475 -> 11475 bytes .../ko/LC_MESSAGES/shipping/freezing.po | 17 +- .../ko/LC_MESSAGES/starting/install/linux.mo | Bin 6634 -> 6636 bytes .../ko/LC_MESSAGES/starting/install/linux.po | 58 ++- .../ko/LC_MESSAGES/starting/install/osx.mo | Bin 8630 -> 8512 bytes .../ko/LC_MESSAGES/starting/install/osx.po | 120 ++--- .../ko/LC_MESSAGES/starting/install/win.mo | Bin 8666 -> 8672 bytes .../ko/LC_MESSAGES/starting/install/win.po | 50 +- .../ko/LC_MESSAGES/starting/installation.mo | Bin 2277 -> 2263 bytes .../ko/LC_MESSAGES/starting/installation.po | 21 +- .../ko/LC_MESSAGES/starting/which-python.mo | Bin 12769 -> 12928 bytes .../ko/LC_MESSAGES/starting/which-python.po | 77 +-- .../ko/LC_MESSAGES/writing/documentation.mo | Bin 10763 -> 17425 bytes .../ko/LC_MESSAGES/writing/documentation.po | 180 ++++--- .../ko/LC_MESSAGES/writing/structure.mo | Bin 58698 -> 58698 bytes .../ko/LC_MESSAGES/writing/structure.po | 441 ++++++++---------- 24 files changed, 750 insertions(+), 581 deletions(-) create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/ml.mo create mode 100644 docs/locale/ko/LC_MESSAGES/scenarios/ml.po diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo index b44fba8597d5fbdad5a8fec8bc64d0e2a1dfa626..b5d0ada8eb7cf8eb8812d63e36c467c66edffaec 100644 GIT binary patch delta 859 zcmYk)O-NKx7{>9(GV`MuC$((M8Z%8z)EUu|DHkfVs=$S!iyCe)Zk$pP49U71BWhz& zEnI|!wQ!-EabY0AKqQ3_v?yA+5`$(H;wBLPFUN&2%_?mb13L z(k1FhK)yT%`h(JaT)`_CEtV3P!q-e(N89Mmaj6SGU=p{Gy>+9+tsB5H>Q^|63pkHG zrMwhwVLRqAX$-HH`MebuOALfCgI538uQ%~F2iU<0#`{k45M0MBE|*J3@!ctRkOj2$ z%gEWZh7VZ(8^@{pDwvC3v5oOzpMEYf@U~J~#hdgofJGeFS{TMgtVL^aFGg?#@8Jwu zgu7@FPI1#Z^%E_^aFvU29xcLeXc7KHi_j0Aa|<4!ZID6Ba0BfC$!eG37+Qu;u$A%m z=Us-s(4!94x(G+nBK(61tlBAuA^n>p=J0V zc}dM(bQyj^%Wxa5~zyi!jjSBAmvoIDM+wWjNU44&tFbAcdBp rpPoIO%{>&0zU+*|b2`$Q{JWvTSX1nBRWufFYfpECbMp?~Ef4JhYfk|7zk?nG1t|m}2nzDhEf(Ys5qR(r^#1aA3C3RgK6{=$-+e#7m)>*lMaIua zx?U{Z!A`N<2Kqw$qK0#-{T18kh^vBm^(LwmDE|B!$o|D zeaE>Bb9faGv1uH;D}9MQT4tdfH_+68ul~CQVi3sjWC9n@EqERZ($tMn8s&l z5&lJsaFQ==QeV&_jMlmc7tkWyLW}S>T7-V&tUHiFyI>tH!|!Mf+^=&Pj-h2ZgKez8 zt#=uI#Uyp)yo)f67GVxOtm6T)2&d5+i#56khjE1aHO~jju%O8uEJLQP8)zANXc_J! ze^T=oU50CD8U8^V`2)se5l*1hPY&u=Xb~=\n" "Language-Team: LANGUAGE \n" @@ -27,8 +27,8 @@ msgstr "" #: ../../dev/virtualenvs.rst:11 msgid "" -"For example, you can work on a project which requires Django 1.3 while " -"also maintaining a project which requires Django 1.0." +"For example, you can work on a project which requires Django 1.10 while " +"also maintaining a project which requires Django 1.8." msgstr "" #: ../../dev/virtualenvs.rst:15 @@ -308,41 +308,12 @@ msgid "And on Linux:" msgstr "" #~ msgid "" -#~ "This will create a :file:`requirements.txt`" -#~ " file, which contains a simple list" -#~ " of all the packages in the " -#~ "current environment, and their respective " -#~ "versions. Later it will be easier " -#~ "for a different developer (or you, " -#~ "if you need to re-create the " -#~ "environment) to install the same " -#~ "packages using the same versions:" #~ msgstr "" #~ msgid "" -#~ "`virtualenvwrapper " -#~ "`_ " -#~ "provides a set of commands which " -#~ "makes working with virtual environments " -#~ "much more pleasant. It also places " -#~ "all your virtual environments in one " -#~ "place." -#~ msgstr "" - -#~ msgid "" -#~ "(`Full virtualenvwrapper install instructions " -#~ "`_.)" -#~ msgstr "" - -#~ msgid "" -#~ "For Windows, you can use the " -#~ "`virtualenvwrapper-powershell " -#~ "`_ clone." -#~ msgstr "" - -#~ msgid "" -#~ "`Full list of virtualenvwrapper commands " -#~ "`_." +#~ "For example, you can work on a " +#~ "project which requires Django 1.3 while" +#~ " also maintaining a project which " +#~ "requires Django 1.0." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo b/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo index 90c8042f6d51154352fcbaeb8b18266160be6e06..c9e0639fa61287178ec297f644df076045373f1b 100644 GIT binary patch delta 1284 zcmeH^O=}ZD7{{k+s%_F#TQqG&;lUR~G>HX^P^3^IVn953@ubt;*<|SK&N?&OXhq`5 z7kZN5!BYi4LJ+(wegrRqA3;ITOFj6XY)btKLKkL#^YY9yzj@|;kVFIqa0i#`Fp*msaMMJy7>no0&6{y(@`nJM&!lXR`)T)NU|tY=a=odm<#dZ6RR z>iv5pE%AhSxXG~+Qu9`e*3uMtxRW}e8-~ZCtIbB8TFz2ibLF=oOB(XIkG%3GLk`0CT)6q_Ld z(w(=ISwR7}0*9n1M`UzNt|M|)86W}a2p5fIV010oD~hj!4;x)$KTNa{G`Uy00UzHz zylC+T-EOxY3ln5Ua#gcIT-T=E->F{g@07PnOSPq|ba`pz%JSgM^r^9l;Y$rxD+>ot J`F}m-*}uH8a4i4; delta 433 zcmexrx>djao)F7a1|SdyVi_Rb0^%S6A4UcSRv_OON(V#fNFXf<6pshen}N6zh*^Mq zU1kObeIRWFq$dK!l7O@ykpBfJDaORW;0!d37bqUZ&cL9_$WYIa!NI`b2~;qNlYwCe zkiG+?oq_aJE(V4oAbk@^=L2aUZUzQ6AiW1jR|5?=45UF0v*(4-u29+=NP`>}2&6#{ z%LdXQhspCp9Hs)KK@JN6(taSPJrjVq%v2EKG9O@20A0oqB?56+izvil=YTZGVeMiN zhn)t}AcxtBLmajaNN@hiC&9E?nDqy{h?Ty6Zfa3-X;Efkj$UzUPHJ9e^5k2R`jh>6 dtGEnw4Gk3xEUXNSH(%zJW!(IoPmHiO6#$&ML2Cd2 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po index b9cc5d2c6..d1e330630 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -53,7 +53,7 @@ msgstr "" #: ../../scenarios/cli.rst:19 msgid "" -"`mercurial `_ - A distributed version " +"`mercurial `_ - A distributed version " "control system primarily written in Python" msgstr "" @@ -123,17 +123,26 @@ msgid "" "parsing and then invokes a sub-command to do the work." msgstr "" +#: ../../scenarios/cli.rst:67 +msgid "Cement" +msgstr "" + +#: ../../scenarios/cli.rst:69 +msgid "" +"`Cement `_ is an advanced CLI Application " +"Framework. Its goal is to introduce a standard, and feature-full platform" +" for both simple and complex command line applications as well as support" +" rapid development needs without sacrificing quality. Cement is flexible," +" and it's use cases span from the simplicity of a micro-framework to the " +"complexity of a meg-framework." +msgstr "" + +#~ msgid "" +#~ msgstr "" + #~ msgid "" -#~ "`Cliff `_ is " -#~ "a framework for building command-line" -#~ " programs. It uses setuptools entry " -#~ "points to provide subcommands, output " -#~ "formatters, and other extensions. The " -#~ "framework is meant to be used to" -#~ " create multi-level commands such as" -#~ " subversion and git, where the main" -#~ " program handles some basic argument " -#~ "parsing and then invokes a sub-" -#~ "command to do the work." +#~ "`mercurial `_ - A " +#~ "distributed version control system primarily" +#~ " written in Python" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ml.mo b/docs/locale/ko/LC_MESSAGES/scenarios/ml.mo new file mode 100644 index 0000000000000000000000000000000000000000..4eea334c83cd90a1b183ad5621a4c3a96013ebc2 GIT binary patch literal 7163 zcmeHL&2J<}74JY`gGu-ZA$$ahLJ-!oJKZz0gs__IuGSlS!)QHT%QlJNV%Kz6Pgkb9 zt5sF)*%n9$At5C8#)q``aO0NTARIW76aPR?2qAIe$O(S0YNluG{0WR@`?;p8>b>`S zzxUDp@cE~I8{q5f`1u-sUU-UDtFLE276iY?@;S&~LcR-m1@hL%gWxgbF629qe}jA$ z^8D!__#EWVA>W4l4dfHZ|3ZEXcR%?=5PTZzKYua^eg^qh$P{uPmtMj1cOf5O{l{m5 z;40QvJ{1K2z`C~;1aCpUh{Ml8mXM!;{0ZbgA%6w=4M+nWC!v?$Pn@w z9PUBB3i&c*3W-O-W5_>1K7sr(^xnti;2B)6#4yc$j6ZXfqVz@7oYd%uRrho zz6nWwk08nK_aMpdgD-f$%?sY|pF)z~Pkqt*ok2dpx_Z(3{U=EB`|n@!et+;~@Ao&q z;{6^#lHYeB$?wirz26TY8P*z-{Qfm$2>CuF`TZ|Q^82NiyxlvH};pxu__bJZe`Y1X4vb^=ko|3Sy|R~5lPkKi!Gr#7y4X^`JJ;!RD*n7l_Di^{1iyqPKX`SZ`KE|^y zb59d_E|Z$)txH|jsG7yR1UNv7!A?3z$mlwD8rW2xi;|sXLW_%$06tX{DLw5ikc={0 zLMGRc7|)Xt^ND55iI!<>+ef{~BE12VXb zaxhl#7ly5$aY#)Bz~b&w!s;whaSc{kcTa2e`Y~rU;xNfY4^h^q(;6XPp>^2U44N_y z*06I9N|bdmAzac+gmAnB>GQ@&)1}y2X{?Mr-7fn;%oKUr1&?OLYH4wQ&dX^HI@9HG zrX&d7Qf)PVZO5Mi$CIFHk>C zLx2{V40eH^<$`12og)R|=vmM6snUp9VQ}S4;8%&L0r{y$c7gicH39*O<2T3nJqruL zOZ;&lY7L$r2s>AL1|Hhj*}-$87C@(B&Wy{QCFRVLJje$`IgzLs7G=a`CV}J_ysQ^i z0Qqw2K&l#cOnDX@OR5-iaTVk-NK;E&m`3?g1#Y4;M5I~czPpo(0u!iV4T2=Jqf*!H zg31TBC&J~a83xB-{-UIK!`t#j9(;r%WRb#6n(b1} zL%?0lTdy&U!x>TLpagPhB9L@Za02Dn498u8fe9rjiAo4saY{TSAu)`y2*IwPpf$wd ziJV-~EkxD^@+Eh>Swws_@X=CH$77yKjlfV< zAmFKQJ71O-Y|H4fFCD^)zgd}Hisi3onMiAd>Ft!lhtX822F0ScVrKSn;|eF zSkD?_9_kf#Q+Fq}yBgymGI=K?nH z$$jE3YB}7F56j)8)!Vv=>~g+X>cI0TI2$ccY^O^UGwQ>xTVs?6&c@tUxw2?!ZCfwe zk5=0b>f*3zchHQAI<%OK+&!q1*s$!3tv=dm+8N64Y;f?xRfaxsxfv5cY6hJLCoa|zl^Ge(y(<07PT`{u)bhxECj1f zCM(Qjez0ms^=<0l=+2bx)S5aGyN@zaP#aiGiGEI^#d5^N+`ODV&m8|n>Uk7|-e7FnHhU`Xv@M<_1goE#~{$TjZcdz&Hg^l5nKs#FP`{CZsQ8<1W?(VSf zKOBxn*MIczU~g+5L=R8U`3*v#^pM^E!Tvrw*ctD!TYKZ3(f-|?-QAPIqU zifR|(3Enp76LxEV|86eH^*dXKIn6a8FfEW+W#yLU_TV+<|GeGb8jr?%D*y&jf9rJ= zNQ5OkX)3s7#UtCRa%Agk7y!9OHr%dl8s1#(Bdam5g?l9?3uNw)-JD3f^@b>EHW9$B z8M1rS8Q6{JJJBm!o0qoDOWWq9ZS&H$d1-UANjueTUfMPKenneth Reitz +# Project. CC +# BY-NC-SA 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2016. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.3.4\n" + +#: ../../scenarios/ml.rst:3 +msgid "Machine Learning" +msgstr "" + +#: ../../scenarios/ml.rst:5 +msgid "" +"Python has a vast number of libraries for data analysis, statistics and " +"Machine Learning itself, making it a language of choice for many data " +"scientists." +msgstr "" + +#: ../../scenarios/ml.rst:7 +msgid "" +"Some widely used packages for Machine Learning and other Data Science " +"applications are enlisted below." +msgstr "" + +#: ../../scenarios/ml.rst:10 +msgid "Scipy Stack" +msgstr "" + +#: ../../scenarios/ml.rst:12 +msgid "" +"The Scipy stack consists of a bunch of core helper packages used in data " +"science, for statistical analysis and visualising data. Because of its " +"huge number of functionalities and ease of use, the Stack is considered a" +" must-have for most data science applications." +msgstr "" + +#: ../../scenarios/ml.rst:14 +msgid "" +"The Stack consists of the following packages (link to documentation " +"given):" +msgstr "" + +#: ../../scenarios/ml.rst:16 +msgid "`NumPy `_" +msgstr "" + +#: ../../scenarios/ml.rst:17 +msgid "`SciPy library `_" +msgstr "" + +#: ../../scenarios/ml.rst:18 +msgid "`Matplotlib `_" +msgstr "" + +#: ../../scenarios/ml.rst:19 +msgid "`IPython `_" +msgstr "" + +#: ../../scenarios/ml.rst:20 +msgid "`pandas `_" +msgstr "" + +#: ../../scenarios/ml.rst:21 +msgid "`Sympy `_" +msgstr "" + +#: ../../scenarios/ml.rst:22 +msgid "`nose `_" +msgstr "" + +#: ../../scenarios/ml.rst:24 +msgid "" +"The stack also comes with Python bundled in, but has been excluded from " +"the above list." +msgstr "" + +#: ../../scenarios/ml.rst:27 ../../scenarios/ml.rst:41 +msgid "Installation" +msgstr "" + +#: ../../scenarios/ml.rst:29 +msgid "" +"For installing the full stack, or individual packages, you can refer to " +"the instructions given `here `_." +msgstr "" + +#: ../../scenarios/ml.rst:31 +msgid "" +"**NB:** `Anaconda `_ is " +"highly preferred and recommended for installing and maintaining data " +"science packages seamlessly." +msgstr "" + +#: ../../scenarios/ml.rst:34 +msgid "scikit-learn" +msgstr "" + +#: ../../scenarios/ml.rst:36 +msgid "" +"Scikit is a free and open-source machine learning library for Python. It " +"offers off-the-shelf functions to implement many algorithms like linear " +"regression, classifiers, SVMs, k-means, Neural Networks etc. It also has " +"a few sample datasets which can be directly used for training and " +"testing." +msgstr "" + +#: ../../scenarios/ml.rst:38 +msgid "" +"Because of its speed, robustness and easiness to use, it's one of the " +"most widely-used libraries for many Machine Learning applications." +msgstr "" + +#: ../../scenarios/ml.rst:43 +msgid "Through PyPI:" +msgstr "" + +#: ../../scenarios/ml.rst:49 +msgid "Through conda:" +msgstr "" + +#: ../../scenarios/ml.rst:55 +msgid "" +"scikit-learn also comes in shipped with Anaconda (mentioned above). For " +"more installation instructions, refer to `this link `_." +msgstr "" + +#: ../../scenarios/ml.rst:58 +msgid "Example" +msgstr "" + +#: ../../scenarios/ml.rst:60 +msgid "" +"For this example, we train a simple classifier on the `Iris dataset " +"`_, which comes " +"bundled in with scikit-learn." +msgstr "" + +#: ../../scenarios/ml.rst:62 +msgid "" +"The dataset takes four features of flowers: sepal length, sepal width, " +"petal length and petal width, and classifies them into three flower " +"species (labels): setosa, versicolor or virginica. The labels have been " +"represented as numbers in the dataset: 0 (setosa), 1 (versicolor) and 2 " +"(virginica)." +msgstr "" + +#: ../../scenarios/ml.rst:64 +msgid "" +"We shuffle the Iris dataset, and divide it into separate training and " +"testing sets: keeping the last 10 data points for testing and rest for " +"training. We then train the classifier on the training set, and predict " +"on the testing set." +msgstr "" + +#: ../../scenarios/ml.rst:107 +msgid "" +"Since we're splitting randomly and the classifier trains on every " +"iteration, the accuracy may vary. Running the above code gives:" +msgstr "" + +#: ../../scenarios/ml.rst:115 +msgid "" +"The first line contains the labels (i.e flower species) of the testing " +"data as predicted by our classifier, and the second line contains the " +"actual flower species as given in the dataset. We thus get an accuracy of" +" 100% this time." +msgstr "" + +#: ../../scenarios/ml.rst:117 +msgid "" +"More on scikit-learn can be read in the `documentation `_." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo b/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo index abf33ebeaafd12391ac06181735815aa64f721c1..74984cb5317a1017c8404682af488581b7f75892 100644 GIT binary patch delta 1016 zcmYk*Pe_w-9LMpG+sfQ>vuS9}Y86@HpKX>dO*0L$NC#!mp$IA==nx&Gh`>of309a; z2M>-Yijc%wH_M0)T_nirWGybpcpxv=ks z_%v~qbA8LR>fh&ySL&mDiYKwzC!N517{SmYX@+;IFo1s+OH29Qzr;OPiUI00hH(({ zaTIwpt-IXp=EVp2j)9*AQV&l1r5Gl7dmrORF+`nZ_5pl>tf|gIF5HhDn8D5X1+QWx zD4oIkID}CqVF^9NFzaiQ8=L4A+DYG{?XbH@s%GIsI72)aUy}7z!p%5#;$vR?g*DU@tC)m(4tuGC z%<>yA;&SYdN;FM3(OR5ATB@;J{RnM*3T?rcc%J!QqaCzs9sRdVr@66Alj~ik8MI6% z(K5ZZ!DTv9k;@)!!O%vRX#}lfwP+h?K#Q~mEz(PyT%?C9U8K*^B3-DY|8!eBt6Zkt zXi?0fW%?02Fjnm{J&Ts<7+R){v}p(@&`#J^>o&9(ZJr}&C+)#}{Dcar$qW z&c|J*<#jI8%5Wm?qgGONG<55&+~x-D0?=f+cLCqCGk{puYqxP758n7tes_GDA5 a_jvt@nnW@hPc&_*&)!-)=Kp{6hvzTI!GmJ} delta 1208 zcmb``%}bO~6vy#1Iy%jmX-1fu_Go1?N-L4Rrz`XiG%$Ydx%WQzxpRK_d0^zcBm61J zc}w{0<-3uuGfJy}pYPEk1C;aFg#o9?NqmoKSQ#TS=@2=AahUHCSRO6c!a~;ykEXD(3|~4JMYdtd}%!aJxJxQ80`Bh;vWZ>Rs7 z^_v|gYu`?jwT+r}B*$buff`MHuCWO<>!VnMcTuyRN6k8uc4^jQIE>l(nzhIi)Qi19 zJ?~vU{nuaokqH+bD==Bxs99h4nyhV~$@)g2$@&9t)2t7b7+;}gy^9<*>&`Nh_3_;% z>oceqNGvx|r=mvP6lO5Wpcysm*gYoe@d}gmH`J^%`2WR&7C%cvJ{Rq>~~Bh=n&wc3GzKk_>IqC2Lcue-&L)Wtj2I1dNgf|0tkn^DEh zz5Y2ksE%N-ZaLT=nMtpW_IUGrKFeEH R?k$S=G9P;W>+y?Ge*m`tyF35@ diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po index ad7f0870b..db850f015 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -141,26 +141,14 @@ msgid "Shedskin?" msgstr "" #: ../../scenarios/speed.rst:226 -msgid "Numba" -msgstr "" - -#: ../../scenarios/speed.rst -msgid "Todo" -msgstr "" - -#: ../../scenarios/speed.rst:227 -msgid "Write about Numba and the autojit compiler for NumPy" -msgstr "" - -#: ../../scenarios/speed.rst:230 msgid "Concurrency" msgstr "" -#: ../../scenarios/speed.rst:234 +#: ../../scenarios/speed.rst:230 msgid "Concurrent.futures" msgstr "" -#: ../../scenarios/speed.rst:236 +#: ../../scenarios/speed.rst:232 msgid "" "The `concurrent.futures`_ module is a module in the standard library that" " provides a \"high-level interface for asynchronously executing " @@ -169,7 +157,7 @@ msgid "" " user to focus on accomplishing the task at hand." msgstr "" -#: ../../scenarios/speed.rst:242 +#: ../../scenarios/speed.rst:238 msgid "" "The `concurrent.futures`_ module exposes two main classes, the " "`ThreadPoolExecutor` and the `ProcessPoolExecutor`. The " @@ -178,7 +166,7 @@ msgid "" "the next worker thread becomes available." msgstr "" -#: ../../scenarios/speed.rst:248 +#: ../../scenarios/speed.rst:244 msgid "" "The ProcessPoolExecutor works in the same way, except instead of using " "multiple threads for its workers, it will use multiple processes. This " @@ -187,7 +175,7 @@ msgid "" "and returned." msgstr "" -#: ../../scenarios/speed.rst:253 +#: ../../scenarios/speed.rst:249 msgid "" "Because of the way the GIL works, a good rule of thumb is to use a " "ThreadPoolExecutor when the task being executed involves a lot of " @@ -195,7 +183,7 @@ msgid "" "ProcessPoolExecutor executor when the task is computationally expensive." msgstr "" -#: ../../scenarios/speed.rst:258 +#: ../../scenarios/speed.rst:254 msgid "" "There are two main ways of executing things in parallel using the two " "Executors. One way is with the `map(func, iterables)` method. This works " @@ -203,129 +191,129 @@ msgid "" "everything in parallel. :" msgstr "" -#: ../../scenarios/speed.rst:280 +#: ../../scenarios/speed.rst:276 msgid "" "For even more control, the `submit(func, *args, **kwargs)` method will " "schedule a callable to be executed ( as `func(*args, **kwargs)`) and " "returns a `Future`_ object that represents the execution of the callable." msgstr "" -#: ../../scenarios/speed.rst:284 +#: ../../scenarios/speed.rst:280 msgid "" "The Future object provides various methods that can be used to check on " "the progress of the scheduled callable. These include:" msgstr "" -#: ../../scenarios/speed.rst:287 +#: ../../scenarios/speed.rst:283 msgid "cancel()" msgstr "" -#: ../../scenarios/speed.rst:288 +#: ../../scenarios/speed.rst:284 msgid "Attempt to cancel the call." msgstr "" -#: ../../scenarios/speed.rst:289 +#: ../../scenarios/speed.rst:285 msgid "cancelled()" msgstr "" -#: ../../scenarios/speed.rst:290 +#: ../../scenarios/speed.rst:286 msgid "Return True if the call was successfully cancelled." msgstr "" -#: ../../scenarios/speed.rst:292 +#: ../../scenarios/speed.rst:288 msgid "running()" msgstr "" -#: ../../scenarios/speed.rst:292 +#: ../../scenarios/speed.rst:288 msgid "" "Return True if the call is currently being executed and cannot be " "cancelled." msgstr "" -#: ../../scenarios/speed.rst:294 +#: ../../scenarios/speed.rst:290 msgid "done()" msgstr "" -#: ../../scenarios/speed.rst:295 +#: ../../scenarios/speed.rst:291 msgid "Return True if the call was successfully cancelled or finished running." msgstr "" -#: ../../scenarios/speed.rst:297 +#: ../../scenarios/speed.rst:293 msgid "result()" msgstr "" -#: ../../scenarios/speed.rst:297 +#: ../../scenarios/speed.rst:293 msgid "" "Return the value returned by the call. Note that this call will block " "until the scheduled callable returns by default." msgstr "" -#: ../../scenarios/speed.rst:300 +#: ../../scenarios/speed.rst:296 msgid "exception()" msgstr "" -#: ../../scenarios/speed.rst:300 +#: ../../scenarios/speed.rst:296 msgid "" "Return the exception raised by the call. If no exception was raised then " "this returns `None`. Note that this will block just like `result()`." msgstr "" -#: ../../scenarios/speed.rst:305 +#: ../../scenarios/speed.rst:301 msgid "add_done_callback(fn)" msgstr "" -#: ../../scenarios/speed.rst:303 +#: ../../scenarios/speed.rst:299 msgid "" "Attach a callback function that will be executed (as `fn(future)`) when " "the scheduled callable returns." msgstr "" -#: ../../scenarios/speed.rst:344 +#: ../../scenarios/speed.rst:340 msgid "" "The `concurrent.futures`_ module contains two helper functions for " "working with Futures. The `as_completed(futures)` function returns an " "iterator over the list of futures, yielding the futures as they complete." msgstr "" -#: ../../scenarios/speed.rst:348 +#: ../../scenarios/speed.rst:344 msgid "" "The `wait(futures)` function will simply block until all futures in the " "list of futures provided have completed." msgstr "" -#: ../../scenarios/speed.rst:351 +#: ../../scenarios/speed.rst:347 msgid "" "For more information, on using the `concurrent.futures`_ module, consult " "the official documentation." msgstr "" -#: ../../scenarios/speed.rst:355 +#: ../../scenarios/speed.rst:351 msgid "Threading" msgstr "" -#: ../../scenarios/speed.rst:357 +#: ../../scenarios/speed.rst:353 msgid "" "The standard library comes with a `threading`_ module that allows a user " "to work with multiple threads manually." msgstr "" -#: ../../scenarios/speed.rst:360 +#: ../../scenarios/speed.rst:356 msgid "" "Running a function in another thread is as simple as passing a callable " "and it's arguments to `Thread`'s constructor and then calling `start()`:" msgstr "" -#: ../../scenarios/speed.rst:375 +#: ../../scenarios/speed.rst:371 msgid "To wait until the thread has terminated, call `join()`:" msgstr "" -#: ../../scenarios/speed.rst:381 +#: ../../scenarios/speed.rst:377 msgid "" "After calling `join()`, it is always a good idea to check whether the " "thread is still alive (because the join call timed out):" msgstr "" -#: ../../scenarios/speed.rst:391 +#: ../../scenarios/speed.rst:387 msgid "" "Because multiple threads have access to the same section of memory, " "sometimes there might be situations where two or more threads are trying " @@ -336,7 +324,7 @@ msgid "" "good example is this `stackoverflow post`_." msgstr "" -#: ../../scenarios/speed.rst:398 +#: ../../scenarios/speed.rst:394 msgid "" "The way this can be avoided is by using a `Lock`_ that each thread needs " "to acquire before writing to a shared resource. Locks can be acquired and" @@ -345,7 +333,7 @@ msgid "" "contrived) example:" msgstr "" -#: ../../scenarios/speed.rst:430 +#: ../../scenarios/speed.rst:426 msgid "" "Here, we have a bunch of threads checking for changes on a list of sites " "and whenever there are any changes, they attempt to write those changes " @@ -354,19 +342,23 @@ msgid "" " time, only one thread is writing to the file." msgstr "" -#: ../../scenarios/speed.rst:437 +#: ../../scenarios/speed.rst:433 msgid "Spawning Processes" msgstr "" -#: ../../scenarios/speed.rst:441 +#: ../../scenarios/speed.rst:437 msgid "Multiprocessing" msgstr "" #~ msgid "" -#~ "Using a slightly modified version of " -#~ "`David Beazleys`_ CPU bound test code" -#~ " (added loop for multiple tests), you" -#~ " can see the difference between " -#~ "CPython and PyPy's processing." +#~ msgstr "" + +#~ msgid "Numba" +#~ msgstr "" + +#~ msgid "Todo" +#~ msgstr "" + +#~ msgid "Write about Numba and the autojit compiler for NumPy" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo b/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo index 2a283b07580ac39d0cb1a3ff7f387768bf5a719e..adb35ead63c64f6aa4faa81b762199a46c2befd9 100644 GIT binary patch delta 41 scmcZ{c{y@}7CU3rW*eF50+SDkhjAI|8k#E@7+RT_ZdQ_zWPwTn040tLQ~&?~ delta 41 scmcZ{c{y@}7CU3{W*eF50+SDkhjAI`8X77XSXdbtZ&s3!WPwTn03;I(KmY&$ diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po index a0559c429..283cdf820 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -25,7 +25,7 @@ msgstr "" #: ../../shipping/freezing.rst:11 msgid "" -"Applications such as 'Dropbox', 'Eve Online', 'Civilisation IV', and " +"Applications such as 'Dropbox', 'Eve Online', 'Civilization IV', and " "BitTorrent clients do this." msgstr "" @@ -347,10 +347,6 @@ msgid "" msgstr "" #~ msgid "" -#~ "An alternative to shipping your code " -#~ "is freezing it — shipping it as" -#~ " an executable with a bundled Python" -#~ " interpreter." #~ msgstr "" #~ msgid "Many applications you use every day do this:" @@ -368,11 +364,12 @@ msgstr "" #~ msgid "Comparison" #~ msgstr "" -#~ msgid "" -#~ "Write :file:`setup.py` (`List of configuration" -#~ " options `_)::" +#~ msgid "OS X" #~ msgstr "" -#~ msgid "OS X" +#~ msgid "" +#~ "Applications such as 'Dropbox', 'Eve " +#~ "Online', 'Civilisation IV', and BitTorrent" +#~ " clients do this." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo index 40e49a06bc35b7f3aae929c438fb0ee0c50c61b4..1c1fca3d8c028770042ee94398215121dee4bf6a 100644 GIT binary patch delta 337 zcmXBOFGxdC6vy%3yPLZC2q)nJj|cCWy-5VH5OwvE0u+e>ms7=RflGx$sodv5{u5hi~X6q+N`01S?6Y=1BWk zCI0G@u5qtly2T%C;mv@wf*UDm3(xQXUvL~()6xl6@SJ&1X@$DvQ+7E5Ux)q&mOW{f z#u%5#`@_;5@g~>UgJPZ@`Q)f{Mf^P`-Qz_@>SBp))?W;*~XEdiME{`#{{`X+Z3JU=+kskgTZ`I$mW9L!eZ2RAB?RYdh1kMUdjCf D%#=5< delta 325 zcmWm8J4*vW6o%n%##@q=^%CQPm0+u|VL?np19n0RN&bL>jbNiTDTFN~Vqp+I*J0YD>|4vGGSkFq2xXf>feT?xT#|%r;(hYVn3A7im wxWVN(ke*o>xPqw}6E&SJn$UgPb}ADtiWB>pF diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po index 04b107c03..70673b620 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" @@ -20,15 +20,13 @@ msgstr "리눅스에 파이썬 설치하기" msgid "" "The latest versions of CentOS, Fedora, Redhat Enterprise (RHEL) and " "Ubuntu **come with Python 2.7 out of the box**." -msgstr "" -"최신 버전의 CentOS, 페도라, 레드햇 엔터프라이즈(RHEL), 그리고 우분투는 **파이썬 2.7이 딸려옵니다. 멋지죠. ** " +msgstr "최신 버전의 CentOS, 페도라, 레드햇 엔터프라이즈(RHEL), 그리고 우분투는 **파이썬 2.7이 딸려옵니다. 멋지죠. ** " #: ../../starting/install/linux.rst:9 msgid "" "To see which version of Python you have installed, open a command prompt " "and run" -msgstr "" -"어느 버전의 파이썬이 설치되어 있는지 확인하려면, 명령창을 열고 아래의 스크립트를 실행하세요. " +msgstr "어느 버전의 파이썬이 설치되어 있는지 확인하려면, 명령창을 열고 아래의 스크립트를 실행하세요. " #: ../../starting/install/linux.rst:15 msgid "" @@ -39,11 +37,10 @@ msgid "" "Python 2.6 package specifically designed to install side-by-side with the" " system's Python 2.4 installation." msgstr "" -"몇몇 오래된 버전의 RHEL와 CentOS에는 파이썬 2.4가 딸려오는데, 이 버전은 " -"요즘의 파이썬 개발에는 적당하지 않습니다. 다행히도 `Extra Packages for Enterprise Linux`가 있습니다. " -"여기에는 페도라에 대응하는 훌륭한 추가 패키지가 들어있는데, " -"파이썬 2.4가 설치된 시스템에서도 2.4버전과 2.6버전이 병행하여 " -"설치될 수 있도록 특별히 만들어진 파이썬 2.6 패키지를 포함하고 있습니다. " +"몇몇 오래된 버전의 RHEL와 CentOS에는 파이썬 2.4가 딸려오는데, 이 버전은 요즘의 파이썬 개발에는 적당하지 않습니다. " +"다행히도 `Extra Packages for Enterprise Linux`가 있습니다. 여기에는 페도라에 대응하는 훌륭한 추가 " +"패키지가 들어있는데, 파이썬 2.4가 설치된 시스템에서도 2.4버전과 2.6버전이 병행하여 설치될 수 있도록 특별히 만들어진 파이썬" +" 2.6 패키지를 포함하고 있습니다. " #: ../../starting/install/linux.rst:24 msgid "" @@ -54,8 +51,9 @@ msgid "" "install Setuptools and pip, as it makes it much easier for you to use " "other third-party Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 " -"안내서에서 앞으로 설명할 도구와 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools와 pip는 반드시 설치해야 합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다." +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 " +"이 안내서에서 앞으로 설명할 도구와 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools와 pip는 반드시 " +"설치해야 합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다." #: ../../starting/install/linux.rst:31 msgid "Setuptools & Pip" @@ -67,8 +65,9 @@ msgid "" "`_ and `pip " "`_." msgstr "" -"가장 중요한 파이썬 서드파티 패키지를 2개 뽑으라면 " -"`setuptools `_ 와 `pip `_ 입니다." +"가장 중요한 파이썬 서드파티 패키지를 2개 뽑으라면 `setuptools " +"`_ 와 `pip " +"`_ 입니다." #: ../../starting/install/linux.rst:35 msgid "" @@ -77,17 +76,16 @@ msgid "" " this network installation capability to your own Python software with " "very little work." msgstr "" -"이것들을 설치하면 단 한 줄의 명령만으로도 pip와 setuptools에 호환되는 모든 파이썬 소프트웨어를 " -"다운로드, 설치, 삭제할 수 있습니다." -"또한 당신이 만든 파이썬 소프트웨어에 네트워크 설치 기능을 손쉽게 추가할 수 있도록 해줍니다. " +"이것들을 설치하면 단 한 줄의 명령만으로도 pip와 setuptools에 호환되는 모든 파이썬 소프트웨어를 다운로드, 설치, 삭제할" +" 수 있습니다.또한 당신이 만든 파이썬 소프트웨어에 네트워크 설치 기능을 손쉽게 추가할 수 있도록 해줍니다. " #: ../../starting/install/linux.rst:39 msgid "" "Python 2.7.9 and later (on the python2 series), and Python 3.4 and later " "include pip by default." msgstr "" -"파이썬 2.7.9와 그 이후의 버전(파이썬2 중에서), 그리고 파이썬 3.4와 그 이후의 버전은 " -"pip를 기본적으로 포함하고 있습니다. " +"파이썬 2.7.9와 그 이후의 버전(파이썬2 중에서), 그리고 파이썬 3.4와 그 이후의 버전은 pip를 기본적으로 포함하고 " +"있습니다. " #: ../../starting/install/linux.rst:42 msgid "To see if pip is installed, open a command prompt and run" @@ -99,9 +97,8 @@ msgid "" "`_ - this will automatically " "install the latest version of setuptools." msgstr "" -"pip를 설치하려면 `pip 공식 설치 안내서 " -"`_ 를 따라해보세요." -" - 이 링크는 setuptools 최신 버전도 자동 설치해줍니다. " +"pip를 설치하려면 `pip 공식 설치 안내서 `_ 를" +" 따라해보세요. - 이 링크는 setuptools 최신 버전도 자동 설치해줍니다. " #: ../../starting/install/linux.rst:51 msgid "Virtual Environments" @@ -115,15 +112,15 @@ msgid "" "but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 서로 다른 파이썬 프로젝트들 간의 독립성을 유지시켜주는 " -"툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " -"패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." +"Virtual Environments은 파이썬 가상 환경을 만들어 서로 다른 파이썬 프로젝트들 간의 독립성을 유지시켜주는 툴입니다." +" 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 패키지 " +"디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." #: ../../starting/install/linux.rst:58 msgid "" -"For example, you can work on a project which requires Django 1.3 while " -"also maintaining a project which requires Django 1.0." -msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 작업하면서, 동시에 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있습니다." +"For example, you can work on a project which requires Django 1.10 while " +"also maintaining a project which requires Django 1.8." +msgstr "예를 들면 장고 1.10을 쓰는 프로젝트에서 작업하면서, 동시에 장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있습니다." #: ../../starting/install/linux.rst:61 msgid "" @@ -138,8 +135,8 @@ msgid "" "You can also use :ref:`virtualenvwrapper ` to make" " it easier to manage your virtual environments." msgstr "" -":ref:`virtualenvwrapper ` 를 봐도 됩니다. Virtual Environments를 " -"보다 쉽게 관리할 수 있을 것입니다. " +":ref:`virtualenvwrapper ` 를 봐도 됩니다. Virtual " +"Environments를 보다 쉽게 관리할 수 있을 것입니다. " #: ../../starting/install/linux.rst:68 msgid "" @@ -149,3 +146,4 @@ msgid "" msgstr "" "이 페이지는 `다른 가이드 `_ 를 풀어쓴 버전입니다. 동일한 라이선스 아래서 사용할 수 있습니다." + diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo index 2c90cfb8b759649c6b82118b4a84f659d487b766..f47dd888a94de5ac45562bb584feb53c272cc542 100644 GIT binary patch delta 1119 zcmZvZL1-Lh6vy9&B(_QG+BAvL#`IO1itTR9(gt-^q(-IC3QB9!io#Advt(d)ChW{M z_7D=nSVDG7qtmTR+)ZQMG+nxfq&ty@R`H;q2QO0bBpw70`Mv=WMDXN)H*HYxGQWB6 z`~Ls;zV|*K{OXmt(By>x(GLwo4-?VZMxqID6pVnsffcZ;iRcON8}KRcS8y-b+D!Ba zcnA!_=SA>s#3vqt9`QAh!F$_?t|I^E_Dx-`h3FjOwHBHr4L_k)qIU2K_$_!7oPf~Y zLDU2Ov6BeDv@1xIMcf0X!JDZ5H@L5jXgAKgVNwA5!6^7Wcn{pxLG&c}Gq@k5PNJ89 z-pnQ6dfXIW=Wzrom={V`t*-YTLnqM9NIoFTA0|`RLdfpR~=C8e%h5&n7iPOQP4| zw9RS5OeD0prs(dMyWetq8;2Sq{q96#H1M2zyK$(irWw;w9sQ;)m5-T8bvUJtyTK-_ z+SYu0`wm=q^SnKZ4h~1%cY{MMk#OW$?vF%|3{<}ee%-KZkmViE&t_%uuDDteOLyG> zcTa*W3yz=jq*D;Hm;ZMHrm0)9=&*E3ay{?o^0kX%r7UjcWYOb|l_|Nf#A1C>T>n61 zW<;jc$FbP^wONKORafIShr{>B9E)+yN?gi{>lJw@QxIj3#a#J;PAo66%&p4Vl7C@Q zUh(9|bLi~BOowGL&;CbKEN(e+(WyISN^;&4pB98$KvSR88=c9EOXzoDM$WEnIj=h# z)is$ZZizj)JSCR1sOQMfFo%T?WpS#ufL=d)!=EnIj%)L||7@@3`L9;p7urL$HI23p zU`-3{*TNgCD`GmowVk?nx+3Sxer}OBs*XQ@5d#z0K-mkquXpU-i4rW9XQXpm&R=%Z Y9r3Esd8~C$eNUdeSmDF}DH>(^2kOy{h5!Hn delta 1214 zcmbu7PiPc(6vyA1L~)fS+C;6|_$WfE?4JY`G^izAL<&VL))-n!cd|R_F3ip^?93)A z)s5{OwkE~M?8abs+ih7jIT_q-Omz=JduR_{JP9q7il?35cq(|*@9bKng`T|3XWpCl z`@Z+Szq$ABa%47;{n$tJU=`78L=|e#+7W625grN$@n-4L$;Y1)qZFaPZ!G zqF(SYrknvk=_Ja44Rrk-jBX@)9rXus_#5yzI0#B`3GC}3Du55cw?KUp(N6I4rYyF_ z%Q6z)27iO^K(J#o(JY1_ zfxm&bdx`df7Z^oDJe*9M8AanGdUetFk+1J)BobmgIHu@4sa5%0`sG1m8(;;Pi zTvJ0akqZAKXM_(&KjpVm8N=j+GNCd$4|!Fr#9|_&o4Z(~o2?+CzwBrG+OPZe*o*Ch zzJB|0`ziZGhjC(z&xj18(U?f5SmCj>Y9u(R8z!b?F~%b?5my7vs>vi$ie?DbRcvSq zR^kA5!g$^)nzxB*A8p&+#X@g>G1YV`sViFb=Z<4*?cUB|e}8abfcy6k_V1~l@BC$z zUtV33R@w8=KE83gA9OC}IXV)t%Wb=}&b2yAt0I4zcMJ2*Voh2_mUDMy$zqwCXZdYT zUi{IS&Ndu_x-;k)-j^}tnGsUyE6;!7ZrJ9>i@)EE^2S< z4&Wx=>)wZ(%y$2t<8 diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po index 52a2bd3de..32f13768d 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" @@ -31,9 +31,9 @@ msgid "" "install Setuptools, as it makes it much easier for you to use other " "third-party Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 " -"안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 합니다. 이것들은" -" 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 " +"이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 " +"합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " #: ../../starting/install/osx.rst:14 msgid "" @@ -43,9 +43,8 @@ msgid "" "`_, which is considered the " "stable production version." msgstr "" -"OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. " -"OS X에 딸려온 버전은 안정화된 `공식 릴리즈 " -"된 파이썬 `_ 보다 구버전일 것입니다." +"OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. OS X에 딸려온 버전은 안정화된 `공식" +" 릴리즈 된 파이썬 `_ 보다 구버전일 것입니다." #: ../../starting/install/osx.rst:20 msgid "Doing it Right" @@ -57,54 +56,52 @@ msgstr "진짜 파이썬을 설치해보자!" #: ../../starting/install/osx.rst:24 msgid "" -"Before installing Python, you'll need to install GCC. GCC can be obtained" -" by downloading `Xcode `_, the smaller" -" `Command Line Tools `_ (must " -"have an Apple account) or the even smaller `OSX-GCC-Installer " +"Before installing Python, you'll need to install a C compiler. The " +"fastest way is to install the Xcode Command Line Tools by running " +"``xcode-select --install``. You can also download the full version of " +"`Xcode `_ from the Mac App Store, or " +"the minimal but unofficial `OSX-GCC-Installer " "`_ package." msgstr "" -"파이썬을 설치하기 전에 우선 GCC를 설치해야 합니다. GCC는 `XCode " -"`_ 를 설치하면서 얻을 수 있습니다. 더 작은 버전인 `Command " -"Line Tools `_ (애플 계정이 있어야 한다) 에서도" -" 얻을 수 있고, 그보다도 더 작은 버젼인 `OSX-GCC-Installer " -"`_ 패키지에서도 얻을 수" -" 있습니다." - -#: ../../starting/install/osx.rst:31 -msgid "" -"If you already have Xcode installed, do not install OSX-GCC-Installer. In" -" combination, the software can cause issues that are difficult to " -"diagnose." +"파이썬을 설치하기 전에 C 컴파일러를 설치해야 합니다. " +"이를 위해서는 Xcode Command Line Tools을 설치하는 방법이 가장 빠릅니다. " +"``xcode-select --install`` 을 돌리시면 됩니다. " +"맥 앱스토어에서 `Xcode `_ 의 " +"풀 버전을 다운로드 받을 수도 있습니다. " +"비공식 버전이지만 아주 작은" +" `OSX-GCC-Installer `_ " +"패키지를 설치해도 됩니다. " + +#: ../../starting/install/osx.rst:33 +msgid "" +"If you already have Xcode installed or plan to use Homebrew, do not " +"install OSX-GCC-Installer. In combination, the software can cause issues " +"that are difficult to diagnose." msgstr "" -"이미 XCode를 설치했으면 OSX-GCC-Installer는 설치하면 안됩니다. 두 개를 모두 설치하면 원인을 밝히 어려운 문제를 " +"이미 XCode를 설치했거나 Homebrew를 사용할 계획이라면, " +"OSX-GCC-Installer는 설치하지 마세요. " +"두 개를 모두 설치하면 원인을 밝히 어려운 문제를 " "일으킬 수 있습니다. " -#: ../../starting/install/osx.rst:36 -msgid "" -"If you perform a fresh install of Xcode, you will also need to add the " -"commandline tools by running ``xcode-select --install`` on the terminal." -msgstr "" -"Xcode를 새로 설치했다면 터미널에서 ``xcode-select --install`` 를 실행시켜 커맨드라인 툴을 추가할 필요가 있습니다. " - -#: ../../starting/install/osx.rst:39 +#: ../../starting/install/osx.rst:37 msgid "" "While OS X comes with a large number of UNIX utilities, those familiar " "with Linux systems will notice one key component missing: a decent " "package manager. `Homebrew `_ fills this void." msgstr "" -"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 요소 하나가 빠져있다는 사실을 알아차릴 것입니다. " -"바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를 채워줍니다." +"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 요소 하나가 빠져있다는 사실을 알아차릴 " +"것입니다. 바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를" +" 채워줍니다." -#: ../../starting/install/osx.rst:43 +#: ../../starting/install/osx.rst:41 msgid "" "To `install Homebrew `_, open :file:`Terminal` " "or your favorite OSX terminal emulator and run" msgstr "" -"`Homebrew `_ 를 설치하려면 " -" :file:`터미널` 을 열거나 마음에 드는 OSX 터미널 에뮬레이터를 열고 " -"아래 코드를 그냥 실행하기만 하면 됩니다." +"`Homebrew `_ 를 설치하려면 :file:`터미널` 을 열거나 마음에 드는 " +"OSX 터미널 에뮬레이터를 열고 아래 코드를 그냥 실행하기만 하면 됩니다." -#: ../../starting/install/osx.rst:50 +#: ../../starting/install/osx.rst:48 msgid "" "The script will explain what changes it will make and prompt you before " "the installation begins. Once you've installed Homebrew, insert the " @@ -113,36 +110,41 @@ msgid "" "your :file:`~/.profile` file" msgstr "" "이 스크립트는 설치가 시작되기 전에 설치로 인해 변경되는 것들과 명령어를 알려줍니다. Homebrew가 설치됐으면 Homebrew " -"디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣으세요. :file:`~/.profile` 파일의 마지막 줄에 다음과 " -"같이 덧붙이면 됩니다." +"디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣으세요. :file:`~/.profile` 파일의 마지막 줄에 다음과" +" 같이 덧붙이면 됩니다." -#: ../../starting/install/osx.rst:60 +#: ../../starting/install/osx.rst:58 msgid "Now, we can install Python 2.7:" msgstr "이제 우리는 파이썬 2.7을 설치할 수 있습니다." -#: ../../starting/install/osx.rst:66 +#: ../../starting/install/osx.rst:64 +msgid "or Python 3:" +msgstr "파이썬 3도 됩니다: " + +#: ../../starting/install/osx.rst:70 msgid "This will take a minute or two." msgstr "1~2분 정도 걸릴 것입니다." -#: ../../starting/install/osx.rst:70 +#: ../../starting/install/osx.rst:74 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ../../starting/install/osx.rst:72 +#: ../../starting/install/osx.rst:76 msgid "Homebrew installs Setuptools and ``pip`` for you." msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해줍니다." -#: ../../starting/install/osx.rst:74 +#: ../../starting/install/osx.rst:78 msgid "" "Setuptools enables you to download and install any compliant Python " "software over a network (usually the Internet) with a single command " "(``easy_install``). It also enables you to add this network installation " "capability to your own Python software with very little work." msgstr "" -"Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 파이썬 " -"소프트웨어를 다운로드받고 설치할 수 있도록 해줍니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다. " +"Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 파이썬 소프트웨어를 " +"다운로드받고 설치할 수 있도록 해줍니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." +" " -#: ../../starting/install/osx.rst:79 +#: ../../starting/install/osx.rst:83 msgid "" "``pip`` is a tool for easily installing and managing Python packages, " "that is recommended over ``easy_install``. It is superior to " @@ -154,11 +156,11 @@ msgstr "" "추천한다. ``easy_install`` 는 `많은 면 `_ 에서 탁월하고, 활발히 운영되고 있습니다." -#: ../../starting/install/osx.rst:85 +#: ../../starting/install/osx.rst:89 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/osx.rst:87 +#: ../../starting/install/osx.rst:91 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -170,13 +172,15 @@ msgstr "" "툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " "패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:92 +#: ../../starting/install/osx.rst:96 msgid "" -"For example, you can work on a project which requires Django 1.3 while " -"also maintaining a project which requires Django 1.0." -msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." +"For example, you can work on a project which requires Django 1.10 while " +"also maintaining a project which requires Django 1.8." +msgstr "" +"예를 들면 장고 1.10을 쓰는 프로젝트에서 일하면서, " +"장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:95 +#: ../../starting/install/osx.rst:99 msgid "" "To start using this and see more information: :ref:`Virtual Environments " "` docs." @@ -185,11 +189,11 @@ msgstr "" "`_ 문서에서 볼 수 있습니다." -#: ../../starting/install/osx.rst:100 +#: ../../starting/install/osx.rst:104 msgid "" "This page is a remixed version of `another guide " "`_, which" " is available under the same license." msgstr "" "이 페이지는 `다른 가이드 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." \ No newline at end of file +"windows/>`_ 를 재배열한 버전입니다. 라이선스는 동일합니다." diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo index 89812d24afc7727e4093831b2ed54452f245d51e..b8231bc423738b950145f941e2e05d27e9fd56dc 100644 GIT binary patch delta 378 zcmZ9{F-yZx6b0b(Vp3zRrWn&Av?ZdWsYz&!6hUf#fx1aoQJ3nVpn`O85()}$P@$!` z34%);L<9v9M;8%s(I4Q}>LlVRZcZQXzI)!i@3r(^I+&{N0NB)k6#b%cYDR!ZI!aFk z(56BG8amKqy%`0nbh;Nfr#EzkR$@Se{V#No=eIs!hPLS^4f=r^?;Qi!pjUA|v&4tp z0brhmBc|$X{IGywx|jG{=#1*TzoyUhJ_&3yS0Cbn>`QX{V|q*P=t7#qX(q#A?Ej&i zg~n{4NQ<=0`mW6%^CVAVW;iD%x(t7OZEJmbwc_~MAnWk1G5Jxw0Q*lrS|3NG``ihIw!#(G`hjTwFua)DO#x8&@4am|qHEAjiJkk+*r2r9C zI)JkTaKZX{5@^ubZs3~U(Pdii0pgs0rhRfnqaPE)jGqM?6iEyrPUv?5<;N> diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.po b/docs/locale/ko/LC_MESSAGES/starting/install/win.po index 83088d837..02174245b 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/win.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/win.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" @@ -19,15 +19,15 @@ msgstr "Windows에 파이썬 설치하기" #: ../../starting/install/win.rst:6 msgid "" "First, download the `latest version " -"`_ of Python " +"`_ of Python " "2.7 from the official Website. If you want to be sure you are installing " "a fully up-to-date version, click the Downloads > Windows link from the " "home page of the `Python.org web site `_ ." msgstr "" "우선 공식 웹사이트에서 파이썬 2.7의 `최신 버전 " -"`_ 을 다운로드 받아야 합니다. " -"최신 버전으로 파이썬을 설치하고자 한다면, `Python.org 웹사이트 `_ " -"에서 Downloads > Windows 링크에서 다운받으면 됩니다." +"`_ 을 다운로드 받아야 합니다. " +"최신 버전으로 파이썬을 설치하고자 한다면, `Python.org 웹사이트 `_ 에서 " +"Downloads > Windows 링크에서 다운받으면 됩니다." #: ../../starting/install/win.rst:11 msgid "" @@ -36,8 +36,8 @@ msgid "" "Windows administrators to automate installation with their standard " "tools." msgstr "" -"Windows버전은 MSI 패키지 형태로 제공됩니다. 수동으로 설치하고자 한다면, 그냥 파일을 더블 클릭하면 됩니다. " -"Windows 관리자 계정 사용자라면 MSI 패키지로 Windows 표준 도구를 자동 설치할 수 있습니다. " +"Windows버전은 MSI 패키지 형태로 제공됩니다. 수동으로 설치하고자 한다면, 그냥 파일을 더블 클릭하면 됩니다. Windows" +" 관리자 계정 사용자라면 MSI 패키지로 Windows 표준 도구를 자동 설치할 수 있습니다. " #: ../../starting/install/win.rst:15 msgid "" @@ -50,9 +50,9 @@ msgid "" "so that you always have control over which copy of Python is run." msgstr "" "파이썬이 설치되는 디렉토리는 버전의 숫자를 포함하도록 디자인되어 있습니다. 예를 들어 파이썬 2.7을 설치하면 " -":file:`C:\\\\Python27\\\\` 디렉토리에 설치됩니다. 덕분에 하나의 시스템에서 충돌 없어 여러 버전의 " -"파이썬을 사용할 수 있습니다. 물론 오직 하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있습니다. " -"또한 파이썬을 설치할 때 :envvar:`PATH` 환경 변수가 자동으로 변경되지도 않습니다. 그러니 어느 버전의 파이썬을 실행할지 늘 관리해야 합니다. " +":file:`C:\\\\Python27\\\\` 디렉토리에 설치됩니다. 덕분에 하나의 시스템에서 충돌 없어 여러 버전의 파이썬을 " +"사용할 수 있습니다. 물론 오직 하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있습니다. 또한 파이썬을 설치할 때 " +":envvar:`PATH` 환경 변수가 자동으로 변경되지도 않습니다. 그러니 어느 버전의 파이썬을 실행할지 늘 관리해야 합니다. " #: ../../starting/install/win.rst:23 msgid "" @@ -80,11 +80,10 @@ msgid "" " Setuptools, as it makes it much easier for you to use other third-party " "Python libraries." msgstr "" -"두번째 (:file:`스크립트`) 디렉토리는 파이썬 패키지가 설치될 때마다 커맨드 파일을 수신받기 때문에 " -"아주 유용합니다. " -"이제 파이썬을 사용하기 위해 달리 설치하거나 설정해줘야만 하는 것은 없습니다. " -"그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 설치할 것을 강력 추천합니다. " -"특히 Setuptools는 반드시 설치해야 합니다. Setuptools는 다른 파이썬 서드파티 라이브러리들을 편리하게 사용할 수 있게 해줍니다. " +"두번째 (:file:`스크립트`) 디렉토리는 파이썬 패키지가 설치될 때마다 커맨드 파일을 수신받기 때문에 아주 유용합니다. 이제 " +"파이썬을 사용하기 위해 달리 설치하거나 설정해줘야만 하는 것은 없습니다. 그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 " +"전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 " +"합니다. Setuptools는 다른 파이썬 서드파티 라이브러리들을 편리하게 사용할 수 있게 해줍니다. " #: ../../starting/install/win.rst:47 msgid "Setuptools + Pip" @@ -100,10 +99,9 @@ msgid "" "installation capability to your own Python software with very little " "work." msgstr "" -"Setuptools는 가장 중요한 파이썬 서드파티 소프트웨어입니다. " -"Setuptools는 표준 라이브러리인 distutils의 패키징 기능과 설치 기능을 확장한 것입니다. " -"Setuptools를 파이썬 시스템에 설치하면 어떤 파이썬 소프트웨어 제품이라도 명령어 한 줄로 " -"설치할 수 있습니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." +"Setuptools는 가장 중요한 파이썬 서드파티 소프트웨어입니다. Setuptools는 표준 라이브러리인 distutils의 " +"패키징 기능과 설치 기능을 확장한 것입니다. Setuptools를 파이썬 시스템에 설치하면 어떤 파이썬 소프트웨어 제품이라도 명령어" +" 한 줄로 설치할 수 있습니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." #: ../../starting/install/win.rst:56 msgid "" @@ -111,7 +109,7 @@ msgid "" "script available here: `ez_setup.py " "`_" msgstr "" -"Windows에서 최신 버전의 Setuptoos를 설치하려면 아래 파이썬 스크립트를 실행하면 됩니다. `ez_setup.py " +"Windows에서 최신 버전의 Setuptoos를 설치하려면 이 파이썬 스크립트를 실행하면 됩니다. `ez_setup.py " "`_ " #: ../../starting/install/win.rst:60 @@ -121,9 +119,9 @@ msgid "" "**pip**. Pip allows for uninstallation of packages, and is actively " "maintained, unlike easy_install." msgstr "" -"이제 새로운 명령을 내릴 수 있게 되었습니다: **easy_install** 입니다. 하지만 이 명령어를 불편하게 생각하는 사람들도 많습니다. " -"그러니 이를 대체할 것을 설치해봅시다. **pip**로 패키지의 설치와 제거도 가능하고, easy_install와 달리 " -"현재 활발히 운영되고 있습니다." +"이제 새로운 명령을 내릴 수 있게 되었습니다: **easy_install** 입니다. 하지만 이 명령어를 불편하게 생각하는 사람들도" +" 많습니다. 그러니 이를 대체할 것을 설치해봅시다. **pip**로 패키지의 설치와 제거도 가능하고, easy_install와 달리" +" 현재 활발히 운영되고 있습니다." #: ../../starting/install/win.rst:65 msgid "" @@ -151,9 +149,9 @@ msgstr "" #: ../../starting/install/win.rst:77 msgid "" -"For example, you can work on a project which requires Django 1.3 while " -"also maintaining a project which requires Django 1.0." -msgstr "예를 들면 장고 1.3을 쓰는 프로젝트에서 일하면서, 장고 1.0을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." +"For example, you can work on a project which requires Django 1.10 while " +"also maintaining a project which requires Django 1.8." +msgstr "예를 들면 장고 1.10을 쓰는 프로젝트에서 일하면서, 장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." #: ../../starting/install/win.rst:80 msgid "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.mo b/docs/locale/ko/LC_MESSAGES/starting/installation.mo index 8af37b6286162ac12a2579b654ace561ecbe07fb..4f0252e59b75e52f122bc4c307f2ee3c6934c926 100644 GIT binary patch delta 232 zcmaDVcwKOUO1&%t1H)P%mILC`K&%bKuYhAngOB9|Gw) zKw6KPfuRSe<}{E7nG?YZF{cbjgUp!K&CZ?N> PSd1CP@o6~ED#i=|CBZH+ delta 212 zcmcaE_*8I$O1&Hd1H)P%)&}A;K&%49KY(~PBLjmh5DNp@JDC_5q=58UAngOBUjXSj zK-!d*Ab$%x#GFGwIvL2n%g(^buo%d2 z\n" "Language-Team: LANGUAGE \n" @@ -31,12 +31,9 @@ msgid "" "should always install Setuptools, Pip, and Virtualenv — they make it much" " easier for you to use other third-party Python libraries." msgstr "" -"그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. " -"그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기" -" 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. " -"특히 Setuptools, Pip, " -"Virtualenv는 반드시 설치해야 합니다. " -"이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " +"그렇다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇긴 해도 실제로 사용할 파이썬 어플리케이션을 만들기" +" 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools, Pip, " +"Virtualenv는 반드시 설치해야 합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " #: ../../starting/installation.rst:14 msgid "Installation Guides" @@ -47,9 +44,9 @@ msgid "" "These guides go over the proper installation of :ref:`Python 2.7 ` for development purposes, as well as setuptools, pip, and " "virtualenv setup." -msgstr "" -"이 안내서는 개발을 위한 :ref:`파이썬 2.7 ` 의 적절한 설치 뿐 아니라 " -"setuptools, pip, and virtualenv의 설치도 다룹니다." +msgstr "" +"이 안내서는 개발을 위한 :ref:`파이썬 2.7 ` 의 적절한 설치 뿐 아니라 setuptools, " +"pip, and virtualenv의 설치도 다룹니다." #: ../../starting/installation.rst:19 msgid ":ref:`Mac OS X `." @@ -60,6 +57,6 @@ msgid ":ref:`Microsoft Windows `." msgstr ":ref:`Microsoft Windows `." #: ../../starting/installation.rst:21 -msgid ":ref:`Ubuntu Linux `." -msgstr ":ref:`Ubuntu Linux `." +msgid ":ref:`Linux `." +msgstr ":ref:`Linux `." diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.mo b/docs/locale/ko/LC_MESSAGES/starting/which-python.mo index f6990c402e0a3b2827dc2d72e064d999155f377c..c42f9c4265247d7ce44e264636527521c9a1aedd 100644 GIT binary patch delta 1290 zcmcK1OGs2<6u|LgYQEp4R%%y#r_MM&(kx3;YY~B3E5mFYZjG<)+A_X{uDO@IuBx@x*LZlK4QC-N6oF#qOf&JKs->?L0BDoayU^70! zy_gooo@m8p&X-PJxQRSPb-?t>2XT~yNt=Nf|@FuQf@hiNA8R&`i?{^tB z;@g;j&#@Y3F&@+6c>1W&!b=T_2C}m_h)d{X)gsz9h&;x|jUrWipFsJ=Do)~Z*pEAL z1XblTn1`{+bPFr-9P8|;3i`guZ`x+Mcb3F{UeqjK;tWnO9J*J@|li&LDjmSNb!=hjjFL8DPAsO85NFWE%8FWzk~S&97w)`IV57E ziDLQRZWhTRuC-8}nq|AiKg(;VW_cggESFJ@AeWESESrjbR|Ag*hd6sZcEjQD{R(Xh zYI5iv&E4a48ZM7pJMJ>NwT3@`YsIGRT8~rn7=IHbrZSUuBx7Z@?rHVvE=x=6zo}y1 z^{DxYw+ZC2p6rFSrow8J= zdt6p;yStF(hU>)I7i(`r(@6v2mO@LpR%EFxE%WKg%OPQ_JNb0&UT}cJmzupN;=kX+ F{2Oo??xz3% delta 1151 zcmb8tOGs2<6u|K#I_c=BWu;T8T{E?Z&O@_A94#w1r71y(l9_dDH1$s7ouDX2P-vqB zT8ki~=cYwPH>hY885vreh~AdHp(KhRYSsU1B-dTI{N|kdz0P;0Tc6kw9#4rmCOjp) z>AWwZR5bmZh!#mD9Gdbfwi1tGEEdOz96=vG#QT_pr)?s`cp0B!XokoDZer4Be1pj% zVR;ZoKw=!@@s?dAAIC7A!~8<#N@{{gDQ2KLP(8Aj7}$m;*5NBGLa#%l8g*4y)K-8u`IV#3jT(QQeG2Su4ykHQvA!{EeAmDomUuvW7%H*_YUf-*F?eCb41;w}J(8*_`oTu~5ZnA`7q?bMYXm z%Fki}KE^)A+nkX?2IfV)i9LLOhhf!2|9tw60dz2-npKw)H&FH??8T2N&Y%jc%w!DX zKA~#ON{#;lu@6-X*Jp{8VJ)5_-;ZjXi|bj3#mL@rAe;MFJv>T6EqojetXM4K!AsbT zudyB1P|&pzO_?aFm5$9u>nNL*gzU|FaWH|5d)5q=Dl_<;R1 zoLdu<^6857q52P;M2eTYxB=heLi8@98Y-;AwZw;)M{aNwo#db7b2$7)Kc4YD&MlHd z{1#OU?OEPP56h54N&<7n{2VQ`%S;mSz{&JTVl#;Z54E^j4R=uA zzOzGj`OS{@!RKkd!G^-zLBDfLyr;nH)jTDoo+4|+`6JdbbspXPGSqF|(XQE|YOF)K J6$$^b?jJsjxp4ph diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.po b/docs/locale/ko/LC_MESSAGES/starting/which-python.po index 479f20a40..fd064acd8 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/which-python.po +++ b/docs/locale/ko/LC_MESSAGES/starting/which-python.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" @@ -26,8 +26,8 @@ msgid "" "present: \"Should I choose Python 2 or Python 3\"? The answer is not as " "obvious as one might think." msgstr "" -"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오릅니다. \"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\" 답은 생각처럼 " -"간단하지 않습니다." +"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오릅니다. \"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\" 답은 생각처럼" +" 간단하지 않습니다." #: ../../starting/which-python.rst:14 msgid "The basic gist of the state of things is as follows:" @@ -47,9 +47,7 @@ msgstr "파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아 msgid "" "Python 2.7 will receive necessary security updates until 2020 " "[#pep373_eol]_." -msgstr "" -"파이썬2.7은 2020년까지는 필수 보안 업데이트를 받을 것이다. " -"[#pep373_eol]_." +msgstr "파이썬2.7은 2020년까지는 필수 보안 업데이트를 받을 것이다. [#pep373_eol]_." #: ../../starting/which-python.rst:19 msgid "Python 3 is continually evolving, like Python 2 did in years past." @@ -120,8 +118,8 @@ msgid "" "brings new and improved standard library modules, security and bug fixes." " Progress is progress." msgstr "" -"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면, 최신 버젼의 파이썬3.x 사용을 추천합니다. 모든 버젼이 " -"새롭고 향상된 표준 라이브러리 모듈과 보안, 그리고 버그 수정을 제공하고 있기 때문입니다. 개선도 진행 중입니다." +"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면, 최신 버젼의 파이썬3.x 사용을 추천합니다. 모든 버젼이" +" 새롭고 향상된 표준 라이브러리 모듈과 보안, 그리고 버그 수정을 제공하고 있기 때문입니다. 개선도 진행 중입니다." #: ../../starting/which-python.rst:52 msgid "" @@ -130,16 +128,16 @@ msgid "" "alternative, or you (like me) absolutely love and are inspired by Python " "2." msgstr "" -"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고, 오로지 파이썬2에서만 돌아가는 라이브러리라든가 아니면 파이썬 2를 너무나도" -" 사랑한다면(나처럼), 파이썬2를 사용할 수밖에 없을 것입니다." +"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고, 오로지 파이썬2에서만 돌아가는 라이브러리라든가 아니면 파이썬 2를 " +"너무나도 사랑한다면(나처럼), 파이썬2를 사용할 수밖에 없을 것입니다." #: ../../starting/which-python.rst:56 msgid "" "Check out `Can I Use Python 3? `_ to see if " "any software you're depending on will block your adoption of Python 3." msgstr "" -"`Can I Use Python 3? `_ 에서 확인해보시면, 당신이 사용 중인 소프트웨어가 " -"파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 알 수 있습니다. " +"`Can I Use Python 3? `_ 에서 확인해보시면, 당신이 사용 중인" +" 소프트웨어가 파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 알 수 있습니다. " #: ../../starting/which-python.rst:59 msgid "`Further Reading `_" @@ -154,7 +152,8 @@ msgid "" msgstr "" "파이썬 2.6, 2.7, 3에서 모두 돌아가는 코드를 작성하는 것도 `가능합니다 " "`_. 이 안내서는 " -"사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있습니다. 초보자라면 반드시 신경써야할 대단히 중요한 사항들도 있습니다." +"사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있습니다. 초보자라면 반드시 " +"신경써야할 대단히 중요한 사항들도 있습니다." #: ../../starting/which-python.rst:68 msgid "Implementations" @@ -166,8 +165,8 @@ msgid "" "also the CPython implementation. *Python* is actually a specification for" " a language that can be implemented in many different ways." msgstr "" -"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을 의미할 때가 많습니다. *파이썬* 은 실제로 다양한 방법으로" -" 구현될 수 있는 언어를 위한 명세서입니다." +"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을 의미할 때가 많습니다. *파이썬* 은 실제로 다양한 " +"방법으로 구현될 수 있는 언어를 위한 명세서입니다." #: ../../starting/which-python.rst:75 msgid "CPython" @@ -181,8 +180,9 @@ msgid "" "highest level of compatibility with Python packages and C extension " "modules." msgstr "" -"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스로서, 파이썬 코드를 가상 머신에 " -"의해 해석되는 중간 바이트코드로 컴파일합니다. CPython은 파이썬 패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공합니다. " +"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스로서, 파이썬 코드를 가상 " +"머신에 의해 해석되는 중간 바이트코드로 컴파일합니다. CPython은 파이썬 패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 " +"제공합니다. " #: ../../starting/which-python.rst:82 msgid "" @@ -190,8 +190,8 @@ msgid "" "possible audience, targeting CPython is best. To use packages which rely " "on C extensions to function, CPython is your only implementation option." msgstr "" -"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고입니다. C언어 확장 기능을 쓰는 패키지를 " -"사용하려면 CPython이 유일한 구현 방법입니다." +"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고입니다. C언어 확장 기능을 쓰는 " +"패키지를 사용하려면 CPython이 유일한 구현 방법입니다." #: ../../starting/which-python.rst:86 msgid "" @@ -210,8 +210,9 @@ msgid "" " The interpreter features a just-in-time compiler and supports multiple " "back-ends (C, CLI, JVM)." msgstr "" -"`PyPy `_ 는 파이썬 언어의 정적 타입으로만 구현된 파이썬 " -"인터프리터로서 통칭 RPython이라 불립니다. 이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 지원한다는 것입니다." +"`PyPy `_ 는 파이썬 언어의 정적 타입으로만 구현된 파이썬 인터프리터로서 통칭 " +"RPython이라 불립니다. 이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 " +"지원한다는 것입니다." #: ../../starting/which-python.rst:96 msgid "" @@ -270,8 +271,8 @@ msgid "" "libraries, and can also expose Python code to other languages in the .NET" " framework." msgstr "" -"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현입니다. 파이썬과 닷넷 " -"프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있습니다. " +"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현입니다. 파이썬과 닷넷" +" 프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있습니다. " #: ../../starting/which-python.rst:125 msgid "" @@ -279,8 +280,8 @@ msgid "" "integrates IronPython directly into the Visual Studio development " "environment, making it an ideal choice for Windows developers." msgstr "" -"`Python Tools for Visual Studio `_ " -"는 IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있습니다. 이는 Windows 개발자들에게 좋은 선택입니다." +"`Python Tools for Visual Studio `_ 는 " +"IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있습니다. 이는 Windows 개발자들에게 좋은 선택입니다." #: ../../starting/which-python.rst:129 msgid "IronPython supports Python 2.7. [#iron_ver]_" @@ -299,22 +300,24 @@ msgid "" "more complementary than competing with." msgstr "" "`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 닷넷 공통 " -"언어 런타임(CLR)을 말끔하게 통합시켜주는 패키지입니다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다 " -"상호 보완적입니다." +"언어 런타임(CLR)을 말끔하게 통합시켜주는 패키지입니다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다" +" 상호 보완적입니다." #: ../../starting/which-python.rst:140 msgid "" -"In conjunction with Mono, PythonNet enables native Python installations " +"In conjunction with Mono, pythonnet enables native Python installations " "on non-Windows operating systems, such as OS X and Linux, to operate " "within the .NET framework. It can be run in addition to IronPython " "without conflict." msgstr "" -"Mono와 함께 사용하면 PythonNet은 OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 " +"Mono와 함께 사용하면 pythonnet OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 " "프레임워크 안에서 수행될 수 있도록 해줍니다. IronPython과 같이 사용해도 충돌하지 않습니다." #: ../../starting/which-python.rst:145 -msgid "PythonNet supports from Python 2.3 up to Python 2.7. [#pythonnet_ver]_" -msgstr "PythonNet은 파이썬 2.3부터 2.7버젼까지 지원합니다. [#pythonnet_ver]_" +msgid "" +"Pythonnet supports from Python 2.6 up to Python 3.5. [#pythonnet_ver1]_ " +"[#pythonnet_ver2]_" +msgstr "Pythonnet은 파이썬 2.3부터 2.7버젼까지 지원합니다. [#pythonnet_ver]_" #: ../../starting/which-python.rst:147 msgid "http://pypy.org/compat.html" @@ -329,9 +332,15 @@ msgid "http://ironpython.codeplex.com/releases/view/81726" msgstr "http://ironpython.codeplex.com/releases/view/81726" #: ../../starting/which-python.rst:153 -msgid "http://pythonnet.github.io/readme.html" -msgstr "http://pythonnet.github.io/readme.html" +msgid "https://travis-ci.org/pythonnet/pythonnet" +msgstr "https://travis-ci.org/pythonnet/pythonnet" #: ../../starting/which-python.rst:155 +msgid "https://ci.appveyor.com/project/TonyRoberts/pythonnet-480xs" +msgstr "https://ci.appveyor.com/project/TonyRoberts/pythonnet-480xs" + +#: ../../starting/which-python.rst:157 msgid "https://www.python.org/dev/peps/pep-0373/#id2" -msgstr "https://www.python.org/dev/peps/pep-0373/#id2" \ No newline at end of file +msgstr "https://www.python.org/dev/peps/pep-0373/#id2" + + diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.mo b/docs/locale/ko/LC_MESSAGES/writing/documentation.mo index 28e17604efb47a8fc56918b0b7358acb2536eea0..5f4ea8003c50d6e76a95250ad2c16025cd2c7024 100644 GIT binary patch literal 17425 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 a!@b+{5B~qKZ_hu3^FQ`K=>GqnfA}BVHnTYZ delta 794 zcmajcO-K}B9LMqBy1s9|v>IYrZmZU=5Um9%USdhaK%|2ml0-r6q@{!h^RPk%k+30) zmo6Se(ZD39i(o`X(d(%ff@H&!Mi&nz~uC$2jxPlXT(syjj zm&&m=ARUnsYT{su6W!Q@Iv|xoFNSag3-BSH!#T{s9~j3Ce2q~S4dWKt{Ix>q7G6hg zt)F-Ze`5&-ilk|tuSyR1(RzuG@g3TQBgGOgrEOfoU9@!z2c;Q&ihr;pNEvMBu50)O zAK?;jQIDNGl}j~=qZFLQB;#-y*CjadgabQqhA!p{w4|2~yQH7dl78d=S;Xd}F6j}Rq>qvtiSjd@X&hs diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.po b/docs/locale/ko/LC_MESSAGES/writing/documentation.po index 3363657d2..a27eb74fe 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/writing/documentation.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -122,56 +122,64 @@ msgid "" "automatically." msgstr "" -#: ../../writing/documentation.rst:70 +#: ../../writing/documentation.rst:68 +msgid "" +"When run, Sphinx_ will import your code and using Python's introspection " +"features it will extract all function, method and class signatures. It " +"will also extract the accompanying docstrings, and compile it all into " +"well structured and easily readable documentation for your project." +msgstr "" + +#: ../../writing/documentation.rst:75 msgid "" "Sphinx is famous for its API generation, but it also works well for " "general project documentation. This Guide is built with Sphinx_ and is " "hosted on `Read The Docs`_" msgstr "" -#: ../../writing/documentation.rst:80 +#: ../../writing/documentation.rst:85 msgid "reStructuredText" msgstr "" -#: ../../writing/documentation.rst:82 +#: ../../writing/documentation.rst:87 msgid "" "Most Python documentation is written with reStructuredText_. It's like " "Markdown with all the optional extensions built in." msgstr "" -#: ../../writing/documentation.rst:85 +#: ../../writing/documentation.rst:90 msgid "" "The `reStructuredText Primer`_ and the `reStructuredText Quick " "Reference`_ should help you familiarize yourself with its syntax." msgstr "" -#: ../../writing/documentation.rst:94 +#: ../../writing/documentation.rst:99 msgid "Code Documentation Advice" msgstr "" -#: ../../writing/documentation.rst:96 +#: ../../writing/documentation.rst:101 msgid "" "Comments clarify the code and they are added with purpose of making the " "code easier to understand. In Python, comments begin with a hash (number " "sign) (``#``)." msgstr "" -#: ../../writing/documentation.rst:102 +#: ../../writing/documentation.rst:107 msgid "In Python, *docstrings* describe modules, classes, and functions:" msgstr "" -#: ../../writing/documentation.rst:110 +#: ../../writing/documentation.rst:115 msgid "" "In general, follow the comment section of :pep:`8#comments` (the \"Python" " Style Guide\"). More information about docstrings can be found at " ":pep:`0257#specification` (The Docstring Conventions Guide)." msgstr "" -#: ../../writing/documentation.rst:114 +#: ../../writing/documentation.rst:119 msgid "Commenting Sections of Code" msgstr "" -#: ../../writing/documentation.rst:116 +#: ../../writing/documentation.rst:121 msgid "" "*Do not use triple-quote strings to comment code*. This is not a good " "practice, because line-oriented command-line tools such as grep will not " @@ -181,105 +189,169 @@ msgid "" "comment/uncomment toggle." msgstr "" -#: ../../writing/documentation.rst:124 +#: ../../writing/documentation.rst:129 msgid "Docstrings and Magic" msgstr "" -#: ../../writing/documentation.rst:126 +#: ../../writing/documentation.rst:131 msgid "" "Some tools use docstrings to embed more-than-documentation behavior, such" " as unit test logic. Those can be nice, but you won't ever go wrong with " "vanilla \"here's what this does.\"" msgstr "" -#: ../../writing/documentation.rst:131 +#: ../../writing/documentation.rst:135 +msgid "" +"Tools like Sphinx_ will parse your docstrings as reStructuredText and " +"render it correctly as HTML. This makes it very easy to embed snippets of" +" example code in a project's documentation." +msgstr "" + +#: ../../writing/documentation.rst:139 +msgid "" +"Additionally, Doctest_ will read all embedded docstrings that look like " +"input from the Python commandline (prefixed with \">>>\") and run them, " +"checking to see if the output of the command matches the text on the " +"following line. This allows developers to embed real examples and usage " +"of functions alongside their source code, and as a side effect, it also " +"ensures that their code is tested and works." +msgstr "" + +#: ../../writing/documentation.rst:160 msgid "Docstrings versus Block comments" msgstr "" -#: ../../writing/documentation.rst:133 +#: ../../writing/documentation.rst:162 msgid "" "These aren't interchangeable. For a function or class, the leading " "comment block is a programmer's note. The docstring describes the " "*operation* of the function or class:" msgstr "" -#: ../../writing/documentation.rst:148 +#: ../../writing/documentation.rst:173 +msgid "" +"Unlike block comments, docstrings are built into the Python language " +"itself. This means you can use all of Python's powerful introspection " +"capabilities to access docstrings at runtime, compared with comments " +"which are optimised out. Docstrings are accessible from both the " +"`__doc__` dunder attribute for almost every Python object, as well as " +"with the built in `help()` function." +msgstr "" + +#: ../../writing/documentation.rst:179 +msgid "" +"While block comments are usually used to explain *what* a section of code" +" is doing, or the specifics of an algorithm, docstrings are more intended" +" for explaining to other users of your code (or you in 6 months time) " +"*how* a particular function can be used and the general purpose of a " +"function, class, or module." +msgstr "" + +#: ../../writing/documentation.rst:186 +msgid "Writing Docstrings" +msgstr "" + +#: ../../writing/documentation.rst:188 +msgid "" +"Depending on the complexity of the function, method, or class being " +"written, a one-line docstring may be perfectly appropriate. These are " +"generally used for really obvious cases, such as::" +msgstr "" + +#: ../../writing/documentation.rst:196 +msgid "" +"The docstring should describe the function in a way that is easy to " +"understand. For simple cases like trivial functions and classes, simply " +"embedding the function's signature (i.e. `add(a, b) -> result`) in the " +"docstring is unnecessary. This is because with Python's `inspect` module," +" it is already quite easy to find this information if needed, and it is " +"also readily available by reading the source code." +msgstr "" + +#: ../../writing/documentation.rst:203 +msgid "" +"In larger or more complex projects however, it is often a good idea to " +"give more information about a function, what it does, any exceptions it " +"may raise, what it returns, or relevant details about the parameters." +msgstr "" + +#: ../../writing/documentation.rst:207 +msgid "" +"For more detailed documentation of code a popular style is the one used " +"for the Numpy project, often called `Numpy style`_ docstrings. While it " +"can take up a few more lines the previous example, it allows the " +"developer to include a lot more information about a method, function, or " +"class. ::" +msgstr "" + +#: ../../writing/documentation.rst:233 +msgid "" +"The `sphinx.ext.napoleon`_ plugin allows Sphinx to parse this style of " +"docstrings, making it easy to incorporate NumPy style docstrings into " +"your project." +msgstr "" + +#: ../../writing/documentation.rst:237 +msgid "" +"At the end of the day, it doesn't really matter what style is used for " +"writing docstrings, their purpose is to serve as documentation for anyone" +" who may need to read or make changes to your code. As long as it is " +"correct, understandable and gets the relevant points across then it has " +"done the job it was designed to do." +msgstr "" + +#: ../../writing/documentation.rst:244 +msgid "For further reading on docstrings, feel free to consult :pep:`257`" +msgstr "" + +#: ../../writing/documentation.rst:251 msgid "Other Tools" msgstr "" -#: ../../writing/documentation.rst:150 +#: ../../writing/documentation.rst:253 msgid "You might see these in the wild. Use :ref:`sphinx-ref`." msgstr "" -#: ../../writing/documentation.rst:155 +#: ../../writing/documentation.rst:258 msgid "Pycco_" msgstr "" -#: ../../writing/documentation.rst:153 +#: ../../writing/documentation.rst:256 msgid "" "Pycco is a \"literate-programming-style documentation generator\" and is " "a port of the node.js Docco_. It makes code into a side-by-side HTML code" " and documentation." msgstr "" -#: ../../writing/documentation.rst:162 +#: ../../writing/documentation.rst:265 msgid "Ronn_" msgstr "" -#: ../../writing/documentation.rst:161 +#: ../../writing/documentation.rst:264 msgid "" "Ronn builds Unix manuals. It converts human readable textfiles to roff " "for terminal display, and also to HTML for the web." msgstr "" -#: ../../writing/documentation.rst:167 +#: ../../writing/documentation.rst:270 msgid "Epydoc_" msgstr "" -#: ../../writing/documentation.rst:167 +#: ../../writing/documentation.rst:270 msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." msgstr "" -#: ../../writing/documentation.rst:173 +#: ../../writing/documentation.rst:276 msgid "MkDocs_" msgstr "" -#: ../../writing/documentation.rst:172 +#: ../../writing/documentation.rst:275 msgid "" "MkDocs is a fast and simple static site generator that's geared towards " "building project documentation with Markdown." msgstr "" #~ msgid "" -#~ "A :file:`README` file at the root " -#~ "directory should give general information " -#~ "to both users and maintainers of a" -#~ " project. It should be raw text " -#~ "or written in some very easy to" -#~ " read markup, such as :ref" -#~ ":`reStructuredText-ref` or Markdown. It " -#~ "should contain a few lines explaining" -#~ " the purpose of the project or " -#~ "library (without assuming the user knows" -#~ " anything about the project), the url" -#~ " of the main source for the " -#~ "software, and some basic credit " -#~ "information. This file is the main " -#~ "entry point for readers of the " -#~ "code." -#~ msgstr "" - -#~ msgid "" -#~ "In general, follow the comment section" -#~ " of :pep:`8#comments` (the \"Python Style" -#~ " Guide\")." -#~ msgstr "" - -#~ msgid "" -#~ "Ronn builds unix manuals. It converts" -#~ " human readable textfiles to roff for" -#~ " terminal display, and also to HTML" -#~ " for the web." #~ msgstr "" #~ msgid "Further reading on docstrings: :pep:`257`" diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index 5c1d4a001e1392db5467158b1b82949e89b92a25..eaa9fc52acf7d070f5dbf91d1b551dcacaa082f9 100644 GIT binary patch delta 1379 zcmXZbc}&l79LMojF-K96BZd`Y^AnSMp{x-$!_0E*r(cdxa#alBN6tx(a$k`}?h;X% zoJH<5hB21wA9KvPxt^bW`s?w1y+7aY=l)hy)T*ecmFKMO{^KF-kCw(r+7}}Y!tc0~ zdcTR%F!G~GQV_Y_WN9RM&=hF^c^e)iKaQ2AVaik~0ISi7zp)|jjia$CPMa6d&Ea@tao+BN?fJ7Xk^By6$EIdnxo;W?y);T=J#i1Nz|~ ztb;zOQY&nV!?7Eh_T_jRGtdm=S|Ry+N}2eBe0Y_8FKacEBj;gb+Hc`|#&y3~%Q@0e zzK(OG5S=D{Blk*|8j*uHNQ=l}8>NoqB0Nm4-XyUJO51EzhLlU5hn3hS)83iS_>=Ga zw@T-*!FF~GukDcDFuoS;;(}0!*)6Ta;yn_lq40guDDrVMEB%+nqpzKIWr8mehC;xo@gQCprtIEm(weaQHd9;!+$+E<*^m zk^2_gyYU3wOjZv{q`JJ|zF@a-%|&*B`bjifpIb^h7NN)>K;SL= zJNCc<b}$;2R@K`Q%}X4hk62K-hKSKk@s>2eiZcWw0c3h5luJFsg=Xpf!+(KEt4d?R9$k{u2?91*d}$+3x< X`3W5}K>krlrFbKSbs#evUHaCP!kGJ4f-0 znu;Y8xhj#d95ctr%zbTme)swP_4vKspU?O6`F@V?ud=dHWo4uM$i~h;9#U466d@@y zS{jL8aX!h}xQab)1pG-CVve&Z+@_F>7{SLlmUgz@- z(jFRaZj$OKM5jsL$iZ8rHst|=*ZI{>tZP{V;+$o(PFU1F|f;jbeh%ET;!K z=A_yB6pWyrjpfvT<+4lU(o<4C`TJ>(hJ5@CH{Hr-r9_O(lipCT!ZhY7IwvilKB9n^ zXMPp%!#bOZ+@${Kzz%o-o1qKaVyW9|Zs?Vwe`7IXvbo-ayeRCS&MP3tR637Seg00 ze_l18V;I}?oci5s=1B9dn}v0)FbfK*;QTu=&}a(Qz_GZB2NKab+s`++M7)@8ng@E^ zGN0oh45eJp)whnU`yF5A5AWyEM4M$Z=gQ=$=L#m{PedhSI{yzUk zGz_feT$u2OE52D|xT|8?Ht*&E{RRxM1q6o#1iGT<4)gG9xRCkIm1VcfZg0q0ZF|3V cU&F!8yUsZJc+t|3p6Yt)7(2&hue1652dX+4d;kCd diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 4e1d9e3dd..540ea4ec1 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2016-11-17 01:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" @@ -26,8 +26,8 @@ msgid "" "filesystem." msgstr "" "여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미합니다. 우리는 깔끔하고 " -"효율적인 코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있습니다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한" -" 코드를 만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제입니다." +"효율적인 코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있습니다. 일반적으로 \"구성\"이란 로직과 의존성이 " +"깔끔한 코드를 만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제입니다." #: ../../writing/structure.rst:11 msgid "" @@ -46,9 +46,9 @@ msgid "" "project. We then discuss various perspectives on how to build code which " "can be extended and tested reliably." msgstr "" -"이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것입니다. 이 2가지가 프로젝트를 위한 강력한 구조를 만들기 위한 " -"핵심적인 요소이기 때문입니다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 관점에서" -" 검토할 것입니다." +"이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것입니다. 이 2가지가 프로젝트를 위한 강력한 구조를 만들기 위한" +" 핵심적인 요소이기 때문입니다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 " +"관점에서 검토할 것입니다." #: ../../writing/structure.rst:24 msgid "Structure of the Repository" @@ -65,9 +65,9 @@ msgid "" " project's `architecture " "`__." msgstr "" -"코딩 스타일, API 디자인, 자동화처럼 건강한 개발 사이클에 필수적인 요소들처럼, 저장소의 구조도 프로젝트의 " -"`아키텍처 `__ " -"에 결정적인 요소입니다. " +"코딩 스타일, API 디자인, 자동화처럼 건강한 개발 사이클에 필수적인 요소들처럼, 저장소의 구조도 프로젝트의 `아키텍처 " +"`__" +" 에 결정적인 요소입니다. " #: ../../writing/structure.rst:34 msgid "" @@ -99,8 +99,8 @@ msgid "" "they might look elsewhere before even reading your beautiful " "documentation." msgstr "" -"당신의 저장소가 엄청나게 많은 파일들과 디렉토리로 꼬여있다면, 방문자들은 " -"금방 떠나버리고 말 것입니다. 아무리 아름다운 문서가 있다고 해도 말입니다. " +"당신의 저장소가 엄청나게 많은 파일들과 디렉토리로 꼬여있다면, 방문자들은 금방 떠나버리고 말 것입니다. 아무리 아름다운 문서가 " +"있다고 해도 말입니다. " #: ../../writing/structure.rst:48 msgid "Dress for the job you want, not the job you have." @@ -113,10 +113,8 @@ msgid "" "becoming intimately familiar with every nook and cranny. The layout of it" " is important." msgstr "" -"물론 첫인상이 전부라는 말은 아닙니다. 당신과 동료들은 저장소에 올려진 " -"프로젝트를 위해 수없이 많은 날들을 지세웠을 것입니다. " -"그러다보니 어느새 저장소의 구석구석에 이미 친숙해져있을 것입니다. " -"그래도 모양새는 중요합니다. " +"물론 첫인상이 전부라는 말은 아닙니다. 당신과 동료들은 저장소에 올려진 프로젝트를 위해 수없이 많은 날들을 지세웠을 것입니다. " +"그러다보니 어느새 저장소의 구석구석에 이미 친숙해져있을 것입니다. 그래도 모양새는 중요합니다. " #: ../../writing/structure.rst:56 msgid "Sample Repository" @@ -126,16 +124,13 @@ msgstr "샘플 저장소" msgid "" "**tl;dr**: This is what `Kenneth Reitz `_ " "recommends." -msgstr "" -"3줄 요약 필수(tl;dr): `Kenneth Reitz `_ 의 말입니다. " +msgstr "3줄 요약 필수(tl;dr): `Kenneth Reitz `_ 의 말입니다. " #: ../../writing/structure.rst:60 msgid "" "This repository is `available on GitHub " "`__." -msgstr "" -"이 저장소는 `깃허브에서 볼 수 있습니다 " -"`__." +msgstr "이 저장소는 `깃허브에서 볼 수 있습니다 `__." #: ../../writing/structure.rst:77 msgid "Let's get into some specifics." @@ -165,20 +160,17 @@ msgstr "관심있는 코드" msgid "" "Your module package is the core focus of the repository. It should not be" " tucked away:" -msgstr "" -"모듈 패키지는 저장소의 핵심입니다. 숨겨놓으면 안됩니다: " +msgstr "모듈 패키지는 저장소의 핵심입니다. 숨겨놓으면 안됩니다: " #: ../../writing/structure.rst:96 msgid "" "If your module consists of only a single file, you can place it directly " "in the root of your repository:" -msgstr "" -"모듈 안에 단 하나의 파일밖에 없다면, 저장소의 최상위 폴더에 바로 두어도 좋습니다. " +msgstr "모듈 안에 단 하나의 파일밖에 없다면, 저장소의 최상위 폴더에 바로 두어도 좋습니다. " #: ../../writing/structure.rst:103 msgid "Your library does not belong in an ambiguous src or python subdirectory." -msgstr "" -"라이브러리를 애매한 소스나 파이썬 하위 디렉토리에 두면 안됩니다. " +msgstr "라이브러리를 애매한 소스나 파이썬 하위 디렉토리에 두면 안됩니다. " #: ../../writing/structure.rst:106 msgid "License" @@ -197,24 +189,21 @@ msgid "" "This is arguably the most important part of your repository, aside from " "the source code itself. The full license text and copyright claims should" " exist in this file." -msgstr "" -"소스 코드를 외에 프로젝트 저장소의 가장 중요한 부분입니다. " -"라이선스 문서 전문과 저작권이 반드시 파일에 들어가야 합니다. " +msgstr "소스 코드를 외에 프로젝트 저장소의 가장 중요한 부분입니다. 라이선스 문서 전문과 저작권이 반드시 파일에 들어가야 합니다. " #: ../../writing/structure.rst:120 msgid "" "If you aren't sure which license you should use for your project, check " "out `choosealicense.com `_." msgstr "" -"어떤 라이선스를 써야할지 모르겠다면 `choosealicense.com `_ 를 확인하세요." +"어떤 라이선스를 써야할지 모르겠다면 `choosealicense.com `_ 를 " +"확인하세요." #: ../../writing/structure.rst:123 msgid "" "Of course, you are also free to publish code without a license, but this " "would prevent many people from potentially using your code." -msgstr "" -"라이선스 없이 코드가 배포되어도 상관없을 수도 있습니다. " -"하지만 그랬다가는 사람들이 당신의 코드를 사용하기를 꺼릴 것입니다. " +msgstr "라이선스 없이 코드가 배포되어도 상관없을 수도 있습니다. 하지만 그랬다가는 사람들이 당신의 코드를 사용하기를 꺼릴 것입니다. " #: ../../writing/structure.rst:127 msgid "Setup.py" @@ -253,10 +242,9 @@ msgid "" "It should specify the dependencies required to contribute to the project:" " testing, building, and generating documentation." msgstr "" -"`pip 필수 파일 `__ " -"은 반드시 저장소의 최상위 폴더에 두어야 합니다. " -"이 파일은 프로젝트에 기여하기 위한 작업들, 즉 테스트, 빌드, 문서 생성을 위해 필요한 " -"의존성에 대하여 명시해야 합니다. " +"`pip 필수 파일 `__ 은 반드시 저장소의 최상위 폴더에 두어야 합니다. 이 파일은 프로젝트에 기여하기 위한 작업들, 즉 테스트, 빌드," +" 문서 생성을 위해 필요한 의존성에 대하여 명시해야 합니다. " #: ../../writing/structure.rst:155 msgid "" @@ -264,9 +252,8 @@ msgid "" "development environment setup via ``setup.py``, this file may be " "unnecessary." msgstr "" -"프로젝트에 개발 의존성이 없거나, 아니면 " -"``setup.py`` 를 통해 개발 환경을 설치하는 편을 좋아한다면 " -"이 파일은 불필요합니다. " +"프로젝트에 개발 의존성이 없거나, 아니면 ``setup.py`` 를 통해 개발 환경을 설치하는 편을 좋아한다면 이 파일은 " +"불필요합니다. " #: ../../writing/structure.rst:160 msgid "Documentation" @@ -309,8 +296,8 @@ msgid "" "Obviously, these test modules must import your packaged module to test " "it. You can do this a few ways:" msgstr "" -"물론 이런 테스트 모듈들은 프로젝트의 패키징된 모듈들을 임포트해서 " -"테스트를 수행합니다. 테스트를 수행하는데에는 몇 가지 방법이 있습니다. " +"물론 이런 테스트 모듈들은 프로젝트의 패키징된 모듈들을 임포트해서 테스트를 수행합니다. 테스트를 수행하는데에는 몇 가지 방법이 " +"있습니다. " #: ../../writing/structure.rst:198 msgid "Expect the package to be installed in site-packages." @@ -329,17 +316,14 @@ msgid "" "requires them to have an isolated environment setup for each instance of " "the codebase." msgstr "" -"후자를 강력 추천합니다. " -"계속 변경되고 있는 코드를 테스트하기 위해 `setup.py `__ 를 " +"후자를 강력 추천합니다. 계속 변경되고 있는 코드를 테스트하기 위해 `setup.py `__ 를 " "실행해야만 한다면, 변경 중인 코드의 각 시점마다 독립된 환경 설정을 해야만 합니다. " #: ../../writing/structure.rst:207 msgid "" "To give the individual tests import context, create a tests/context.py " "file:" -msgstr "" -"각각의 테스트마다 별도의 임포트 설정을 주고 싶다면 " -"tests/context.py 파일을 이렇게 작성하세요. " +msgstr "각각의 테스트마다 별도의 임포트 설정을 주고 싶다면 tests/context.py 파일을 이렇게 작성하세요. " #: ../../writing/structure.rst:218 msgid "Then, within the individual test modules, import the module like so:" @@ -356,10 +340,9 @@ msgid "" "users; many test suites often require additional dependencies and runtime" " contexts." msgstr "" -"어떤 사람들은 테스트 파일을 반드시 테스트 하려는 모듈 자체에 " -"넣고 배포를 해야한다고 주장합니다. 하지만 저는 이에 동의하지 않습니다. " -"그렇게 하면 사용자 입장에서 볼 때 프로젝트의 모듈이 복잡해집니다. " -"그리고 추가적인 의존성 관계와 실행 환경이 필요한 테스트 도구가 많기 때문입니다. " +"어떤 사람들은 테스트 파일을 반드시 테스트 하려는 모듈 자체에 넣고 배포를 해야한다고 주장합니다. 하지만 저는 이에 동의하지 " +"않습니다. 그렇게 하면 사용자 입장에서 볼 때 프로젝트의 모듈이 복잡해집니다. 그리고 추가적인 의존성 관계와 실행 환경이 필요한 " +"테스트 도구가 많기 때문입니다. " #: ../../writing/structure.rst:232 msgid "Makefile" @@ -380,11 +363,8 @@ msgid "" "short, make is a incredibly useful tool for defining generic tasks for " "your project." msgstr "" -"Makefile은 지금 이 프로젝트와 다른 Pocoo 프로젝트에도 항상 있습니다. " -"왜 그럴까요? " -"이 프로젝트들은 C로 작성되지 않았기 때문입니다... " -"즉 make는 당신의 프로젝트를 관리하는 작업들을 알려주는 " -"엄청나게 유용한 도구입니다. " +"Makefile은 지금 이 프로젝트와 다른 Pocoo 프로젝트에도 항상 있습니다. 왜 그럴까요? 이 프로젝트들은 C로 작성되지 " +"않았기 때문입니다... 즉 make는 당신의 프로젝트를 관리하는 작업들을 알려주는 엄청나게 유용한 도구입니다. " #: ../../writing/structure.rst:247 msgid "**Sample Makefile:**" @@ -395,8 +375,8 @@ msgid "" "Other generic management scripts (e.g. ``manage.py`` or ``fabfile.py``) " "belong at the root of the repository as well." msgstr "" -"다른 관리 작업 스크립트(``manage.py`` 또는 ``fabfile.py``) " -"들도 Makefile과 마찬가지로 저장소의 최상위 디렉토리에 두세요. " +"다른 관리 작업 스크립트(``manage.py`` 또는 ``fabfile.py``) 들도 Makefile과 마찬가지로 저장소의 " +"최상위 디렉토리에 두세요. " #: ../../writing/structure.rst:263 msgid "Regarding Django Applications" @@ -408,17 +388,14 @@ msgid "" "Django 1.4. Many developers are structuring their repositories poorly due" " to the new bundled application templates." msgstr "" -"장고 1.4 버전의 릴리즈 이후로 장고 어플리케이션에 새로운 유행이 불고 있습니다. " -"많은 개발자들이 자신들의 저장소를 지저분하게 구성하고 있습니다. " -"1.4 버전에 포함된 어플리케이션 템플릿 때문입니다. " +"장고 1.4 버전의 릴리즈 이후로 장고 어플리케이션에 새로운 유행이 불고 있습니다. 많은 개발자들이 자신들의 저장소를 지저분하게 " +"구성하고 있습니다. 1.4 버전에 포함된 어플리케이션 템플릿 때문입니다. " #: ../../writing/structure.rst:269 msgid "" "How? Well, they go to their bare and fresh repository and run the " "following, as they always have:" -msgstr "" -"어떻게 지저분하게 하길래? " -"음, 이런 개발자들은 자신의 정리 안 된 저장소에서 대체로 이런 명령을 실행합니다. " +msgstr "어떻게 지저분하게 하길래? 음, 이런 개발자들은 자신의 정리 안 된 저장소에서 대체로 이런 명령을 실행합니다. " #: ../../writing/structure.rst:276 msgid "The resulting repository structure looks like this:" @@ -434,9 +411,8 @@ msgid "" "Unnecessary nesting doesn't help anybody (unless they're nostalgic for " "monolithic SVN repos)." msgstr "" -"상위 폴더와 하위 폴더의 이름이 같으니 개발 도구도 혼란스러워하고 " -"개발자들도 혼란스러워하게 됩니다. " -"불필요한 폴더 감싸기는 (SVN 저장소를 그리워하는게 아니라면)도움이 안됩니다. " +"상위 폴더와 하위 폴더의 이름이 같으니 개발 도구도 혼란스러워하고 개발자들도 혼란스러워하게 됩니다. 불필요한 폴더 감싸기는 (SVN" +" 저장소를 그리워하는게 아니라면)도움이 안됩니다. " #: ../../writing/structure.rst:292 msgid "Let's do it properly:" @@ -462,18 +438,17 @@ msgid "" " to grasp. Therefore, you are left with the pure architectural task of " "crafting the different parts of your project and their interactions." msgstr "" -"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽습니다. " -"여기서 쉽다는 말은 제약이 많지 않고, 모듈을 불러오는 방식이 이해하기 쉽다는 뜻입니다. " -"따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 " -"하면 됩니다." +"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽습니다. 여기서 쉽다는 말은 제약이 많지 않고, " +"모듈을 불러오는 방식이 이해하기 쉽다는 뜻입니다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을" +" 하면 됩니다." #: ../../writing/structure.rst:323 msgid "" "Easy structuring of a project means it is also easy to do it poorly. Some" " signs of a poorly structured project include:" -msgstr "" -"프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻입니다. " -"프로젝트가 엉망으로 구성되었음을 알 수 있는 신호를 몇 가지 찾아보았습니다. " +msgstr "" +"프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻입니다. 프로젝트가 엉망으로 구성되었음을 알 수 있는 신호를 몇 가지 " +"찾아보았습니다. " #: ../../writing/structure.rst:327 msgid "" @@ -497,9 +472,9 @@ msgid "" "which requires very careful surgery to adapt the change. This means you " "have too many assumptions about Table in Carpenter's code or the reverse." msgstr "" -"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 합니다. 책상의 코드 변경이 목수의 " -"코드를 무너뜨리기 때문입니다. 이럴 때 코드 변경을 하려면 아주 신중하게 수술을 해야합니다. 이 말인즉, 목수의 코드 안에 있는 책상의 " -"코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻입니다." +"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 합니다. 책상의 코드 변경이 목수의" +" 코드를 무너뜨리기 때문입니다. 이럴 때 코드 변경을 하려면 아주 신중하게 수술을 해야합니다. 이 말인즉, 목수의 코드 안에 있는 " +"책상의 코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻입니다." #: ../../writing/structure.rst:342 msgid "" @@ -511,8 +486,8 @@ msgid "" "discover that remote template code is also modifying this context, " "messing with table dimensions." msgstr "" -"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우입니다. 목수가 언제든 " -"아무나 바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생깁니다. 어쩌다가 이런 일이 " +"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우입니다. 목수가 언제든" +" 아무나 바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생깁니다. 어쩌다가 이런 일이 " "벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 샘플 코드가 변수를 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 " "것입니다." @@ -525,8 +500,8 @@ msgid "" "So the good news is that you might not see too much of it." msgstr "" "스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 " -"나눠지지도 않은 코드를 스파게티 코드라고 합니다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 복잡하고" -" 어지러운 코드는 유지 보수하기가 어렵습니다. 다행히 이런 난장판을 많이 볼 일은 없을 것입니다." +"나눠지지도 않은 코드를 스파게티 코드라고 합니다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 " +"복잡하고 어지러운 코드는 유지 보수하기가 어렵습니다. 다행히 이런 난장판을 많이 볼 일은 없을 것입니다." #: ../../writing/structure.rst:358 msgid "" @@ -536,9 +511,9 @@ msgid "" "AssetTable or Table, or even TableNew for your task at hand, you might be" " swimming in ravioli code." msgstr "" -"라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있습니다. 구조화도 되어있지 않으면서 수 백개의 비슷한 " -"로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 합니다. 식탁을 써야하는지, 탁자를 써야하는지, 그도 " -"아니면 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것입니다." +"라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있습니다. 구조화도 되어있지 않으면서 수 백개의 " +"비슷한 로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 합니다. 식탁을 써야하는지, 탁자를 " +"써야하는지, 그도 아니면 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것입니다." #: ../../writing/structure.rst:366 msgid "Modules" @@ -550,8 +525,8 @@ msgid "" "probably the most natural one. Abstraction layers allow separating code " "into parts holding related data and functionality." msgstr "" -"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운 모습입니다. 추상 레이어는 코드를 기능 파트와" -" 데이터 저장 파트로 나눌 수 있도록 해줍니다." +"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운 모습입니다. 추상 레이어는 코드를 기능 " +"파트와 데이터 저장 파트로 나눌 수 있도록 해줍니다." #: ../../writing/structure.rst:372 msgid "" @@ -564,8 +539,8 @@ msgid "" "statements." msgstr "" "예를 들어 프로젝트의 레이어 중 하나는 사용자 인터페이스를 담당하고, 다른 하나는 저수준의 데이터 처리를 담당할 수도 있다. 이 두" -" 레이어를 분리시키는 가장 자연스러운 방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각의 파일에 넣는 " -"것입니다. 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 합니다. 이는 ``import`` 와 ``from ... " +" 레이어를 분리시키는 가장 자연스러운 방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각의 파일에 넣는 것입니다." +" 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 합니다. 이는 ``import`` 와 ``from ... " "import`` 구문으로 가능합니다." #: ../../writing/structure.rst:379 @@ -584,8 +559,8 @@ msgid "" "mark (?). So a file name like :file:`my.spam.py` is one you should avoid!" " Naming this way will interfere with the way Python looks for modules." msgstr "" -"이 책의 스타일 안내서처럼 하려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나 물음표(?) 같은 특수 문자의 사용을 " -"지양해야 합니다. 그러니까 :file:`my.spam.py` 같은 이름으로 만들면 안됩니다! 파이썬이 모듈을 찾는 걸 방해할겁니다. " +"이 책의 스타일 안내서처럼 하려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나 물음표(?) 같은 특수 문자의 사용을 지양해야 " +"합니다. 그러니까 :file:`my.spam.py` 같은 이름으로 만들면 안됩니다! 파이썬이 모듈을 찾는 걸 방해할겁니다. " #: ../../writing/structure.rst:388 msgid "" @@ -603,8 +578,8 @@ msgid "" "If you'd like you could name your module :file:`my_spam.py`, but even our" " friend the underscore should not be seen often in module names." msgstr "" -":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능합니다. 하지만 우리의 친구 밑줄(_)은 모듈 이름으로는 자주 쓰이지" -" 않습니다." +":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능합니다. 하지만 우리의 친구 밑줄(_)은 모듈 이름으로는 자주 " +"쓰이지 않습니다." #: ../../writing/structure.rst:396 msgid "" @@ -612,9 +587,8 @@ msgid "" "Python file to be a module, but you need to understand the import " "mechanism in order to use this concept properly and avoid some issues." msgstr "" -"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없습니다. " -"하지만 모듈이라는 개념을 잘 사용하고 " -"문제를 발생시키지 않기 위해서는, 모듈을 불러오는 방법을 이해할 필요가 있습니다." +"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없습니다. 하지만 모듈이라는 개념을 잘 사용하고" +" 문제를 발생시키지 않기 위해서는, 모듈을 불러오는 방법을 이해할 필요가 있습니다." #: ../../writing/structure.rst:400 msgid "" @@ -637,8 +611,8 @@ msgid "" "definitions are stored in the module's dictionary." msgstr "" "일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행합니다. :file:`modu.py` " -"모듈 안의 모든 최상위 구문이 실행됩니다. 불러온 다른 모듈이 있다면 그것도 함께 실행됩니다. 함수와 클래스 정의는 모듈의 디렉토리에 " -"저장됩니다." +"모듈 안의 모든 최상위 구문이 실행됩니다. 불러온 다른 모듈이 있다면 그것도 함께 실행됩니다. 함수와 클래스 정의는 모듈의 " +"디렉토리에 저장됩니다." #: ../../writing/structure.rst:410 msgid "" @@ -646,9 +620,9 @@ msgid "" " the caller through the module's namespace, a central concept in " "programming that is particularly helpful and powerful in Python." msgstr "" -"그런 다음에야 모듈의 변수와 함수, 그리고 클래스를 사용할 수 있게 됩니다. " -"여기서 호출자는 모듈의 네임스페이스(namespace)를 통해 이것들을 사용합니다. " -"모듈의 네임스페이스(namespace)는 아주 유용하고 강력하게 사용되는 파이썬 프로그래밍의 핵심 개념입니다. " +"그런 다음에야 모듈의 변수와 함수, 그리고 클래스를 사용할 수 있게 됩니다. 여기서 호출자는 모듈의 " +"네임스페이스(namespace)를 통해 이것들을 사용합니다. 모듈의 네임스페이스(namespace)는 아주 유용하고 강력하게 " +"사용되는 파이썬 프로그래밍의 핵심 개념입니다. " #: ../../writing/structure.rst:414 msgid "" @@ -659,9 +633,10 @@ msgid "" " that the included code could have unwanted effects, e.g. override an " "existing function with the same name." msgstr "" -"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와 호출자에" -" '복사'해 넣는 명령어로 사용됩니다. 하지만 파이썬에서는 다릅니다. 모듈에 포함된 코드는 네임스페이스(namespace)에서 독립적으로 실행됩니다. 이는 " -"일반적으로 모듈에 포함된 코드가 오작동을 하는 경우가 없다는 뜻입니다. " +"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와 " +"호출자에 '복사'해 넣는 명령어로 사용됩니다. 하지만 파이썬에서는 다릅니다. 모듈에 포함된 코드는 " +"네임스페이스(namespace)에서 독립적으로 실행됩니다. 이는 일반적으로 모듈에 포함된 코드가 오작동을 하는 경우가 없다는 " +"뜻입니다. " #: ../../writing/structure.rst:420 msgid "" @@ -670,10 +645,9 @@ msgid "" " considered bad practice. **Using** ``import *`` **makes code harder to " "read and makes dependencies less compartmentalized**." msgstr "" -"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 작동하는지 확인해봅시다. " -"일반적으로 이러한 구문은 잘못된 습관입니다. " -"**Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, 코드의 독립성 " -"여부를 판단하기 어렵게 합니다**." +"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 작동하는지 확인해봅시다. 일반적으로" +" 이러한 구문은 잘못된 습관입니다. **Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, 코드의 독립성" +" 여부를 판단하기 어렵게 합니다**." #: ../../writing/structure.rst:425 msgid "" @@ -684,21 +658,21 @@ msgid "" "is that it will save a little typing." msgstr "" "``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 전역 네임스페이스(global " -"namespace)에 넣어둘 수 있는 좋은 방법입니다. 뿐만 아니라 이 구문은 전역 네임스페이스(global namespace)에서 " -"무엇을 불러올지를 명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭습다. 단순히 ``import *`` 구문을 사용하는 " -"것은 단지 타이핑을 덜 한다는 이점 뿐입니다." +"namespace)에 넣어둘 수 있는 좋은 방법입니다. 뿐만 아니라 이 구문은 전역 네임스페이스(global namespace)에서" +" 무엇을 불러올지를 명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭습다. 단순히 ``import *`` 구문을 " +"사용하는 것은 단지 타이핑을 덜 한다는 이점 뿐입니다." #: ../../writing/structure.rst:431 msgid "**Very bad**" -msgstr "**최악**" +msgstr "**Very bad**" #: ../../writing/structure.rst:440 msgid "**Better**" -msgstr "**좀 나음**" +msgstr "**Better**" #: ../../writing/structure.rst:448 ../../writing/structure.rst:810 msgid "**Best**" -msgstr "**최고**" +msgstr "**Best**" #: ../../writing/structure.rst:456 msgid "" @@ -711,10 +685,10 @@ msgid "" "code readability and understandability in all but the simplest single " "file projects." msgstr "" -":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나입니다. 가독성이란 쓸데없이 긴 본문과 " -"잡동사니들을 피한다는 뜻입니다. 그러므로 어느 수준까지는 간결성을 얻고자 하는 노력이 필요합니다. 그러나 너무 간결한 나머지 모호해서는 " -"안됩니다. ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은 코드의 가독성과 이해용이성을 크게 " -"높여줍니다. 단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇습니다." +":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나입니다. 가독성이란 쓸데없이 긴 본문과" +" 잡동사니들을 피한다는 뜻입니다. 그러므로 어느 수준까지는 간결성을 얻고자 하는 노력이 필요합니다. 그러나 너무 간결한 나머지 " +"모호해서는 안됩니다. ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은 코드의 가독성과 " +"이해용이성을 크게 높여줍니다. 단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇습니다." #: ../../writing/structure.rst:466 msgid "Packages" @@ -734,9 +708,9 @@ msgid "" ":file:`__init__.py` file, which is used to gather all package-wide " "definitions." msgstr "" -":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식됩니다. 패키지의 여러 다른 모듈들은 일반적인 모듈과 " -"비슷한 방법으로 불러와집니다. 그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별합니다.이 " -"파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰입니다." +":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식됩니다. 패키지의 여러 다른 모듈들은 일반적인 " +"모듈과 비슷한 방법으로 불러와집니다. 그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 " +"특별합니다.이 파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰입니다." #: ../../writing/structure.rst:476 msgid "" @@ -748,10 +722,10 @@ msgid "" "variable, function, or class defined in :file:`modu.py` is available in " "the pack.modu namespace." msgstr "" -":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로 불러와집니다." -" 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾습니다. 그리고 해당 패키지의 모든 상위 구문을" -" 실행합니다. 이 작업 후에 :file:`modu.py` 파일에 정의된 모든 변수나 함수, 클래스를 pack.modu 네임스페이스" -"(namespace)에서 쓸 수 있습니다." +":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로 " +"불러와집니다. 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾습니다. 그리고 해당 패키지의 " +"모든 상위 구문을 실행합니다. 이 작업 후에 :file:`modu.py` 파일에 정의된 모든 변수나 함수, 클래스를 " +"pack.modu 네임스페이스(namespace)에서 쓸 수 있습니다." #: ../../writing/structure.rst:484 msgid "" @@ -761,9 +735,9 @@ msgid "" " single item from a sub-sub-package will require executing all " ":file:`__init__.py` files met while traversing the tree." msgstr "" -"흔히 보는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우입니다. 프로젝트가 복잡해질수록 " -"디렉토리 구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을 수 있습니다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 " -"불러오려고 했더니 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 실행하게 될 때가 있습니다." +"흔히 보는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우입니다. 프로젝트가 복잡해질수록 디렉토리 " +"구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을 수 있습니다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 불러오려고" +" 했더니 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 실행하게 될 때가 있습니다." #: ../../writing/structure.rst:490 msgid "" @@ -780,10 +754,9 @@ msgid "" "packages: ``import very.deep.module as mod``. This allows you to use " "`mod` in place of the verbose repetition of ``very.deep.module``." msgstr "" -"마지막으로 패키지 안쪽 깊숙히를 불러올 수 있는 편리한 구문이 있습니다. " -" ``import very.deep.module as mod`` 입니다. " -"이 구문은 ``very.deep.module``같은 장황한 구문을 반복하는 대신에 " -" `mod` 만으로 패키지를 사용할 수 있게 해줍니다. " +"마지막으로 패키지 안쪽 깊숙히를 불러올 수 있는 편리한 구문이 있습니다. ``import very.deep.module as " +"mod`` 입니다. 이 구문은 ``very.deep.module``같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를" +" 사용할 수 있게 해줍니다. " #: ../../writing/structure.rst:499 msgid "Object-oriented programming" @@ -804,12 +777,9 @@ msgid "" " arguments, and they may have methods and properties. In this " "understanding, Python is an object-oriented language." msgstr "" -"파이썬에서 모든 것은 객체입니다. 그리고 객체처럼 다룰 수 있습니다. " -"이 말인즉 함수는 일급 객체라고 말하는 것과 같은 의미입니다. " -"클래스, 문자열, 심지어 타입도 파이썬에서는 객체입니다. " -"다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 있습니다. " -"메소드와 속성을 가질 수도 있습니다. " -"이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것입니다. " +"파이썬에서 모든 것은 객체입니다. 그리고 객체처럼 다룰 수 있습니다. 이 말인즉 함수는 일급 객체라고 말하는 것과 같은 의미입니다." +" 클래스, 문자열, 심지어 타입도 파이썬에서는 객체입니다. 다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 " +"있습니다. 메소드와 속성을 가질 수도 있습니다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것입니다. " #: ../../writing/structure.rst:511 msgid "" @@ -819,10 +789,9 @@ msgid "" "definitions, class inheritance, or any other mechanisms that are specific" " to object-oriented programming." msgstr "" -"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 있지 않습니다. " -"객체지향으로 만들지 않은 파이썬 프로젝트도 완벽하게 실행 가능합니다. " -"즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있습니다. " -"클래스 상속이나 객체지향 프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지입니다." +"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 있지 않습니다. 객체지향으로 만들지 않은 파이썬" +" 프로젝트도 완벽하게 실행 가능합니다. 즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있습니다. 클래스 상속이나 " +"객체지향 프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지입니다." #: ../../writing/structure.rst:517 msgid "" @@ -833,13 +802,9 @@ msgid "" "have more latitude to not use object-orientation, when it is not required" " by the business model." msgstr "" -"게다가 modules_ 섹션에서 볼 수 있듯이 " -"파이썬이 모듈과 네임스페이스(namespace)를 다루는 방식은 " -"개발자로 하여금 자연스럽게 " -"캡슐화와 추상 레이어의 분리를 가능하게 해줍니다. " -"캡슐화와 추상 레이어의 분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유입니다. " -"그러므로 파이썬 프로그래머는 비지니스 모델이 굳이 객체지향을 필요로 하지 않는다면 " -"거기에 얽메이지 않아도 됩니다." +"게다가 modules_ 섹션에서 볼 수 있듯이 파이썬이 모듈과 네임스페이스(namespace)를 다루는 방식은 개발자로 하여금 " +"자연스럽게 캡슐화와 추상 레이어의 분리를 가능하게 해줍니다. 캡슐화와 추상 레이어의 분리는 둘 다 객체지향을 사용하는 가장 일반적인" +" 이유입니다. 그러므로 파이썬 프로그래머는 비지니스 모델이 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 됩니다." #: ../../writing/structure.rst:524 msgid "" @@ -848,8 +813,9 @@ msgid "" "some functionality. The problem, as pointed out by the discussions about " "functional programming, comes from the \"state\" part of the equation." msgstr "" -"불필요한 객체지향을 피해야 할 이유는 많습니다. 어떤 상태와 기능은 한데 모아두는 편이 더 유용할 때가 있습니다. 이럴 때는 " -"사용자 정의 클래스를 정의해서 쓰면 편리합니다. 문제는 함수형 프로그래밍의 문제점으로 지적되는 것처럼 \"상태\" 를 대입할 때 발생합니다." +"불필요한 객체지향을 피해야 할 이유는 많습니다. 어떤 상태와 기능은 한데 모아두는 편이 더 유용할 때가 있습니다. 이럴 때는 사용자" +" 정의 클래스를 정의해서 쓰면 편리합니다. 문제는 함수형 프로그래밍의 문제점으로 지적되는 것처럼 \"상태\" 를 대입할 때 " +"발생합니다." #: ../../writing/structure.rst:529 msgid "" @@ -868,8 +834,8 @@ msgid "" " to mark as read a deleted object." msgstr "" "어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생합니다. 동시에 발생하는 외부의 요청에 응답하기 " -"위해서입니다. 이런 경우에는 구문의 실행이 멈춰져 예정된 오브젝트가 됩니다. 즉 어떤 고정된 정보를 계속 잡고 있는 것입니다. 이때문에 " -"동시성의 문제나 경합 상황이 발생하기 쉽습니다." +"위해서입니다. 이런 경우에는 구문의 실행이 멈춰져 예정된 오브젝트가 됩니다. 즉 어떤 고정된 정보를 계속 잡고 있는 것입니다. " +"이때문에 동시성의 문제나 경합 상황이 발생하기 쉽습니다." #: ../../writing/structure.rst:542 msgid "" @@ -889,9 +855,9 @@ msgid "" "implicit context. If a function saves or deletes data in a global " "variable or in the persistence layer, it is said to have a side-effect." msgstr "" -"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와 프로시저를 사용하는 것입니다. 전역 변수를 " -"아무렇게나 사용하거나, 함수 내부에 있는 퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해집니다. 여기서 부작용이란 함수가 " -"함수를 둘러싼 맥락을 바꿔버리는 변화를 의미합니다. 만약 함수가 퍼시스턴스 레이어에 있는 데이터나 전역 변수에 있는 데이터를 " +"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와 프로시저를 사용하는 것입니다. 전역 변수를" +" 아무렇게나 사용하거나, 함수 내부에 있는 퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해집니다. 여기서 부작용이란 함수가" +" 함수를 둘러싼 맥락을 바꿔버리는 변화를 의미합니다. 만약 함수가 퍼시스턴스 레이어에 있는 데이터나 전역 변수에 있는 데이터를 " "날려버리거나 저장해 버린다면, 이런 것을 부작용이라 부릅니다. " #: ../../writing/structure.rst:553 @@ -929,8 +895,8 @@ msgid "" "classes and objects for some architectures because they have no context " "or side-effects." msgstr "" -"한마디로, 많은 아키텍처에서 순수한 함수는 가장 효율적인 건축 자재입니다. " -"클래스나 오브젝트보다 낫습니다. 순수한함수는 어떤 컨텍스트나 부작용도 없기 때문입니다. " +"한마디로, 많은 아키텍처에서 순수한 함수는 가장 효율적인 건축 자재입니다. 클래스나 오브젝트보다 낫습니다. 순수한함수는 어떤 " +"컨텍스트나 부작용도 없기 때문입니다. " #: ../../writing/structure.rst:570 msgid "" @@ -940,8 +906,8 @@ msgid "" "vehicles) have a relatively long life of their own in the computer's " "memory." msgstr "" -"분명히 객체지향은 유용합니다. 그리고 꼭 필요한 경우가 많습니다. 예를 들면 데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼, " -"아바타, 탈것이 있는 게임같은 경우에 그렇습니다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문입니다." +"분명히 객체지향은 유용합니다. 그리고 꼭 필요한 경우가 많습니다. 예를 들면 데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼," +" 아바타, 탈것이 있는 게임같은 경우에 그렇습니다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문입니다." #: ../../writing/structure.rst:577 msgid "Decorators" @@ -956,9 +922,10 @@ msgid "" "functions are first-class objects in Python, this can be done 'manually'," " but using the @decorator syntax is clearer and thus preferred." msgstr "" -"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있습니다. 데코레이터는 함수나 메소드를 감싸는(데코레이트 하는) 함수나 클래스입니다." -" '데코레이트 된' 함수나 메소드는 원래의 '데코레이트 되지 않은' 함수나 메소드를 대체합니다. 함수는 파이썬에서 일급 객체이기 " -"때문입니다. 이 작업은 '수작업'으로도 가능하지만 @decorator 문법을 쓰면 깔끔하게 쓸 수 있습니다. 그래서 많이들 씁니다." +"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있습니다. 데코레이터는 함수나 메소드를 감싸는(데코레이트 하는) " +"함수나 클래스입니다. '데코레이트 된' 함수나 메소드는 원래의 '데코레이트 되지 않은' 함수나 메소드를 대체합니다. 함수는 " +"파이썬에서 일급 객체이기 때문입니다. 이 작업은 '수작업'으로도 가능하지만 @decorator 문법을 쓰면 깔끔하게 쓸 수 " +"있습니다. 그래서 많이들 씁니다." #: ../../writing/structure.rst:602 msgid "" @@ -966,15 +933,16 @@ msgid "" "un-related logic 'polluting' the core logic of the function or method. A " "good example of a piece of functionality that is better handled with " "decoration is `memoization " -"` or caching: you " +"`__ or caching: you " "want to store the results of an expensive function in a table and use " "them directly instead of recomputing them when they have already been " "computed. This is clearly not part of the function logic." msgstr "" -"이 방법은 외부의 관련없는 로직이 함수나 메소드의 핵심 로직을 오염시키는 사태를 피할 수 있기 때문에 유용합니다. " -"데코레이션을 써서 다루는 편이 좋은 기능으로 예를 들면 `메모이제이션` 과 캐싱을 들 수 있습니다. 무거운 함수의 결과값을 테이블에 저장한 다음, 이미" -" 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 것입니다. " -"물론 이런 것은 함수 자체의 로직과는 별개입니다. " +"이 방법은 외부의 관련없는 로직이 함수나 메소드의 핵심 로직을 오염시키는 사태를 피할 수 있기 때문에 유용합니다. 데코레이션을 써서" +" 다루는 편이 좋은 기능으로 예를 들면 " +"`메모이제이션`__ 과 캐싱을 들 수 " +"있습니다. 무거운 함수의 결과값을 테이블에 저장한 다음, 이미 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 " +"것입니다. 물론 이런 것은 함수 자체의 로직과는 별개입니다. " #: ../../writing/structure.rst:611 msgid "Context Managers" @@ -989,11 +957,9 @@ msgid "" "inside the ``with`` block. The most well known example of using a context" " manager is shown here, opening on a file:" msgstr "" -"컨텍스트 관리자는 동작에 추가적인 컨텍스트 정보를 추가하는 파이썬 오브젝트입니다. " -"이 추가 정보는 ``with`` 구문으로 컨텍스트를 새로 열면서 " -"함수를 실행하는 형태로 만들어집니다. " -"마찬가지로 ``with`` 블럭 안의 모든 코드를 종료시킬 때도 함수를 실행합니다. " -"컨텍스트 관리자를 사용하는 가장 유명한 예시는 이렇습니다. 파일을 열고: " +"컨텍스트 관리자는 동작에 추가적인 컨텍스트 정보를 추가하는 파이썬 오브젝트입니다. 이 추가 정보는 ``with`` 구문으로 " +"컨텍스트를 새로 열면서 함수를 실행하는 형태로 만들어집니다. 마찬가지로 ``with`` 블럭 안의 모든 코드를 종료시킬 때도 함수를" +" 실행합니다. 컨텍스트 관리자를 사용하는 가장 유명한 예시는 이렇습니다. 파일을 열고: " #: ../../writing/structure.rst:624 msgid "" @@ -1002,9 +968,8 @@ msgid "" "point. This reduces a developer's cognitive load and makes the code " "easier to read." msgstr "" -"이런 식의 패턴에 익숙한 사람은 " -"이런 방식으로 ``open`` 을 실행하면 ``f`` 의 ``close`` 메소드가 " -"언젠가는 반드시 실행됨을 잘 알 것입니다. " +"이런 식의 패턴에 익숙한 사람은 이런 방식으로 ``open`` 을 실행하면 ``f`` 의 ``close`` 메소드가 언젠가는 반드시" +" 실행됨을 잘 알 것입니다. " #: ../../writing/structure.rst:628 msgid "" @@ -1012,9 +977,8 @@ msgid "" " class or using a generator. Let's implement the above functionality " "ourselves, starting with the class approach:" msgstr "" -"이런 기능을 직접 구현하는 2가지 쉬운 방법이 있습니다: " -"클래스를 사용하거나, 생성자를 사용하는 것입니다. " -"먼저 클래스를 사용하는 방법으로 위의 기능을 직접 구현해 봅시다. " +"이런 기능을 직접 구현하는 2가지 쉬운 방법이 있습니다: 클래스를 사용하거나, 생성자를 사용하는 것입니다. 먼저 클래스를 사용하는 " +"방법으로 위의 기능을 직접 구현해 봅시다. " #: ../../writing/structure.rst:647 msgid "" @@ -1025,10 +989,10 @@ msgid "" "contents of the ``with`` block is finished executing, the ``__exit__`` " "method is then called." msgstr "" -"위 예시는 ``with`` 에서 사용될 2개의 추가 메소드가 있는 일반적인 파이썬 오브젝트입니다. " -"CustomOpen 은 먼저 인스턴스화되고, 그 다음에 ``__enter__`` 메소드가 호출됩니다. " -"그리고 ``__enter__`` 함수가 리턴하는 ``as f`` 구문 안의 모든 결과값들이 ``f`` 에 할당됩니다. " -" ``with`` 블럭 안의 구문들이 모두 수행된 후에는 ``__exit__`` 메소드가 호출됩니다. " +"위 예시는 ``with`` 에서 사용될 2개의 추가 메소드가 있는 일반적인 파이썬 오브젝트입니다. CustomOpen 은 먼저 " +"인스턴스화되고, 그 다음에 ``__enter__`` 메소드가 호출됩니다. 그리고 ``__enter__`` 함수가 리턴하는 ``as" +" f`` 구문 안의 모든 결과값들이 ``f`` 에 할당됩니다. ``with`` 블럭 안의 구문들이 모두 수행된 후에는 " +"``__exit__`` 메소드가 호출됩니다. " #: ../../writing/structure.rst:653 msgid "" @@ -1036,7 +1000,8 @@ msgid "" "`_:" msgstr "" "그러면 이번에는 파이썬의 `contextlib " -"`_ 를 써서 생성자로 위의 기능을 구현해봅시다:" +"`_ 를 써서 생성자로 위의 기능을 " +"구현해봅시다:" #: ../../writing/structure.rst:671 msgid "" @@ -1047,12 +1012,10 @@ msgid "" " portion. The ``finally`` clause ensures that ``close()`` is called " "whether or not there was an exception inside the ``with``." msgstr "" -"이렇게 해도 위의 클래스 예시와 똑같이 동작합니다. 물론 이 방법이 더 간결합니다. " -"``custom_open`` 함수는 ``yield`` 구문에 닿을 때까지 실행됩니다. " -"그 다음 ``with`` 구문에게 제어권을 넘깁니다. " -"``as f`` 안에서 어떤 ``yield`` 가 `f` 에 할당되든 상관없습니다. " -"``finally`` 명령은 ``with`` 안에서 예외현상이 발생하든 말든 " -"반드시 ``close()`` 를 실행합니다. " +"이렇게 해도 위의 클래스 예시와 똑같이 동작합니다. 물론 이 방법이 더 간결합니다. ``custom_open`` 함수는 " +"``yield`` 구문에 닿을 때까지 실행됩니다. 그 다음 ``with`` 구문에게 제어권을 넘깁니다. ``as f`` 안에서 어떤" +" ``yield`` 가 `f` 에 할당되든 상관없습니다. ``finally`` 명령은 ``with`` 안에서 예외현상이 발생하든 " +"말든 반드시 ``close()`` 를 실행합니다. " #: ../../writing/structure.rst:678 msgid "" @@ -1062,10 +1025,9 @@ msgid "" "approach might be better for situations where we're dealing with a simple" " action." msgstr "" -"둘 중 어느 방법을 사용하든 결과는 마찬가지이기 때문에, 우리는 " -"파이썬 선(禪)에 따라 어떤 때 어느 것을 쓸지 선택해야 합니다. " -"클래스를 쓰는 방법은 캡슐화해야하는 대량의 로직이 있을 때 좋습니다. " -"생성자를 쓰는 방법은 간단한 동작을 다룰 때 좋은 방법입니다. " +"둘 중 어느 방법을 사용하든 결과는 마찬가지이기 때문에, 우리는 파이썬 선(禪)에 따라 어떤 때 어느 것을 쓸지 선택해야 합니다. " +"클래스를 쓰는 방법은 캡슐화해야하는 대량의 로직이 있을 때 좋습니다. 생성자를 쓰는 방법은 간단한 동작을 다룰 때 좋은 방법입니다." +" " #: ../../writing/structure.rst:684 msgid "Dynamic typing" @@ -1081,11 +1043,10 @@ msgid "" " is therefore possible for the variable 'a' to be set to the value 1, " "then to the value 'a string', then to a function." msgstr "" -"파이썬은 동적 타이핑이 되는 언어라고 불립니다. " -"이 말은 변수가 고정된 타입을 가지고 있지 않다는 뜻입니다. 사실 파이썬의 변수는 다른 " -"수많은 언어, 특히 정적 타입 언어의 변수와는 아주 다릅니다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 객체를 " -"가리키는 컴퓨터 메모리의 한 조각이 아닙니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, 값 'a string'을 가지고, 또" -" 함수가 될 수도 있는 것입니다. " +"파이썬은 동적 타이핑이 되는 언어라고 불립니다. 이 말은 변수가 고정된 타입을 가지고 있지 않다는 뜻입니다. 사실 파이썬의 변수는 " +"다른 수많은 언어, 특히 정적 타입 언어의 변수와는 아주 다릅니다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 " +"객체를 가리키는 컴퓨터 메모리의 한 조각이 아닙니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, 값 'a string'을 " +"가지고, 또 함수가 될 수도 있는 것입니다. " #: ../../writing/structure.rst:693 msgid "" @@ -1095,8 +1056,7 @@ msgid "" "maintainer needs to track this name in the code to make sure it has not " "been set to a completely unrelated object." msgstr "" -"동적 타이핑은 종종 파이썬의 약점으로 여겨지기도 합니다. " -"실제로 동적 타이핑은 코드를 복잡하게 만들고 디버깅하기 어렵게 만듭니다. " +"동적 타이핑은 종종 파이썬의 약점으로 여겨지기도 합니다. 실제로 동적 타이핑은 코드를 복잡하게 만들고 디버깅하기 어렵게 만듭니다. " "'a'라는 이름이 너무나 많은 것이 될 수 있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 무관한 " "객체인지를 확인하기 위해 코드 전체를 뒤져야 합니다." @@ -1121,17 +1081,13 @@ msgstr "**좋은 예**" msgid "" "Using short functions or methods helps reduce the risk of using the same " "name for two unrelated things." -msgstr "" -"메소드나 함수를 짧게 쓰는 방법은 " -"같은 이름을 상관없는 것들에게 붙이는 위험을 줄일 수 있습니다." +msgstr "메소드나 함수를 짧게 쓰는 방법은 같은 이름을 상관없는 것들에게 붙이는 위험을 줄일 수 있습니다." #: ../../writing/structure.rst:724 msgid "" "It is better to use different names even for things that are related, " "when they have a different type:" -msgstr "" -"관련된 것이라고 해도 다른 타입을 가진다면 " -"다른 이름을 붙이는 편이 좋습니다. " +msgstr "관련된 것이라고 해도 다른 타입을 가진다면 다른 이름을 붙이는 편이 좋습니다. " #: ../../writing/structure.rst:735 msgid "" @@ -1141,11 +1097,8 @@ msgid "" "branches and loops, it becomes harder to ascertain what a given " "variable's type is." msgstr "" -"한 번 쓴 이름을 재활용 하는 것은 비효율적입니다. " -"대입문은 반드시 새로운 객체를 만들어야 합니다. " -"하지만 너무 복잡해지고, 'if' " -"분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 " -"변수가 어떤 타입인지 확인하기 어려워집니다. " +"한 번 쓴 이름을 재활용 하는 것은 비효율적입니다. 대입문은 반드시 새로운 객체를 만들어야 합니다. 하지만 너무 복잡해지고, " +"'if' 분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 변수가 어떤 타입인지 확인하기 어려워집니다. " #: ../../writing/structure.rst:741 msgid "" @@ -1156,13 +1109,9 @@ msgid "" "assigning to a variable more than once, and it helps in grasping the " "concept of mutable and immutable types." msgstr "" -"함수형 프로그래밍의 코딩 습관처럼 " -"재할당이 불가능한 변수의 사용을 추천합니다. " -"자바에서는 `final` 키워드로 가능합니다. " -"파이썬은 `final` 키워드가 없고, " -"이러한 방법은 파이썬의 철학에 반하는 일입니다. " -"하지만 변수를 한 번 이상 재할당하지 않는 것은 좋은 습관이며, " -"가변 타입과 불변 타입을 이해하는데 도움이 될 것입니다." +"함수형 프로그래밍의 코딩 습관처럼 재할당이 불가능한 변수의 사용을 추천합니다. 자바에서는 `final` 키워드로 가능합니다. " +"파이썬은 `final` 키워드가 없고, 이러한 방법은 파이썬의 철학에 반하는 일입니다. 하지만 변수를 한 번 이상 재할당하지 않는 " +"것은 좋은 습관이며, 가변 타입과 불변 타입을 이해하는데 도움이 될 것입니다." #: ../../writing/structure.rst:748 msgid "Mutable and immutable types" @@ -1179,9 +1128,7 @@ msgid "" "methods, like :py:meth:`list.append` or :py:meth:`list.pop`, and can be " "modified in place. The same goes for dictionaries." msgstr "" -"가변 타입은 내부에서 자체적으로 조작이 가능합니다. " -"일반적인 가변 타입에는 리스트와 딕셔너리가 있습니다. " -"모든 리스트에는 " +"가변 타입은 내부에서 자체적으로 조작이 가능합니다. 일반적인 가변 타입에는 리스트와 딕셔너리가 있습니다. 모든 리스트에는 " ":py:meth:`list.append` 나 :py:meth:`list.pop` 처럼 자체적으로 조작 가능한 메소드가 있습니다. " "딕셔너리도 마찬가지입니다. " @@ -1192,18 +1139,14 @@ msgid "" "method. If you want to compute x + 1, you have to create another integer " "and give it a name." msgstr "" -"불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않습니다. " -"예를 들면 integer 6으로 설정된 변수 x에는 " -" \"increment\" 가 없습니다. " -"만약 x에 1을 더하고 싶다면 다른 integer 변수를 만들어서 이름을 부여해야 합니다. " +"불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않습니다. 예를 들면 integer 6으로 설정된 변수 x에는 " +"\"increment\" 가 없습니다. 만약 x에 1을 더하고 싶다면 다른 integer 변수를 만들어서 이름을 부여해야 합니다. " #: ../../writing/structure.rst:770 msgid "" "One consequence of this difference in behavior is that mutable types are " "not \"stable\", and therefore cannot be used as dictionary keys." -msgstr "" -"이러한 차이 때문에 가변 타입은 " -" \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없습니다." +msgstr "이러한 차이 때문에 가변 타입은 \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없습니다." #: ../../writing/structure.rst:774 msgid "" @@ -1211,8 +1154,7 @@ msgid "" "immutable types for things that are fixed in nature helps to clarify the " "intent of the code." msgstr "" -"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, " -"원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 코드의 " +"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, 원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 코드의 " "목적을 명확히 하는데 도움이 됩니다. " #: ../../writing/structure.rst:778 @@ -1221,10 +1163,8 @@ msgid "" "with ``(1, 2)``. This tuple is a pair that cannot be changed in-place, " "and can be used as a key for a dictionary." msgstr "" -"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능합니다. " -"튜를은 ``(1, 2)`` 로 만들 수 있습니다. " -"튜플은 내부적으로 변경이 불가능하기 때문에 " -"딕셔너리의 키로 사용할 수 있습니다. " +"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능합니다. 튜를은 ``(1, 2)`` 로 만들 수 있습니다. 튜플은 내부적으로 " +"변경이 불가능하기 때문에 딕셔너리의 키로 사용할 수 있습니다. " #: ../../writing/structure.rst:782 msgid "" @@ -1236,14 +1176,11 @@ msgid "" "better and faster than constructing a list in a loop with calls to " "``append()``." msgstr "" -"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점입니다. " -"이는 문자열의 일부를 다시 만들고 싶을 때, 애시당초 " -"리스트로 만들어서 그 일부를 변경하는 편이 효율적이라는 뜻입니다. " -"리스트는 변경 가능하고, 전체 문자열이 필요하면 ('join')을 " -"사용하여 한데 이어 붙일 수 있기 때문입니다. " -"하지만 한가지 알아둬야 할 점은 반복문에서 ``append()`` 메소드를 호출해 " -"리스트를 만드는 것보다 " -"리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 것입니다." +"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점입니다. 이는 문자열의 일부를 다시 만들고 싶을 때, " +"애시당초 리스트로 만들어서 그 일부를 변경하는 편이 효율적이라는 뜻입니다. 리스트는 변경 가능하고, 전체 문자열이 필요하면 " +"('join')을 사용하여 한데 이어 붙일 수 있기 때문입니다. 하지만 한가지 알아둬야 할 점은 반복문에서 ``append()`` " +"메소드를 호출해 리스트를 만드는 것보다 리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 " +"것입니다." #: ../../writing/structure.rst:818 msgid "" @@ -1253,13 +1190,9 @@ msgid "" " faster, but in cases like above or in cases where you are adding to an " "existing string, using ``join()`` should be your preferred method." msgstr "" -"문자열에 대해 마지막으로 말할 것은 " -" ``join()`` 을 쓰는게 항상 좋지는 않다는 것입니다. " -"문자열이 몇 개 있을지 미리 정해져 있는 상태에서 새로운 문자열을 만들 때는 " -"더하기 연산자를 쓰는 편이 실제로 더 빠릅니다. " -"하지만 문자열이 몇 개 있을지 정해져 있지 않거나, " -"이미 만들어진 문자열에 추가로 문자열을 더할 때는 " -" ``join()`` 을 쓰는 편을 선호하게 될 것입니다. " +"문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것입니다. 문자열이 몇 개 있을지 미리 " +"정해져 있는 상태에서 새로운 문자열을 만들 때는 더하기 연산자를 쓰는 편이 실제로 더 빠릅니다. 하지만 문자열이 몇 개 있을지 " +"정해져 있지 않거나, 이미 만들어진 문자열에 추가로 문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것입니다. " #: ../../writing/structure.rst:834 msgid "" @@ -1268,12 +1201,10 @@ msgid "" ":py:meth:`str.join` and ``+``. However, :pep:`3101`, discourages the " "usage of the ``%`` operator in favor of the :py:meth:`str.format` method." msgstr "" -":py:meth:`str.join` 과 ``+`` 외에도 " -"포맷 연산자 :ref:`% ` 를 써서 " -"미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있습니다. " -"하지만 :pep:`3101` 에 따르면 " -" ``%`` 연산자는 사용하지 말 것을 권장하고 있으며 " -" :py:meth:`str.format` 를 대신 쓸 것을 권장하고 있습니다. " +":py:meth:`str.join` 과 ``+`` 외에도 포맷 연산자 :ref:`% ` 를 써서 미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있습니다. 하지만 :pep:`3101` 에 " +"따르면 ``%`` 연산자는 사용하지 말 것을 권장하고 있으며 :py:meth:`str.format` 를 대신 쓸 것을 권장하고 " +"있습니다. " #: ../../writing/structure.rst:850 msgid "Vendorizing Dependencies" From 1e3ee30221fa2c95f05a1d5b551880086b69be09 Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Wed, 23 Nov 2016 04:42:00 +0000 Subject: [PATCH 036/117] translate to Reading Great Code --- docs/locale/ko/LC_MESSAGES/writing/reading.mo | Bin 5049 -> 5756 bytes docs/locale/ko/LC_MESSAGES/writing/reading.po | 59 +++++++++++------- 2 files changed, 37 insertions(+), 22 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.mo b/docs/locale/ko/LC_MESSAGES/writing/reading.mo index 8017ef9c2f1c4c3788c2071831f1b73f66eb49a0..510b131b981076dd78e5eb75106822433e7edb19 100644 GIT binary patch delta 2779 zcmaJ@ZEsU$7(Nh#0?LaoA0#n(KA3<>g-Fm3OH3e95ye1YW-)4{Y)4ic>)bjOH8~wS z!@72^^PFylot9H+w{9tVwsp|Sh9CU{{t5cr$M^&M;B`NzTRTQfwmmzi=iD#XeO=ex zm4p9=(zda%P18y{HSI4=(>iu*+IKiZPivZivy3y3^UyPz_7BcKaZci_?a{OYIM3|W zv?p+0#+gQ(D9&v-wf&lQ7032xHEjjw_c$NoeB(Jy`*^#iiRW?g_BWk+PtVf9-9JBN zm3H1b^ig!M_tJSi+I#p!cds}d{Yw8p?})^@ql2*%Jw3-yUI|Bf4tGYcSfB2CX~+A~ zem&f489QEh@#{!$Oz)2jbnE^4k-n>Vq4(8GgOM)X`eD~i!yg`^Y1_{@g4S$lIWiv? zvQndbTGa2=WGXHTj%e%GKX1Fx8ST@qRUyYmke#N|{DeQ@ z_*s)5uX%zT{8tsU?2zfIbjcz0P+(a_ngk@93ZRTB^I4Vs+8X6in1dnA$wE#A%&p-Sxm2a3Q#Wcg z&P#OFW2X^PJBpIGYm6bd%{A+KMSr#pcEvdAA4`(%~YO+z?ZpIbhumuAqbr zejX>31O9YMmhLD<1^RD|8Bu57Ae>^(X12^!@UO`VGH5#G58*O$B#L_l z2b{tQ(m-HCpv0EcE*BvvpP8MeYzet30y$0tSVLpn_49e?5h0U>%w4WN@Ko z*!E^ij0D{;a^ew;M0JW;bKCHkM@-5QC(fQyavog)fyhm_v})bodrSe_q4$6Btv+~( z-RZqZ@8$4O6%9eXY@^hzz|AH=GW5=kFoWC#<;?)5mK+#A-G-O4$0>`0*eQ?EH1IhC z3xnMjat*xz3o4{IDLXbY$XgXfihE^X%#vhl&!Jb(k@!i&URoixlKYOmv&jJ(4Upy0 zRE1^%>IT2+i*XwMvC$gJV2^H!)q1$^xPoUxDeIx~6Og-11KhrFXSaS-sKry|Wq<)< zqVKl1pKaWfwG>)l_BA8JW@IU=h#G8?z$-R)qFrbYU$nZOeBEHP^v5f5_MWmN6nTA2 zdeiK~lo{n_W8sT~J>h<_v2JK2`9Jv|-;h7q3gjW0x`WBJiF2>%Uk>U6v4N04K|PU+ z%DZ8Y*vxVX8$>OURs(*;`g{MI0kO`XJjL|JUSR}Q;}|H7sI8}VC?w#SutGIq$Musn zJmx21T=QkhrJ&(;$Q5h0OdF#E3P6vULaxJDG_2A9JIKYJc0`A&;*s#uO0@VHOXQL0 zbuS~`62A|b%S97nh2l|OJj>d{?u1&nD_o3w_=^==#IzfW)o5%S3%eLX8ZGgvuX~fc zxJP;cG&m5Je*_j164W*N5NJ&=4%3j2dL2DEz6S9J50K>AJ!( z9h0Iz4A;Mgl2oivVD<<-HNxIyIU$s?-rk4jPAjh5^!(I_V12T+@FUnjGZk1j`;Gjy x2pdDCfkCMqITc7VY*}qsz*>J$leb>3$luiJ0(1RLnZf1n2b=s*`wz7RezO1o delta 192 zcmeyPvr~P-l=^B$28N}a3=C5l7#I|}85lBv^mZWK2&5Hw7#Qk+^dca=10>JOz>p85 zZvkl`AnnD+z`z2eV}W!e(3~V7eICf)!w(b#(metU44pvw6_Bn1(j|fn3@3r=-UDd{ z*NWuSoSeNNb9C9-C R@{7_Z@8z1cnU`?}2LOekCTsuz diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.po b/docs/locale/ko/LC_MESSAGES/writing/reading.po index 0edef6889..351064b3d 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/reading.po +++ b/docs/locale/ko/LC_MESSAGES/writing/reading.po @@ -5,8 +5,8 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: YoungSeon.Ahn LoveMeWithoutAll@Gmail.com\n" +"Language-Team: Korean \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -14,7 +14,7 @@ msgstr "" #: ../../writing/reading.rst:2 msgid "Reading Great Code" -msgstr "" +msgstr "훌륭한 코드를 읽기" #: ../../writing/reading.rst:4 msgid "" @@ -22,12 +22,16 @@ msgid "" "code. The motivation behind this design is simple: The number one thing " "that Python programmers do is read code." msgstr "" +"파이썬 디자인의 기저에 깔린 핵심 교리 중 하나는 가독성 좋은 코드 만들기입니다. " +"이유는 단순합니다: 파이썬 프로그래머가 가장 많이 하는 일이 바로 코드 읽기이기 때문입니다. " #: ../../writing/reading.rst:8 msgid "" "One of the secrets of becoming a great Python programmer is to read, " "understand, and comprehend excellent code." msgstr "" +"위대한 파이썬 프로그래머가 되기 위한 비밀 중 하나는 바로 " +"탁월한 코드를 읽고, 알아듣고, 이해하는 것입니다. " #: ../../writing/reading.rst:19 msgid "" @@ -35,18 +39,24 @@ msgid "" ":ref:`code_style`, and does its best to express a clear and concise " "intent to the reader." msgstr "" +"탁월한 코드란 문자 그대로 :ref:`code_style` 의 가이드라인을 따르는 것이며, " +"명쾌하고 간결하게 코드의 의도를 독자에게 표현하기 위해 최선을 다하는 것입니다. " #: ../../writing/reading.rst:23 msgid "" "Included below is a list of recommended Python projects for reading. Each" " one of these projects is a paragon of Python coding." msgstr "" +"아래에 삽입한 목록은 읽어보시길 추천하는 파이썬 프로젝트들입니다. " +"각각의 프로젝트는 파이썬 코딩의 모범입니다. " #: ../../writing/reading.rst:26 msgid "" "`Howdoi `_ Howdoi is a code search " "tool, written in Python." msgstr "" +"`Howdoi `_ Howdoi는 " +"파이썬으로 쓰여진 코드를 검색하는 도구입니다. " #: ../../writing/reading.rst:29 msgid "" @@ -54,6 +64,10 @@ msgid "" "for Python based on Werkzeug and Jinja2. It's intended for getting " "started very quickly and was developed with best intentions in mind." msgstr "" +"`Flask `_ Flask는 " +"Werkzeug와 Jinja2를 기반으로 하는 파이썬 마이크로 프레임워크입니다. " +"아주 빠르게 시작할 수 있도록 만들어졌으며, " +"이러한 취지에 따라 개발되었습니다. " #: ../../writing/reading.rst:34 msgid "" @@ -63,6 +77,11 @@ msgid "" "load and disk metrics. Additionally, it features an API for implementing " "custom collectors for gathering metrics from almost any source." msgstr "" +"`Diamond `_ Diamond는 " +"Graphite나 다른 백엔드에 지표를 수집하고 퍼블리싱하는 파이썬 데몬입니다. " +"cpu, 메모리, 네트워크, i/o, 로딩, 디스크 지표를 수집할 수 있습니다. " +"추가적으로 거의 어느 소스에서라도 지표를 수집하는 " +"커스텀 수집기를 구현하기 위한 API가 특장점입니다. " #: ../../writing/reading.rst:41 msgid "" @@ -74,18 +93,30 @@ msgid "" "cookie handling, file uploads, a powerful URL routing system and a bunch " "of community-contributed addon modules." msgstr "" +"`Werkzeug `_ Werkzeug는 " +"WSGI 어플리케이션을 위한 간단한 유틸리티 모음집으로 시작되었습니다. " +"하지만 이제는 가장 발전한 WSGI 유틸리티 모듈 중 하나가 되었습니다. +"강력한 디버거, 리퀘스트와 리스폰스 오브젝트의 모든 기능을 갖추었으며, " +"엔티티 태그를 조작할 HTTP 유틸리티와 캐시 컨트롤 헤더, HTTP dates, " +"쿠키 조작, 파일 업로드, 강력한 URL 라우팅 시스템, 그리고 " +"커뮤니티에서 기여한 애드온 모듈 꾸러미가 포함되어 있습니다. " #: ../../writing/reading.rst:49 msgid "" "`Requests `_ Requests is an " "Apache2 Licensed HTTP library, written in Python, for human beings." msgstr "" +"`Requests `_ Requests는 " +"파이썬으로 작성된 Apache2 라이선스의 HTTP 라이브러리입니다. 인류를 위해 만들었습니다. " #: ../../writing/reading.rst:53 msgid "" "`Tablib `_ Tablib is a format-" "agnostic tabular dataset library, written in Python." msgstr "" +"`Tablib `_ Tablib은 " +"포맷에 구속받지 않는 tabular 데이터셋 라이브러리입니다. 파이썬으로 작성했습니다. " +"(역주: Requests, Tablib은 저자 본인의 프로젝트)" #: ../../writing/reading.rst msgid "Todo" @@ -96,28 +127,12 @@ msgid "" "Include code examples of exemplary code from each of the projects listed." " Explain why it is excellent code. Use complex examples." msgstr "" +"리스트에 올라간 프로젝트의 코드 샘플 추가 필요" +"왜 좋은 코드인지 복잡한 예를 들어 설명할 것" #: ../../writing/reading.rst:59 msgid "" "Explain techniques to rapidly identify data structures, algorithms and " "determine what the code is doing." msgstr "" - -#~ msgid "" -#~ "One of the core tenants behind the" -#~ " design of Python is creating " -#~ "readable code. The motivation behind " -#~ "this design is simple: The number " -#~ "one thing that Python programmers do " -#~ "is read code." -#~ msgstr "" - -#~ msgid "" -#~ "Embed and explain YouTube video showing" -#~ " python code reading: " -#~ "http://www.youtube.com/watch?v=Jc8M9-LoEuo This may " -#~ "require installing a Sphinx plugin. " -#~ "https://bitbucket.org/birkenfeld/sphinx-" -#~ "contrib/src/a09f29fc16970f34350ca36ac7f229e00b1b1674/youtube?at=default" -#~ msgstr "" - +"데이터 구조와 알고리즘을 빠르게 분석하고 코드가 뭘 하고 있는지 밝히는 기술을 설명할 것" From 832d158a078f323dd535278eeb7f61c5bfa4a90b Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Fri, 25 Nov 2016 04:57:29 +0000 Subject: [PATCH 037/117] fix some tags and wording --- docs/locale/ko/LC_MESSAGES/index.mo | Bin 4614 -> 4615 bytes docs/locale/ko/LC_MESSAGES/index.po | 2 +- .../ko/LC_MESSAGES/starting/install/linux.mo | Bin 6636 -> 6636 bytes .../ko/LC_MESSAGES/starting/install/linux.po | 2 +- .../ko/LC_MESSAGES/starting/install/osx.mo | Bin 8512 -> 8512 bytes .../ko/LC_MESSAGES/starting/install/osx.po | 2 +- .../ko/LC_MESSAGES/starting/install/win.mo | Bin 8672 -> 8672 bytes .../ko/LC_MESSAGES/starting/install/win.po | 2 +- 8 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index a72a30cb54b93ccc3bd896b74d6b45da6e26237f..bc50534807447e175c418049281db608abce243b 100644 GIT binary patch delta 81 zcmZouX;;}`!)RO0$iT3fmx19X0|SFTKLbN8kmeL%U@!&J?LayNNbd#Gu|Qf#kb$8B YNEZNUSs?v#b0uRu52M278@zff03JRKSO5S3 delta 79 zcmZoyX;ax?!)RN@$iT3fmx19X0|SE|KLbN8kme9zU@!&JZ9qB%NbdpCu|Qf-kb$8B WNaq7-Ss?vlb0uRu&*q!FdMp41XALj_ diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index c260f49bb..2ad2fe8b2 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -43,7 +43,7 @@ msgid "" "of every Python web framework available here. Rather, you'll find a nice " "concise list of highly recommended options." msgstr "" -"이 안내서는 거의 **독단적**입니다. 하지만 파이썬 공식 문서만큼 완벽하게 독단적이지는 않습니다. " +"이 안내서는 거의 **독단적** 입니다. 하지만 파이썬 공식 문서만큼 완벽하게 독단적이지는 않습니다. " "여기서 사용 가능한 세상의 모든 파이썬 웹 프레임워크의 목록을 찾을 수 있다는 것은 아닙니다. " "그보다는 강력 추천하는 여러 선택 사항들의 간결하고 멋진 목록을 보게 될 것입니다. " diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo index 1c1fca3d8c028770042ee94398215121dee4bf6a..015d942b52aa46e6e74796b0c9eb3fc734a49654 100644 GIT binary patch delta 21 dcmaE3{Kj}gm^ diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po index 70673b620..a2fd92586 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -144,6 +144,6 @@ msgid "" "`_, which" " is available under the same license." msgstr "" -"이 페이지는 `다른 가이드 `_ 를 풀어쓴 버전입니다. 동일한 라이선스 아래서 사용할 수 있습니다." diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo index f47dd888a94de5ac45562bb584feb53c272cc542..184893e37a05342d2f8ee5427f2f6ad1928b7879 100644 GIT binary patch delta 21 dcmX@$biiptnH0yHsU5GIw!CTCTqkvi4FGxa3i<#5 delta 21 dcmX@$biiptnH0yX4GnMRZh1X`_, which" " is available under the same license." msgstr "" -"이 페이지는 `다른 가이드 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo index b8231bc423738b950145f941e2e05d27e9fd56dc..ede94b1a51db32bb8901a36ea0e8bcd712c2ac7a 100644 GIT binary patch delta 26 icmaFh{J?pGfeh!HsU5GIw!CSXGx`_, which" " is available under the same license." msgstr "" -"이 페이지는 `다른 가이드 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." From 1a4bb73f4ca5f9219fe03445a0e08c0c244b2874 Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Fri, 25 Nov 2016 08:48:47 +0000 Subject: [PATCH 038/117] ~documentation --- .../ko/LC_MESSAGES/writing/documentation.mo | Bin 17425 -> 19741 bytes .../ko/LC_MESSAGES/writing/documentation.po | 156 +++++++++++++++--- 2 files changed, 134 insertions(+), 22 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.mo b/docs/locale/ko/LC_MESSAGES/writing/documentation.mo index 5f4ea8003c50d6e76a95250ad2c16025cd2c7024..e63fbc28b2e21575c254b8cd22f1b049a3dceae1 100644 GIT binary patch literal 19741 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\n" -"Language-Team: LANGUAGE \n" +"Last-Translator: YoungSeon.Ahn LoveMeWithoutAll@Gmail.com\n" +"Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -14,7 +14,7 @@ msgstr "" #: ../../writing/documentation.rst:2 msgid "Documentation" -msgstr "" +msgstr "문서화" #: ../../writing/documentation.rst:4 msgid "" @@ -22,10 +22,14 @@ msgid "" " code documentation. Following some simple best practices can save both " "you and others a lot of time." msgstr "" +"가독성은 파이썬 개발자의 기본적인 관심사입니다. " +"이는 프로젝트와 코드 문서화 모두 해당됩니다. " +"몇 가지 간단한 우수 사례를 따라해봅시다. " +"당신 뿐 아니라 다른 모두의 시간을 절약해줄 것입니다. " #: ../../writing/documentation.rst:9 msgid "Project Documentation" -msgstr "" +msgstr "프로젝트 문서화" #: ../../writing/documentation.rst:11 msgid "" @@ -38,6 +42,15 @@ msgid "" "the software, and some basic credit information. This file is the main " "entry point for readers of the code." msgstr "" +"최상위 디렉토리의 :file:`README` 파일에는 해당 프로젝트의 사용자와 " +"유지보수 담당자 모두에게 도움이 되는 일반적인 정보가 있어야 합니다. " +"순수한 텍스트로 작성하시거나, " +"읽기 아주 쉬운 마크업 문서로 작성하세요. " +":ref:`reStructuredText-ref` 나 마크다운 같은 것이면 됩니다. " +"여기에는 반드시 프로젝트나 라이브러리" +"(사용자가 이 프로젝트의 모든 것을 알고 있을거라고 생각하면 안됩니다)의 " +"목적을 설명하는 몇 줄의 글, 소프트웨어를 위한 주요 소스의 URL, " +"몇 가지 기본적인 신용 정보를 포함해야 합니다. " #: ../../writing/documentation.rst:19 msgid "" @@ -46,34 +59,45 @@ msgid "" "module`` or ``python setup.py install`` and added to the :file:`README` " "file." msgstr "" +":file:`INSTALL` 파일은 파이썬에서는 필수적이지는 않습니다. " +"설치 명령어는 ``pip install module`` 이나 ``python setup.py install`` 같이 " +"한 줄의 커맨드 명령어로 끝난 후, :file:`README` 파일에 추가되는 경우가 많습니다. " #: ../../writing/documentation.rst:24 msgid "" "A :file:`LICENSE` file should *always* be present and specify the license" " under which the software is made available to the public." msgstr "" +":file:`LICENSE` 파일은 *반드시* 있어야만 합니다. " +"그리고 소프트웨어가 공개 가능한지 여부를 명시하는 라이선스를 명시해야 합니다. " #: ../../writing/documentation.rst:27 msgid "" "A :file:`TODO` file or a ``TODO`` section in :file:`README` should list " "the planned development for the code." msgstr "" +":file:`README` 안의 :file:`TODO` 파일이나 ``TODO`` 섹션에는 " +"개발할 코드의 목록을 나열해야 합니다. " #: ../../writing/documentation.rst:30 msgid "" "A :file:`CHANGELOG` file or section in :file:`README` should compile a " "short overview of the changes in the code base for the latest versions." msgstr "" +":file:`CHANGELOG` 파일이나 :file:`README` 안의 섹션에는 " +"반드시 최신 버전의 코드에서 일어난 변화에 대하여 개략적인 소개가 있어야 합니다. " #: ../../writing/documentation.rst:34 msgid "Project Publication" -msgstr "" +msgstr "프로젝트 발표" #: ../../writing/documentation.rst:36 msgid "" "Depending on the project, your documentation might include some or all of" " the following components:" msgstr "" +"프로젝트에 따라서 당신의 문서는 아래의 것들 중 몇 개를 포함하거나, " +"혹은 전부를 포함할 것입니다. " #: ../../writing/documentation.rst:39 msgid "" @@ -81,6 +105,9 @@ msgid "" "with the product, using one or two extremely simplified use cases. This " "is the thirty-second pitch for your project." msgstr "" +"*소개(introduction)* 은 하나나 두개의 아주 간단한 유즈케이스를 사용하여 " +"이 프로젝트가 무엇을 할 수 있는지 간략하게 보여주어야 합니다. " +"이것이 당신의 프로젝트를 위한 30초 홍보입니다. " #: ../../writing/documentation.rst:43 msgid "" @@ -88,6 +115,8 @@ msgid "" "reader will follow a step-by-step procedure to set-up a working " "prototype." msgstr "" +"*튜토리얼(tutorial)* 은 몇 가지 기본적인 유즈케이스를 좀 더 자세히 보여주어야 합니다. " +"읽는 이는 하나 하나씩 따라가며 실제 동작하는 프로토타입을 만들 것입니다. " #: ../../writing/documentation.rst:46 msgid "" @@ -95,16 +124,22 @@ msgid "" ":ref:`docstrings `). It will list all publicly available " "interfaces, parameters, and return values." msgstr "" +"*API 레퍼런스(reference)* 는 보통 코드에서 생성됩니다" +"(:ref:`docstrings ` 를 보세요). " +"공개적으로 가능한 모든 인터페이스, 파라미터, 리턴값을 보여주어야 합니다. " #: ../../writing/documentation.rst:50 msgid "" "*Developer documentation* is intended for potential contributors. This " "can include code convention and general design strategy of the project." msgstr "" +"*개발자 문서(Developer documentation)* 는 잠재적인 기여자(contributors)를 위한 것입니다. " +"여기에는 코딩 규약(code convention)과 프로젝트의 일반적인 디자인 전략을 " +"담을 수 있습니다. " #: ../../writing/documentation.rst:56 msgid "Sphinx" -msgstr "" +msgstr "스핑크스(Sphinx)" #: ../../writing/documentation.rst:58 msgid "" @@ -113,6 +148,10 @@ msgid "" "range of output formats including HTML, LaTeX (for printable PDF " "versions), manual pages, and plain text." msgstr "" +"Sphinx_ 는 단연코 가장 유명한 파이썬 문서화 도구입니다. " +"**쓰세요.**" +":ref:`restructuredtext-ref` 마크업 언어를 HTML, LaTeX(인쇄 가능한 PDF 버전), " +"매뉴얼 페이지, 일반 텍스트 등의 포맷으로 바꿔줍니다. " #: ../../writing/documentation.rst:63 msgid "" @@ -121,6 +160,10 @@ msgid "" " repository so that rebuilding your documentation will happen " "automatically." msgstr "" +"뿐만 아니라 Sphinx_ 문서를 위한 **훌륭하면서도**, **무료인** 호스팅 서비스가 있습니다: " +"`Read The Docs`_ 입니다. " +"쓰세요. " +"소스 저장소에 커밋 후크를 걸어두면 문서를 자동으로 빌드하도록 설정할 수 있습니다. " #: ../../writing/documentation.rst:68 msgid "" @@ -129,6 +172,11 @@ msgid "" "will also extract the accompanying docstrings, and compile it all into " "well structured and easily readable documentation for your project." msgstr "" +"Read The Docs를 돌리면 Sphinx_ 는 당신의 코드를 불러옵니다. " +"그리고 파이썬 내부의 기능을 사용하여 모든 함수와 메소드 클래스 시그니처를 끄집어냅니다. " +"뿐만 아니라 당신의 프로젝트를 위해 코드에 딸려있는 독스트링(Docstrings)을 불러와 " +"잘 구조화되고 읽기 쉬운 문서로 모조리 컴파일합니다. " + #: ../../writing/documentation.rst:75 msgid "" @@ -136,6 +184,8 @@ msgid "" "general project documentation. This Guide is built with Sphinx_ and is " "hosted on `Read The Docs`_" msgstr "" +"Sphinx는 API 생성기로도 유명하지만, 일반적인 프로젝트 문서화로도 잘 작동합니다. " +"이 안내서는 Sphinx_ 로 빌드되었고, `Read The Docs`_ 로 호스팅되었습니다. " #: ../../writing/documentation.rst:85 msgid "reStructuredText" @@ -146,16 +196,20 @@ msgid "" "Most Python documentation is written with reStructuredText_. It's like " "Markdown with all the optional extensions built in." msgstr "" +"대부분의 파이썬 문서는 reStructuredText_ 로 작성됩니다. " +"reStructuredText는 모든 추가 기능을 포함하고 있는 마크다운과 비슷합니다. " #: ../../writing/documentation.rst:90 msgid "" "The `reStructuredText Primer`_ and the `reStructuredText Quick " "Reference`_ should help you familiarize yourself with its syntax." msgstr "" +"`reStructuredText Primer`_ 와 `reStructuredText Quick Reference`_ 가" +"reStructuredText의 문법에 익숙해지는데 큰 도움을 줄 것입니다. " #: ../../writing/documentation.rst:99 msgid "Code Documentation Advice" -msgstr "" +msgstr "코드 문서에 대한 조언" #: ../../writing/documentation.rst:101 msgid "" @@ -163,10 +217,13 @@ msgid "" "code easier to understand. In Python, comments begin with a hash (number " "sign) (``#``)." msgstr "" +"주석은 코드를 명확하게 합니다. 그리고 코드를 이해하기 쉽도록 하고자 덧붙여집니다. " +"파이썬에서는 주석이 해시 (숫자 표시) (#)로 시작됩니다. " #: ../../writing/documentation.rst:107 msgid "In Python, *docstrings* describe modules, classes, and functions:" msgstr "" +"파이썬에서는 *독스트링(docstrings)* 이 모듈, 클래스, 함수를 설명합니다. " #: ../../writing/documentation.rst:115 msgid "" @@ -174,10 +231,14 @@ msgid "" " Style Guide\"). More information about docstrings can be found at " ":pep:`0257#specification` (The Docstring Conventions Guide)." msgstr "" +"보통 :pep:`8#comments` (the \"파이썬 스타일 안내서(Python Style Guide)\")의 " +"주석 섹션대로 따라하시면 됩니다. " +":pep:`0257#specification` (The Docstring Conventions Guide)에서 " +"독스트링에 대한 더 많은 정보를 볼 수 있습니다. " #: ../../writing/documentation.rst:119 msgid "Commenting Sections of Code" -msgstr "" +msgstr "코드를 주석 처리하기" #: ../../writing/documentation.rst:121 msgid "" @@ -188,10 +249,16 @@ msgid "" "probably has the ability to do this easily, and it is worth learning the " "comment/uncomment toggle." msgstr "" +"*세따옴표를 코드의 주석 처리에 쓰지 마세요*. 좋은 습관이 아닙니다. " +"grep처럼 라인 기반 커맨드 라인 도구는 주석 처리된 코드가 비활성화되었는지를 " +"인식하지 못합니다. " +"주석 처리할 모든 줄의 적당히 들여쓴 위치에다 해시를 붙이는 편이 좋습니다. " +"에디터에 이런 작업을 쉽게 해주는 기능이 있을 것입니다. " +"주석 처리/해제하는 단축키를 배울 필요가 있습니다. " #: ../../writing/documentation.rst:129 msgid "Docstrings and Magic" -msgstr "" +msgstr "독스트링(Docstrings)과 마법" #: ../../writing/documentation.rst:131 msgid "" @@ -199,6 +266,9 @@ msgid "" " as unit test logic. Those can be nice, but you won't ever go wrong with " "vanilla \"here's what this does.\"" msgstr "" +"어떤 도구는 단위 테스트 로직처럼 문서 이상의 동작을 시키기 위해 독스트링을 이용합니다. " +"이런 도구들은 멋지지만, 절대 고장나지 않습니다. " +"\"이렇게 동작할거야.\" 같은 역할을 할 뿐입니다. " #: ../../writing/documentation.rst:135 msgid "" @@ -206,6 +276,9 @@ msgid "" "render it correctly as HTML. This makes it very easy to embed snippets of" " example code in a project's documentation." msgstr "" +"Sphinx_ 같은 툴은 당신의 독스트링을 reStructuredText로 파싱해서 " +"HTML로 정확히 만들어줍니다. " +"이 방법은 프로젝트 문서에 예제 코드의 스니펫을 아주 간단히 집어넣을 수 있도록 해줍니다. " #: ../../writing/documentation.rst:139 msgid "" @@ -216,10 +289,15 @@ msgid "" "of functions alongside their source code, and as a side effect, it also " "ensures that their code is tested and works." msgstr "" +"추가로 Doctest_ 는 파이썬 커맨드라인에서 삽입된 것 같은 모양(\">>>\" 가 앞에 붙음)의 " +"모든 독스트링을 읽어 실행하고, 결과값이 그 다음 줄에 쓰여진 것과 일치하는지 여부를 " +"검사합니다. " +"이렇게해서 개발자는 그들의 소스 코드 옆에 실제 예시와 함수의 사용예를 삽입할 수 있습니다. " +"추가적인 효과로는 이 코드는 테스트 되었으며 잘 돌아감을 확인할 수 있습니다. " #: ../../writing/documentation.rst:160 msgid "Docstrings versus Block comments" -msgstr "" +msgstr "독스트링(Docstrings) 대 블록 주석" #: ../../writing/documentation.rst:162 msgid "" @@ -227,6 +305,9 @@ msgid "" "comment block is a programmer's note. The docstring describes the " "*operation* of the function or class:" msgstr "" +"독스트링(Docstrings)과 블록 주석은 서로 바꿔쓸 수 없습니다. " +"함수나 클래스에서 맨 앞줄의 주석 블록은 개발자의 메모로 쓰입니다. " +"독스트링은 함수나 클래스의 *동작* 을 나타냅니다. " #: ../../writing/documentation.rst:173 msgid "" @@ -237,6 +318,11 @@ msgid "" "`__doc__` dunder attribute for almost every Python object, as well as " "with the built in `help()` function." msgstr "" +"블록 주석과 달리 독스트링은 파이썬 언어 자체에 들어가 있습니다. " +"즉 최적화 단계에서 빼져버리는 주석과는 달리 " +"런타임 중에도 파이썬의 강력한 내부 기능을 사용하여 독스트링에 접근할 수 있다는 뜻입니다. " +"독스트링은 거의 모든 파이썬 오브젝트에 있는 속성인 `__doc__` 뿐만 아니라 " +"파이썬에 내장된 `help()` 함수를 사용하여 접근할 수 있습니다. " #: ../../writing/documentation.rst:179 msgid "" @@ -246,10 +332,14 @@ msgid "" "*how* a particular function can be used and the general purpose of a " "function, class, or module." msgstr "" +"블럭 주석이 일반적으로 코드의 해당 부분이 *무슨* 일을 하는지나 알고리즘의 명세를 " +"설명하는데 쓰이는 반면, 독스트링은 당신의 코드와 특정한 함수가 *어떻게* " +"쓰이며 함수, 클래스, 모듈의 일반적인 목적이 무엇인지를 다른 사용자에게(혹은 6개월 후의 당신에게 " +"알려주기 위해 작성됩니다. " #: ../../writing/documentation.rst:186 msgid "Writing Docstrings" -msgstr "" +msgstr "독스트링(Docstrings) 작성" #: ../../writing/documentation.rst:188 msgid "" @@ -257,6 +347,9 @@ msgid "" "written, a one-line docstring may be perfectly appropriate. These are " "generally used for really obvious cases, such as::" msgstr "" +"작성한 함수, 메서드, 클래스가 얼마나 복잡한지에 따라 다르겠지만 " +"단 1줄의 독스트링이 가장 적절할 것입니다. " +"다음은 흔히 쓰이면서도 아주 분명한 예시입니다:" #: ../../writing/documentation.rst:196 msgid "" @@ -267,6 +360,11 @@ msgid "" " it is already quite easy to find this information if needed, and it is " "also readily available by reading the source code." msgstr "" +"독스트링은 이해하기 쉬운 방법으로 함수를 설명해야 합니다. " +"별 것도 아닌 함수나 클래스나 간단한 함수 구문(예를 들면 `add(a, b) -> result`) " +"에서는 독스트링이 필요하지 않습니다. " +"파이썬의 `inspect` 모듈이 이미 있기에 필요시 아주 빠르게 원하는 정보를 찾을 수 있고 " +"소스 코드도 손쉽게 읽을 수 있기 때문입니다. " #: ../../writing/documentation.rst:203 msgid "" @@ -274,6 +372,10 @@ msgid "" "give more information about a function, what it does, any exceptions it " "may raise, what it returns, or relevant details about the parameters." msgstr "" +"하지만 더 크고 복잡한 프로젝트라면 " +"함수 정보, 이게 뭘 하는지, 어떤 예외를 발생시키는지, " +"무엇을 반환하는지, 파라미터에 관한 연관 정보에 대하여 " +"더 많이 설명하는 편이 좋은 경우도 많습니다. " #: ../../writing/documentation.rst:207 msgid "" @@ -283,6 +385,10 @@ msgid "" "developer to include a lot more information about a method, function, or " "class. ::" msgstr "" +"코드 문서를 더 상세히 작성하고 싶은 경우, 가장 인기있는 스타일은 Numpy 프로젝트에서 " +"쓰인 이른바 `Numpy style`_ 독스트링입니다. " +"앞선 예제의 독스트링이 이 스타일입니다. " +"이 스타일을 써서 개발자는 함수, 메소드, 클래스에 대한 더 많은 정보를 추가할 수 있습니다. " #: ../../writing/documentation.rst:233 msgid "" @@ -290,6 +396,8 @@ msgid "" "docstrings, making it easy to incorporate NumPy style docstrings into " "your project." msgstr "" +"스핑크스에 `sphinx.ext.napoleon`_ 플러그인을 추가하면 이러한 스타일의 독스트링을 파싱하여 " +"NumPy 스타일의 독스트링을 당신의 프로젝트에 집어넣기 쉽게 해줍니다. " #: ../../writing/documentation.rst:237 msgid "" @@ -299,18 +407,22 @@ msgid "" "correct, understandable and gets the relevant points across then it has " "done the job it was designed to do." msgstr "" +"마지막으로 덧붙이겠습니다. 사실 어떤 스타일로 독스트링을 작성하느냐는 그다지 중요하지 않습니다. " +"독스트링의 목적은 코드를 읽거나 바꿔야 하는 사람들에게 도움을 주는 문서가 되는 것입니다. " +"정확하고, 이해하기 쉽고, 관련된 여러 사항에 대한 정보만 있다면, " +"그 소임은 모두 이룬 것입니다. " #: ../../writing/documentation.rst:244 msgid "For further reading on docstrings, feel free to consult :pep:`257`" -msgstr "" +msgstr "독스트링에 대하여 더 많이 읽고 싶다면 가벼운 마음으로 :pep:`257` 와 상의하세요. " #: ../../writing/documentation.rst:251 msgid "Other Tools" -msgstr "" +msgstr "다른 도구" #: ../../writing/documentation.rst:253 msgid "You might see these in the wild. Use :ref:`sphinx-ref`." -msgstr "" +msgstr "황야에 외롭게 서 있는 도구들도 있습니다. 그냥 :ref:`sphinx-ref` 쓰세요. " #: ../../writing/documentation.rst:258 msgid "Pycco_" @@ -322,6 +434,8 @@ msgid "" "a port of the node.js Docco_. It makes code into a side-by-side HTML code" " and documentation." msgstr "" +"Pycco는 \"문학적 프로그래밍 스타일의 문서 생성기\" 이자, node.js Docco_ 의 파이썬 포팅입니다. " +"코드를 HTML 코드와 문서가 나란히 있는 모습으로 만들어줍니다. " #: ../../writing/documentation.rst:265 msgid "Ronn_" @@ -332,6 +446,9 @@ msgid "" "Ronn builds Unix manuals. It converts human readable textfiles to roff " "for terminal display, and also to HTML for the web." msgstr "" +"Ronn은 유닉스 매뉴얼을 빌드합니다. " +"사람이 읽을 수 있는 텍스트 파일을 roff로 변환하여 터미널에서 보여줄 수 있을 뿐만 아니라 " +"웹을 위해 HTML로도 바꿔줍니다. " #: ../../writing/documentation.rst:270 msgid "Epydoc_" @@ -339,7 +456,7 @@ msgstr "" #: ../../writing/documentation.rst:270 msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." -msgstr "" +msgstr "Epydoc은 끝장났습니다. 대신 :ref:`sphinx-ref` 를 쓰세요. " #: ../../writing/documentation.rst:276 msgid "MkDocs_" @@ -350,10 +467,5 @@ msgid "" "MkDocs is a fast and simple static site generator that's geared towards " "building project documentation with Markdown." msgstr "" - -#~ msgid "" -#~ msgstr "" - -#~ msgid "Further reading on docstrings: :pep:`257`" -#~ msgstr "" - +"MkDocs은 마크다운으로 프로젝트 문서를 빌드하기 위하여 설계된 " +"빠르고 단순한 정적 사이트 생성기입니다. " From 75fed7189104d822d087c04a08e0249285d8c6ed Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Tue, 13 Dec 2016 02:06:59 +0000 Subject: [PATCH 039/117] ~tests --- docs/locale/ko/LC_MESSAGES/writing/tests.mo | Bin 15449 -> 17536 bytes docs/locale/ko/LC_MESSAGES/writing/tests.po | 233 ++++++++++---------- 2 files changed, 118 insertions(+), 115 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.mo b/docs/locale/ko/LC_MESSAGES/writing/tests.mo index 6de2bdf74b36443ec810242a1dde1bcd0371eb70..0b4b75aabaaca4a2ab1f6764714b47e79d173512 100644 GIT binary patch literal 17536 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 L%+ZM=ErS0I@L~{z delta 515 zcmXZY%PT~27{>8u8rPA96mmW8Vcf}W)QpUY&I}Q@l1m~ZER@SAB@&z2h*F9L7ACSl z*|4#(QZ8A}f`7pRU$Od}_c_n`^?T3qy5(gq^kxanTcqYJ=~&XGAzk25wnU`V9H|={ z@dP*VlYT?4)WKYnFZnQl2l#-|I8z{b=*{B@-WEzFFecfhdt5*dwv|c|xP_S*!~{IUJiNne{6HHXmPt<-!W&#Gm%`|&kRs7u8KA%g zsw$-z0$a5di;4J7o`FZqQMG@Ygm8s9xsGpe7dcB0$g=uImQ_K$G=M&=!BhNwAI3q9 zYxrAa(!~Rp)eOGjKK}l~rAEn%t7yeXoWkdS+nc04=BuXj9cxQ^N?WgK8a|iTZ8+Rs oSG(zSwYGMpQ0B}rDeE\n" -"Language-Team: LANGUAGE \n" +"Last-Translator: AHN YOUNG SEON \n" +"Language-Team: KOREAN \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -14,11 +14,11 @@ msgstr "" #: ../../writing/tests.rst:2 msgid "Testing Your Code" -msgstr "" +msgstr "코드 테스트하기" #: ../../writing/tests.rst:4 msgid "Testing your code is very important." -msgstr "" +msgstr "코드 테스트는 아주 중요합니다." #: ../../writing/tests.rst:6 msgid "" @@ -26,16 +26,22 @@ msgid "" " now considered a good habit. Used wisely, this method helps you define " "more precisely your code's intent and have a more decoupled architecture." msgstr "" +"테스트 코드를 능숙하게 작성하고 이 코드를 패러랠하게 돌리는 것은 " +"이제 좋은 습관으로 인정받고 있습니다. " +"이 방법을 현명하게 사용하면 코드의 의도를 보다 명확히하는데 좋을 뿐 아니라, " +"아키텍처의 결합도를 낮출 수 있습니다. " #: ../../writing/tests.rst:10 msgid "Some general rules of testing:" -msgstr "" +msgstr "테스트의 일반 원칙 몇 가지:" #: ../../writing/tests.rst:12 msgid "" "A testing unit should focus on one tiny bit of functionality and prove it" " correct." msgstr "" +"테스트 유닛은 각 기능의 가장 작은 단위에 집중하여, " +"해당 기능이 정확히 동작하는지를 증명해야 합니다. " #: ../../writing/tests.rst:15 msgid "" @@ -45,6 +51,12 @@ msgid "" " with a fresh dataset and may have to do some cleanup afterwards. This is" " usually handled by :meth:`setUp()` and :meth:`tearDown()` methods." msgstr "" +"각 테스트 유닛은 반드시 독립적이어야 합니다. " +"각 테스트는 혼자서도 실행 가능해야하고, " +"테스트 슈트로도 실행 가능해야 합니다. 이 때, 호출되는 순서와 무관하게 잘 동작해야 합니다. " +"이 규칙이 뜻하는 바, 새로운 데이터셋으로 각각의 테스트를 로딩해야 하고, " +"그 실행 결과는 꼭 삭제해야합니다. " +"보통 :meth:`setUp()` 과 :meth:`tearDown()` 메소드로 이런 작업을 합니다. " #: ../../writing/tests.rst:21 msgid "" @@ -56,6 +68,13 @@ msgid "" "tests in a separate test suite that is run by some scheduled task, and " "run all other tests as often as needed." msgstr "" +"테스트가 빠르게 돌 수 있도록 만들기 위해 노력해야 합니다. " +"테스트 하나가 실행하는데 몇 밀리세컨드 이상의 시간이 걸린다면, " +"개발 속도가 느려지거나 테스트가 충분히 자주 수행되지 못할 것입니다. " +"테스트에 필요한 데이터 구조가 너무 복잡하고, 테스트를 하려면 " +"매번 이 복잡한 데이터를 불러와야 해서 테스트를 빠르게 만들 수 없는 경우도 있습니다. " +"이럴 때는 무거운 테스트는 따로 분리하여 별도의 테스트 슈트를 만들어 두고 스케쥴 작업을 걸어두면 됩니다. " +"그리고 그 외의 다른 모든 테스트는 필요한 만큼 자주 수행하면 됩니다. " #: ../../writing/tests.rst:29 msgid "" @@ -63,6 +82,9 @@ msgid "" " when developing a function inside a module, run this function's tests " "frequently, ideally automatically when you save the code." msgstr "" +"지금 사용하고 있는 툴이 개별 테스트나 테스트 케이스를 어떻게 수행하는지 배우셔야 합니다. " +"모듈 안에 들어있는 함수를 개발하고 있다면, 그 함수의 테스트를 자주, 가능하다면 " +"코드를 저장할 때마다 자동으로 돌려야 합니다. " #: ../../writing/tests.rst:33 msgid "" @@ -70,12 +92,16 @@ msgid "" "after. This will give you more confidence that you did not break anything" " in the rest of the code." msgstr "" +"그날의 코딩을 시작하기 전에 항상 풀 테스트 슈트를 돌려야 합니다. 끝난 후에도 마찬가지입니다. " +"이 작업은 당신이 다른 코드를 망가뜨리지 않았다는 더 큰 자신감을 심어줄 것입니다. " #: ../../writing/tests.rst:37 msgid "" "It is a good idea to implement a hook that runs all tests before pushing " "code to a shared repository." msgstr "" +"모두가 공유하는 저장소에다가 코드를 집어넣기 전에 자동으로 모든 테스트를 수행하도록 " +"하는 훅을 구현하는 것도 좋은 생각입니다. " #: ../../writing/tests.rst:40 msgid "" @@ -84,6 +110,8 @@ msgid "" "want to develop next. When coming back to work, you will have a pointer " "to where you were and get back on track faster." msgstr "" +"지금 한창 개발 중인데 그만두고 잠시 다른 일을 해야한다면, 다음에 개발할 부분에다가 " +"일부러 고장난 유닛 테스트를 작성하는 것도 좋은 생각입니다. " #: ../../writing/tests.rst:45 msgid "" @@ -92,6 +120,9 @@ msgid "" "catching tests are among the most valuable pieces of code in your " "project." msgstr "" +"코드를 디버깅할 때 가장 먼저 시작할 일은 버그를 찝어내는 새로운 테스트를 작성하는 것입니다. " +"이런 일이 언제나 가능한 것은 아니지만, 이런 버그 잡이 테스트들이야말로 " +"당신의 프로젝트에서 가장 가치있는 코드 조각이 될 것입니다. " #: ../../writing/tests.rst:49 msgid "" @@ -103,6 +134,13 @@ msgid "" "``test_square_negative_number()``. These function names are displayed " "when a test fails, and should be as descriptive as possible." msgstr "" +"테스트 함수에는 길고 서술적인 이름을 사용하셔야 합니다. " +"테스트에서의 스타일 안내서는 짧은 이름을 보다 선호하는 다른 일반적인 코드와는 조금 다릅니다. " +"테스트 함수는 절대 직접 호출되지 않기 때문입니다. " +"실제로 돌아가는 코드에서는 ``square()`` 라든가 심지어 ``sqr()`` 조차도 " +"괜찮습니다. 하지만 테스트 코드에서는 ``test_square_of_number_2()``, ``test_square_negative_number()`` " +"같은 이름을 붙여야 합니다. 이런 함수명들은 테스트가 실패할 때나 보입니다. " +"그러니 반드시 가능한 한 서술적인 이름을 붙여야 합니다. " #: ../../writing/tests.rst:57 msgid "" @@ -113,6 +151,9 @@ msgid "" "code. A unit test whose purpose is unclear is not very helpful in this " "case." msgstr "" +"무언가 잘못되었거나 뜯어고쳐야만 할 경우, 괜찮은 코드에 테스트 셋이 있다면 " +"당신이나 다른 유지보수 담당자들은 오류를 수정하거나 프로그램의 동작을 수정할 때 " +"필시 그 테스트 슈트에 전적으로 의지할 것입니다. " #: ../../writing/tests.rst:64 msgid "" @@ -125,14 +166,21 @@ msgid "" "is not already a working path that has not been plugged into the " "interface." msgstr "" +"테스트 코드의 또다른 사용 방법은 새로운 개발자들을 위한 안내서로 쓰는 방법입니다. " +"이미 만들어져 있는 코드에서 작업해야할 경우, 관련 테스트 코드를 돌려보고 읽어보는 것이야말로 " +"가장 좋은 시작점일 경우가 많습니다. " +"이렇게 테스트 코드를 돌려보면 어느 지점이 문제인지, 수정하기 어려운 곳은 어디일지, " +"막다른 골목은 어디일지를 발견하게 됩니다. " +"몇 가지 기능을 추가해야 한다면 가장 먼저 해야할 일은, 그 새로운 기능이 아직 " +"돌아가지 않음을 확인할 수 있는 테스트를 붙여넣는 것입니다. " #: ../../writing/tests.rst:73 msgid "The Basics" -msgstr "" +msgstr "기본" #: ../../writing/tests.rst:77 msgid "Unittest" -msgstr "" +msgstr "Unittest" #: ../../writing/tests.rst:79 msgid "" @@ -140,26 +188,33 @@ msgid "" "standard library. Its API will be familiar to anyone who has used any of " "the JUnit/nUnit/CppUnit series of tools." msgstr "" +":mod:`unittest` 는 파이썬 표준 라이브러리 중 아주 유용한 테스트 모듈입니다. " +"JUnit/nUnit/CppUnit 시리즈와 같은 툴을 써본 사람이라면 " +":mod:`unittest` 의 API에도 익숙할 것입니다. " #: ../../writing/tests.rst:83 msgid "" "Creating test cases is accomplished by subclassing " ":class:`unittest.TestCase`." msgstr "" +"테스트 케이스를 만드려면 :class:`unittest.TestCase` 를 상속받는 " +"하위 클래스를 만들어야 합니다. " #: ../../writing/tests.rst:96 msgid "As of Python 2.7 unittest also includes its own test discovery mechanisms." -msgstr "" +msgstr "파이썬 2.7부터는 unittest도 자체적인 테스트 탐색 매커니즘이 생겼습니다. " #: ../../writing/tests.rst:98 msgid "" "`unittest in the standard library documentation " "`_" msgstr "" +"`표준 라이브러리 문서의 unittest " +"`_" #: ../../writing/tests.rst:102 msgid "Doctest" -msgstr "" +msgstr "Doctest" #: ../../writing/tests.rst:104 msgid "" @@ -167,6 +222,8 @@ msgid "" "interactive Python sessions in docstrings, and then executes those " "sessions to verify that they work exactly as shown." msgstr "" +":mod:`doctest` 모듈은 독스트링 안에 대화형 파이썬 세션처럼 보이는 텍스트가 있는지를 " +"검색한 후, 해당 세션들을 실행하여 텍스트에 써진대로 정확히 동작하는지를 확인합니다. " #: ../../writing/tests.rst:108 msgid "" @@ -176,10 +233,14 @@ msgid "" "cases of a module and its components. However, doctests should run " "automatically each time the full test suite runs." msgstr "" +"doctest는 다른 단위 테스트와는 사용 방법이 다릅니다: doctest는 일반적으로 상세하지 않고 " +"특이한 케이스나 회귀 테스트에서의 버그를 잡아내지도 못합니다. " +"하지만 각 모듈과 그 컴포넌트의 주된 사용법을 알려주는 문서로써는 아주 유용합니다. " +"doctest는 전체 테스트 슈트를 실행할 때마다 자동으로 돌려야 합니다. " #: ../../writing/tests.rst:114 msgid "A simple doctest in a function:" -msgstr "" +msgstr "함수에서 doctest를 돌리는 간단한 예시:" #: ../../writing/tests.rst:133 msgid "" @@ -187,20 +248,23 @@ msgid "" "module.py``, the doctests will run and complain if anything is not " "behaving as described in the docstrings." msgstr "" +"커맨드 라인에서 ``python module.py`` 를 쳐서 해당 모듈을 실행하면 " +"doctest가 실행되고, 무언가 doctest에 기술한대로 동작하지 않는 경우에는 " +"경고를 해줍니다. " #: ../../writing/tests.rst:138 msgid "Tools" -msgstr "" +msgstr "도구" #: ../../writing/tests.rst:142 msgid "py.test" -msgstr "" +msgstr "py.test" #: ../../writing/tests.rst:144 msgid "" "py.test is a no-boilerplate alternative to Python's standard unittest " "module." -msgstr "" +msgstr "py.test는 보일러플레이트가 없는 파이썬 표준 unittest의 대체품입니다. " #: ../../writing/tests.rst:150 msgid "" @@ -208,28 +272,32 @@ msgid "" "simple syntax. Creating a test suite is as easy as writing a module with " "a couple of functions:" msgstr "" +"모든 기능을 갖추지는 않았습니다. 확장 가능한 테스트 도구도 아닙니다. 하지만 " +"단순한 신텍스를 자랑합니다. " +"테스트 슈트를 만드는 것은 함수 몇 개가 있는 모듈 하나를 작성하는 것 만큼이나 간단합니다. " #: ../../writing/tests.rst:163 msgid "and then running the `py.test` command" -msgstr "" +msgstr "그리고 명령창에서 `py.test` 를 실행하면 됩니다. " #: ../../writing/tests.rst:185 msgid "" "is far less work than would be required for the equivalent functionality " "with the unittest module!" msgstr "" +"unittest 모듈로 같은 기능을 구현하기 위해 필요한 것보다 훨씬 덜 작업해도 됩니다! " #: ../../writing/tests.rst:188 msgid "`py.test `_" -msgstr "" +msgstr "`py.test `_" #: ../../writing/tests.rst:192 msgid "Nose" -msgstr "" +msgstr "Nose" #: ../../writing/tests.rst:194 msgid "nose extends unittest to make testing easier." -msgstr "" +msgstr "nose는 테스트를 쉽게 하도록 unittest를 확장한 것입니다. " #: ../../writing/tests.rst:201 msgid "" @@ -238,34 +306,40 @@ msgid "" "such as xUnit-compatible test output, coverage reporting, and test " "selection." msgstr "" +"nose는 자동으로 테스트를 발견합니다. 덕분에 수작업으로 테스트 슈트를 만드는 수고를 덜 수 있습니다. " +"또한 xUnit 호환 테스트 결과, 코드 커버리지 보고서, 선택 테스트와 같이 다양한 플러그인도 제공합니다. " #: ../../writing/tests.rst:205 msgid "`nose `_" -msgstr "" +msgstr "`nose `_" #: ../../writing/tests.rst:209 msgid "tox" -msgstr "" +msgstr "tox" #: ../../writing/tests.rst:211 msgid "" "tox is a tool for automating test environment management and testing " "against multiple interpreter configurations" msgstr "" +"tox는 자동화된 테스트 환경 관리와 " +"다양한 인터프리터 설정 하에서의 테스트를 위한 도구입니다. " #: ../../writing/tests.rst:218 msgid "" "tox allows you to configure complicated multi-parameter test matrices via" " a simple ini-style configuration file." msgstr "" +"tox는 간단한 ini 스타일의 설정 파일을 통해 " +"복잡한 멀티 파라미터 테스트 메트릭을 설정할 수 있도록 해줍니다. " #: ../../writing/tests.rst:221 msgid "`tox `_" -msgstr "" +msgstr "`tox `_" #: ../../writing/tests.rst:224 msgid "Unittest2" -msgstr "" +msgstr "Unittest2" #: ../../writing/tests.rst:226 msgid "" @@ -273,16 +347,22 @@ msgid "" "improved API and better assertions over the one available in previous " "versions of Python." msgstr "" +"unittest2는 향상된 API와 단정문을 가지고 있는 파이썬 2.7의 unittest의 백포트 버전입니다. " +"2.7 이전 버전의 파이썬에서 사용 가능합니다. " #: ../../writing/tests.rst:229 msgid "If you're using Python 2.6 or below, you can install it with pip" msgstr "" +"파이썬 2.6이나 그 이전 버전을 사용하고 있다면 " +"pip로 설치할 수 있습니다. " #: ../../writing/tests.rst:235 msgid "" "You may want to import the module under the name unittest to make porting" " code to newer versions of the module easier in the future" msgstr "" +"unittest라는 이름으로 모듈을 임포트하여 나중에 새로운 파이썬 버전의 " +"모듈로 포팅하기 쉽도록 만들고 싶을 수도 있습니다. " #: ../../writing/tests.rst:245 msgid "" @@ -290,14 +370,16 @@ msgid "" "the unittest2 module, you can simply change the import in your test " "module without the need to change any other code." msgstr "" +"이 방법을 쓰면 나중에 새로운 버전의 파이썬으로 바꾸거나 unittest2 모듈이 더이상 " +"필요하지 않더라도, 코드 수정 없이 테스트 모듈의 임포트를 변경할 수 있습니다. " #: ../../writing/tests.rst:249 msgid "`unittest2 `_" -msgstr "" +msgstr "`unittest2 `_" #: ../../writing/tests.rst:253 msgid "mock" -msgstr "" +msgstr "mock" #: ../../writing/tests.rst:255 msgid "" @@ -305,20 +387,25 @@ msgid "" "3.3, it is available in the `standard library " "`_." msgstr "" +":mod:`unittest.mock` 은 파이썬의 테스트 라이브러리입니다. " +"파이썬 3.3부터는 `표준 라이브러리 " +"`_ 가 되었습니다. " #: ../../writing/tests.rst:259 msgid "For older versions of Python:" -msgstr "" +msgstr "예전 버전의 파이썬에서:" #: ../../writing/tests.rst:265 msgid "" "It allows you to replace parts of your system under test with mock " "objects and make assertions about how they have been used." msgstr "" +"를 하면 mock 오브젝트로 시스템의 테스트 파트를 변경할 수 있습니다. " +"그리고 테스트가 어떻게 쓰일지에 대한 단정문을 만들 수 있습니다. " #: ../../writing/tests.rst:268 msgid "For example, you can monkey-patch a method:" -msgstr "" +msgstr "이렇게 메소드를 몽키 패치할 수도 있습니다: " #: ../../writing/tests.rst:279 msgid "" @@ -327,99 +414,15 @@ msgid "" "with a mock that always returns the same result (but only for the " "duration of the test)." msgstr "" +"테스트하는 모듈에서 모의 클래스나 모의 객체를 만들 경우에는 " +"``patch`` 데코레이터를 사용하세요. " +"아래의 예시에서는 언제나 같은 결과값을 내는(아무튼 테스트 중에는) " +"모의 객체가 외부 검색 시스템 하나 대신 쓰였습니다. " #: ../../writing/tests.rst:298 msgid "Mock has many other ways you can configure it and control its behavior." -msgstr "" +msgstr "mock은 다양하게 설정하여 동작 방법을 컨트롤 할 수 있습니다. " #: ../../writing/tests.rst:300 msgid "`mock `_" -msgstr "" - -#~ msgid "" -#~ "Getting used to writing the testing " -#~ "code and the running code in " -#~ "parallel is now considered a good " -#~ "habit. Used wisely, this method helps" -#~ " you define more precisely your " -#~ "code's intent and have a more " -#~ "decoupled architecture." -#~ msgstr "" - -#~ msgid "" -#~ "Each test unit must be fully " -#~ "independent. Each of them must be " -#~ "able to run alone, and also within" -#~ " the test suite, regardless of the" -#~ " order they are called. The " -#~ "implication of this rule is that " -#~ "each test must be loaded with a" -#~ " fresh dataset and may have to " -#~ "do some cleanup afterwards. This is " -#~ "usually handled by :meth:`setUp()` and " -#~ ":meth:`tearDown()` methods." -#~ msgstr "" - -#~ msgid "" -#~ "Try hard to make tests that run" -#~ " fast. If one single test needs " -#~ "more than a few millisecond to " -#~ "run, development will be slowed down " -#~ "or the tests will not be run " -#~ "as often as desirable. In some " -#~ "cases, tests can't be fast because " -#~ "they need a complex data structure " -#~ "to work on, and this data " -#~ "structure must be loaded every time " -#~ "the test runs. Keep these heavier " -#~ "tests in a separate test suite " -#~ "that is run by some scheduled " -#~ "task, and run all other tests as" -#~ " often as needed." -#~ msgstr "" - -#~ msgid "" -#~ "Learn your tools and learn how to" -#~ " run a single test or a test" -#~ " case. Then, when developing a " -#~ "function inside a module, run this " -#~ "function's tests very often, ideally " -#~ "automatically when you save the code." -#~ msgstr "" - -#~ msgid "" -#~ "When something goes wrong or has " -#~ "to be changed, and if your code" -#~ " has a good set of tests, you" -#~ " or other maintainers will rely " -#~ "largely on the testing suite to " -#~ "fix the problem or modify a given" -#~ " behavior. Therefore the testing code " -#~ "will be read as much as or " -#~ "even more than the running code. A" -#~ " unit test whose purpose is unclear" -#~ " is not very helpful is this " -#~ "case." -#~ msgstr "" - -#~ msgid "" -#~ "Another use of the testing code is" -#~ " as an introduction to new " -#~ "developers. When someone will have to" -#~ " work on the code base, running " -#~ "and reading the related testing code " -#~ "is often the best they can do. " -#~ "They will or should discover the " -#~ "hot spots, where most difficulties " -#~ "arise, and the corner cases. If " -#~ "they have to add some functionality, " -#~ "the first step should be to add" -#~ " a test and, by this means, " -#~ "ensure the new functionality is not " -#~ "already a working path that has " -#~ "not been plugged into the interface." -#~ msgstr "" - -#~ msgid "`nose `_" -#~ msgstr "" - +msgstr "`mock `_" From 3c856d45568a6d303e37251e000cae557f82b60e Mon Sep 17 00:00:00 2001 From: YoungSeon Ahn Date: Mon, 19 Dec 2016 01:46:02 +0000 Subject: [PATCH 040/117] ~logging --- docs/locale/ko/LC_MESSAGES/writing/logging.mo | Bin 8159 -> 9563 bytes docs/locale/ko/LC_MESSAGES/writing/logging.po | 85 +++++++++++++----- 2 files changed, 65 insertions(+), 20 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.mo b/docs/locale/ko/LC_MESSAGES/writing/logging.mo index b1582cd0f74c830895f7e03f0c44090ed83ec59c..5aac167d6aeb78b10c184330b397cb433c23b9ac 100644 GIT binary patch literal 9563 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 delta 518 zcmX}oPbh%N20hWC4X)^`Tlyf)8~Djx8L*oJ>SRi7vDivO#pbW1~N3N2PFDKFKCHc zY1RPP={0rGB7LA=^qJn&0Jk(_1dx)Fvly{)7MN4FqicJ=%NJOO~k#MV)h?_q} zBA+zR{%o7Jh{LHR61DR~M3Sar&=nPl6rDMb&L~yB?jEn_CiG|0@W_lTyCwtSkjoni z2gYQ7AQ+quMIu86Iku{7#+10nl}MF~u4p{AB04UwEc=s7-KjO@aM5y_^Xa7W*edA{ DtRGk` diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.po b/docs/locale/ko/LC_MESSAGES/writing/logging.po index 812292946..c59e89d42 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/logging.po +++ b/docs/locale/ko/LC_MESSAGES/writing/logging.po @@ -7,15 +7,14 @@ # package. # FIRST AUTHOR , 2016. # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-10-11 08:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: AHN YOUNG SEON \n" +"Language-Team: KOREAN \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +22,7 @@ msgstr "" #: ../../writing/logging.rst:2 msgid "Logging" -msgstr "" +msgstr "로그" #: ../../writing/logging.rst:4 msgid "" @@ -32,10 +31,14 @@ msgid "" "documentation is notoriously hard to read, except for the `basic logging " "tutorial`_." msgstr "" +":mod:`logging` 모듈은 2.3 버전 이래로 파이썬의 표준 라이브러리였습니다. " +"이에 관해서는 :pep:`282` 을 보시면 간략히 써져 있습니다. " +"그 문서는 읽기 어렵기로 악명이 높지만, 그래도 `basic logging " +"tutorial`_ 은 그나마 낫습니다. " #: ../../writing/logging.rst:8 msgid "Logging serves two purposes:" -msgstr "" +msgstr "로그를 남기는데에는 2가지 목적이 있습니다: " #: ../../writing/logging.rst:10 msgid "" @@ -43,6 +46,9 @@ msgid "" "operation. If a user calls in to report an error, for example, the logs " "can be searched for context." msgstr "" +"**진단용 로그** 는 어플리케이션의 동작과 관련된 이벤트를 기록합니다. " +"예를 들어 사용자가 오류 보고서를 남기면, " +"그 로그를 해당 에러와 관련된 상황을 확인하는데 쓸 수 있습니다. " #: ../../writing/logging.rst:13 msgid "" @@ -50,10 +56,14 @@ msgid "" "transactions can be extracted and combined with other user details for " "reports or to optimize a business goal." msgstr "" +"**감사용 로그** 는 비지니스 분석에 필요한 이벤트를 기록합니다. " +"사용자가 무슨 동작을 했는지 알아낼 수 있으며, 다른 사용자와는 무슨 동작을 했는지도 " +"상세하게 알 수 있습니다. " +"이를 통해 보고서를 작성하거나 업무적으로 최적화를 할 수 있습니다. " #: ../../writing/logging.rst:19 msgid "... or Print?" -msgstr "" +msgstr "... Print는?" #: ../../writing/logging.rst:21 msgid "" @@ -61,6 +71,8 @@ msgid "" "goal is to display a help statement for a command line application. Other" " reasons why logging is better than ``print``:" msgstr "" +"``print`` 가 logging보다 좋은 경우는 커맨드라인 어플리케이션에서 help 구문을 화면에 " +"보여줄 때 뿐입니다. logging이 ``print`` 보다 좋은 이유입니다: " #: ../../writing/logging.rst:25 msgid "" @@ -68,6 +80,9 @@ msgid "" "readily available diagnostic information such as the file name, full " "path, function, and line number of the logging event." msgstr "" +"`log record`_ 는 로그 남기는 이벤트가 발생할 때마다 만들어지는데, 여기에는 " +"로그 남기는 이벤트의 파일명과 경로, 함수, 몇 행에서 문제가 발생했는지 등의 " +"정보가 들어있어 문제를 확인하기에 편리합니다. " #: ../../writing/logging.rst:28 msgid "" @@ -75,6 +90,9 @@ msgid "" "root logger to your application's logging stream, unless you filter them " "out." msgstr "" +"내장된 모듈에서 발생한 이벤트들도 로그가 남는데, 이 로그들은 루트 로그 기록기를 통하여 " +"어플리케이션의 로그 스트림으로 보낼 수 있습니다. " +"필터링해서 걸러내지만 않는다면 말입니다. " #: ../../writing/logging.rst:30 msgid "" @@ -82,10 +100,12 @@ msgid "" ":meth:`logging.Logger.setLevel` or disabled by setting the attribute " ":attr:`logging.Logger.disabled` to ``True``." msgstr "" +":meth:`logging.Logger.setLevel` 메소드를 쓰면 로그를 선택적으로 남길 수 있습니다. " +":attr:`logging.Logger.disabled` 속성을 ``True`` 로 설정하면 로그를 끌 수도 있습니다. " #: ../../writing/logging.rst:36 msgid "Logging in a Library" -msgstr "" +msgstr "라이브러리에서의 로그 남기기" #: ../../writing/logging.rst:38 msgid "" @@ -93,12 +113,16 @@ msgid "" "tutorial`_. Because the *user*, not the library, should dictate what " "happens when a logging event occurs, one admonition bears repeating:" msgstr "" +"`라이브러리에 로그 설정`_ 하려면 `로그 남기기 튜토리얼`_ 을 보시면 됩니다. " +"로그를 남기는 이벤트가 발생하면 그게 무슨 일인지 알아내야 하는 건 " +"라이브러리가 아니라 *사용자* 입니다. 따라서 반복적으로 경보를 보내야합니다. " #: ../../writing/logging.rst:44 msgid "" "It is strongly advised that you do not add any handlers other than " -"NullHandler to your library’s loggers." +"NullHandler to your library??셲 loggers." msgstr "" +"당신의 라이브러리에 NullHandler 이외의 다른 로그 남기는 핸들러를 넣지 말 것을 강력 추천합니다. " #: ../../writing/logging.rst:48 msgid "" @@ -107,16 +131,22 @@ msgid "" "creates a hierarchy of loggers using dot notation, so using ``__name__`` " "ensures no name collisions." msgstr "" +"라이브러리에서 로그 기록기를 인스턴스화 하는 유일한 방법은 ``__name__`` 전역 변수를 사용해서 " +"만드는 방법 뿐입니다. " +":mod:`logging` 모듈은 . 을 사용해서 로그 기록기의 계층 구조를 만들기 때문에 " +"``__name__`` 을 사용해야 충돌을 막을 수 있습니다. " #: ../../writing/logging.rst:53 msgid "" "Here is an example of best practice from the `requests source`_ -- place " "this in your ``__init__.py``" msgstr "" +"`requests의 소스`_ 에서 가져온 훌륭한 예시를 보여드리겠습니다. 이걸 당신의 " +" ``__init__.py`` 에 두시면 됩니다. " #: ../../writing/logging.rst:72 msgid "Logging in an Application" -msgstr "" +msgstr "어플리케이션에서의 로그 남기기" #: ../../writing/logging.rst:74 msgid "" @@ -127,30 +157,38 @@ msgid "" "for sending that event stream to standard output to be handled by the " "application environment." msgstr "" +"`멋진 앱을 만들기 위한 12가지 `_ 는 어플리케이션 개발을 위한 좋은 " +"습관을 들이기에 참고할만 합니다. `로그를 남기는 방법 `_ " +"에 관한 섹션도 있는데, 여기서는 로그 이벤트를 이벤트 스트림으로 취급하여 " +"어플리케이션 환경에서 조작할 수 있는 표준적인 산출물로 만들 것을 강력하게 추천합니다. " #: ../../writing/logging.rst:82 msgid "There are at least three ways to configure a logger:" -msgstr "" +msgstr "로그를 설정하는데에는 적어도 3가지 방식이 있습니다: " #: ../../writing/logging.rst:87 msgid "Using an INI-formatted file:" -msgstr "" +msgstr "INI 포맷의 파일을 사용하는 방법: " #: ../../writing/logging.rst:85 msgid "" "**Pro**: possible to update configuration while running using the " "function :func:`logging.config.listen` to listen on a socket." msgstr "" +"**이렇게 하자**: 소켓에 함수 :func:`logging.config.listen` 를 사용해서 " +"어플리케이션이 실행 중일때도 설정 변경이 반영될 수 있도록 한다." #: ../../writing/logging.rst:87 msgid "" "**Con**: less control (*e.g.* custom subclassed filters or loggers) than " "possible when configuring a logger in code." msgstr "" +"**이렇게 하지 마세요**: 코드에 로그를 설정할 때 " +"(*예를 들면* 직접 만든 서브클래스나 로그에) 할 수 있는 설정도 하지 않는다." #: ../../writing/logging.rst:92 msgid "Using a dictionary or a JSON-formatted file:" -msgstr "" +msgstr "딕셔너리나 JSON 포맷 파일을 사용하는 방법: " #: ../../writing/logging.rst:90 msgid "" @@ -158,26 +196,29 @@ msgid "" "from a file using the :mod:`json` module, in the standard library since " "Python 2.6." msgstr "" +"**이렇게 하자**: 어플리케이션 실행 중에도 업데이트를 할 수 있을 뿐만 아니라, " +"파이썬 2.6부터는 표준 라이브러리에서 :mod:`json` 모듈을 사용하여 " +"파일에서 설정을 불러올 수도 있다." #: ../../writing/logging.rst:93 msgid "**Con**: less control than when configuring a logger in code." -msgstr "" +msgstr "**이렇게 하지 마세요**: 코드에 로그를 설정할 때 할 수 있는 설정도 하지 않는다 " #: ../../writing/logging.rst:97 msgid "Using code:" -msgstr "" +msgstr "코드를 사용하는 방법: " #: ../../writing/logging.rst:95 msgid "**Pro**: complete control over the configuration." -msgstr "" +msgstr "**이렇게 하자**: 모든 설정을 완벽하게 한다." #: ../../writing/logging.rst:96 msgid "**Con**: modifications require a change to source code." -msgstr "" +msgstr "**이렇게 하지 마세요**: 소스코드에서 설정 수정이 필요하다." #: ../../writing/logging.rst:100 msgid "Example Configuration via an INI File" -msgstr "" +msgstr "INI 파일로 설정하는 예시" #: ../../writing/logging.rst:102 msgid "" @@ -185,14 +226,16 @@ msgid "" " file format are in the `logging configuration`_ section of the `logging " "tutorial`_." msgstr "" +"파일명은 ``logging_config.ini`` 로 합시다. 파일 포맷에 대한 자세한 설명은 " +"`로그 튜토리얼`_ 의 `로그 설정`_ 을 보시면 됩니다. " #: ../../writing/logging.rst:131 msgid "Then use :meth:`logging.config.fileConfig` in the code:" -msgstr "" +msgstr "그런 다음 코드에 :meth:`logging.config.fileConfig` 를 쓰세요. " #: ../../writing/logging.rst:144 msgid "Example Configuration via a Dictionary" -msgstr "" +msgstr "딕셔너리로 설정하는 예시" #: ../../writing/logging.rst:146 msgid "" @@ -200,8 +243,10 @@ msgid "" ":pep:`391` contains a list of the mandatory and optional elements in the " "configuration dictionary." msgstr "" +"파이썬 2.7부터는 딕셔너리를 사용해서 상세한 설정을 할 수 있습니다. " +":pep:`391` 을 보시면 설정 딕셔너리에 반드시 넣어야 하는 요소와 그렇지 않은 요소를 확인할 수 있습니다. " #: ../../writing/logging.rst:179 msgid "Example Configuration Directly in Code" -msgstr "" +msgstr "코드에 바로 설정하는 예시" From e63033bdffbdc16ef241b92644580f5e3167126c Mon Sep 17 00:00:00 2001 From: mhchoi8423 Date: Thu, 13 Apr 2017 23:08:50 +0900 Subject: [PATCH 041/117] Fixed typo of index.po --- docs/locale/ko/LC_MESSAGES/index.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index 2ad2fe8b2..f8ecea208 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -85,7 +85,7 @@ msgstr "" msgid "" "This part of the guide focuses on tool and module advice based on " "different scenarios." -msgstr "이 파트는 다양한 시나리에오 따른 툴과 모듈에 대한 조언을 다룹니다" +msgstr "이 파트는 다양한 시나리오에 따른 툴과 모듈에 대한 조언을 다룹니다" #: ../../contents.rst.inc:71 msgid "Shipping Great Python Code" From 0dadb64add331e7fb563890165c065c0f385d64d Mon Sep 17 00:00:00 2001 From: Byeongguk Gong Date: Tue, 3 Jul 2018 15:23:24 +0900 Subject: [PATCH 042/117] Update tests.rst * Fix invalid link about tox --- docs/writing/tests.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/writing/tests.rst b/docs/writing/tests.rst index b8b7ca022..9dd0877bb 100644 --- a/docs/writing/tests.rst +++ b/docs/writing/tests.rst @@ -218,7 +218,7 @@ multiple interpreter configurations tox allows you to configure complicated multi-parameter test matrices via a simple ini-style configuration file. - `tox `_ + `tox `_ Unittest2 --------- From 6aad805948166de0ec280992aeb563288e25eadc Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Mon, 15 Mar 2021 08:20:49 +0000 Subject: [PATCH 043/117] add .venv at .gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 58345c85e..3693d2882 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,5 @@ docs/_build # Ignore files generated during build build/ + +.venv/ \ No newline at end of file From 17dd1a546408be48b011c5e4c031988c0c5338d5 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Mon, 15 Mar 2021 08:46:59 +0000 Subject: [PATCH 044/117] Update gitignore --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 76ac05298..1adb7ce34 100644 --- a/.gitignore +++ b/.gitignore @@ -11,4 +11,4 @@ docs/_build # Ignore files generated during build build/ -venv/ +.venv/ From 84541f573bc571acfad8308b1c81e8165d838220 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Mon, 15 Mar 2021 09:09:12 +0000 Subject: [PATCH 045/117] Update for 2021 --- docs/locale/ko/LC_MESSAGES/404.mo | Bin 0 -> 1127 bytes docs/locale/ko/LC_MESSAGES/404.po | 52 ++ docs/locale/ko/LC_MESSAGES/dev/env.mo | Bin 24199 -> 25095 bytes docs/locale/ko/LC_MESSAGES/dev/env.po | 721 ++++++++++----- .../ko/LC_MESSAGES/dev/pip-virtualenv.mo | Bin 8561 -> 8987 bytes .../ko/LC_MESSAGES/dev/pip-virtualenv.po | 111 ++- docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo | Bin 12177 -> 21703 bytes docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 502 ++++++++-- docs/locale/ko/LC_MESSAGES/index.mo | Bin 4615 -> 3665 bytes docs/locale/ko/LC_MESSAGES/index.po | 123 ++- docs/locale/ko/LC_MESSAGES/intro/community.mo | Bin 4867 -> 6219 bytes docs/locale/ko/LC_MESSAGES/intro/community.po | 155 ++-- .../ko/LC_MESSAGES/intro/documentation.mo | Bin 2171 -> 2175 bytes .../ko/LC_MESSAGES/intro/documentation.po | 62 +- docs/locale/ko/LC_MESSAGES/intro/duction.mo | Bin 6599 -> 6579 bytes docs/locale/ko/LC_MESSAGES/intro/duction.po | 89 +- docs/locale/ko/LC_MESSAGES/intro/learning.mo | Bin 24665 -> 30659 bytes docs/locale/ko/LC_MESSAGES/intro/learning.po | 696 ++++++++++---- docs/locale/ko/LC_MESSAGES/intro/news.mo | Bin 3331 -> 4583 bytes docs/locale/ko/LC_MESSAGES/intro/news.po | 161 +++- .../locale/ko/LC_MESSAGES/notes/styleguide.mo | Bin 7075 -> 7597 bytes .../locale/ko/LC_MESSAGES/notes/styleguide.po | 175 ++-- docs/locale/ko/LC_MESSAGES/scenarios/admin.mo | Bin 18391 -> 18549 bytes docs/locale/ko/LC_MESSAGES/scenarios/admin.po | 353 ++++--- docs/locale/ko/LC_MESSAGES/scenarios/ci.mo | Bin 6077 -> 6253 bytes docs/locale/ko/LC_MESSAGES/scenarios/ci.po | 159 +++- docs/locale/ko/LC_MESSAGES/scenarios/cli.mo | Bin 6901 -> 7053 bytes docs/locale/ko/LC_MESSAGES/scenarios/cli.po | 200 ++-- docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo | Bin 6255 -> 6753 bytes docs/locale/ko/LC_MESSAGES/scenarios/clibs.po | 170 +++- .../locale/ko/LC_MESSAGES/scenarios/client.mo | Bin 4349 -> 4341 bytes .../locale/ko/LC_MESSAGES/scenarios/client.po | 60 +- .../locale/ko/LC_MESSAGES/scenarios/crypto.mo | Bin 1959 -> 4157 bytes .../locale/ko/LC_MESSAGES/scenarios/crypto.po | 97 +- docs/locale/ko/LC_MESSAGES/scenarios/db.mo | Bin 6611 -> 7163 bytes docs/locale/ko/LC_MESSAGES/scenarios/db.po | 168 +++- docs/locale/ko/LC_MESSAGES/scenarios/gui.mo | Bin 9173 -> 10297 bytes docs/locale/ko/LC_MESSAGES/scenarios/gui.po | 265 ++++-- .../ko/LC_MESSAGES/scenarios/imaging.mo | Bin 4493 -> 4511 bytes .../ko/LC_MESSAGES/scenarios/imaging.po | 96 +- docs/locale/ko/LC_MESSAGES/scenarios/json.mo | Bin 2661 -> 1361 bytes docs/locale/ko/LC_MESSAGES/scenarios/json.po | 95 +- docs/locale/ko/LC_MESSAGES/scenarios/ml.mo | Bin 7163 -> 7145 bytes docs/locale/ko/LC_MESSAGES/scenarios/ml.po | 203 +++-- .../ko/LC_MESSAGES/scenarios/network.mo | Bin 3223 -> 3261 bytes .../ko/LC_MESSAGES/scenarios/network.po | 101 +- .../ko/LC_MESSAGES/scenarios/scientific.mo | Bin 12139 -> 12907 bytes .../ko/LC_MESSAGES/scenarios/scientific.po | 264 ++++-- .../locale/ko/LC_MESSAGES/scenarios/scrape.mo | Bin 6135 -> 6125 bytes .../locale/ko/LC_MESSAGES/scenarios/scrape.po | 103 ++- .../ko/LC_MESSAGES/scenarios/serialization.mo | Bin 1989 -> 6889 bytes .../ko/LC_MESSAGES/scenarios/serialization.po | 216 ++++- docs/locale/ko/LC_MESSAGES/scenarios/speed.mo | Bin 16225 -> 16227 bytes docs/locale/ko/LC_MESSAGES/scenarios/speed.po | 246 +++-- docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 27977 -> 31365 bytes docs/locale/ko/LC_MESSAGES/scenarios/web.po | 737 ++++++++------- docs/locale/ko/LC_MESSAGES/scenarios/xml.mo | Bin 2253 -> 2329 bytes docs/locale/ko/LC_MESSAGES/scenarios/xml.po | 89 +- .../ko/LC_MESSAGES/shipping/freezing.mo | Bin 11475 -> 15527 bytes .../ko/LC_MESSAGES/shipping/freezing.po | 405 ++++++-- .../ko/LC_MESSAGES/shipping/packaging.mo | Bin 14721 -> 14655 bytes .../ko/LC_MESSAGES/shipping/packaging.po | 336 ++++--- .../ko/LC_MESSAGES/shipping/publishing.mo | Bin 0 -> 4293 bytes .../ko/LC_MESSAGES/shipping/publishing.po | 124 +++ .../ko/LC_MESSAGES/starting/install/linux.mo | Bin 6636 -> 5249 bytes .../ko/LC_MESSAGES/starting/install/linux.po | 104 ++- .../ko/LC_MESSAGES/starting/install/osx.mo | Bin 8512 -> 4380 bytes .../ko/LC_MESSAGES/starting/install/osx.po | 167 ++-- .../ko/LC_MESSAGES/starting/install/win.mo | Bin 8672 -> 7176 bytes .../ko/LC_MESSAGES/starting/install/win.po | 179 ++-- .../ko/LC_MESSAGES/starting/install3/linux.mo | Bin 0 -> 6977 bytes .../ko/LC_MESSAGES/starting/install3/linux.po | 173 ++++ .../ko/LC_MESSAGES/starting/install3/osx.mo | Bin 0 -> 7703 bytes .../ko/LC_MESSAGES/starting/install3/osx.po | 187 ++++ .../ko/LC_MESSAGES/starting/install3/win.mo | Bin 0 -> 4185 bytes .../ko/LC_MESSAGES/starting/install3/win.po | 106 +++ .../ko/LC_MESSAGES/starting/installation.mo | Bin 2263 -> 2270 bytes .../ko/LC_MESSAGES/starting/installation.po | 79 +- .../ko/LC_MESSAGES/starting/which-python.mo | Bin 12928 -> 10685 bytes .../ko/LC_MESSAGES/starting/which-python.po | 331 ++++--- .../ko/LC_MESSAGES/writing/documentation.mo | Bin 19741 -> 14560 bytes .../ko/LC_MESSAGES/writing/documentation.po | 374 ++++---- docs/locale/ko/LC_MESSAGES/writing/gotchas.mo | Bin 9675 -> 11183 bytes docs/locale/ko/LC_MESSAGES/writing/gotchas.po | 169 ++-- docs/locale/ko/LC_MESSAGES/writing/license.mo | Bin 3847 -> 3919 bytes docs/locale/ko/LC_MESSAGES/writing/license.po | 132 ++- docs/locale/ko/LC_MESSAGES/writing/logging.mo | Bin 9563 -> 7426 bytes docs/locale/ko/LC_MESSAGES/writing/logging.po | 196 ++-- docs/locale/ko/LC_MESSAGES/writing/reading.mo | Bin 5756 -> 3228 bytes docs/locale/ko/LC_MESSAGES/writing/reading.po | 141 +-- .../ko/LC_MESSAGES/writing/structure.mo | Bin 58698 -> 34911 bytes .../ko/LC_MESSAGES/writing/structure.po | 633 +++++++------ docs/locale/ko/LC_MESSAGES/writing/style.mo | Bin 41488 -> 34844 bytes docs/locale/ko/LC_MESSAGES/writing/style.po | 861 ++++++++++-------- docs/locale/ko/LC_MESSAGES/writing/tests.mo | Bin 17536 -> 14988 bytes docs/locale/ko/LC_MESSAGES/writing/tests.po | 420 +++++---- 96 files changed, 7774 insertions(+), 3812 deletions(-) create mode 100644 docs/locale/ko/LC_MESSAGES/404.mo create mode 100644 docs/locale/ko/LC_MESSAGES/404.po create mode 100644 docs/locale/ko/LC_MESSAGES/shipping/publishing.mo create mode 100644 docs/locale/ko/LC_MESSAGES/shipping/publishing.po create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install3/linux.mo create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install3/linux.po create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install3/osx.mo create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install3/osx.po create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install3/win.mo create mode 100644 docs/locale/ko/LC_MESSAGES/starting/install3/win.po diff --git a/docs/locale/ko/LC_MESSAGES/404.mo b/docs/locale/ko/LC_MESSAGES/404.mo new file mode 100644 index 0000000000000000000000000000000000000000..a4d8a2fbdddf0fbe35a036442ab2848a8abe1115 GIT binary patch literal 1127 zcmeHFv2GJV5IsZ+bRB_`Vmc&~J)cb?qDvgvi7#N}izC}0fsn}hc6?rZ-aU5rNGuv^ zYUs#6(D4KO0xbm%UqH`Xj0hck04qJcozuLxZ|C;w`r3Ps)-}Q{!n3OQV|}3gJ;FKR zI^hdpgYccuBHX;^v*HLrt*ytCSI@S~HF&ZniieMG-A|Zr97&QDL7TP$L z*h~txUuKq#bp-zLV9X8-az`@OCC><&VY9))yR5MV;dZpObtj}njckaoWM%)W?@8Pl zvSh%z9e6N^lHQ%CgQM8*bL-gHaAkAuw29#GQNIsIog{|cIO+8I?M}Blj7OtAYE@ZD z!-!z6e-~_wd{KRY-G0BF%WA-T{&8L!p0h)37B&J^T$Hxe*n!oy75Ygpi7yAx2txlr zD~F2G&Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.2.0\n" + +#: ../../404.rst:5 +msgid "404 — Not Found" +msgstr "" + +#: ../../404.rst:7 +msgid "**Sorry, but we couldn't find the page you requested.**" +msgstr "" + +#: ../../404.rst:9 +msgid "It looks like this was the result of either:" +msgstr "" + +#: ../../404.rst:11 +msgid "a mistyped address" +msgstr "" + +#: ../../404.rst:12 +msgid "an out-of-date link" +msgstr "" + +#: ../../404.rst:14 +msgid "`Click here to go back to the homepage. `_" +msgstr "" + +#: ../../404.rst:16 +msgid "Or, try `searching `_." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.mo b/docs/locale/ko/LC_MESSAGES/dev/env.mo index 2724c6adab554614120cdc17df5b2550f4451d95..8a23c38ab182456a4c94db159fafac49728c6f65 100644 GIT binary patch delta 3733 zcmeIy|8G@y9mny{Y5Cd#ZRzN>d_8ufg?@*oEtGF-3mYx%xU>}LXi9JIJ?lMk?>U!q z&ux1#v#>>(8DnD~H*oym5)-By1j$XdC~8U2CA!TZCL&Xd6GhA>LW~)@C_X>^l<58i zL(_X7=W{;i%jfg{d|vm^4~#=UGDgSePI+1IH^^rppY7SI_20k4(}ZZF`8#xZHen&tR0H0H4d|m9=qY4%#6?uky^Ks=?0k?f zDiJ|eNm%oAzoSfZ;wA^p7%kK#d=u3S#!$`R=cpd^Yg7-of&F+JN3b&>L>0b^E-(5g z9;E$+A|YPIk5LWu5am+aYYboIx(o9ery5)zJMSY*B9jz**g0yAJUoE=@e}+M)h7KL zP{V>+ow6za{Lf|i4U1(>!=4#--0V>I%5yo*MtkPpIrWCjTiu;`Zr1BrqoURE zEhl0{%qLyX9Iys$$FaO*g&9wowiAw}xX}#V8)Gf!e9KFC7T*;n12*lXX@!z$(|74( z4zZZYWOmw4#2w}_Tf3@vOv(-1fl#?`vt%(csCo0exN+t#@&r6#@Th3nl z6=RM3Ztj<4?z#cPl*jTe%4q&(c{cyN?AWkSzA(2pAi5Iih~-V9#^5F_$IOgx=*Tjb z$>6+zv0M($>njmmX~z$Zm{EH$8sp>J&fvXsL!p=*38^Z}kLM+fr0gwxzRa^qnXhAp z!oEFZnaNZl;d;IqcH{AsWBX|}xk1}!`f{x0{AcR@tw2joe}8#mVmbTer-3iagP-d* z8s*tdo8*qtT)DhxH1qAE;;Hhz#eZO8-&wNN2)<;t85Oe4EH{F3TgRg8$GThPzK#~U zKQQkwrqhoH3KE_hNrnAn^xqR%lbpSKNq*bJ zlIuLQdae_c>vkWTyy;(6M)sVQD=KShD_7K+HLDuy>N2xd28<~yt7>v&`?M|he+S6a R{ojH6zXSj8zXNBo{sW)Yx99)> delta 2870 zcmeIxe@xVM9LMp`7f=yV0gX#kxKjy#aBw8bkIWwk1_FXVATvZxIpGlQ2)+o+%~Q$D z6tjJnOs!_R*)q%KxqeKutX%%5v!-+TtF4*KA1h~Bb8S7}er#?1-Jjle_xOJ9`}zI( zyf%GpZTid#T~3I4UGZ7LcNE|3NGbjMDeJFPDaCSJVkxx~dnn%>pwvL@idM>p8!!s5 z;|%KE!bHmM7^UK|5Qktj(p34-tyD<0Jp5xf_T$AqOu%>XEFQxr@YO*|jlqvF4liI5 z{)`^%7pv4ToQkt>E^cNbTTv#K$mrrolnFTTHsh=DJjlu&L(NRHaV+IIxC5JzIVg)! z2V*SCz)3h6r=YCRkFq0ca6fKD=BCnl>A_rdpdXWQJ;pP>+QWkj52G~r4lD2~7NCdi zkO{V94sOSBcnUcUbql4RyU1ddE!)7#*CVH(HVilKw_qpbL60dl8+$Os80s4yq|F7C z72HDU=pIT3Q5@tl9E@Gqf&m7&hU+O;JG)bE=ZpulOghGM5hNWp_DFx(W+xX;G3i)}a{0bONyjN<^Hg+*1C=94!6BH1 zvLiE*c&Ors<<%(ZSc|fCFXCD3LrF&y`_AIkYskG*M^G;5NtDZX73GNI^GrHYQPL4= z;6Y~gYrgS!lnLC&+Zg$jIf^?d6CFCuq{D?fC>Nom<048renJ`eH)JzZ+|#CAA1Kw*(7}sBOvW0N0oR}ldr{JH2qhgyu>c3nFcX}IY=&Bel8${S={SWU zJdJXxD`xV;%4;xM-YlJEDy+m#-d#h9M=ia}1oonA-4T=(oI>g7EJ`}A;4-|9U06(G zNyiCXPuWvs(s39$1ywf3q+=uQ3Q=)04-$`Y#U>tkC}*5nVvZsg*HNB{_wWRc!cXU# zbezLul-o*8Ix@>lItI@(>39Pr9bIgjq~qgCbBSvga2yhkaf?hmDyvL9hE|(+Bs^=< zaR4P9<%>-^3Z647pZ~nMluJ<3QHPR_6E*sk{^eGNKHq3~q$tc>v0*mokdBkmiFhb3C>u(zN*LLVx0=(5Dx zG}?6sY;Tvd+S}}}_uBqo;GcgQ{SA%Hd~JWAL7z!%)w3ME`Y*>(Gxh1u%#Oe8O6q0$$CJkNv)c95lppoXiVCY$Z?BlE>s*s~+Ugn| z+0fzF2VJvS(l4$*T=|)qot>Q--W9fgwU14;eHkl)Et#u=Ey4Pr+s_95kUCtCAKRzz zEciBDntI*RhpM_`>w|$NZ@0I_8wmJxR&`EfNnw$`nU-fc^`7eCQVM@wy~>Ji?RHLU zwCz^?$%Hb!Zt(&A;lyJ7=fs_n^GX)$xFzRwbNYOJJUyJ$6byLnMsJ|K*%zqywY6uq z+GdHF`ek=cGSh7E+l?K|AI$E*mGwn;PgHkzM@RTdO_~+aZtJa?J{B0P9c6iSyeB2T z>A`lTJGnGYe_JrX-g^2>lS>{ea!A%xcb3PUmF4v0=6fcGZ%%etQIj*WWAxVkrJUoV Qi}&c_Ni6>7i+3pEZ~icUWB>pF diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.po b/docs/locale/ko/LC_MESSAGES/dev/env.po index 6d0c7d38e..b18b99530 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/env.po +++ b/docs/locale/ko/LC_MESSAGES/dev/env.po @@ -1,37 +1,46 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" #: ../../dev/env.rst:2 msgid "Your Development Environment" msgstr "" -#: ../../dev/env.rst:6 +#: ../../dev/env.rst:8 msgid "Text Editors" msgstr "" -#: ../../dev/env.rst:8 +#: ../../dev/env.rst:10 msgid "" "Just about anything that can edit plain text will work for writing Python" -" code, however, using a more powerful editor may make your life a bit " +" code; however, using a more powerful editor may make your life a bit " "easier." msgstr "" -#: ../../dev/env.rst:13 +#: ../../dev/env.rst:15 msgid "Vim" msgstr "" -#: ../../dev/env.rst:15 +#: ../../dev/env.rst:17 msgid "" "Vim is a text editor which uses keyboard shortcuts for editing instead of" " menus or icons. There are a couple of plugins and settings for the Vim " @@ -41,7 +50,7 @@ msgid "" "called :file:`.vimrc` and add the following lines::" msgstr "" -#: ../../dev/env.rst:30 +#: ../../dev/env.rst:32 msgid "" "With these settings, newlines are inserted after 79 characters and " "indentation is set to 4 spaces per tab. If you also use Vim for other " @@ -49,23 +58,23 @@ msgid "" "indentation settings for Python source files." msgstr "" -#: ../../dev/env.rst:35 +#: ../../dev/env.rst:37 msgid "" "There is also a handy syntax plugin called syntax_ featuring some " "improvements over the syntax file included in Vim 6.1." msgstr "" -#: ../../dev/env.rst:38 +#: ../../dev/env.rst:40 msgid "" "These plugins supply you with a basic environment for developing in " "Python. To get the most out of Vim, you should continually check your " -"code for syntax errors and PEP8 compliance. Luckily PEP8_ and Pyflakes_ " -"will do this for you. If your Vim is compiled with :option:`+python` you " -"can also utilize some very handy plugins to do these checks from within " -"the editor." +"code for syntax errors and PEP8 compliance. Luckily pycodestyle_ and " +"Pyflakes_ will do this for you. If your Vim is compiled with ``+python`` " +"you can also utilize some very handy plugins to do these checks from " +"within the editor." msgstr "" -#: ../../dev/env.rst:44 +#: ../../dev/env.rst:46 msgid "" "For PEP8 checking and pyflakes, you can install vim-flake8_. Now you can " "map the function ``Flake8`` to any hotkey or action you want in Vim. The " @@ -75,7 +84,7 @@ msgid "" " line to your :file:`.vimrc`::" msgstr "" -#: ../../dev/env.rst:53 +#: ../../dev/env.rst:55 msgid "" "If you are already using syntastic_, you can set it to run Pyflakes on " "write and show errors and warnings in the quickfix window. An example " @@ -83,95 +92,95 @@ msgid "" "the statusbar would be::" msgstr "" -#: ../../dev/env.rst:66 +#: ../../dev/env.rst:68 msgid "Python-mode" msgstr "" -#: ../../dev/env.rst:68 +#: ../../dev/env.rst:70 msgid "" "Python-mode_ is a complex solution for working with Python code in Vim. " "It has:" msgstr "" -#: ../../dev/env.rst:71 +#: ../../dev/env.rst:73 msgid "" -"Asynchronous Python code checking (``pylint``, ``pyflakes``, ``pep8``, " -"``mccabe``) in any combination" +"Asynchronous Python code checking (``pylint``, ``pyflakes``, " +"``pycodestyle``, ``mccabe``) in any combination" msgstr "" -#: ../../dev/env.rst:72 +#: ../../dev/env.rst:74 msgid "Code refactoring and autocompletion with Rope" msgstr "" -#: ../../dev/env.rst:73 +#: ../../dev/env.rst:75 msgid "Fast Python folding" msgstr "" -#: ../../dev/env.rst:74 +#: ../../dev/env.rst:76 msgid "Virtualenv support" msgstr "" -#: ../../dev/env.rst:75 +#: ../../dev/env.rst:77 msgid "Search through Python documentation and run Python code" msgstr "" -#: ../../dev/env.rst:76 -msgid "Auto PEP8_ error fixes" +#: ../../dev/env.rst:78 +msgid "Auto pycodestyle_ error fixes" msgstr "" -#: ../../dev/env.rst:78 +#: ../../dev/env.rst:80 msgid "And more." msgstr "" -#: ../../dev/env.rst:81 +#: ../../dev/env.rst:83 msgid "SuperTab" msgstr "" -#: ../../dev/env.rst:83 +#: ../../dev/env.rst:85 msgid "" "SuperTab_ is a small Vim plugin that makes code completion more " "convenient by using ```` key or any other customized keys." msgstr "" -#: ../../dev/env.rst:96 +#: ../../dev/env.rst:98 msgid "Emacs" msgstr "" -#: ../../dev/env.rst:98 +#: ../../dev/env.rst:100 msgid "" -"Emacs is another powerful text editor. It is fully programmable (lisp), " +"Emacs is another powerful text editor. It is fully programmable (Lisp), " "but it can be some work to wire up correctly. A good start if you're " "already an Emacs user is `Python Programming in Emacs`_ at EmacsWiki." msgstr "" -#: ../../dev/env.rst:102 +#: ../../dev/env.rst:104 msgid "Emacs itself comes with a Python mode." msgstr "" -#: ../../dev/env.rst:107 +#: ../../dev/env.rst:109 msgid "TextMate" msgstr "" -#: ../../dev/env.rst:109 +#: ../../dev/env.rst:111 msgid "" "`TextMate `_ brings Apple's approach to operating" -" systems into the world of text editors. By bridging UNIX underpinnings " +" systems into the world of text editors. By bridging Unix underpinnings " "and GUI, TextMate cherry-picks the best of both worlds to the benefit of " "expert scripters and novice users alike." msgstr "" -#: ../../dev/env.rst:115 +#: ../../dev/env.rst:117 msgid "Sublime Text" msgstr "" -#: ../../dev/env.rst:117 +#: ../../dev/env.rst:119 msgid "" "`Sublime Text `_ is a sophisticated text " -"editor for code, markup and prose. You'll love the slick user interface, " -"extraordinary features and amazing performance." +"editor for code, markup, and prose. You'll love the slick user interface," +" extraordinary features, and amazing performance." msgstr "" -#: ../../dev/env.rst:121 +#: ../../dev/env.rst:123 msgid "" "Sublime Text has excellent support for editing Python code and uses " "Python for its plugin API. It also has a diverse variety of plugins, " @@ -179,177 +188,198 @@ msgid "" "for in-editor PEP8 checking and code \"linting\"." msgstr "" -#: ../../dev/env.rst:127 +#: ../../dev/env.rst:129 msgid "Atom" msgstr "" -#: ../../dev/env.rst:129 +#: ../../dev/env.rst:131 msgid "" "`Atom `_ is a hackable text editor for the 21st " "century, built on atom-shell, and based on everything we love about our " "favorite editors." msgstr "" -#: ../../dev/env.rst:133 +#: ../../dev/env.rst:135 msgid "" "Atom is web native (HTML, CSS, JS), focusing on modular design and easy " -"plugin development. It comes with native package control and plethora of " -"packages. Recommended for Python development is `Linter " -"`_ combined with `linter-flake8 " +"plugin development. It comes with native package control and a plethora " +"of packages. Recommended for Python development is `Linter " +"`_ combined with `linter-flake8 " "`_." msgstr "" -#: ../../dev/env.rst:141 -msgid "IDEs" +#: ../../dev/env.rst:142 +msgid "Python (on Visual Studio Code)" msgstr "" #: ../../dev/env.rst:144 -msgid "PyCharm / IntelliJ IDEA" +msgid "" +"`Python for Visual Studio " +"`_ " +"is an extension for the `Visual Studio Code " +"`_. This is a free, lightweight, open " +"source code editor, with support for Mac, Windows, and Linux. Built using" +" open source technologies such as Node.js and Python, with compelling " +"features such as Intellisense (autocompletion), local and remote " +"debugging, linting, and the like." msgstr "" -#: ../../dev/env.rst:146 -msgid "" -"`PyCharm `_ is developed by JetBrains," -" also known for IntelliJ IDEA. Both share the same code base and most of " -"PyCharm's features can be brought to IntelliJ with the free `Python Plug-" -"In `_. There " -"are two versions of PyCharm: Professional Edition (Free 30-day trial) and" -" Community Edition(Apache 2.0 License) with fewer features." +#: ../../dev/env.rst:148 +msgid "MIT licensed." +msgstr "" + +#: ../../dev/env.rst:151 +msgid "IDEs" msgstr "" #: ../../dev/env.rst:154 -msgid "Python (on Visual Studio Code)" +msgid "PyCharm / IntelliJ IDEA" msgstr "" #: ../../dev/env.rst:156 msgid "" -"`Python for Visual Studio " -"`_" -" is an extension for the `Visual Studio Code IDE " -"`_. This is a free, light weight, open " -"source IDE, with support for Mac, Windows, and Linux. Built using open " -"source technologies such as Node.js and Python, with compelling features " -"such as Intellisense (autocompletion), local and remote debugging, " -"linting, and the like." -msgstr "" - -#: ../../dev/env.rst:160 -msgid "MIT licensed." +"`PyCharm `_ is developed by JetBrains," +" also known for IntelliJ IDEA. Both share the same code base and most of " +"PyCharm's features can be brought to IntelliJ with the free `Python Plug-" +"In `_. There " +"are two versions of PyCharm: Professional Edition (Free 30-day trial) and" +" Community Edition (Apache 2.0 License) with fewer features." msgstr "" -#: ../../dev/env.rst:163 +#: ../../dev/env.rst:165 msgid "Enthought Canopy" msgstr "" -#: ../../dev/env.rst:164 +#: ../../dev/env.rst:166 msgid "" -"`Enthought Canopy `_ is a " +"`Enthought Canopy `_ is a " "Python IDE which is focused towards Scientists and Engineers as it " "provides pre installed libraries for data analysis." msgstr "" -#: ../../dev/env.rst:169 +#: ../../dev/env.rst:171 msgid "Eclipse" msgstr "" -#: ../../dev/env.rst:171 +#: ../../dev/env.rst:173 msgid "" "The most popular Eclipse plugin for Python development is Aptana's `PyDev" -" `_." +" `_." msgstr "" -#: ../../dev/env.rst:176 +#: ../../dev/env.rst:178 msgid "Komodo IDE" msgstr "" -#: ../../dev/env.rst:178 +#: ../../dev/env.rst:180 msgid "" -"`Komodo IDE `_ is developed by " -"ActiveState and is a commercial IDE for Windows, Mac, and Linux. " -"`KomodoEdit `_ is the open source " -"alternative." +"`Komodo IDE `_ is " +"developed by ActiveState and is a commercial IDE for Windows, Mac, and " +"Linux. `KomodoEdit `_ is the open " +"source alternative." msgstr "" -#: ../../dev/env.rst:185 +#: ../../dev/env.rst:187 msgid "Spyder" msgstr "" -#: ../../dev/env.rst:187 +#: ../../dev/env.rst:189 msgid "" "`Spyder `_ is an IDE specifically " -"geared toward working with scientific Python libraries (namely `Scipy " -"`_). It includes integration with pyflakes_, " -"`pylint `_ and `rope `_). It includes integration with pyflakes_, " +"`pylint `_ and `rope `_." msgstr "" -#: ../../dev/env.rst:193 +#: ../../dev/env.rst:195 msgid "" -"Spyder is open-source (free), offers code completion, syntax " +"Spyder is open source (free), offers code completion, syntax " "highlighting, a class and function browser, and object inspection." msgstr "" -#: ../../dev/env.rst:198 +#: ../../dev/env.rst:200 msgid "WingIDE" msgstr "" -#: ../../dev/env.rst:200 +#: ../../dev/env.rst:202 msgid "" "`WingIDE `_ is a Python specific IDE. It runs on " -"Linux, Windows and Mac (as an X11 application, which frustrates some Mac " -"users)." +"Linux, Windows, and Mac (as an X11 application, which frustrates some Mac" +" users)." msgstr "" -#: ../../dev/env.rst:203 +#: ../../dev/env.rst:205 msgid "" "WingIDE offers code completion, syntax highlighting, source browser, " "graphical debugger and support for version control systems." msgstr "" -#: ../../dev/env.rst:208 +#: ../../dev/env.rst:210 msgid "NINJA-IDE" msgstr "" -#: ../../dev/env.rst:210 +#: ../../dev/env.rst:212 msgid "" "`NINJA-IDE `_ (from the recursive acronym: " "\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially" -" designed to build Python applications, and runs on Linux/X11, Mac OS X " +" designed to build Python applications, and runs on Linux/X11, Mac OS X, " "and Windows desktop operating systems. Installers for these platforms can" " be downloaded from the website." msgstr "" -#: ../../dev/env.rst:216 +#: ../../dev/env.rst:218 msgid "" -"NINJA-IDE is open-source software (GPLv3 licence) and is developed in " +"NINJA-IDE is open source software (GPLv3 licence) and is developed in " "Python and Qt. The source files can be downloaded from `GitHub " "`_." msgstr "" -#: ../../dev/env.rst:222 +#: ../../dev/env.rst:224 msgid "Eric (The Eric Python IDE)" msgstr "" -#: ../../dev/env.rst:224 +#: ../../dev/env.rst:226 msgid "" "`Eric `_ is a full featured Python " -"IDE offering sourcecode autocompletion, syntax highlighting, support for " -"version control systems, python 3 support, integrated web browser, python" -" shell, integrated debugger and a flexible plug-in system. Written in " -"python, it is based on the Qt gui toolkit, integrating the Scintilla " -"editor control. Eric is an open-source software project (GPLv3 licence) " +"IDE offering source code autocompletion, syntax highlighting, support for" +" version control systems, Python 3 support, integrated web browser, " +"python shell, integrated debugger, and a flexible plug-in system. Written" +" in Python, it is based on the Qt GUI toolkit, integrating the Scintilla " +"editor control. Eric is an open source software project (GPLv3 licence) " "with more than ten years of active development." msgstr "" -#: ../../dev/env.rst:234 +#: ../../dev/env.rst:235 +msgid "Mu" +msgstr "" + +#: ../../dev/env.rst:237 +msgid "" +"`Mu `_ is a minimalist Python IDE which can run " +"Python 3 code locally and can also deploy code to the BBC micro:bit and " +"to Adafruit boards running CircuitPython." +msgstr "" + +#: ../../dev/env.rst:241 +msgid "" +"Intended for beginners, mu includes a Python 3 interpreter, and is easy " +"to install on Windows, OS/X and Linux. It runs well on the Raspberry Pi." +msgstr "" + +#: ../../dev/env.rst:244 +msgid "There's an active support community on gitter." +msgstr "" + +#: ../../dev/env.rst:248 msgid "Interpreter Tools" msgstr "" -#: ../../dev/env.rst:238 +#: ../../dev/env.rst:252 msgid "Virtual Environments" msgstr "" -#: ../../dev/env.rst:240 +#: ../../dev/env.rst:254 msgid "" "Virtual Environments provide a powerful way to isolate project package " "dependencies. This means that you can use packages particular to a Python" @@ -357,30 +387,30 @@ msgid "" "version conflicts." msgstr "" -#: ../../dev/env.rst:242 +#: ../../dev/env.rst:256 msgid "" "To start using and see more information: `Virtual Environments " -"`_ docs." msgstr "" -#: ../../dev/env.rst:247 +#: ../../dev/env.rst:261 msgid "pyenv" msgstr "" -#: ../../dev/env.rst:249 +#: ../../dev/env.rst:263 msgid "" -"`pyenv `_ is a tool to allow multiple " +"`pyenv `_ is a tool to allow multiple " "versions of the Python interpreter to be installed at the same time. " "This solves the problem of having different projects requiring different " "versions of Python. For example, it becomes very easy to install Python " -"2.7 for compatibility in one project, whilst still using Python 3.4 as " -"the default interpreter. pyenv isn't just limited to the CPython versions" -" - it will also install PyPy, anaconda, miniconda, stackless, jython, and" -" ironpython interpreters." +"2.7 for compatibility in one project, while still using Python 3.4 as the" +" default interpreter. pyenv isn't just limited to the CPython versions – " +"it will also install PyPy, Anaconda, miniconda, stackless, Jython, and " +"IronPython interpreters." msgstr "" -#: ../../dev/env.rst:257 +#: ../../dev/env.rst:271 msgid "" "pyenv works by filling a ``shims`` directory with fake versions of the " "Python interpreter (plus other tools like ``pip`` and ``2to3``). When " @@ -391,205 +421,249 @@ msgid "" "files, and the global default." msgstr "" -#: ../../dev/env.rst:264 +#: ../../dev/env.rst:278 msgid "" "pyenv isn't a tool for managing virtual environments, but there is the " -"plugin `pyenv-virtualenv `_ " +"plugin `pyenv-virtualenv `_ " "which automates the creation of different environments, and also makes it" " possible to use the existing pyenv tools to switch to different " "environments based on environment variables or ``.python-version`` files." msgstr "" -#: ../../dev/env.rst:271 +#: ../../dev/env.rst:285 msgid "Other Tools" msgstr "" -#: ../../dev/env.rst:274 +#: ../../dev/env.rst:288 msgid "IDLE" msgstr "" -#: ../../dev/env.rst:276 +#: ../../dev/env.rst:290 msgid "" ":ref:`IDLE ` is an integrated development environment that " -"is part of Python standard library. It is completely written in Python " -"and uses the Tkinter GUI toolkit. Though IDLE is not suited for full-" -"blown development using Python, it is quite helpful to try out small " -"Python snippets and experiment with different features in Python." +"is part of the Python standard distribution. It is completely written in " +"Python and uses the Tkinter GUI toolkit. Though IDLE is not suited for " +"full-blown development using Python, it is quite helpful to try out small" +" Python snippets and experiment with different features in Python." msgstr "" -#: ../../dev/env.rst:282 +#: ../../dev/env.rst:296 msgid "It provides the following features:" msgstr "" -#: ../../dev/env.rst:284 +#: ../../dev/env.rst:298 msgid "Python Shell Window (interpreter)" msgstr "" -#: ../../dev/env.rst:285 +#: ../../dev/env.rst:299 msgid "Multi window text editor that colorizes Python code" msgstr "" -#: ../../dev/env.rst:286 +#: ../../dev/env.rst:300 msgid "Minimal debugging facility" msgstr "" -#: ../../dev/env.rst:290 +#: ../../dev/env.rst:304 msgid "IPython" msgstr "" -#: ../../dev/env.rst:292 +#: ../../dev/env.rst:306 msgid "" "`IPython `_ provides a rich toolkit to help you make" " the most out of using Python interactively. Its main components are:" msgstr "" -#: ../../dev/env.rst:295 -msgid "Powerful Python shells (terminal- and Qt-based)." +#: ../../dev/env.rst:309 +msgid "Powerful Python shells (terminal- and Qt-based)" msgstr "" -#: ../../dev/env.rst:296 +#: ../../dev/env.rst:310 msgid "" "A web-based notebook with the same core features but support for rich " -"media, text, code, mathematical expressions and inline plots." +"media, text, code, mathematical expressions and inline plots" msgstr "" -#: ../../dev/env.rst:298 -msgid "Support for interactive data visualization and use of GUI toolkits." +#: ../../dev/env.rst:312 +msgid "Support for interactive data visualization and use of GUI toolkits" msgstr "" -#: ../../dev/env.rst:299 -msgid "Flexible, embeddable interpreters to load into your own projects." +#: ../../dev/env.rst:313 +msgid "Flexible, embeddable interpreters to load into your own projects" msgstr "" -#: ../../dev/env.rst:300 -msgid "Tools for high level and interactive parallel computing." +#: ../../dev/env.rst:314 +msgid "Tools for high level and interactive parallel computing" msgstr "" -#: ../../dev/env.rst:306 +#: ../../dev/env.rst:320 msgid "" -"To download and install IPython with all it's optional dependencies for " -"the notebook, qtconsole, tests, and other functionalities" +"To download and install IPython with all its optional dependencies for " +"the notebook, qtconsole, tests, and other functionalities:" msgstr "" -#: ../../dev/env.rst:313 +#: ../../dev/env.rst:327 msgid "BPython" msgstr "" -#: ../../dev/env.rst:315 +#: ../../dev/env.rst:329 msgid "" -"`bpython `_ is an alternative interface " -"to the Python interpreter for Unix-like operating systems. It has the " +"`bpython `_ is an alternative interface" +" to the Python interpreter for Unix-like operating systems. It has the " "following features:" msgstr "" -#: ../../dev/env.rst:319 -msgid "In-line syntax highlighting." +#: ../../dev/env.rst:333 +msgid "In-line syntax highlighting" msgstr "" -#: ../../dev/env.rst:320 -msgid "Readline-like autocomplete with suggestions displayed as you type." +#: ../../dev/env.rst:334 +msgid "Readline-like autocomplete with suggestions displayed as you type" msgstr "" -#: ../../dev/env.rst:321 -msgid "Expected parameter list for any Python function." +#: ../../dev/env.rst:335 +msgid "Expected parameter list for any Python function" msgstr "" -#: ../../dev/env.rst:322 +#: ../../dev/env.rst:336 msgid "" "\"Rewind\" function to pop the last line of code from memory and re-" -"evaluate." +"evaluate" msgstr "" -#: ../../dev/env.rst:323 -msgid "Send entered code off to a pastebin." +#: ../../dev/env.rst:337 +msgid "Send entered code off to a pastebin" msgstr "" -#: ../../dev/env.rst:324 -msgid "Save entered code to a file." +#: ../../dev/env.rst:338 +msgid "Save entered code to a file" msgstr "" -#: ../../dev/env.rst:325 -msgid "Auto-indentation." +#: ../../dev/env.rst:339 +msgid "Auto-indentation" msgstr "" -#: ../../dev/env.rst:326 -msgid "Python 3 support." +#: ../../dev/env.rst:340 +msgid "Python 3 support" msgstr "" -#: ../../dev/env.rst:333 +#: ../../dev/env.rst:347 msgid "ptpython" msgstr "" -#: ../../dev/env.rst:335 +#: ../../dev/env.rst:349 msgid "" -"`ptpython `_ is a REPL " -"build on top of the `prompt_toolkit `_ library. It is considered to be an alternative " -"to BPython_. Features include:" +"`ptpython `_ is a REPL build " +"on top of the `prompt_toolkit `_ library. It is considered to be an alternative to " +"BPython_. Features include:" msgstr "" -#: ../../dev/env.rst:339 +#: ../../dev/env.rst:353 msgid "Syntax highlighting" msgstr "" -#: ../../dev/env.rst:340 +#: ../../dev/env.rst:354 msgid "Autocompletion" msgstr "" -#: ../../dev/env.rst:341 +#: ../../dev/env.rst:355 msgid "Multiline editing" msgstr "" -#: ../../dev/env.rst:342 -msgid "Emacs and VIM Mode" +#: ../../dev/env.rst:356 +msgid "Emacs and Vim Modes" msgstr "" -#: ../../dev/env.rst:343 +#: ../../dev/env.rst:357 msgid "Embedding REPL inside of your code" msgstr "" -#: ../../dev/env.rst:344 -msgid "Syntax Validation" +#: ../../dev/env.rst:358 +msgid "Syntax validation" msgstr "" -#: ../../dev/env.rst:345 +#: ../../dev/env.rst:359 msgid "Tab pages" msgstr "" -#: ../../dev/env.rst:346 +#: ../../dev/env.rst:360 msgid "" "Support for integrating with IPython_'s shell, by installing IPython " -"``pip install ipython`` and running ``ptipython``." +"(``pip install ipython``) and running ``ptipython``." msgstr "" #~ msgid "" -#~ "For PEP8 checking, install the vim-" -#~ "pep8_ plugin, and for pyflakes you " -#~ "can install vim-pyflakes_. Now you " -#~ "can map the functions ``Pep8()`` or " -#~ "``Pyflakes()`` to any hotkey or action" -#~ " you want in Vim. Both plugins " -#~ "will display errors at the bottom " -#~ "of the screen, and provide an easy" -#~ " way to jump to the corresponding " -#~ "line. It's very handy to call " -#~ "these functions whenever you save a " -#~ "file. In order to do this, add " -#~ "the following lines to your " -#~ ":file:`.vimrc`::" #~ msgstr "" #~ msgid "" -#~ "Python ships with an alternate version:" -#~ " `python-mode.el `_" +#~ "Just about anything that can edit " +#~ "plain text will work for writing " +#~ "Python code, however, using a more " +#~ "powerful editor may make your life " +#~ "a bit easier." +#~ msgstr "" + +#~ msgid "" +#~ "These plugins supply you with a " +#~ "basic environment for developing in " +#~ "Python. To get the most out of " +#~ "Vim, you should continually check your" +#~ " code for syntax errors and PEP8 " +#~ "compliance. Luckily PEP8_ and Pyflakes_ " +#~ "will do this for you. If your " +#~ "Vim is compiled with :option:`+python` " +#~ "you can also utilize some very " +#~ "handy plugins to do these checks " +#~ "from within the editor." +#~ msgstr "" + +#~ msgid "" +#~ "Asynchronous Python code checking (``pylint``," +#~ " ``pyflakes``, ``pep8``, ``mccabe``) in any" +#~ " combination" +#~ msgstr "" + +#~ msgid "Auto PEP8_ error fixes" +#~ msgstr "" + +#~ msgid "" +#~ "Emacs is another powerful text editor." +#~ " It is fully programmable (lisp), but" +#~ " it can be some work to wire" +#~ " up correctly. A good start if " +#~ "you're already an Emacs user is " +#~ "`Python Programming in Emacs`_ at " +#~ "EmacsWiki." +#~ msgstr "" + +#~ msgid "" +#~ "`TextMate `_ brings Apple's" +#~ " approach to operating systems into " +#~ "the world of text editors. By " +#~ "bridging UNIX underpinnings and GUI, " +#~ "TextMate cherry-picks the best of " +#~ "both worlds to the benefit of " +#~ "expert scripters and novice users alike." +#~ msgstr "" + +#~ msgid "" +#~ "`Sublime Text `_ is " +#~ "a sophisticated text editor for code," +#~ " markup and prose. You'll love the" +#~ " slick user interface, extraordinary " +#~ "features and amazing performance." #~ msgstr "" #~ msgid "" -#~ "Fabián Ezequiel Gallina's `python.el " -#~ "`_ provides nice" -#~ " functionality and behavior out of " -#~ "the box" +#~ "Atom is web native (HTML, CSS, " +#~ "JS), focusing on modular design and " +#~ "easy plugin development. It comes with" +#~ " native package control and plethora " +#~ "of packages. Recommended for Python " +#~ "development is `Linter " +#~ "`_ combined with " +#~ "`linter-flake8 `_." #~ msgstr "" #~ msgid "" @@ -599,21 +673,95 @@ msgstr "" #~ " code base and most of PyCharm's " #~ "features can be brought to IntelliJ " #~ "with the free `Python Plug-In " -#~ "`_. There are" -#~ " two versions of PyCharm: Professional " -#~ "Edition (Free 30-day trial) and " -#~ "Community Edition(Apache 2.0 License) with " -#~ "less features." +#~ "`_. " +#~ "There are two versions of PyCharm: " +#~ "Professional Edition (Free 30-day trial) " +#~ "and Community Edition(Apache 2.0 License) " +#~ "with fewer features." +#~ msgstr "" + +#~ msgid "" +#~ "`Python for Visual Studio " +#~ "`_" +#~ " is an extension for the `Visual " +#~ "Studio Code IDE `_." +#~ " This is a free, light weight, " +#~ "open source IDE, with support for " +#~ "Mac, Windows, and Linux. Built using " +#~ "open source technologies such as Node.js" +#~ " and Python, with compelling features " +#~ "such as Intellisense (autocompletion), local" +#~ " and remote debugging, linting, and " +#~ "the like." +#~ msgstr "" + +#~ msgid "" +#~ "`Enthought Canopy " +#~ "`_ is a " +#~ "Python IDE which is focused towards " +#~ "Scientists and Engineers as it provides" +#~ " pre installed libraries for data " +#~ "analysis." +#~ msgstr "" + +#~ msgid "" +#~ "The most popular Eclipse plugin for " +#~ "Python development is Aptana's `PyDev " +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "`Komodo IDE `_ is developed by ActiveState and" +#~ " is a commercial IDE for Windows, " +#~ "Mac, and Linux. `KomodoEdit " +#~ "`_ is the open" +#~ " source alternative." #~ msgstr "" #~ msgid "" -#~ "`Spyder `_ is " -#~ "an IDE specifically geared toward " +#~ "`Spyder `_ is" +#~ " an IDE specifically geared toward " #~ "working with scientific Python libraries " #~ "(namely `Scipy `_). It " #~ "includes integration with pyflakes_, `pylint" #~ " `_ and `rope " -#~ "`_." +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "Spyder is open-source (free), offers " +#~ "code completion, syntax highlighting, a " +#~ "class and function browser, and object" +#~ " inspection." +#~ msgstr "" + +#~ msgid "" +#~ "`WingIDE `_ is a Python" +#~ " specific IDE. It runs on Linux, " +#~ "Windows and Mac (as an X11 " +#~ "application, which frustrates some Mac " +#~ "users)." +#~ msgstr "" + +#~ msgid "" +#~ "`NINJA-IDE `_ (from" +#~ " the recursive acronym: \"Ninja-IDE " +#~ "Is Not Just Another IDE\") is a" +#~ " cross-platform IDE, specially designed " +#~ "to build Python applications, and runs" +#~ " on Linux/X11, Mac OS X and " +#~ "Windows desktop operating systems. Installers" +#~ " for these platforms can be " +#~ "downloaded from the website." +#~ msgstr "" + +#~ msgid "" +#~ "NINJA-IDE is open-source software " +#~ "(GPLv3 licence) and is developed in " +#~ "Python and Qt. The source files " +#~ "can be downloaded from `GitHub " +#~ "`_." #~ msgstr "" #~ msgid "" @@ -628,26 +776,139 @@ msgstr "" #~ "based on the Qt gui toolkit, " #~ "integrating the Scintilla editor control. " #~ "Eric is an open-source software " -#~ "(GPLv3 licence) with more than ten " -#~ "years of active development." +#~ "project (GPLv3 licence) with more than" +#~ " ten years of active development." +#~ msgstr "" + +#~ msgid "" +#~ "To start using and see more " +#~ "information: `Virtual Environments " +#~ "`_ docs." +#~ msgstr "" + +#~ msgid "" +#~ "`pyenv `_ is a " +#~ "tool to allow multiple versions of " +#~ "the Python interpreter to be installed" +#~ " at the same time. This solves " +#~ "the problem of having different projects" +#~ " requiring different versions of Python." +#~ " For example, it becomes very easy" +#~ " to install Python 2.7 for " +#~ "compatibility in one project, whilst " +#~ "still using Python 3.4 as the " +#~ "default interpreter. pyenv isn't just " +#~ "limited to the CPython versions - " +#~ "it will also install PyPy, anaconda, " +#~ "miniconda, stackless, jython, and ironpython" +#~ " interpreters." +#~ msgstr "" + +#~ msgid "" +#~ "pyenv isn't a tool for managing " +#~ "virtual environments, but there is the" +#~ " plugin `pyenv-virtualenv " +#~ "`_ which " +#~ "automates the creation of different " +#~ "environments, and also makes it possible" +#~ " to use the existing pyenv tools " +#~ "to switch to different environments " +#~ "based on environment variables or " +#~ "``.python-version`` files." +#~ msgstr "" + +#~ msgid "" +#~ ":ref:`IDLE ` is an integrated " +#~ "development environment that is part of" +#~ " Python standard library. It is " +#~ "completely written in Python and uses" +#~ " the Tkinter GUI toolkit. Though IDLE" +#~ " is not suited for full-blown " +#~ "development using Python, it is quite" +#~ " helpful to try out small Python " +#~ "snippets and experiment with different " +#~ "features in Python." +#~ msgstr "" + +#~ msgid "Powerful Python shells (terminal- and Qt-based)." +#~ msgstr "" + +#~ msgid "" +#~ "A web-based notebook with the same" +#~ " core features but support for rich" +#~ " media, text, code, mathematical " +#~ "expressions and inline plots." +#~ msgstr "" + +#~ msgid "Support for interactive data visualization and use of GUI toolkits." +#~ msgstr "" + +#~ msgid "Flexible, embeddable interpreters to load into your own projects." +#~ msgstr "" + +#~ msgid "Tools for high level and interactive parallel computing." +#~ msgstr "" + +#~ msgid "" +#~ "To download and install IPython with " +#~ "all it's optional dependencies for the" +#~ " notebook, qtconsole, tests, and other " +#~ "functionalities" #~ msgstr "" #~ msgid "" -#~ "A Virtual Environment is a tool to" -#~ " keep the dependencies required by " -#~ "different projects in separate places, " -#~ "by creating virtual Python environments " -#~ "for them. It solves the \"Project " -#~ "X depends on version 1.x but, " -#~ "Project Y needs 4.x\" dilemma, and " -#~ "keeps your global site-packages " -#~ "directory clean and manageable." +#~ "`bpython `_ is " +#~ "an alternative interface to the Python" +#~ " interpreter for Unix-like operating " +#~ "systems. It has the following features:" +#~ msgstr "" + +#~ msgid "In-line syntax highlighting." +#~ msgstr "" + +#~ msgid "Readline-like autocomplete with suggestions displayed as you type." +#~ msgstr "" + +#~ msgid "Expected parameter list for any Python function." +#~ msgstr "" + +#~ msgid "" +#~ "\"Rewind\" function to pop the last " +#~ "line of code from memory and " +#~ "re-evaluate." +#~ msgstr "" + +#~ msgid "Send entered code off to a pastebin." +#~ msgstr "" + +#~ msgid "Save entered code to a file." +#~ msgstr "" + +#~ msgid "Auto-indentation." +#~ msgstr "" + +#~ msgid "Python 3 support." +#~ msgstr "" + +#~ msgid "" +#~ "`ptpython `_ " +#~ "is a REPL build on top of " +#~ "the `prompt_toolkit `_ library. It is" +#~ " considered to be an alternative to" +#~ " BPython_. Features include:" +#~ msgstr "" + +#~ msgid "Emacs and VIM Mode" +#~ msgstr "" + +#~ msgid "Syntax Validation" #~ msgstr "" #~ msgid "" -#~ "For example, you can work on a " -#~ "project which requires Django 1.3 while" -#~ " also maintaining a project which " -#~ "requires Django 1.0." +#~ "Support for integrating with IPython_'s " +#~ "shell, by installing IPython ``pip " +#~ "install ipython`` and running ``ptipython``." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo b/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo index ace85639dd8b0005c97bde31e17c882751b5afb4..3c1ac37484518cfa2256579cf2521db371f82670 100644 GIT binary patch delta 951 zcmd^*L2DC16vyATY1CNTrbgSERHupv+U#yyA`(gu9x95UNJZ!+*(Q@_C7oS%C(&qW zt|E$uMK8T5;-v*a)=Mu!LGdPv=IR&lP(66*LHrM+;CFD~@!L0V-^}mLkMryEov*`* z$AmS4$RWO{kSeIP-!0q%mwz!!Z)r%`_g{zCpei9T>=578qq zyO*d9Zi4IJ$$dmIQHQqiQ9@%gMN~tfyPs$Vob4xC1AVXz?tm@u>H(sA`2RilTIGX8 zZ@|7GqEFyk@Gk04(pr4@pcbFYXz}Qf7VjKZ;vHCHbY*@CROZc5Z7#>O`BPAt+eftd z1_*PS&uZ~qP>C;&Yw>MRiT?!4pggL@yPy)kjOS9~T?TOsLH8%L`NiY$9b+wN`0=aJ z3q8?hA`_J-($US-%T6erK)Pa?-Ew7}wRjM^o?vH9dy@IC&-}n^xm6xAN3gOd@=NV} zmDikRL$ZofsjJ2nUa3364OiG~T}nSJS{6D@zwJAw>see_xMQiot$^2fz(s|tddU^o zZWJ5Vi9ZL;l}k+49m%R555+0T1m{)U+h!F{)ZFD};7GWcbVac1!o3}tx#zu#x&F_Y zW~fxWMwJJDhX|t&*&E48COyxLpN)U)jkboa4NOnv?V0>kf!XJZg+e@*9x)Qrrk#pc Kjn)7Cfqnx?7W&-) delta 538 zcmbWzKP&@b9LDkIv|4SYs#R5`JzYqfHf@TCje!{aCo$GQQbC7GM5?;7)Nt`9=^$ZZ zkjNn{1~y?3iIHv+78XN?#`ES~%r5!e=ia<`m+xJ1;JZKn>NM_vMpw?O-Nw?@G@B5(VTxaaS4eh7{p6ENxa{t;PgS(tEc-AF@FB@d= zp<4zI^NT}D9$4aqDBkzT;=LwWd`Cs`q*oR{QWhiCEQ5nS8Qjj_CV~r81mDsm?Q506 zhg1ZI`I|&=iHhI@l_%Zl%9@lhz2F_JvaGD8)y35ETt+Jg+qAOpRQvKzTcQ|UR;NdX yX0+MXBZJWFf7ZtX_XcgZe!?E_j>Kb;cwCM3^u`kUPrXMmB%+Kenneth Reitz -# Project. CC -# BY-NC-SA 3.0 +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 # This file is distributed under the same license as the pythonguide # package. -# FIRST AUTHOR , 2016. +# FIRST AUTHOR , 2021. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" #: ../../dev/pip-virtualenv.rst:4 -msgid "Further Configuration of Pip and Virtualenv" +msgid "Further Configuration of pip and Virtualenv" msgstr "" -#: ../../dev/pip-virtualenv.rst:7 +#: ../../dev/pip-virtualenv.rst:9 msgid "Requiring an active virtual environment for ``pip``" msgstr "" -#: ../../dev/pip-virtualenv.rst:9 +#: ../../dev/pip-virtualenv.rst:11 msgid "" "By now it should be clear that using virtual environments is a great way " "to keep your development environment clean and keeping different " "projects' requirements separate." msgstr "" -#: ../../dev/pip-virtualenv.rst:13 +#: ../../dev/pip-virtualenv.rst:15 msgid "" "When you start working on many different projects, it can be hard to " "remember to activate the related virtual environment when you come back " @@ -46,14 +47,14 @@ msgid "" "result in a messy global package list." msgstr "" -#: ../../dev/pip-virtualenv.rst:20 +#: ../../dev/pip-virtualenv.rst:22 msgid "" "In order to make sure that you install packages to your active virtual " "environment when you use ``pip install``, consider adding the following " -"two lines to your :file:`~/.bashrc` file:" +"line to your :file:`~/.bashrc` file:" msgstr "" -#: ../../dev/pip-virtualenv.rst:28 +#: ../../dev/pip-virtualenv.rst:30 msgid "" "After saving this change and sourcing the :file:`~/.bashrc` file with " "``source ~/.bashrc``, pip will no longer let you install packages if you " @@ -62,46 +63,46 @@ msgid "" "activated virtual environment is needed to install packages." msgstr "" -#: ../../dev/pip-virtualenv.rst:39 +#: ../../dev/pip-virtualenv.rst:41 msgid "" "You can also do this configuration by editing your :file:`pip.conf` or " ":file:`pip.ini` file. :file:`pip.conf` is used by Unix and Mac OS X " "operating systems and it can be found at:" msgstr "" -#: ../../dev/pip-virtualenv.rst:47 +#: ../../dev/pip-virtualenv.rst:49 msgid "" "Similarly, the :file:`pip.ini` file is used by Windows operating systems " "and it can be found at:" msgstr "" -#: ../../dev/pip-virtualenv.rst:54 +#: ../../dev/pip-virtualenv.rst:56 msgid "" "If you don't have a :file:`pip.conf` or :file:`pip.ini` file at these " "locations, you can create a new file with the correct name for your " "operating system." msgstr "" -#: ../../dev/pip-virtualenv.rst:57 +#: ../../dev/pip-virtualenv.rst:59 msgid "" "If you already have a configuration file, just add the following line " "under the ``[global]`` settings to require an active virtual environment:" msgstr "" -#: ../../dev/pip-virtualenv.rst:64 +#: ../../dev/pip-virtualenv.rst:66 msgid "" "If you did not have a configuration file, you will need to create a new " "one and add the following lines to this new file:" msgstr "" -#: ../../dev/pip-virtualenv.rst:73 +#: ../../dev/pip-virtualenv.rst:75 msgid "" "You will of course need to install some packages globally (usually ones " "that you use across different projects consistently) and this can be " "accomplished by adding the following to your :file:`~/.bashrc` file:" msgstr "" -#: ../../dev/pip-virtualenv.rst:83 +#: ../../dev/pip-virtualenv.rst:85 msgid "" "After saving the changes and sourcing your :file:`~/.bashrc` file you can" " now install packages globally by running ``gpip install``. You can " @@ -110,11 +111,11 @@ msgid "" "globally with pip." msgstr "" -#: ../../dev/pip-virtualenv.rst:89 +#: ../../dev/pip-virtualenv.rst:91 msgid "Caching packages for future use" msgstr "" -#: ../../dev/pip-virtualenv.rst:91 +#: ../../dev/pip-virtualenv.rst:93 msgid "" "Every developer has preferred libraries and when you are working on a lot" " of different projects, you are bound to have some overlap between the " @@ -122,28 +123,36 @@ msgid "" "library in a lot of different projects." msgstr "" -#: ../../dev/pip-virtualenv.rst:96 +#: ../../dev/pip-virtualenv.rst:98 msgid "" "It is surely unnecessary to re-download the same packages/libraries each " "time you start working on a new project (and in a new virtual environment" -" as a result). Fortunately, you can configure pip in such a way that it " -"tries to reuse already installed packages." +" as a result). Fortunately, starting with version 6.0, pip provides an " +"`on-by-default caching mechanism " +"`_ that " +"doesn't need any configuration." msgstr "" -#: ../../dev/pip-virtualenv.rst:101 +#: ../../dev/pip-virtualenv.rst:105 msgid "" -"On UNIX systems, you can add the following line to your :file:`.bashrc` " -"or :file:`.bash_profile` file." +"When using older versions, you can configure pip in such a way that it " +"tries to reuse already installed packages, too." msgstr "" #: ../../dev/pip-virtualenv.rst:108 msgid "" +"On Unix systems, you can add the following line to your :file:`.bashrc` " +"or :file:`.bash_profile` file." +msgstr "" + +#: ../../dev/pip-virtualenv.rst:115 +msgid "" "You can set the path to anywhere you like (as long as you have write " "access). After adding this line, ``source`` your :file:`.bashrc` (or " ":file:`.bash_profile`) file and you will be all set." msgstr "" -#: ../../dev/pip-virtualenv.rst:112 +#: ../../dev/pip-virtualenv.rst:119 msgid "" "Another way of doing the same configuration is via the :file:`pip.conf` " "or :file:`pip.ini` files, depending on your system. If you are on " @@ -151,13 +160,13 @@ msgid "" "under ``[global]`` settings:" msgstr "" -#: ../../dev/pip-virtualenv.rst:120 +#: ../../dev/pip-virtualenv.rst:127 msgid "" -"Similarly, on UNIX systems you should simply add the following line to " +"Similarly, on Unix systems you should simply add the following line to " "your :file:`pip.conf` file under ``[global]`` settings:" msgstr "" -#: ../../dev/pip-virtualenv.rst:127 +#: ../../dev/pip-virtualenv.rst:134 msgid "" "Even though you can use any path you like to store your cache, it is " "recommended that you create a new folder *in* the folder where your " @@ -166,3 +175,39 @@ msgid "" "and you will be fine." msgstr "" +#~ msgid "Further Configuration of Pip and Virtualenv" +#~ msgstr "" + +#~ msgid "" +#~ "In order to make sure that you " +#~ "install packages to your active virtual" +#~ " environment when you use ``pip " +#~ "install``, consider adding the following " +#~ "two lines to your :file:`~/.bashrc` " +#~ "file:" +#~ msgstr "" + +#~ msgid "" +#~ "It is surely unnecessary to re-" +#~ "download the same packages/libraries each " +#~ "time you start working on a new" +#~ " project (and in a new virtual " +#~ "environment as a result). Fortunately, " +#~ "you can configure pip in such a" +#~ " way that it tries to reuse " +#~ "already installed packages." +#~ msgstr "" + +#~ msgid "" +#~ "On UNIX systems, you can add the" +#~ " following line to your :file:`.bashrc` " +#~ "or :file:`.bash_profile` file." +#~ msgstr "" + +#~ msgid "" +#~ "Similarly, on UNIX systems you should" +#~ " simply add the following line to " +#~ "your :file:`pip.conf` file under ``[global]``" +#~ " settings:" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo index b5d0ada8eb7cf8eb8812d63e36c467c66edffaec..d75c06aaf9453722520a34b7b8d45c91e7e5b240 100644 GIT binary patch literal 21703 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 delta 2707 zcmeIyTWl0n7zgmPS|}9T!a}vBg&ww)a@pN>djl7hw9v+qwpOGKHPP_;Cd!&NAkT37{lz{*Sclf zyoswJy3KkaWhfwJ_y@#IvQyi=3_pUD;ct*yK8iL`gfo!FFBirqAw{?VDZ$RuMh!g0Uc6?S(xh$SNgJiNVDCH(0P|JsoAEHmWInUhYRkSrj8#zE~UlY zl;lZiNh2wZgeDzs%ZZF;%OsD_@T4|6Ds7r*+2&!Ha2>80+>w^Bg)6zGi-dH7bY;Sp z!qtp1j=l1`W(Q{6lxc8zXLpB>nl^2i4)Y$DJElH~{iuMzfVVt9RH((_m^vwKM}v{@ zG>>Q8AYZ&{m>W_i9o`zA4xmO|rqd$Gg^|qPlEY`rjNQh^bTf|IcQjXqERh%&W7sW; zTT8g6jf!O|(6z z&b7Uw9%{e8LO49*;2{a-qbXFTUTfc|8lr}>{0U|4eo@`p6Hw*wGqa%n3~ezpK z?Y}(d>ifDq#UkUHw9^m073;>OVMsS+OU-?%v2Y@HqSxp12{qdnP#60%xx_&GUFF`| zVbdPNHkOv_*go&`7bdX6vrUVhKDb3Cg9l0@?V(5{6xqp}BGJ~|$H7WpQA@bBWa$-L TdIbyrNdNZwF1>>P^DFolX^Quu diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po index cae26a74b..a0add5332 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po +++ b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po @@ -1,61 +1,229 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" #: ../../dev/virtualenvs.rst:4 -msgid "Virtual Environments" +msgid "Pipenv & Virtual Environments" msgstr "" -#: ../../dev/virtualenvs.rst:6 +#: ../../dev/virtualenvs.rst:8 +msgid "This tutorial walks you through installing and using Python packages." +msgstr "" + +#: ../../dev/virtualenvs.rst:10 +msgid "" +"It will show you how to install and use the necessary tools and make " +"strong recommendations on best practices. Keep in mind that Python is " +"used for a great many different purposes, and precisely how you want to " +"manage your dependencies may change based on how you decide to publish " +"your software. The guidance presented here is most directly applicable to" +" the development and deployment of network services (including web " +"applications), but is also very well suited to managing development and " +"testing environments for any kind of project." +msgstr "" + +#: ../../dev/virtualenvs.rst:18 +msgid "" +"This guide is written for Python 3, however, these instructions should " +"work fine on Python 2.7—if you are still using it, for some reason." +msgstr "" + +#: ../../dev/virtualenvs.rst:23 +msgid "Make sure you've got Python & pip" +msgstr "" + +#: ../../dev/virtualenvs.rst:25 +msgid "" +"Before you go any further, make sure you have Python and that it's " +"available from your command line. You can check this by simply running:" +msgstr "" + +#: ../../dev/virtualenvs.rst:32 +msgid "" +"You should get some output like ``3.6.2``. If you do not have Python, " +"please install the latest 3.x version from `python.org`_ or refer to the " +"`Installing Python`_ section of this guide." +msgstr "" + +#: ../../dev/virtualenvs.rst:36 +msgid "If you're newcomer and you get an error like this:" +msgstr "" + +#: ../../dev/virtualenvs.rst:45 +msgid "" +"It's because this command is intended to be run in a *shell* (also called" +" a *terminal* or *console*). See the Python for Beginners `getting " +"started tutorial`_ for an introduction to using your operating system's " +"shell and interacting with Python." +msgstr "" + +#: ../../dev/virtualenvs.rst:50 +msgid "" +"Additionally, you'll need to make sure you have `pip`_ available. You can" +" check this by running:" +msgstr "" + +#: ../../dev/virtualenvs.rst:57 +msgid "" +"If you installed Python from source, with an installer from " +"`python.org`_, or via `Homebrew`_ you should already have pip. If you're " +"on Linux and installed using your OS package manager, you may have to " +"`install pip `_ separately." +msgstr "" + +#: ../../dev/virtualenvs.rst:69 +msgid "Installing Pipenv" +msgstr "" + +#: ../../dev/virtualenvs.rst:71 +msgid "" +"`Pipenv`_ is a dependency manager for Python projects. If you're familiar" +" with Node.js' `npm`_ or Ruby's `bundler`_, it is similar in spirit to " +"those tools. While `pip`_ can install Python packages, Pipenv is " +"recommended as it's a higher-level tool that simplifies dependency " +"management for common use cases." +msgstr "" + +#: ../../dev/virtualenvs.rst:77 +msgid "Use ``pip`` to install Pipenv:" +msgstr "" + +#: ../../dev/virtualenvs.rst:84 +msgid "" +"This does a `user installation`_ to prevent breaking any system-wide " +"packages. If ``pipenv`` isn't available in your shell after installation," +" you'll need to add the `user base`_'s binary directory to your ``PATH``." +msgstr "" + +#: ../../dev/virtualenvs.rst:88 +msgid "" +"On Linux and macOS you can find the user base binary directory by running" +" ``python -m site --user-base`` and adding ``bin`` to the end. For " +"example, this will typically print ``~/.local`` (with ``~`` expanded to " +"the absolute path to your home directory) so you'll need to add " +"``~/.local/bin`` to your ``PATH``. You can set your ``PATH`` permanently " +"by `modifying ~/.profile`_." +msgstr "" + +#: ../../dev/virtualenvs.rst:95 +msgid "" +"On Windows you can find the user base binary directory by running ``py -m" +" site --user-site`` and replacing ``site-packages`` with ``Scripts``. For" +" example, this could return " +"``C:\\Users\\Username\\AppData\\Roaming\\Python36\\site-packages`` so you" +" would need to set your ``PATH`` to include " +"``C:\\Users\\Username\\AppData\\Roaming\\Python36\\Scripts``. You can set" +" your user ``PATH`` permanently in the `Control Panel`_. You may need to " +"log out for the ``PATH`` changes to take effect." +msgstr "" + +#: ../../dev/virtualenvs.rst:113 +msgid "Installing packages for your project" +msgstr "" + +#: ../../dev/virtualenvs.rst:115 msgid "" -"A Virtual Environment is a tool to keep the dependencies required by " -"different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x " -"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " -"directory clean and manageable." +"Pipenv manages dependencies on a per-project basis. To install packages, " +"change into your project's directory (or just an empty directory for this" +" tutorial) and run:" msgstr "" -#: ../../dev/virtualenvs.rst:11 +#: ../../dev/virtualenvs.rst:124 msgid "" -"For example, you can work on a project which requires Django 1.10 while " -"also maintaining a project which requires Django 1.8." +"Pipenv will install the excellent `Requests`_ library and create a " +"``Pipfile`` for you in your project's directory. The `Pipfile`_ is used " +"to track which dependencies your project needs in case you need to re-" +"install them, such as when you share your project with others. You should" +" get output similar to this (although the exact paths shown will vary):" msgstr "" -#: ../../dev/virtualenvs.rst:15 -msgid "virtualenv" +#: ../../dev/virtualenvs.rst:163 +msgid "Using installed packages" msgstr "" -#: ../../dev/virtualenvs.rst:17 +#: ../../dev/virtualenvs.rst:165 msgid "" -"`virtualenv `_ is a tool to " -"create isolated Python environments. virtualenv creates a folder which " -"contains all the necessary executables to use the packages that a Python " -"project would need." +"Now that Requests is installed you can create a simple ``main.py`` file " +"to use it:" +msgstr "" + +#: ../../dev/virtualenvs.rst:176 +msgid "Then you can run this script using ``pipenv run``:" msgstr "" -#: ../../dev/virtualenvs.rst:21 +#: ../../dev/virtualenvs.rst:182 +msgid "You should get output similar to this:" +msgstr "" + +#: ../../dev/virtualenvs.rst:188 +msgid "" +"Using ``$ pipenv run`` ensures that your installed packages are available" +" to your script. It's also possible to spawn a new shell that ensures all" +" commands have access to your installed packages with ``$ pipenv shell``." +msgstr "" + +#: ../../dev/virtualenvs.rst:194 +msgid "Next steps" +msgstr "" + +#: ../../dev/virtualenvs.rst:196 +msgid "" +"Congratulations, you now know how to install and use Python packages! ✨ 🍰" +" ✨" +msgstr "" + +#: ../../dev/virtualenvs.rst:201 +msgid "Lower level: virtualenv" +msgstr "" + +#: ../../dev/virtualenvs.rst:203 +msgid "" +"`virtualenv `_ is a tool to create " +"isolated Python environments. virtualenv creates a folder which contains " +"all the necessary executables to use the packages that a Python project " +"would need." +msgstr "" + +#: ../../dev/virtualenvs.rst:207 +msgid "It can be used standalone, in place of Pipenv." +msgstr "" + +#: ../../dev/virtualenvs.rst:209 msgid "Install virtualenv via pip:" msgstr "" -#: ../../dev/virtualenvs.rst:28 ../../dev/virtualenvs.rst:150 +#: ../../dev/virtualenvs.rst:215 +msgid "Test your installation:" +msgstr "" + +#: ../../dev/virtualenvs.rst:222 ../../dev/virtualenvs.rst:363 msgid "Basic Usage" msgstr "" -#: ../../dev/virtualenvs.rst:30 +#: ../../dev/virtualenvs.rst:224 msgid "Create a virtual environment for a project:" msgstr "" -#: ../../dev/virtualenvs.rst:37 +#: ../../dev/virtualenvs.rst:231 msgid "" "``virtualenv venv`` will create a folder in the current directory which " "will contain the Python executable files, and a copy of the ``pip`` " @@ -64,107 +232,134 @@ msgid "" "omitting the name will place the files in the current directory instead." msgstr "" -#: ../../dev/virtualenvs.rst:43 +#: ../../dev/virtualenvs.rst:238 +msgid "" +"'venv' is the general convention used globally. As it is readily " +"available in ignore files (eg: .gitignore')" +msgstr "" + +#: ../../dev/virtualenvs.rst:240 msgid "" "This creates a copy of Python in whichever directory you ran the command " "in, placing it in a folder named :file:`venv`." msgstr "" -#: ../../dev/virtualenvs.rst:46 -msgid "You can also use a Python interpreter of your choice." +#: ../../dev/virtualenvs.rst:243 +msgid "" +"You can also use the Python interpreter of your choice (like " +"``python2.7``)." msgstr "" -#: ../../dev/virtualenvs.rst:52 -msgid "This will use the Python interpreter in :file:`/usr/bin/python2.7`" +#: ../../dev/virtualenvs.rst:250 +msgid "or change the interpreter globally with an env variable in ``~/.bashrc``:" msgstr "" -#: ../../dev/virtualenvs.rst:54 +#: ../../dev/virtualenvs.rst:256 msgid "To begin using the virtual environment, it needs to be activated:" msgstr "" -#: ../../dev/virtualenvs.rst:60 +#: ../../dev/virtualenvs.rst:262 msgid "" "The name of the current virtual environment will now appear on the left " -"of the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to " +"of the prompt (e.g. ``(venv)Your-Computer:project_folder UserName$``) to " "let you know that it's active. From now on, any package that you install " "using pip will be placed in the ``venv`` folder, isolated from the global" " Python installation." msgstr "" -#: ../../dev/virtualenvs.rst:65 -msgid "Install packages as usual, for example:" +#: ../../dev/virtualenvs.rst:267 +msgid "" +"For Windows, the same command mentioned in step 1 can be used to create a" +" virtual environment. However, activating the environment requires a " +"slightly different command." msgstr "" -#: ../../dev/virtualenvs.rst:71 +#: ../../dev/virtualenvs.rst:269 +msgid "Assuming that you are in your project directory:" +msgstr "" + +#: ../../dev/virtualenvs.rst:275 +msgid "Install packages using the ``pip`` command:" +msgstr "" + +#: ../../dev/virtualenvs.rst:281 msgid "" "If you are done working in the virtual environment for the moment, you " "can deactivate it:" msgstr "" -#: ../../dev/virtualenvs.rst:78 +#: ../../dev/virtualenvs.rst:288 msgid "" "This puts you back to the system's default Python interpreter with all " "its installed libraries." msgstr "" -#: ../../dev/virtualenvs.rst:81 +#: ../../dev/virtualenvs.rst:291 msgid "" "To delete a virtual environment, just delete its folder. (In this case, " "it would be ``rm -rf venv``.)" msgstr "" -#: ../../dev/virtualenvs.rst:84 +#: ../../dev/virtualenvs.rst:294 msgid "" "After a while, though, you might end up with a lot of virtual " -"environments littered across your system, and its possible you'll forget " -"their names or where they were placed." +"environments littered across your system, and it's possible you'll forget" +" their names or where they were placed." msgstr "" -#: ../../dev/virtualenvs.rst:89 +#: ../../dev/virtualenvs.rst:299 +msgid "" +"Python has included venv module from version 3.3. For more details: `venv" +" `_." +msgstr "" + +#: ../../dev/virtualenvs.rst:302 msgid "Other Notes" msgstr "" -#: ../../dev/virtualenvs.rst:91 +#: ../../dev/virtualenvs.rst:304 msgid "" -"Running ``virtualenv`` with the option :option:`--no-site-packages` will " -"not include the packages that are installed globally. This can be useful " -"for keeping the package list clean in case it needs to be accessed later." -" [This is the default behavior for ``virtualenv`` 1.7 and later.]" +"Running ``virtualenv`` with the option ``--no-site-packages`` will not " +"include the packages that are installed globally. This can be useful for " +"keeping the package list clean in case it needs to be accessed later. " +"[This is the default behavior for ``virtualenv`` 1.7 and later.]" msgstr "" -#: ../../dev/virtualenvs.rst:96 +#: ../../dev/virtualenvs.rst:309 msgid "" "In order to keep your environment consistent, it's a good idea to " -"\"freeze\" the current state of the environment packages. To do this, run" +"\"freeze\" the current state of the environment packages. To do this, " +"run:" msgstr "" -#: ../../dev/virtualenvs.rst:103 +#: ../../dev/virtualenvs.rst:316 msgid "" "This will create a :file:`requirements.txt` file, which contains a simple" " list of all the packages in the current environment, and their " "respective versions. You can see the list of installed packages without " -"the requirements format using \"pip list\". Later it will be easier for a" +"the requirements format using ``pip list``. Later it will be easier for a" " different developer (or you, if you need to re-create the environment) " "to install the same packages using the same versions:" msgstr "" -#: ../../dev/virtualenvs.rst:114 +#: ../../dev/virtualenvs.rst:327 msgid "" "This can help ensure consistency across installations, across " "deployments, and across developers." msgstr "" -#: ../../dev/virtualenvs.rst:117 +#: ../../dev/virtualenvs.rst:330 msgid "" "Lastly, remember to exclude the virtual environment folder from source " -"control by adding it to the ignore list." +"control by adding it to the ignore list (see :ref:`Version Control " +"Ignores`)." msgstr "" -#: ../../dev/virtualenvs.rst:123 +#: ../../dev/virtualenvs.rst:336 msgid "virtualenvwrapper" msgstr "" -#: ../../dev/virtualenvs.rst:125 +#: ../../dev/virtualenvs.rst:338 msgid "" "`virtualenvwrapper " "`_ " @@ -173,147 +368,268 @@ msgid "" "place." msgstr "" -#: ../../dev/virtualenvs.rst:129 ../../dev/virtualenvs.rst:141 +#: ../../dev/virtualenvs.rst:342 ../../dev/virtualenvs.rst:354 msgid "To install (make sure **virtualenv** is already installed):" msgstr "" -#: ../../dev/virtualenvs.rst:137 +#: ../../dev/virtualenvs.rst:350 msgid "" "(`Full virtualenvwrapper install instructions " "`_.)" msgstr "" -#: ../../dev/virtualenvs.rst:139 +#: ../../dev/virtualenvs.rst:352 msgid "" "For Windows, you can use the `virtualenvwrapper-win " "`_." msgstr "" -#: ../../dev/virtualenvs.rst:147 -msgid "In Windows, the default path for WORKON_HOME is %USERPROFILE%\\Envs" +#: ../../dev/virtualenvs.rst:360 +msgid "In Windows, the default path for WORKON_HOME is %USERPROFILE%\\\\Envs" msgstr "" -#: ../../dev/virtualenvs.rst:152 +#: ../../dev/virtualenvs.rst:365 msgid "Create a virtual environment:" msgstr "" -#: ../../dev/virtualenvs.rst:158 -msgid "This creates the :file:`venv` folder inside :file:`~/Envs`." +#: ../../dev/virtualenvs.rst:371 +msgid "This creates the :file:`project_folder` folder inside :file:`~/Envs`." msgstr "" -#: ../../dev/virtualenvs.rst:160 +#: ../../dev/virtualenvs.rst:373 msgid "Work on a virtual environment:" msgstr "" -#: ../../dev/virtualenvs.rst:166 +#: ../../dev/virtualenvs.rst:379 msgid "" "Alternatively, you can make a project, which creates the virtual " -"environment, and also a project directory inside ``$PROJECT_HOME``, which" -" is ``cd`` -ed into when you ``workon myproject``." +"environment, and also a project directory inside ``$WORKON_HOME``, which " +"is ``cd``-ed into when you ``workon project_folder``." msgstr "" -#: ../../dev/virtualenvs.rst:174 +#: ../../dev/virtualenvs.rst:387 msgid "" "**virtualenvwrapper** provides tab-completion on environment names. It " "really helps when you have a lot of environments and have trouble " "remembering their names." msgstr "" -#: ../../dev/virtualenvs.rst:178 +#: ../../dev/virtualenvs.rst:391 msgid "" "``workon`` also deactivates whatever environment you are currently in, so" " you can quickly switch between environments." msgstr "" -#: ../../dev/virtualenvs.rst:181 +#: ../../dev/virtualenvs.rst:394 msgid "Deactivating is still the same:" msgstr "" -#: ../../dev/virtualenvs.rst:187 +#: ../../dev/virtualenvs.rst:400 msgid "To delete:" msgstr "" -#: ../../dev/virtualenvs.rst:194 +#: ../../dev/virtualenvs.rst:407 msgid "Other useful commands" msgstr "" -#: ../../dev/virtualenvs.rst:197 +#: ../../dev/virtualenvs.rst:410 msgid "``lsvirtualenv``" msgstr "" -#: ../../dev/virtualenvs.rst:197 +#: ../../dev/virtualenvs.rst:410 msgid "List all of the environments." msgstr "" -#: ../../dev/virtualenvs.rst:201 +#: ../../dev/virtualenvs.rst:414 msgid "``cdvirtualenv``" msgstr "" -#: ../../dev/virtualenvs.rst:200 +#: ../../dev/virtualenvs.rst:413 msgid "" "Navigate into the directory of the currently activated virtual " "environment, so you can browse its :file:`site-packages`, for example." msgstr "" -#: ../../dev/virtualenvs.rst:204 +#: ../../dev/virtualenvs.rst:417 msgid "``cdsitepackages``" msgstr "" -#: ../../dev/virtualenvs.rst:204 +#: ../../dev/virtualenvs.rst:417 msgid "Like the above, but directly into :file:`site-packages` directory." msgstr "" -#: ../../dev/virtualenvs.rst:207 +#: ../../dev/virtualenvs.rst:420 msgid "``lssitepackages``" msgstr "" -#: ../../dev/virtualenvs.rst:207 +#: ../../dev/virtualenvs.rst:420 msgid "Shows contents of :file:`site-packages` directory." msgstr "" -#: ../../dev/virtualenvs.rst:209 +#: ../../dev/virtualenvs.rst:422 msgid "" "`Full list of virtualenvwrapper commands " "`_." msgstr "" -#: ../../dev/virtualenvs.rst:212 +#: ../../dev/virtualenvs.rst:425 msgid "virtualenv-burrito" msgstr "" -#: ../../dev/virtualenvs.rst:214 +#: ../../dev/virtualenvs.rst:427 msgid "" "With `virtualenv-burrito `_, you can have a working virtualenv + virtualenvwrapper " "environment in a single command." msgstr "" -#: ../../dev/virtualenvs.rst:218 -msgid "autoenv" +#: ../../dev/virtualenvs.rst:431 +msgid "direnv" msgstr "" -#: ../../dev/virtualenvs.rst:219 +#: ../../dev/virtualenvs.rst:432 msgid "" -"When you ``cd`` into a directory containing a :file:`.env`, `autoenv " -"`_ automagically activates the " -"environment." +"When you ``cd`` into a directory containing a :file:`.env`, `direnv " +"`_ automagically activates the environment." msgstr "" -#: ../../dev/virtualenvs.rst:222 +#: ../../dev/virtualenvs.rst:435 msgid "Install it on Mac OS X using ``brew``:" msgstr "" -#: ../../dev/virtualenvs.rst:228 -msgid "And on Linux:" +#: ../../dev/virtualenvs.rst:441 +msgid "On Linux follow the instructions at `direnv.net `_" msgstr "" #~ msgid "" #~ msgstr "" +#~ msgid "Virtual Environments" +#~ msgstr "" + +#~ msgid "" +#~ "A Virtual Environment is a tool to" +#~ " keep the dependencies required by " +#~ "different projects in separate places, " +#~ "by creating virtual Python environments " +#~ "for them. It solves the \"Project " +#~ "X depends on version 1.x but, " +#~ "Project Y needs 4.x\" dilemma, and " +#~ "keeps your global site-packages " +#~ "directory clean and manageable." +#~ msgstr "" + #~ msgid "" #~ "For example, you can work on a " -#~ "project which requires Django 1.3 while" +#~ "project which requires Django 1.10 while" #~ " also maintaining a project which " -#~ "requires Django 1.0." +#~ "requires Django 1.8." +#~ msgstr "" + +#~ msgid "virtualenv" +#~ msgstr "" + +#~ msgid "" +#~ "`virtualenv `_ is" +#~ " a tool to create isolated Python " +#~ "environments. virtualenv creates a folder " +#~ "which contains all the necessary " +#~ "executables to use the packages that " +#~ "a Python project would need." +#~ msgstr "" + +#~ msgid "You can also use a Python interpreter of your choice." +#~ msgstr "" + +#~ msgid "This will use the Python interpreter in :file:`/usr/bin/python2.7`" +#~ msgstr "" + +#~ msgid "" +#~ "The name of the current virtual " +#~ "environment will now appear on the " +#~ "left of the prompt (e.g. ``(venv" +#~ ")Your-Computer:your_project UserName$)`` to let" +#~ " you know that it's active. From " +#~ "now on, any package that you " +#~ "install using pip will be placed " +#~ "in the ``venv`` folder, isolated from" +#~ " the global Python installation." +#~ msgstr "" + +#~ msgid "Install packages as usual, for example:" +#~ msgstr "" + +#~ msgid "" +#~ "After a while, though, you might " +#~ "end up with a lot of virtual " +#~ "environments littered across your system, " +#~ "and its possible you'll forget their " +#~ "names or where they were placed." +#~ msgstr "" + +#~ msgid "" +#~ "Running ``virtualenv`` with the option " +#~ ":option:`--no-site-packages` will not " +#~ "include the packages that are installed" +#~ " globally. This can be useful for " +#~ "keeping the package list clean in " +#~ "case it needs to be accessed " +#~ "later. [This is the default behavior " +#~ "for ``virtualenv`` 1.7 and later.]" +#~ msgstr "" + +#~ msgid "" +#~ "In order to keep your environment " +#~ "consistent, it's a good idea to " +#~ "\"freeze\" the current state of the " +#~ "environment packages. To do this, run" +#~ msgstr "" + +#~ msgid "" +#~ "This will create a :file:`requirements.txt`" +#~ " file, which contains a simple list" +#~ " of all the packages in the " +#~ "current environment, and their respective " +#~ "versions. You can see the list of" +#~ " installed packages without the " +#~ "requirements format using \"pip list\". " +#~ "Later it will be easier for a " +#~ "different developer (or you, if you " +#~ "need to re-create the environment) " +#~ "to install the same packages using " +#~ "the same versions:" +#~ msgstr "" + +#~ msgid "" +#~ "Lastly, remember to exclude the virtual" +#~ " environment folder from source control " +#~ "by adding it to the ignore list." +#~ msgstr "" + +#~ msgid "In Windows, the default path for WORKON_HOME is %USERPROFILE%\\Envs" +#~ msgstr "" + +#~ msgid "This creates the :file:`venv` folder inside :file:`~/Envs`." +#~ msgstr "" + +#~ msgid "" +#~ "Alternatively, you can make a project," +#~ " which creates the virtual environment, " +#~ "and also a project directory inside " +#~ "``$PROJECT_HOME``, which is ``cd`` -ed " +#~ "into when you ``workon myproject``." +#~ msgstr "" + +#~ msgid "autoenv" +#~ msgstr "" + +#~ msgid "" +#~ "When you ``cd`` into a directory " +#~ "containing a :file:`.env`, `autoenv " +#~ "`_ automagically " +#~ "activates the environment." +#~ msgstr "" + +#~ msgid "And on Linux:" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index bc50534807447e175c418049281db608abce243b..5b6b846564531d2b040779d32c57e18c7610a226 100644 GIT binary patch delta 1042 zcmc)H&ubG=5C`ztCZ;hZp%qcoG#!f?x-=m_2uOq?icl>=k+!!Umh4OR!De^aecKw9 zt|;Q&)sqT6_!l(bMf4y@&)z)sAov6Q4|>t>+6ukttqaR%U*61{d6UQIJ{F^$W9esv zX98~#@2g~S;F;Bk#<8xz%Ww{!ff2j{pTh;X17ARWglGzG!wc{mJPiveqO))YmXjQq z(kP-JO>`3*>qm%I;0IWO#SGCYcnLm0!ZOTb{b`iw2K)+7zL}4k zn9C8h;WT8p3g_SkENfMwxA?e=0$;|6mat)<$|`&flSYmgh$dkZ#+i{{@wL>;csKPZ z5*!AC-7f3;;y_uh!%bah8L)22o@Ebo_C?3-_l08$lifAp^L|{T%2!<{kS2Z#y`FEF z(&_QQ4ShB|&z2oSN$j)Xm@J*HZv@H@J1X==z_ObJa#u#!Oi}`2qlG|8+t$%ha?;;2 zNM_G>P2}P{R<3Cbs(gL#1jA1*a3H)n%N^H2H!8IE8~A+x>HE#3ToNpC4_w4xPxyiB zl#{EA+Z|!s!cnZyq^L47^abHKLRoxENOeaa-b?4Scsny0Pmew___y*KTKsN&>tCb)J~8zh%cUqC delta 1883 zcmaiy-)~c87{}kj#@ukIT+D$84+#M?yNv}TX5m+iiA>R$NKDiiIc?vyC+p5>dfskK zBrQt`!%o?9R_#c;l(5OrUDUO}NVXeHyz<5?!;Og-T-f*RAD}n-eNR`IKcXk6{harl z=Y5{<^L?KmcU|6>{CRs*mf`BaZx?<)=*5QX6CYz&u)Y934Yq7z>?GI;J_o)Bz5*t| zH^3F}1lY8hu{`)H_$>GfxCi_V+z;+(Vr(a4Np=zsd-37}a5IWr04rEuY-TJ29@)a! zG4MY4CdgVCdlz^MOo0pF4sibyjE!UeNpJz{?^+pa2hBFdUI#}(-Q;~R4n6>bsLxJs zWo!U1N?;ZI9fUIW@X5Mzouwb^PLRNNz~i6*&!b=&e1LWDQxFff!lswN%itMs4g3(? z{tRR1z!>;E_$$bgU0r7)rbD<5ikc&)74}mg&J7X4BZU)Yi1&1L5e*E|n4LHfLeLN= zVN=kyMBEG{1ozX~K|4M~35RTpUNgn1M1YP)goru)y}e;mL=u6Xpgr6>#4U@9NSvGE zo#x_zL$SCWp{e= z5i@RE!`u??3!91^jo<;x5k@q+9_D_(>2f*I)Z$A<3@a3j8-s#}>g^FfXF9^sbx~;q z4O74t5wh?c*N939@5D~gp*kpVF=T<{Mxd? zq!~`c*Vj6A!ZE^}?7>EIIA~DFFwt(na7?F%dFK-|P#;k`spl9C+QGWv`c>U9T34pM z*yxMjYeL5b_&!H;KawkKJBr35h9D!3R!30R2t>L2P4m%hAs&m`V|og--R|AyKKEMl zc=F%n_-Qm^1|xcohHXbcJ-l=<8UY@L2{ei+Ajckt1S2>Uj@t?JZd#a|Vb2UQ0(PR| zuwS=n)jQj&`zEW*AS6yCHg*2(T9I5oYx|geEE3$H_uB*r0-Kut~+>$KK$c2>+JL|D- zYg?uKaO(wMQd={(fFi1xRhc3>lh^ZbW>UIn^)IG1w2`Vz$Z|!^O~DjW6SK0oD5vrp zid0K^S;`}TKQU#ie(#_u&%%!1=f>e?-@ zRZmSVo6|?A6EDx`ukt!XG=x4rH|ARHotwfvEdUr*BwS-f2&$sV94EOTsS{Chk z$yD(oe4zRk9C`Kjl3ZAY(0O^|-ug7?tb00SsZ_iAkB{!z_DWLEn!J;echYFOF>Vd# z@QUPQ$}3qa;RG>pDU~T;LoHpxWWlp(oFn#Wsk$^KKwDKUr?nPH!mWxExc??h-Oi)0 WPS3)%8R_P6uG1?0E&Qskl-Qr+fB;4S diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index 2ad2fe8b2..8478a7487 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -1,131 +1,158 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Jou Sung-Shik \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../index.rst:7 +#: ../../index.rst:12 msgid "The Hitchhiker's Guide to Python!" msgstr "파이썬을 여행하는 히치하이커를 위한 안내서!" -#: ../../index.rst:9 +#: ../../index.rst:14 msgid "Greetings, Earthling! Welcome to The Hitchhiker's Guide to Python." msgstr "안녕, 지구인! 파이썬을 여행하는 히치하이커를 위한 안내서에 오신 것을 환영합니다." -#: ../../index.rst:11 +#: ../../index.rst:16 +#, fuzzy msgid "" "**This is a living, breathing guide.** If you'd like to contribute, " -"`fork us on GitHub `_!" +"`fork us on GitHub `_!" msgstr "" "**이 안내서는 현재 많은 변화가 진행 중입니다.** 도와주고 싶으시다면, `fork us on GitHub " "`_!" -#: ../../index.rst:14 +#: ../../index.rst:19 +#, fuzzy msgid "" "This handcrafted guide exists to provide both novice and expert Python " -"developers a best practice handbook to the installation, configuration, " +"developers a best practice handbook for the installation, configuration, " "and usage of Python on a daily basis." msgstr "" -"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는 모범 사례 안내서입니다." +"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는" +" 모범 사례 안내서입니다." -#: ../../index.rst:18 +#: ../../index.rst:23 msgid "" "This guide is **opinionated** in a way that is almost, but not quite, " "entirely *unlike* Python's official documentation. You won't find a list " "of every Python web framework available here. Rather, you'll find a nice " "concise list of highly recommended options." msgstr "" -"이 안내서는 거의 **독단적** 입니다. 하지만 파이썬 공식 문서만큼 완벽하게 독단적이지는 않습니다. " -"여기서 사용 가능한 세상의 모든 파이썬 웹 프레임워크의 목록을 찾을 수 있다는 것은 아닙니다. " -"그보다는 강력 추천하는 여러 선택 사항들의 간결하고 멋진 목록을 보게 될 것입니다. " +"이 안내서는 거의 **독단적** 입니다. 하지만 파이썬 공식 문서만큼 완벽하게 독단적이지는 않습니다. 여기서 사용 가능한 세상의 " +"모든 파이썬 웹 프레임워크의 목록을 찾을 수 있다는 것은 아닙니다. 그보다는 강력 추천하는 여러 선택 사항들의 간결하고 멋진 목록을" +" 보게 될 것입니다. " + +#: ../../index.rst:28 +msgid "" +"The use of **Python 3** is *highly* recommended over Python 2. Consider " +"upgrading your applications and infrastructures if you find yourself " +"*still* using Python 2 in production today. If you are using Python 3, " +"congratulations — you are indeed a person of excellent taste. —*Kenneth " +"Reitz*" +msgstr "" -#: ../../index.rst:24 +#: ../../index.rst:31 msgid "" "Let's get started! But first, let's make sure you know where your towel " "is." -msgstr "" -"이제 출발합시다! 그런데 우선, 당신의 타월이 어디에 있는지 확인합시다. " +msgstr "이제 출발합시다! 그런데 우선, 당신의 타월이 어디에 있는지 확인합시다. " #: ../../contents.rst.inc:2 msgid "Getting Started with Python" msgstr "파이썬 시작하기" #: ../../contents.rst.inc:4 -msgid "New to Python? Let's properly setup up your Python environment." +#, fuzzy +msgid "New to Python? Let's properly setup up your Python environment:" msgstr "파이썬은 처음인가요? 파이썬 환경을 잘 설치해봅시다." #: ../../contents.rst.inc:11 -msgid "Properly Install Python" +#, fuzzy +msgid "Properly Install Python on your system:" msgstr "올바른 파이썬 설치" -#: ../../contents.rst.inc:24 +#: ../../contents.rst.inc:25 +msgid "Using Virtualenvs with Pipenv:" +msgstr "" + +#: ../../contents.rst.inc:34 +msgid "Python Development Environments" +msgstr "파이썬 개발 환경" + +#: ../../contents.rst.inc:36 +#, fuzzy +msgid "" +"This part of the guide focuses on the Python development environment, and" +" the best-practice tools that are available for writing Python code." +msgstr "이 부분은 파이썬 개발 환경, 그리고 파이썬 코드 작성을 위한 모범적인 개발도구를 다룹니다." + +#: ../../contents.rst.inc:50 msgid "Writing Great Python Code" msgstr "최고의 코드 작성하기" -#: ../../contents.rst.inc:26 +#: ../../contents.rst.inc:52 msgid "" "This part of the guide focuses on the best-practices for writing Python " "code." msgstr "안내서의 이 부분은 파이썬 코드 작성의 모범 사례를 다룹니다." -#: ../../contents.rst.inc:43 +#: ../../contents.rst.inc:69 msgid "Scenario Guide for Python Applications" -msgstr "" -"파이썬 어플리케이션을 위한 시나리오 안내" +msgstr "파이썬 어플리케이션을 위한 시나리오 안내" -#: ../../contents.rst.inc:45 +#: ../../contents.rst.inc:71 msgid "" "This part of the guide focuses on tool and module advice based on " "different scenarios." msgstr "이 파트는 다양한 시나리에오 따른 툴과 모듈에 대한 조언을 다룹니다" -#: ../../contents.rst.inc:71 +#: ../../contents.rst.inc:98 msgid "Shipping Great Python Code" msgstr "최고의 코드를 진수하기" -#: ../../contents.rst.inc:73 -msgid "This part of the guide focuses on deploying your Python code." +#: ../../contents.rst.inc:100 +#, fuzzy +msgid "This part of the guide focuses on sharing and deploying your Python code." msgstr "이 부분은 파이썬 코드 배포를 다룹니다" -#: ../../contents.rst.inc:83 -msgid "Python Development Environments" -msgstr "파이썬 개발 환경" - -#: ../../contents.rst.inc:85 -msgid "" -"This part of the guide focus on the Python development environment, and " -"the best-practice tools that are available for writing Python code." -msgstr "" -"이 부분은 파이썬 개발 환경, 그리고 파이썬 코드 작성을 위한 모범적인 개발도구를 다룹니다." - -#: ../../contents.rst.inc:99 +#: ../../contents.rst.inc:111 msgid "Additional Notes" msgstr "참고 사항" -#: ../../contents.rst.inc:101 +#: ../../contents.rst.inc:113 +#, fuzzy msgid "" "This part of the guide, which is mostly prose, begins with some " -"background information about Python, then focuses on next steps." -msgstr "" -"이 부분에서는 파이썬에 대한 배경 지식부터 시작해서 그 다음 단계를 구구절절 다룹니다." +"background information about Python, and then focuses on next steps." +msgstr "이 부분에서는 파이썬에 대한 배경 지식부터 시작해서 그 다음 단계를 구구절절 다룹니다." -#: ../../contents.rst.inc:114 +#: ../../contents.rst.inc:126 msgid "" "Notes defined within all diatonic and chromatic musical scales have been " "intentionally excluded from this list of additional notes. Additionally, " "this note." msgstr "" -"이 참고 사항에서는 장음계와 단음계를 비롯한 음계의 모든 사항들을 다루지는 않습니다. " -"그런 것들은 이 참고 사항의 목록에서 일부러 제외시켰습니다. 이 문단도 그렇습니다." +"이 참고 사항에서는 장음계와 단음계를 비롯한 음계의 모든 사항들을 다루지는 않습니다. 그런 것들은 이 참고 사항의 목록에서 일부러 " +"제외시켰습니다. 이 문단도 그렇습니다." -#: ../../contents.rst.inc:121 +#: ../../contents.rst.inc:133 msgid "Contribution notes and legal information (for those interested)." -msgstr "기여자를 위한 알림과 법적 정보(관심있으신 분들에게)." \ No newline at end of file +msgstr "기여자를 위한 알림과 법적 정보(관심있으신 분들에게)." + diff --git a/docs/locale/ko/LC_MESSAGES/intro/community.mo b/docs/locale/ko/LC_MESSAGES/intro/community.mo index 063528a31ebb5689a4cab7c85f19b5d219725fe5..e97360b07250c5749e5fba4f99622675eb089148 100644 GIT binary patch delta 2009 zcmeIx!E0Pa90%}8ld9R+)VAs&RQN?Ohp@ZdL;^K7t+BPnkR~ZC6bfQy-_E`r``*mk znR!_j#ib~C@ZceO(1VCQh^HQc^gqx;!6JB4Q1B=;cu@~3`u)Av(1L;&k6rTi^WIG6 zH^2Gj<;|I!jp6r4$KDtCJca8xu5%;&boY}S5aI|PQ#b*K@DO|lJ^?>~Pr@5;8h#5e z!$06EyfiAr82kjT!%yKX{1wiioS4S!MGUM!3qOSOuyRm{hv5=D3RfW)dKo6L1$*$; zo%!Vl%0`=T3gaEf>#jnA@4-jl=a3KZ1-y>^#W%S54g+sJD8w1K^^g$D@ME|Ke}pUW z>v18Tfm0PBeuqtX0cmX_me=4%=$4b3nk|WmhdjRr@gqj? zFyyF?;f5#b_#(IrQA4yKpTNWG@G9h_=8ly~9eT7(>H^%u_`8skdgHM&sV^ZXHS&0w z)Spny&c0+i)}=CNYvk_6#H|BIHcX<8qO&$lbEAV+*N#t)jIY`jJ#VFJ@BVf0=h5NT z<{)&fAq;z3xk#tFA!L5>#EE{tU(brUS25M?)gzmp-gnOPsSiLu_*+TMVPzy z{D!pIMunO+$)JjwMbHSS2pXGo_M6~tz3qg)bc)(#GO03waCLL9htda6U6o{Lla!3Q zWYM1^pGT2WI4TOn&h|MqZLV->9Z2#YAxiQVKc{)fWkNd5oZVJM^}E4y`=0tJiMXld ztZb8$CRV&Mb89wsGEI5&UakJa(5jwTD_FSUt*2SkQ zn@R3uQag`V*e{aFibuaR_bipSOO2hImEP!ly|H^{;)nb1HvUWQzuW)uZm<8J?{;1M E4Sl*bT>t<8 delta 651 zcmYMwy)Oe{9Ki9Xr>H8WiAbtAFX>QPeH$oIjR>JZy$mEG71EHarVMsP&V5{Rm@gDZ2VWQ8Zj-G3k6ulwMwVWz z#VFR{6t?0LcH%zDj7wa`dz{4P3Z=}rhSQir58k0$sblrVNrDR&{*}RH4B{i&@CW%Q zYo$^K+A)iV=)ezjqN%F9cA?I?4;ye6<%N@2zzn`%do`Qk`RbdK7#9XD48tRwK%+*f z0ldWoRX$Nl#K<5e=J}Dqt0*PXC?!r&O5C87ct$DF!)|0FdnhFi(8Kf9BPVYBLMh>5 zs+8D9DN#ahsmA*9fHpK(ccGLxLn)!z%O#pn)_&A+6s5#E$_wve0dwe+6d~?L(a!dy z#0-AmIZBBWrb&qhM{!Gg)$%KqzeT6xy&`{Qo2w6my@7x?Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.2.0\n" -#: ../../intro/community.rst:4 +#: ../../intro/community.rst:6 msgid "The Community" msgstr "" -#: ../../intro/community.rst:7 +#: ../../intro/community.rst:13 msgid "BDFL" msgstr "" -#: ../../intro/community.rst:9 +#: ../../intro/community.rst:15 msgid "" -"Guido van Rossum, the creator of Python, is often referred to as the BDFL — " -"the Benevolent Dictator For Life." +"Guido van Rossum, the creator of Python, is often referred to as the BDFL" +" — the Benevolent Dictator For Life." msgstr "" -#: ../../intro/community.rst:15 +#: ../../intro/community.rst:21 msgid "Python Software Foundation" msgstr "" -#: ../../intro/community.rst:17 +#: ../../intro/community.rst:24 msgid "" -"The mission of the Python Software Foundation is to promote, protect, and " -"advance the Python programming language, and to support and facilitate the " -"growth of a diverse and international community of Python programmers." +"The mission of the Python Software Foundation is to promote, protect, and" +" advance the Python programming language, and to support and facilitate " +"the growth of a diverse and international community of Python " +"programmers." msgstr "" -#: ../../intro/community.rst:21 +#: ../../intro/community.rst:28 msgid "`Learn More about the PSF `_." msgstr "" -#: ../../intro/community.rst:25 +#: ../../intro/community.rst:33 msgid "PEPs" msgstr "" -#: ../../intro/community.rst:27 +#: ../../intro/community.rst:35 msgid "" "PEPs are *Python Enhancement Proposals*. They describe changes to Python " "itself, or the standards around it." msgstr "" -#: ../../intro/community.rst:30 +#: ../../intro/community.rst:38 msgid "There are three different types of PEPs (as defined by :pep:`1`):" msgstr "" -#: ../../intro/community.rst:33 +#: ../../intro/community.rst:41 +msgid "**Standards**" +msgstr "" + +#: ../../intro/community.rst:41 msgid "Describes a new feature or implementation." msgstr "" -#: ../../intro/community.rst:36 +#: ../../intro/community.rst:45 +msgid "**Informational**" +msgstr "" + +#: ../../intro/community.rst:44 msgid "" "Describes a design issue, general guidelines, or information to the " "community." msgstr "" -#: ../../intro/community.rst:40 +#: ../../intro/community.rst:49 +msgid "**Process**" +msgstr "" + +#: ../../intro/community.rst:48 msgid "Describes a process related to Python." msgstr "" -#: ../../intro/community.rst:44 +#: ../../intro/community.rst:52 msgid "Notable PEPs" msgstr "" -#: ../../intro/community.rst:46 +#: ../../intro/community.rst:54 msgid "There are a few PEPs that could be considered required reading:" msgstr "" -#: ../../intro/community.rst:49 +#: ../../intro/community.rst:57 +msgid ":pep:`8`: The Python Style Guide." +msgstr "" + +#: ../../intro/community.rst:57 msgid "Read this. All of it. Follow it." msgstr "" -#: ../../intro/community.rst:52 -msgid "" -"A list of 19 statements that briefly explain the philosophy behind Python." +#: ../../intro/community.rst:60 +msgid ":pep:`20`: The Zen of Python." msgstr "" -#: ../../intro/community.rst:55 +#: ../../intro/community.rst:60 +msgid "A list of 19 statements that briefly explain the philosophy behind Python." +msgstr "" + +#: ../../intro/community.rst:64 +msgid ":pep:`257`: Docstring Conventions." +msgstr "" + +#: ../../intro/community.rst:63 msgid "" "Gives guidelines for semantics and conventions associated with Python " "docstrings." msgstr "" -#: ../../intro/community.rst:58 -msgid "" -"You can read more at `The PEP Index `_." +#: ../../intro/community.rst:66 +msgid "You can read more at `The PEP Index `_." msgstr "" -#: ../../intro/community.rst:61 +#: ../../intro/community.rst:69 msgid "Submitting a PEP" msgstr "" -#: ../../intro/community.rst:63 +#: ../../intro/community.rst:71 msgid "" -"PEPs are peer-reviewed and accepted/rejected after much discussion. Anyone " -"can write and submit a PEP for review." +"PEPs are peer-reviewed and accepted/rejected after much discussion. " +"Anyone can write and submit a PEP for review." msgstr "" -#: ../../intro/community.rst:66 +#: ../../intro/community.rst:74 msgid "Here's an overview of the PEP acceptance workflow:" msgstr "" -#: ../../intro/community.rst:72 +#: ../../intro/community.rst:81 msgid "Python Conferences" msgstr "" -#: ../../intro/community.rst:74 +#: ../../intro/community.rst:83 msgid "" -"The major events for the Python community are developer conferences. The two" -" most notable conferences are PyCon, which is held in the US, and its " +"The major events for the Python community are developer conferences. The " +"two most notable conferences are PyCon, which is held in the US, and its " "European sibling, EuroPython." msgstr "" -#: ../../intro/community.rst:78 +#: ../../intro/community.rst:87 msgid "" "A comprehensive list of conferences is maintained at `pycon.org " "`_." msgstr "" -#: ../../intro/community.rst:82 +#: ../../intro/community.rst:92 msgid "Python User Groups" msgstr "" -#: ../../intro/community.rst:84 +#: ../../intro/community.rst:94 msgid "" -"User Groups are where a bunch of Python developers meet to present or talk " -"about Python topics of interest. A list of local user groups is maintained " -"at the `Python Software Foundation Wiki " +"User Groups are where a bunch of Python developers meet to present or " +"talk about Python topics of interest. A list of local user groups is " +"maintained at the `Python Software Foundation Wiki " "`_." msgstr "" -#: ../../intro/community.rst:33 -msgid "**Standards**" +#: ../../intro/community.rst:101 +msgid "Online Communities" msgstr "" -#: ../../intro/community.rst:37 -msgid "**Informational**" +#: ../../intro/community.rst:103 +msgid "" +"`PythonistaCafe `_ is an invite-only, " +"online community of Python and software development enthusiasts helping " +"each other succeed and grow. Think of it as a club of mutual improvement " +"for Pythonistas where a broad range of programming questions, career " +"advice, and other topics are discussed every day." msgstr "" -#: ../../intro/community.rst:41 -msgid "**Process**" +#: ../../intro/community.rst:111 +msgid "Python Job Boards" msgstr "" -#: ../../intro/community.rst:49 -msgid ":pep:`8`: The Python Style Guide." -msgstr "" - -#: ../../intro/community.rst:52 -msgid ":pep:`20`: The Zen of Python." +#: ../../intro/community.rst:113 +msgid "" +"`Python Jobs HQ `_ is a Python job board, " +"by Python Developers for Python Developers. The site aggregates Python " +"job postings from across the web and also allows employers to post Python" +" job openings directly on the site." msgstr "" -#: ../../intro/community.rst:56 -msgid ":pep:`257`: Docstring Conventions." -msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.mo b/docs/locale/ko/LC_MESSAGES/intro/documentation.mo index 94b722c3a7a5cc53303995161a5472101aeffe4d..2a08f2f11134b9b2565d1af125b7eab5f1f53596 100644 GIT binary patch delta 249 zcmew@@LynpO1%Ih1H)Yg1_oXreg|ZW0qH+L8pIc7VqjPSq!od5Fpxe4q&(vyL-Hjuv$NV5XzS3tTNXvPO14KhCmC8a1=1i3DmUH~W@NP5{Dx5KYj98k#B?SXh~w YZuVmlXJj$bGvL~IM*yL8vNZE$0Mxc5O#lD@ delta 241 zcmew_@LOPlN8a1kxZ2N;lpVX59RiQJ-Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../intro/documentation.rst:2 +#: ../../intro/documentation.rst:5 msgid "Documentation" msgstr "" -#: ../../intro/documentation.rst:5 +#: ../../intro/documentation.rst:12 msgid "Official Documentation" msgstr "" -#: ../../intro/documentation.rst:7 +#: ../../intro/documentation.rst:14 msgid "The official Python Language and Library documentation can be found here:" msgstr "" -#: ../../intro/documentation.rst:9 +#: ../../intro/documentation.rst:16 msgid "`Python 2.x `_" msgstr "" -#: ../../intro/documentation.rst:10 +#: ../../intro/documentation.rst:17 msgid "`Python 3.x `_" msgstr "" -#: ../../intro/documentation.rst:14 +#: ../../intro/documentation.rst:22 msgid "Read the Docs" msgstr "" -#: ../../intro/documentation.rst:16 +#: ../../intro/documentation.rst:24 msgid "" "Read the Docs is a popular community project that hosts documentation for" " open source software. It holds documentation for many Python modules, " "both popular and exotic." msgstr "" -#: ../../intro/documentation.rst:20 +#: ../../intro/documentation.rst:28 msgid "`Read the Docs `_" msgstr "" -#: ../../intro/documentation.rst:24 +#: ../../intro/documentation.rst:33 msgid "pydoc" msgstr "" -#: ../../intro/documentation.rst:26 +#: ../../intro/documentation.rst:35 msgid "" ":program:`pydoc` is a utility that is installed when you install Python. " "It allows you to quickly retrieve and search for documentation from your " "shell. For example, if you needed a quick refresher on the :mod:`time` " -"module, pulling up documentation would be as simple as" +"module, pulling up documentation would be as simple as:" msgstr "" -#: ../../intro/documentation.rst:35 +#: ../../intro/documentation.rst:44 msgid "" "The above command is essentially equivalent to opening the Python REPL " -"and running" +"and running:" msgstr "" #~ msgid "" -#~ ":program:`pydoc` is a utlity that is " -#~ "installed when you install Python. It" -#~ " allows you to quickly retrieve and" -#~ " search for documentation from your " -#~ "shell. For example, if you needed " -#~ "a quick refresher on the :mod:`time` " -#~ "module, pulling up documentation would " +#~ msgstr "" + +#~ msgid "" +#~ ":program:`pydoc` is a utility that is" +#~ " installed when you install Python. " +#~ "It allows you to quickly retrieve " +#~ "and search for documentation from your" +#~ " shell. For example, if you needed" +#~ " a quick refresher on the :mod:`time`" +#~ " module, pulling up documentation would " #~ "be as simple as" #~ msgstr "" +#~ msgid "" +#~ "The above command is essentially " +#~ "equivalent to opening the Python REPL" +#~ " and running" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.mo b/docs/locale/ko/LC_MESSAGES/intro/duction.mo index 6c8e0ed4150bbb00325c0884e244d14971ecf8fd..2a78bbc232147b829be227b414c0d96e634d7819 100644 GIT binary patch delta 431 zcmaLSy-UMD9LDkInrcl`liI4)NzqMcnn85! z3v_W15fQ;b(7&Mw*44@9yxr-O-z67*-$!5itxEGq0QDGf1>oBN()1z@4CpN#qnAU# zGVRe6{hIP)L{&hK+pB<(TdRO$ssi>iI^cw=fP1O}UNbAY z;DZOM;4`ZW-p6&p&V(-TxQ!|Za=PG+s)Ftm{sPvyoeXV5q@r@MSUap$3t@e`bLwo0 psPp97@7puKko7&oRQrvSRMWl<9iY|&cxQnPu8|np$LI){yEJP4doD~-_ z?kXta;wJq94pJQ)oOJOyJzv1-m-i$&y#L65^4rUemIBmN;0D0224v`!4t&vjYS8OG zV2VD_6xCxuKQ-tu|1Z)mXN!kzY7PL;^n$8y9qQ4!FgBH%4M zD+@k(APSI^1s_xt?B`{{47U*la|K!OPDR1FiC#b@I#yzeS$3SD9&Fk{eS4!?v8%Q9 w-t2^z>RM=MJJDihH6C_TOKESy@?6XF#@xxW>qqm01x5GmQX)E4w13|72TajVa{vGU diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.po b/docs/locale/ko/LC_MESSAGES/intro/duction.po index 5ec3e02e0..64db178d4 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/duction.po +++ b/docs/locale/ko/LC_MESSAGES/intro/duction.po @@ -1,49 +1,58 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../intro/duction.rst:2 +#: ../../intro/duction.rst:5 msgid "Introduction" msgstr "" -#: ../../intro/duction.rst:4 +#: ../../intro/duction.rst:9 msgid "From the `official Python website `_:" msgstr "" -#: ../../intro/duction.rst:6 +#: ../../intro/duction.rst:11 msgid "" "Python is a general-purpose, high-level programming language similar to " "Tcl, Perl, Ruby, Scheme, or Java. Some of its main key features include:" msgstr "" -#: ../../intro/duction.rst:10 +#: ../../intro/duction.rst:15 msgid "**very clear, readable syntax**" msgstr "" -#: ../../intro/duction.rst:12 +#: ../../intro/duction.rst:17 msgid "" "Python's philosophy focuses on readability, from code blocks delineated " "with significant whitespace to intuitive keywords in place of inscrutable" " punctuation." msgstr "" -#: ../../intro/duction.rst:16 +#: ../../intro/duction.rst:21 msgid "" "**extensive standard libraries and third party modules for virtually any " "task**" msgstr "" -#: ../../intro/duction.rst:19 +#: ../../intro/duction.rst:24 msgid "" "Python is sometimes described with the words \"batteries included\" " "because of its extensive `standard library " @@ -52,21 +61,21 @@ msgid "" "more." msgstr "" -#: ../../intro/duction.rst:25 +#: ../../intro/duction.rst:30 msgid "" -"Additionally, the `Python Package Index `_ " -"is available for users to submit their packages for widespread use, " -"similar to Perl's `CPAN `_. There is a thriving " -"community of very powerful Python frameworks and tools like the `Django " -"`_ web framework and the `NumPy " +"Additionally, the `Python Package Index `_ is available" +" for users to submit their packages for widespread use, similar to Perl's" +" `CPAN `_. There is a thriving community of very " +"powerful Python frameworks and tools like the `Django " +"`_ web framework and the `NumPy " "`_ set of math routines." msgstr "" -#: ../../intro/duction.rst:33 +#: ../../intro/duction.rst:38 msgid "**integration with other systems**" msgstr "" -#: ../../intro/duction.rst:35 +#: ../../intro/duction.rst:40 msgid "" "Python can integrate with `Java libraries `_, " "enabling it to be used with the rich Java environment that corporate " @@ -74,22 +83,22 @@ msgid "" "`_ when speed is of the essence." msgstr "" -#: ../../intro/duction.rst:41 +#: ../../intro/duction.rst:46 msgid "**ubiquity on computers**" msgstr "" -#: ../../intro/duction.rst:43 +#: ../../intro/duction.rst:48 msgid "" "Python is available on Windows, \\*nix, and Mac. It runs wherever the " "Java virtual machine runs, and the reference implementation CPython can " "help bring Python to wherever there is a working C compiler." msgstr "" -#: ../../intro/duction.rst:47 +#: ../../intro/duction.rst:52 msgid "**friendly community**" msgstr "" -#: ../../intro/duction.rst:49 +#: ../../intro/duction.rst:54 msgid "" "Python has a vibrant and large :ref:`community ` which " "maintains wikis, conferences, countless repositories, mailing lists, IRC " @@ -97,44 +106,44 @@ msgid "" " write this guide!" msgstr "" -#: ../../intro/duction.rst:58 +#: ../../intro/duction.rst:65 msgid "About This Guide" msgstr "" -#: ../../intro/duction.rst:61 +#: ../../intro/duction.rst:68 msgid "Purpose" msgstr "" -#: ../../intro/duction.rst:63 +#: ../../intro/duction.rst:70 msgid "" "The Hitchhiker's Guide to Python exists to provide both novice and expert" " Python developers a best practice handbook for the installation, " "configuration, and usage of Python on a daily basis." msgstr "" -#: ../../intro/duction.rst:69 +#: ../../intro/duction.rst:76 msgid "By the Community" msgstr "" -#: ../../intro/duction.rst:71 +#: ../../intro/duction.rst:78 msgid "" "This guide is architected and maintained by `Kenneth Reitz " "`_ in an open fashion. This is a " "community-driven effort that serves one purpose: to serve the community." msgstr "" -#: ../../intro/duction.rst:76 +#: ../../intro/duction.rst:83 msgid "For the Community" msgstr "" -#: ../../intro/duction.rst:78 +#: ../../intro/duction.rst:85 msgid "" "All contributions to the Guide are welcome, from Pythonistas of all " "levels. If you think there's a gap in what the Guide covers, fork the " "Guide on GitHub and submit a pull request." msgstr "" -#: ../../intro/duction.rst:82 +#: ../../intro/duction.rst:89 msgid "" "Contributions are welcome from everyone, whether they're an old hand or a" " first-time Pythonista, and the authors to the Guide will gladly help if " @@ -142,18 +151,26 @@ msgid "" "accuracy of a contribution." msgstr "" -#: ../../intro/duction.rst:87 +#: ../../intro/duction.rst:94 msgid "" "To get started working on The Hitchhiker's Guide, see the " ":doc:`/notes/contribute` page." msgstr "" #~ msgid "" -#~ "The Hitchhiker's Guide to Python exists" -#~ " to provide both novice and expert" -#~ " Python developers a best-practice " -#~ "handbook to the installation, configuration," -#~ " and usage of Python on a daily" -#~ " basis." +#~ msgstr "" + +#~ msgid "" +#~ "Additionally, the `Python Package Index " +#~ "`_ is available for" +#~ " users to submit their packages for" +#~ " widespread use, similar to Perl's " +#~ "`CPAN `_. There is a " +#~ "thriving community of very powerful " +#~ "Python frameworks and tools like the " +#~ "`Django `_ web " +#~ "framework and the `NumPy " +#~ "`_ set of math " +#~ "routines." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.mo b/docs/locale/ko/LC_MESSAGES/intro/learning.mo index 579b242c4787bf3f0850c80cd33e6de3eafa2479..82ba2e79ead2dbf0724a73255d4031e74dc5d162 100644 GIT binary patch literal 30659 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 delta 3592 zcmeIye{5Cd9mnzSX=# zJ?FGt!@`X-GKh(bKA4eU+!n=Jm3ebOBczr^95MOtv6d0!x&{5wpdy_tWFH zWPk0y{liV~eVyky&pGFNp6B`W%}i(`dA`3(^vWJ6(bd2CR z%%FbI*100fun&E7Q5X1UoW@!6M3VSE>hbI5i#&*JSc)exgHy;YWgCN5V;`3C0*~QY zJ>o^m&~K8U3jM$%Sc%Ug*UG!t#08gdF>RBdPP`AR@NqnfFXJNIS|n1y_y@JLhrS{b z#YgZ%Jb^3m(IwnJ!@v{zfR3LorCR(YF2|>+<|_UW^&5PL&XtUR0l7rZ-zoA7{3G&g z`7YC=J%gw5ZPW!EC>G&Q4)LQ4d;#@+U&Bm3H+=psku`Mu;BJx6@Dl0)7fg{?@r@FZ zS8#%P?Z+_XU%@9ajs88{46k4Pl{Q7*C> zzrY4;s$hC?5_|B+xDWGIiwxor>hn|Bh6d}U?Z6No#}<4W^`4l|I=zL%SdG;TqE?B8 zSpS0@9HL`4=CPIah5fhzPvA!U7~Aolh{#%WQLpJK{2KlVyReG8ci=&6#%a7C7u1Nv zu@9Fr3DT9|Ah?r8?U9~bw^#WDL2&z@rvUG&OePVCYUB2qu=8bco{8p z8iW21Z~^U)kbNtkqE1&X)$8X>;WErzz|+`{x`3Nlj0M|*0?Y9#?e(bBRn``yE6fJ^ zjQ%+4^L=cTS9!iPcLwqLJNDCld3zAAg*j|4^T-W{Z* z9rd12sN?ksvf<^-o*-UVP^YVaL7b8!$ZE)C)aj~th|Ad*l6)wL*GXg_$_>Mf zN1LO$g>KACnkn0N%-!%N}^`c&5mN_tKX8+Jxo2!buA2ZU~?{}XuN~+99!sB6cXG`}^bIXp_ zT`e8vmX_|;tsQ1}OY_dw&W>zP&r`LC&O`PG-5lxbLCBcGnt;#Vz%X{ZFcC`?idic2jo3a%TpQ#{8tkPb%(3 zxHvuLbL`l$kxDO~(iK&%s;#TEY>KuleO+Y0afTy}^$nqDsBTSdC|X_H$S;#8`U)l^w@x|SKS<0o;Op1S~j{uJv&;ttTt3nDckI^bUHGaj?}DasEyXw*3{Rl%;<{j zv!iwWlin;dxv_~fYUA?X%&fb~XI+HW=X4&i=3iBdCMOR`=03xnQ66dVnwvdbgjhLNX#{@ zucuwh^H|QXxyd(2VxF(}^-#)Ac}YuOG8E)OsfluKS-EldyqdaDO?9ZI#;k5wTOG|l fy>W?=9}TZ5xE0S^@w9Kn)BAtL^Y-AsNvZr3iXDOf diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.po b/docs/locale/ko/LC_MESSAGES/intro/learning.po index d742df608..e9a1bf7dc 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/learning.po +++ b/docs/locale/ko/LC_MESSAGES/intro/learning.po @@ -1,104 +1,174 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../intro/learning.rst:2 +#: ../../intro/learning.rst:5 msgid "Learning Python" msgstr "" -#: ../../intro/learning.rst:5 +#: ../../intro/learning.rst:12 msgid "Beginner" msgstr "" -#: ../../intro/learning.rst:8 +#: ../../intro/learning.rst:15 msgid "The Python Tutorial" msgstr "" -#: ../../intro/learning.rst:10 +#: ../../intro/learning.rst:17 msgid "" "This is the official tutorial. It covers all the basics, and offers a " "tour of the language and the standard library. Recommended for those who " "need a quick-start guide to the language." msgstr "" -#: ../../intro/learning.rst:14 +#: ../../intro/learning.rst:21 msgid "`The Python Tutorial `_" msgstr "" -#: ../../intro/learning.rst:17 +#: ../../intro/learning.rst:24 +msgid "Real Python" +msgstr "" + +#: ../../intro/learning.rst:26 +msgid "" +"Real Python is a repository of free and in-depth Python tutorials created" +" by a diverse team of professional Python developers. At Real Python you " +"can learn all things Python from the ground up. Everything from the " +"absolute basics of Python, to web development and web scraping, to data " +"visualization, and beyond." +msgstr "" + +#: ../../intro/learning.rst:28 +msgid "`Real Python `_" +msgstr "" + +#: ../../intro/learning.rst:31 +msgid "Python Basics" +msgstr "" + +#: ../../intro/learning.rst:33 +msgid "" +"pythonbasics.org is an introductory tutorial for beginners. The tutorial " +"includes exercises. It covers the basics and there are also in-depth " +"lessons like object oriented programming and regular expressions." +msgstr "" + +#: ../../intro/learning.rst:35 +msgid "`Python basics `_" +msgstr "" + +#: ../../intro/learning.rst:38 msgid "Python for Beginners" msgstr "" -#: ../../intro/learning.rst:19 +#: ../../intro/learning.rst:40 msgid "" -"thepythonguru.com is a tutorial focuses on beginner programmers. It " -"covers many python concepts in depth. It also teaches you some advance " -"constructs of python like lambda expression, regular expression. At last " -"it finishes off with tutorial \"How to access MySQL db using python\"" +"thepythonguru.com is a tutorial focused on beginner programmers. It " +"covers many Python concepts in depth. It also teaches you some advanced " +"constructs of Python like lambda expressions and regular expressions. And" +" last it finishes off with the tutorial \"How to access MySQL db using " +"Python\"" msgstr "" -#: ../../intro/learning.rst:24 -msgid "`Python for beginners `_" +#: ../../intro/learning.rst:44 +msgid "`Python for Beginners `_" msgstr "" -#: ../../intro/learning.rst:27 +#: ../../intro/learning.rst:47 msgid "Learn Python Interactive Tutorial" msgstr "" -#: ../../intro/learning.rst:29 +#: ../../intro/learning.rst:49 msgid "" "Learnpython.org is an easy non-intimidating way to get introduced to " "Python. The website takes the same approach used on the popular `Try Ruby" -" `_ website, it has an interactive Python " -"interpreter built into the site that allows you to go through the lessons" -" without having to install Python locally." +" `_ website. It has an interactive Python" +" interpreter built into the site that allows you to go through the " +"lessons without having to install Python locally." msgstr "" -#: ../../intro/learning.rst:35 +#: ../../intro/learning.rst:55 msgid "`Learn Python `_" msgstr "" -#: ../../intro/learning.rst:38 +#: ../../intro/learning.rst:58 +msgid "Python for You and Me" +msgstr "" + +#: ../../intro/learning.rst:60 msgid "" "If you want a more traditional book, *Python For You and Me* is an " "excellent resource for learning all aspects of the language." msgstr "" -#: ../../intro/learning.rst:41 +#: ../../intro/learning.rst:63 msgid "`Python for You and Me `_" msgstr "" -#: ../../intro/learning.rst:44 +#: ../../intro/learning.rst:66 +msgid "Learn Python Step by Step" +msgstr "" + +#: ../../intro/learning.rst:68 +msgid "" +"Techbeamers.com provides step-by-step tutorials to teach Python. Each " +"tutorial is supplemented with logically added coding snippets and equips " +"with a follow-up quiz on the subject learned. There is a section for " +"`Python interview questions `_ to help job seekers. You can also read" +" essential `Python tips `_ and learn `best coding practices " +"`_ for " +"writing quality code. Here, you'll get the right platform to learn Python" +" quickly." +msgstr "" + +#: ../../intro/learning.rst:70 +msgid "" +"`Learn Python Basic to Advanced `_" +msgstr "" + +#: ../../intro/learning.rst:74 msgid "Online Python Tutor" msgstr "" -#: ../../intro/learning.rst:46 +#: ../../intro/learning.rst:76 msgid "" -"Online Python Tutor gives you a visual step by step representation of how" +"Online Python Tutor gives you a visual step-by-step representation of how" " your program runs. Python Tutor helps people overcome a fundamental " "barrier to learning programming by understanding what happens as the " "computer executes each line of a program's source code." msgstr "" -#: ../../intro/learning.rst:52 +#: ../../intro/learning.rst:82 msgid "`Online Python Tutor `_" msgstr "" -#: ../../intro/learning.rst:55 +#: ../../intro/learning.rst:85 msgid "Invent Your Own Computer Games with Python" msgstr "" -#: ../../intro/learning.rst:57 +#: ../../intro/learning.rst:87 msgid "" "This beginner's book is for those with no programming experience at all. " "Each chapter has the source code to a small game, using these example " @@ -106,250 +176,289 @@ msgid "" "of what programs \"look like\"." msgstr "" -#: ../../intro/learning.rst:62 +#: ../../intro/learning.rst:92 msgid "" "`Invent Your Own Computer Games with Python " "`_" msgstr "" -#: ../../intro/learning.rst:66 +#: ../../intro/learning.rst:96 msgid "Hacking Secret Ciphers with Python" msgstr "" -#: ../../intro/learning.rst:68 +#: ../../intro/learning.rst:98 msgid "" "This book teaches Python programming and basic cryptography for absolute " "beginners. The chapters provide the source code for various ciphers, as " "well as programs that can break them." msgstr "" -#: ../../intro/learning.rst:72 +#: ../../intro/learning.rst:102 msgid "" "`Hacking Secret Ciphers with Python " "`_" msgstr "" -#: ../../intro/learning.rst:76 +#: ../../intro/learning.rst:106 msgid "Learn Python the Hard Way" msgstr "" -#: ../../intro/learning.rst:78 +#: ../../intro/learning.rst:108 msgid "" "This is an excellent beginner programmer's guide to Python. It covers " "\"hello world\" from the console to the web." msgstr "" -#: ../../intro/learning.rst:81 -msgid "`Learn Python the Hard Way `_" +#: ../../intro/learning.rst:111 +msgid "`Learn Python the Hard Way `_" msgstr "" -#: ../../intro/learning.rst:85 +#: ../../intro/learning.rst:115 msgid "Crash into Python" msgstr "" -#: ../../intro/learning.rst:87 +#: ../../intro/learning.rst:117 msgid "" "Also known as *Python for Programmers with 3 Hours*, this guide gives " "experienced developers from other languages a crash course on Python." msgstr "" -#: ../../intro/learning.rst:90 -msgid "`Crash into Python `_" +#: ../../intro/learning.rst:120 +msgid "`Crash into Python `_" msgstr "" -#: ../../intro/learning.rst:94 +#: ../../intro/learning.rst:124 msgid "Dive Into Python 3" msgstr "" -#: ../../intro/learning.rst:96 +#: ../../intro/learning.rst:126 msgid "" "Dive Into Python 3 is a good book for those ready to jump in to Python 3." " It's a good read if you are moving from Python 2 to 3 or if you already " "have some experience programming in another language." msgstr "" -#: ../../intro/learning.rst:100 -msgid "`Dive Into Python 3 `_" +#: ../../intro/learning.rst:130 +msgid "`Dive Into Python 3 `_" msgstr "" -#: ../../intro/learning.rst:104 +#: ../../intro/learning.rst:134 msgid "Think Python: How to Think Like a Computer Scientist" msgstr "" -#: ../../intro/learning.rst:106 +#: ../../intro/learning.rst:136 msgid "" "Think Python attempts to give an introduction to basic concepts in " "computer science through the use of the Python language. The focus was to" -" create a book with plenty of exercises, minimal jargon and a section in " -"each chapter devoted to the subject of debugging." +" create a book with plenty of exercises, minimal jargon, and a section in" +" each chapter devoted to the subject of debugging." msgstr "" -#: ../../intro/learning.rst:111 +#: ../../intro/learning.rst:141 msgid "" "While exploring the various features available in the Python language the" " author weaves in various design patterns and best practices." msgstr "" -#: ../../intro/learning.rst:114 +#: ../../intro/learning.rst:144 msgid "" "The book also includes several case studies which have the reader explore" " the topics discussed in the book in greater detail by applying those " "topics to real-world examples. Case studies include assignments in GUI " -"and Markov Analysis." +"programming and Markov Analysis." msgstr "" -#: ../../intro/learning.rst:119 +#: ../../intro/learning.rst:149 msgid "`Think Python `_" msgstr "" -#: ../../intro/learning.rst:123 +#: ../../intro/learning.rst:153 msgid "Python Koans" msgstr "" -#: ../../intro/learning.rst:125 +#: ../../intro/learning.rst:155 msgid "" "Python Koans is a port of Edgecase's Ruby Koans. It uses a test-driven " -"approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive " -"tutorial teaching basic Python concepts. By fixing assertion statements " -"that fail in a test script, this provides sequential steps to learning " -"Python." +"approach to provide an interactive tutorial teaching basic Python " +"concepts. By fixing assertion statements that fail in a test script, " +"this provides sequential steps to learning Python." msgstr "" -#: ../../intro/learning.rst:130 +#: ../../intro/learning.rst:160 msgid "" "For those used to languages and figuring out puzzles on their own, this " "can be a fun, attractive option. For those new to Python and programming," " having an additional resource or reference will be helpful." msgstr "" -#: ../../intro/learning.rst:134 -msgid "`Python Koans `_" +#: ../../intro/learning.rst:164 +msgid "`Python Koans `_" msgstr "" -#: ../../intro/learning.rst:136 +#: ../../intro/learning.rst:166 msgid "" "More information about test driven development can be found at these " "resources:" msgstr "" -#: ../../intro/learning.rst:138 +#: ../../intro/learning.rst:168 msgid "" -"`Test Driven Development `_" msgstr "" -#: ../../intro/learning.rst:142 +#: ../../intro/learning.rst:172 msgid "A Byte of Python" msgstr "" -#: ../../intro/learning.rst:144 +#: ../../intro/learning.rst:174 msgid "" "A free introductory book that teaches Python at the beginner level, it " "assumes no previous programming experience." msgstr "" -#: ../../intro/learning.rst:147 +#: ../../intro/learning.rst:177 msgid "" "`A Byte of Python for Python 2.x " "`_ `A Byte of Python" -" for Python 3.x `_" +" for Python 3.x `_" msgstr "" -#: ../../intro/learning.rst:152 -msgid "Learn to Program in Python with Codeacademy" +#: ../../intro/learning.rst:182 +msgid "Computer Science Path on Codecademy" msgstr "" -#: ../../intro/learning.rst:154 +#: ../../intro/learning.rst:184 msgid "" -"A Codeacademy course for the absolute Python beginner. This free and " +"A Codecademy course for the absolute Python beginner. This free and " "interactive course provides and teaches the basics (and beyond) of Python" -" programming whilst testing the user's knowledge in between progress. " -"This course also features a built-in interpreter for receiving instant " +" programming while testing the user's knowledge in between progress. This" +" course also features a built-in interpreter for receiving instant " "feedback on your learning." msgstr "" -#: ../../intro/learning.rst:157 +#: ../../intro/learning.rst:189 +msgid "" +"`Computer Science Path on Codecademy " +"`_" +msgstr "" + +#: ../../intro/learning.rst:193 +msgid "Code the blocks" +msgstr "" + +#: ../../intro/learning.rst:195 msgid "" -"`Learn to Program in Python with Codeacademy " -"`_" +"*Code the blocks* provides free and interactive Python tutorials for " +"beginners. It combines Python programming with a 3D environment where you" +" \"place blocks\" and construct structures. The tutorials teach you how " +"to use Python to create progressively more elaborate 3D structures, " +"making the process of learning Python fun and engaging." +msgstr "" + +#: ../../intro/learning.rst:201 +msgid "`Code the blocks `_" msgstr "" -#: ../../intro/learning.rst:161 +#: ../../intro/learning.rst:206 msgid "Intermediate" msgstr "" -#: ../../intro/learning.rst:164 +#: ../../intro/learning.rst:209 +msgid "Python Tricks: The Book" +msgstr "" + +#: ../../intro/learning.rst:211 +msgid "" +"Discover Python's best practices with simple examples and start writing " +"even more beautiful + Pythonic code. *Python Tricks: The Book* shows you " +"exactly how." +msgstr "" + +#: ../../intro/learning.rst:213 +msgid "" +"You’ll master intermediate and advanced-level features in Python with " +"practical examples and a clear narrative." +msgstr "" + +#: ../../intro/learning.rst:215 +msgid "" +"`Python Tricks: The Book `_" +msgstr "" + +#: ../../intro/learning.rst:218 msgid "Effective Python" msgstr "" -#: ../../intro/learning.rst:166 +#: ../../intro/learning.rst:220 msgid "" "This book contains 59 specific ways to improve writing Pythonic code. At " -"227 pages, it is a very brief overview of some of the most commons " -"adapations programmers need to make to become efficient intermediate " +"227 pages, it is a very brief overview of some of the most common " +"adaptations programmers need to make to become efficient intermediate " "level Python programmers." msgstr "" -#: ../../intro/learning.rst:171 -msgid "`Effective Python `_" +#: ../../intro/learning.rst:225 +msgid "`Effective Python `_" msgstr "" -#: ../../intro/learning.rst:175 +#: ../../intro/learning.rst:230 msgid "Advanced" msgstr "" -#: ../../intro/learning.rst:178 +#: ../../intro/learning.rst:233 msgid "Pro Python" msgstr "" -#: ../../intro/learning.rst:180 +#: ../../intro/learning.rst:235 msgid "" "This book is for intermediate to advanced Python programmers who are " "looking to understand how and why Python works the way it does and how " "they can take their code to the next level." msgstr "" -#: ../../intro/learning.rst:184 -msgid "`Pro Python `_" +#: ../../intro/learning.rst:239 +msgid "`Pro Python `_" msgstr "" -#: ../../intro/learning.rst:188 +#: ../../intro/learning.rst:243 msgid "Expert Python Programming" msgstr "" -#: ../../intro/learning.rst:189 +#: ../../intro/learning.rst:244 msgid "" "Expert Python Programming deals with best practices in programming Python" " and is focused on the more advanced crowd." msgstr "" -#: ../../intro/learning.rst:192 +#: ../../intro/learning.rst:247 msgid "" "It starts with topics like decorators (with caching, proxy, and context " -"manager case-studies), method resolution order, using super() and meta-" +"manager case studies), method resolution order, using super() and meta-" "programming, and general :pep:`8` best practices." msgstr "" -#: ../../intro/learning.rst:196 +#: ../../intro/learning.rst:251 msgid "" "It has a detailed, multi-chapter case study on writing and releasing a " "package and eventually an application, including a chapter on using " "zc.buildout. Later chapters detail best practices such as writing " -"documentation, test-driven development, version control, optimization and" -" profiling." +"documentation, test-driven development, version control, optimization, " +"and profiling." msgstr "" -#: ../../intro/learning.rst:201 +#: ../../intro/learning.rst:256 msgid "" -"`Expert Python Programming `_" +"`Expert Python Programming `_" msgstr "" -#: ../../intro/learning.rst:205 +#: ../../intro/learning.rst:260 msgid "A Guide to Python's Magic Methods" msgstr "" -#: ../../intro/learning.rst:207 +#: ../../intro/learning.rst:262 msgid "" "This is a collection of blog posts by Rafe Kettler which explain 'magic " "methods' in Python. Magic methods are surrounded by double underscores " @@ -357,61 +466,69 @@ msgid "" "magical ways." msgstr "" -#: ../../intro/learning.rst:211 +#: ../../intro/learning.rst:266 msgid "" "`A Guide to Python's Magic Methods " "`_" msgstr "" -#: ../../intro/learning.rst:215 +#: ../../intro/learning.rst:268 +msgid "" +"Rafekettler.com is currently down; you can go to their GitHub version " +"directly. Here you can find a PDF version: `A Guide to Python's Magic " +"Methods (repo on GitHub) " +"`_" +msgstr "" + +#: ../../intro/learning.rst:274 msgid "For Engineers and Scientists" msgstr "" -#: ../../intro/learning.rst:218 +#: ../../intro/learning.rst:277 msgid "A Primer on Scientific Programming with Python" msgstr "" -#: ../../intro/learning.rst:220 +#: ../../intro/learning.rst:279 msgid "" "A Primer on Scientific Programming with Python, written by Hans Petter " "Langtangen, mainly covers Python's usage in the scientific field. In the " "book, examples are chosen from mathematics and the natural sciences." msgstr "" -#: ../../intro/learning.rst:224 +#: ../../intro/learning.rst:283 msgid "" "`A Primer on Scientific Programming with Python " -"`_" +"`_" msgstr "" -#: ../../intro/learning.rst:227 +#: ../../intro/learning.rst:286 msgid "Numerical Methods in Engineering with Python" msgstr "" -#: ../../intro/learning.rst:229 +#: ../../intro/learning.rst:288 msgid "" "Numerical Methods in Engineering with Python, written by Jaan Kiusalaas, " "puts the emphasis on numerical methods and how to implement them in " "Python." msgstr "" -#: ../../intro/learning.rst:232 +#: ../../intro/learning.rst:291 msgid "" "`Numerical Methods in Engineering with Python " -"`_" msgstr "" -#: ../../intro/learning.rst:235 -msgid "Miscellaneous topics" +#: ../../intro/learning.rst:296 +msgid "Miscellaneous Topics" msgstr "" -#: ../../intro/learning.rst:238 +#: ../../intro/learning.rst:299 msgid "Problem Solving with Algorithms and Data Structures" msgstr "" -#: ../../intro/learning.rst:240 +#: ../../intro/learning.rst:301 msgid "" "Problem Solving with Algorithms and Data Structures covers a range of " "data structures and algorithms. All concepts are illustrated with Python " @@ -419,17 +536,17 @@ msgid "" "browser." msgstr "" -#: ../../intro/learning.rst:244 +#: ../../intro/learning.rst:305 msgid "" "`Problem Solving with Algorithms and Data Structures " "`_" msgstr "" -#: ../../intro/learning.rst:248 +#: ../../intro/learning.rst:309 msgid "Programming Collective Intelligence" msgstr "" -#: ../../intro/learning.rst:250 +#: ../../intro/learning.rst:311 msgid "" "Programming Collective Intelligence introduces a wide array of basic " "machine learning and data mining methods. The exposition is not very " @@ -437,96 +554,113 @@ msgid "" "intuition and shows how to implement the algorithms in Python." msgstr "" -#: ../../intro/learning.rst:255 +#: ../../intro/learning.rst:316 msgid "" "`Programming Collective Intelligence " "`_" msgstr "" -#: ../../intro/learning.rst:259 +#: ../../intro/learning.rst:320 msgid "Transforming Code into Beautiful, Idiomatic Python" msgstr "" -#: ../../intro/learning.rst:261 +#: ../../intro/learning.rst:322 msgid "" "Transforming Code into Beautiful, Idiomatic Python is a video by Raymond " "Hettinger. Learn to take better advantage of Python's best features and " -"improve existing code through a series of code transformations, \"When " +"improve existing code through a series of code transformations: \"When " "you see this, do that instead.\"" msgstr "" -#: ../../intro/learning.rst:265 +#: ../../intro/learning.rst:326 msgid "" "`Transforming Code into Beautiful, Idiomatic Python " "`_" msgstr "" -#: ../../intro/learning.rst:269 +#: ../../intro/learning.rst:330 msgid "Fullstack Python" msgstr "" -#: ../../intro/learning.rst:271 +#: ../../intro/learning.rst:332 msgid "" "Fullstack Python offers a complete top-to-bottom resource for web " "development using Python." msgstr "" -#: ../../intro/learning.rst:274 +#: ../../intro/learning.rst:335 msgid "" -"From setting up the webserver, to designing the front-end, choosing a " +"From setting up the web server, to designing the front-end, choosing a " "database, optimizing/scaling, etc." msgstr "" -#: ../../intro/learning.rst:277 +#: ../../intro/learning.rst:338 msgid "" "As the name suggests, it covers everything you need to build and run a " "complete web app from scratch." msgstr "" -#: ../../intro/learning.rst:280 +#: ../../intro/learning.rst:341 msgid "`Fullstack Python `_" msgstr "" -#: ../../intro/learning.rst:284 +#: ../../intro/learning.rst:345 +msgid "PythonistaCafe" +msgstr "" + +#: ../../intro/learning.rst:347 +msgid "" +"PythonistaCafe is an invite-only, online community of Python and software" +" development enthusiasts helping each other succeed and grow. Think of it" +" as a club of mutual improvement for Pythonistas where a broad range of " +"programming questions, career advice, and other topics are discussed " +"every day." +msgstr "" + +#: ../../intro/learning.rst:349 +msgid "`PythonistaCafe `_" +msgstr "" + +#: ../../intro/learning.rst:354 msgid "References" msgstr "" -#: ../../intro/learning.rst:287 +#: ../../intro/learning.rst:357 msgid "Python in a Nutshell" msgstr "" -#: ../../intro/learning.rst:289 +#: ../../intro/learning.rst:359 msgid "" "Python in a Nutshell, written by Alex Martelli, covers most cross-" -"platform Python's usage, from its syntax to built-in libraries to " -"advanced topics such as writing C extensions." +"platform Python usage, from its syntax to built-in libraries to advanced " +"topics such as writing C extensions." msgstr "" -#: ../../intro/learning.rst:293 +#: ../../intro/learning.rst:363 msgid "`Python in a Nutshell `_" msgstr "" -#: ../../intro/learning.rst:296 +#: ../../intro/learning.rst:366 msgid "The Python Language Reference" msgstr "" -#: ../../intro/learning.rst:298 +#: ../../intro/learning.rst:368 msgid "" -"This is Python's reference manual, it covers the syntax and the core " +"This is Python's reference manual. It covers the syntax and the core " "semantics of the language." msgstr "" -#: ../../intro/learning.rst:301 +#: ../../intro/learning.rst:371 msgid "" "`The Python Language Reference " "`_" msgstr "" -#: ../../intro/learning.rst:304 +#: ../../intro/learning.rst:374 msgid "Python Essential Reference" msgstr "" -#: ../../intro/learning.rst:306 +#: ../../intro/learning.rst:376 msgid "" "Python Essential Reference, written by David Beazley, is the definitive " "reference guide to Python. It concisely explains both the core language " @@ -534,117 +668,284 @@ msgid "" "and 2.6 versions." msgstr "" -#: ../../intro/learning.rst:310 +#: ../../intro/learning.rst:380 msgid "`Python Essential Reference `_" msgstr "" -#: ../../intro/learning.rst:313 +#: ../../intro/learning.rst:383 msgid "Python Pocket Reference" msgstr "" -#: ../../intro/learning.rst:315 +#: ../../intro/learning.rst:385 msgid "" "Python Pocket Reference, written by Mark Lutz, is an easy to use " "reference to the core language, with descriptions of commonly used " "modules and toolkits. It covers Python 3 and 2.6 versions." msgstr "" -#: ../../intro/learning.rst:319 +#: ../../intro/learning.rst:389 msgid "" "`Python Pocket Reference " "`_" msgstr "" -#: ../../intro/learning.rst:322 +#: ../../intro/learning.rst:392 msgid "Python Cookbook" msgstr "" -#: ../../intro/learning.rst:324 +#: ../../intro/learning.rst:394 msgid "" "Python Cookbook, written by David Beazley and Brian K. Jones, is packed " -"with practical recipes. This book covers the core python language as well" +"with practical recipes. This book covers the core Python language as well" " as tasks common to a wide variety of application domains." msgstr "" -#: ../../intro/learning.rst:328 +#: ../../intro/learning.rst:398 msgid "`Python Cookbook `_" msgstr "" -#: ../../intro/learning.rst:331 +#: ../../intro/learning.rst:401 msgid "Writing Idiomatic Python" msgstr "" -#: ../../intro/learning.rst:333 +#: ../../intro/learning.rst:403 msgid "" -"\"Writing Idiomatic Python\", written by Jeff Knupp, contains the most " -"common and important Python idioms in a format that maximizes " -"identification and understanding. Each idiom is presented as a " -"recommendation of a way to write some commonly used piece of code, " -"followed by an explanation of why the idiom is important. It also " -"contains two code samples for each idiom: the \"Harmful\" way to write it" -" and the \"Idiomatic\" way." +"Writing Idiomatic Python, written by Jeff Knupp, contains the most common" +" and important Python idioms in a format that maximizes identification " +"and understanding. Each idiom is presented as a recommendation of a way " +"to write some commonly used piece of code, followed by an explanation of " +"why the idiom is important. It also contains two code samples for each " +"idiom: the \"Harmful\" way to write it and the \"Idiomatic\" way." msgstr "" -#: ../../intro/learning.rst:340 +#: ../../intro/learning.rst:410 msgid "" -"`For Python 2.7.3+ `_" +"`For Python 2.7.3+ `_" msgstr "" -#: ../../intro/learning.rst:342 +#: ../../intro/learning.rst:412 msgid "" -"`For Python 3.3+ `_" msgstr "" #~ msgid "" -#~ "This is the official tutorial. It " -#~ "covers all the basics, and offers " -#~ "a tour of the language and the " -#~ "standard library. Recommended for those " -#~ "who need a quickstart guide to the" -#~ " language." #~ msgstr "" #~ msgid "`Python for You and Me `_" #~ msgstr "" +#~ msgid "" +#~ "thepythonguru.com is a tutorial focuses " +#~ "on beginner programmers. It covers many" +#~ " python concepts in depth. It also" +#~ " teaches you some advance constructs " +#~ "of python like lambda expression, " +#~ "regular expression. At last it finishes" +#~ " off with tutorial \"How to access" +#~ " MySQL db using python\"" +#~ msgstr "" + +#~ msgid "`Python for beginners `_" +#~ msgstr "" + +#~ msgid "" +#~ "Learnpython.org is an easy non-" +#~ "intimidating way to get introduced to" +#~ " Python. The website takes the same" +#~ " approach used on the popular `Try" +#~ " Ruby `_ website, it " +#~ "has an interactive Python interpreter " +#~ "built into the site that allows " +#~ "you to go through the lessons " +#~ "without having to install Python " +#~ "locally." +#~ msgstr "" + +#~ msgid "" +#~ "Online Python Tutor gives you a " +#~ "visual step by step representation of" +#~ " how your program runs. Python Tutor" +#~ " helps people overcome a fundamental " +#~ "barrier to learning programming by " +#~ "understanding what happens as the " +#~ "computer executes each line of a " +#~ "program's source code." +#~ msgstr "" + +#~ msgid "`Learn Python the Hard Way `_" +#~ msgstr "" + +#~ msgid "`Crash into Python `_" +#~ msgstr "" + +#~ msgid "`Dive Into Python 3 `_" +#~ msgstr "" + +#~ msgid "" +#~ "Think Python attempts to give an " +#~ "introduction to basic concepts in " +#~ "computer science through the use of " +#~ "the Python language. The focus was " +#~ "to create a book with plenty of" +#~ " exercises, minimal jargon and a " +#~ "section in each chapter devoted to " +#~ "the subject of debugging." +#~ msgstr "" + +#~ msgid "" +#~ "The book also includes several case " +#~ "studies which have the reader explore" +#~ " the topics discussed in the book " +#~ "in greater detail by applying those " +#~ "topics to real-world examples. Case " +#~ "studies include assignments in GUI and" +#~ " Markov Analysis." +#~ msgstr "" + +#~ msgid "" +#~ "Python Koans is a port of " +#~ "Edgecase's Ruby Koans. It uses a " +#~ "test-driven approach, q.v. TEST DRIVEN " +#~ "DESIGN SECTION to provide an interactive" +#~ " tutorial teaching basic Python concepts." +#~ " By fixing assertion statements that " +#~ "fail in a test script, this " +#~ "provides sequential steps to learning " +#~ "Python." +#~ msgstr "" + +#~ msgid "`Python Koans `_" +#~ msgstr "" + +#~ msgid "" +#~ "`Test Driven Development " +#~ "`_" +#~ msgstr "" + +#~ msgid "" +#~ "`A Byte of Python for Python 2.x" +#~ " `_ `A" +#~ " Byte of Python for Python 3.x " +#~ "`_" +#~ msgstr "" + +#~ msgid "Learn to Program in Python with Codeacademy" +#~ msgstr "" + +#~ msgid "" +#~ "A Codeacademy course for the absolute" +#~ " Python beginner. This free and " +#~ "interactive course provides and teaches " +#~ "the basics (and beyond) of Python " +#~ "programming whilst testing the user's " +#~ "knowledge in between progress. This " +#~ "course also features a built-in " +#~ "interpreter for receiving instant feedback " +#~ "on your learning." +#~ msgstr "" + +#~ msgid "" +#~ "`Learn to Program in Python with " +#~ "Codeacademy `_" +#~ msgstr "" + +#~ msgid "" +#~ "This book contains 59 specific ways " +#~ "to improve writing Pythonic code. At " +#~ "227 pages, it is a very brief " +#~ "overview of some of the most " +#~ "commons adapations programmers need to " +#~ "make to become efficient intermediate " +#~ "level Python programmers." +#~ msgstr "" + +#~ msgid "`Effective Python `_" +#~ msgstr "" + +#~ msgid "`Pro Python `_" +#~ msgstr "" + +#~ msgid "" +#~ "It starts with topics like decorators" +#~ " (with caching, proxy, and context " +#~ "manager case-studies), method resolution " +#~ "order, using super() and meta-" +#~ "programming, and general :pep:`8` best " +#~ "practices." +#~ msgstr "" + #~ msgid "" #~ "It has a detailed, multi-chapter " #~ "case study on writing and releasing " #~ "a package and eventually an application," #~ " including a chapter on using " #~ "zc.buildout. Later chapters detail best " -#~ "practices with writing documentation, test-" -#~ "driven development, version control, and " -#~ "optimization/profiling." +#~ "practices such as writing documentation, " +#~ "test-driven development, version control, " +#~ "optimization and profiling." +#~ msgstr "" + +#~ msgid "" +#~ "`Expert Python Programming `_" +#~ msgstr "" + +#~ msgid "" +#~ "`A Primer on Scientific Programming with" +#~ " Python " +#~ "`_" +#~ msgstr "" + +#~ msgid "" +#~ "`Numerical Methods in Engineering with " +#~ "Python " +#~ "`_" +#~ msgstr "" + +#~ msgid "Miscellaneous topics" #~ msgstr "" #~ msgid "" -#~ "This is a collection of blog posts" -#~ " by Rafe Kettler which explain 'magic" -#~ " methods' in Python. Magic methods " -#~ "are surrounded by double underscores " -#~ "(i.e. __init__) and can make classes " -#~ "and objects behave in different and " -#~ "magical ways." +#~ "Transforming Code into Beautiful, Idiomatic" +#~ " Python is a video by Raymond " +#~ "Hettinger. Learn to take better " +#~ "advantage of Python's best features and" +#~ " improve existing code through a " +#~ "series of code transformations, \"When " +#~ "you see this, do that instead.\"" #~ msgstr "" #~ msgid "" -#~ "A Primer on Scientific Programming with" -#~ " Python, written by Hans Petter " -#~ "Langtangen, mainly covers Python's usage " -#~ "in scientific field. In the book, " -#~ "examples are chosen from mathematics and" -#~ " the natural sciences." +#~ "From setting up the webserver, to " +#~ "designing the front-end, choosing a " +#~ "database, optimizing/scaling, etc." #~ msgstr "" #~ msgid "" -#~ "Numerical Methods in Engineering with " -#~ "Python, written by Jaan Kiusalaas, " -#~ "attempts to emphasis on numerical " -#~ "methods and how to implement them " -#~ "in Python." +#~ "Python in a Nutshell, written by " +#~ "Alex Martelli, covers most cross-" +#~ "platform Python's usage, from its syntax" +#~ " to built-in libraries to advanced" +#~ " topics such as writing C extensions." +#~ msgstr "" + +#~ msgid "" +#~ "This is Python's reference manual, it" +#~ " covers the syntax and the core " +#~ "semantics of the language." +#~ msgstr "" + +#~ msgid "" +#~ "Python Cookbook, written by David " +#~ "Beazley and Brian K. Jones, is " +#~ "packed with practical recipes. This book" +#~ " covers the core python language as" +#~ " well as tasks common to a wide" +#~ " variety of application domains." #~ msgstr "" #~ msgid "" @@ -652,7 +953,7 @@ msgstr "" #~ "Jeff Knupp, contains the most common " #~ "and important Python idioms in a " #~ "format that maximizes identification and " -#~ "understanding. Each idiom is presented " +#~ "understanding. Each idiom is presented " #~ "as a recommendation of a way to" #~ " write some commonly used piece of" #~ " code, followed by an explanation of" @@ -662,3 +963,14 @@ msgstr "" #~ "write it and the \"Idiomatic\" way." #~ msgstr "" +#~ msgid "" +#~ "`For Python 2.7.3+ `_" +#~ msgstr "" + +#~ msgid "" +#~ "`For Python 3.3+ `_" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.mo b/docs/locale/ko/LC_MESSAGES/intro/news.mo index 4774f2df62fa242b8d478a03280bfebb06e5dd31..a16135b22dfddfc7a99a75312ec6acfa42195f0e 100644 GIT binary patch literal 4583 zcmeH~&u<$=6vr1RKWYlJr4mAFr6*M?Dao##pi060p(Kq%Q|u&4-J)_Kv%6z^n(@wR zb~didrKbw15{Luh$A7?y3qK?z1lMxl!V$!wCr%(CB(8jCe|QZoe*v*#e|CQCoA=(l z@9gH6qX#~4@F9GU+wUXznfe@m)Nu}?eFEG8UjmoFcfiZwJ@7tw>@mlA5&R201|B)! zIQVl;;pZ7}7CZ{R3f=+Rpq=+4_%!${co+N=wDWI2?l>dxUC@p{@r2_%4;}^Az*FEQ za0q?`ehIz|Za(QatKcoL4SoyGf`^`R92Z;!XTV<3eh+M*{Y}yT8#ssd3kdpcKwz6Rg)Nq(a!i;G&;F?pK zaGjtxGFtel;l!el_7pBuRNUigE}7vWMSPTa&N3wfrH$KDdRSVGRT!|uz|J1mBI=Xo z0gnuYe2+^Nb4>%zLMbAi85nWCE5~Ff?+HF4)yq5`Dwv2>oJyuk%XZBpl@FsV^mFqwGNg15+_jc#Ix`H7M?Yd%Xvkk~--JkOC)uS!j6}#O*S?mfBcZnnJuku@W5cl zmM42>eanNpto-D(2hVKD(#qIy>``7rWoI5pKEYm>d9Ds@D?%cBynE zOR~VW%#21OFV2j3O7~BDv~I}Pg7;8<1JNHyd`+&C%dN6s` zSeZ4>Oqz)zNcBWV(>0CB5Dbbou@!y;xtSww0?&44H=vese>`WZ+?_6yyJg5__PS8~ z$@!ue8Vw+DDCXb#vyad=LVpdy_cRa)$k!$f57EC#DWsfy>C2)QbXri;SFUWHr=ND)!NUnpLK zzPjlVz0P?|*KJQ>5qA2T4TpA-E4xC>moB@*)#{ zaUTjkpZkFRr*0Sr_H0P9n2Xs{nw(@NH|blUdcEQFL>obFukgKEz3xlZPYQ=~B^Tu| zv0LdAn~P^c<;PT^SMF*Y_ETBO{FqijS5b#o(+vbtOwXMz3d>y&-D`*%M@W+{Z9FpFu4YjJnJe9-wX5wmZ7g?M zbgtD|UT-fgudZ&lu3Wi*sZl@0Gp|XzYSM7KoDFRcoolz3q_9Wah1!-egsszk?joL-15sxUhJC3o2;Wte^mXPOJ3IQeBm2`u;1*{wvD5*$v=B delta 800 zcmd7O&r2IY7{>88O{ymT$STrkkg`y)O3Ws~QdFc!?LnyrPYNQM5EljQZZyFqc#zWc z(kd+-#bYnx-Fhko>)+7o)vMseYgdncus3*TZlK6)tf3WsnE-(v!Qp@mo2gUK3^6i(q9;Xa@aUQ_1>H&6#(MjiYIwsOCm zFySsaN1glvb@EHBU=v+*a)mniSJZWhh#$NkM_BKp4*n0j@e_x1@b9RDUtt1YH~7Il z?1{3m$3!Rpjp}E_QBHk-)XX_^W+9hf%+1?HOVnedT^XT7Ebq?QD^H8&q-`%Qm1Vr_ zZ>YZwm4h#hv4Aq7pH-lCMrCV{h6hrq!cxw$OID#=T5ui9U73H8ot5m(v70{T;6kZX zpxpC3YO6hqR^EM+QdV4_q|B}rE9+;thWFF diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.po b/docs/locale/ko/LC_MESSAGES/intro/news.po index 4e0947e43..6286feedd 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/news.po +++ b/docs/locale/ko/LC_MESSAGES/intro/news.po @@ -1,123 +1,206 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../intro/news.rst:2 +#: ../../intro/news.rst:5 msgid "News" msgstr "" -#: ../../intro/news.rst:5 +#: ../../intro/news.rst:12 +msgid "PyCoder’s Weekly" +msgstr "" + +#: ../../intro/news.rst:14 +msgid "" +"PyCoder’s Weekly is a free weekly Python newsletter for Python developers" +" by Python developers (Projects, Articles, News, and Jobs)." +msgstr "" + +#: ../../intro/news.rst:17 +msgid "`PyCoder’s Weekly `_" +msgstr "" + +#: ../../intro/news.rst:22 +msgid "Real Python" +msgstr "" + +#: ../../intro/news.rst:24 +msgid "" +"At Real Python you can learn all things Python from the ground up, with " +"weekly free and in-depth tutorials. Everything from the absolute basics " +"of Python, to web development and web scraping, to data visualization, " +"and beyond." +msgstr "" + +#: ../../intro/news.rst:26 +msgid "`Real Python `_" +msgstr "" + +#: ../../intro/news.rst:31 msgid "Planet Python" msgstr "" -#: ../../intro/news.rst:7 +#: ../../intro/news.rst:33 msgid "This is an aggregate of Python news from a growing number of developers." msgstr "" -#: ../../intro/news.rst:9 -msgid "`Planet Python `_" +#: ../../intro/news.rst:35 +msgid "`Planet Python `_" msgstr "" -#: ../../intro/news.rst:12 +#: ../../intro/news.rst:40 msgid "/r/python" msgstr "" -#: ../../intro/news.rst:14 +#: ../../intro/news.rst:42 msgid "" "/r/python is the Reddit Python community where users contribute and vote " "on Python-related news." msgstr "" -#: ../../intro/news.rst:17 -msgid "`/r/python `_" +#: ../../intro/news.rst:45 +msgid "`/r/python `_" msgstr "" -#: ../../intro/news.rst:20 -msgid "Pycoder's Weekly" +#: ../../intro/news.rst:50 +msgid "Talk Python Podcast" msgstr "" -#: ../../intro/news.rst:22 -msgid "" -"Pycoder's Weekly is a free weekly Python newsletter for Python developers" -" by Python developers (Projects, Articles, News, and Jobs)." +#: ../../intro/news.rst:52 +msgid "The #1 Python-focused podcast covering the people and ideas in Python." +msgstr "" + +#: ../../intro/news.rst:54 +msgid "`Talk Python To Me `_" +msgstr "" + +#: ../../intro/news.rst:59 +msgid "Python Bytes Podcast" msgstr "" -#: ../../intro/news.rst:25 -msgid "`Pycoder's Weekly `_" +#: ../../intro/news.rst:61 +msgid "A short-form Python podcast covering recent developer headlines." msgstr "" -#: ../../intro/news.rst:28 +#: ../../intro/news.rst:63 +msgid "`Python Bytes `_" +msgstr "" + +#: ../../intro/news.rst:68 msgid "Python Weekly" msgstr "" -#: ../../intro/news.rst:30 +#: ../../intro/news.rst:70 msgid "" "Python Weekly is a free weekly newsletter featuring curated news, " "articles, new releases, jobs, etc. related to Python." msgstr "" -#: ../../intro/news.rst:33 -msgid "`Python Weekly `_" +#: ../../intro/news.rst:73 +msgid "`Python Weekly `_" msgstr "" -#: ../../intro/news.rst:36 +#: ../../intro/news.rst:78 msgid "Python News" msgstr "" -#: ../../intro/news.rst:38 +#: ../../intro/news.rst:80 msgid "" "Python News is the news section in the official Python web site " "(www.python.org). It briefly highlights the news from the Python " "community." msgstr "" -#: ../../intro/news.rst:41 -msgid "`Python News `_" +#: ../../intro/news.rst:83 +msgid "`Python News `_" msgstr "" -#: ../../intro/news.rst:44 +#: ../../intro/news.rst:88 msgid "Import Python Weekly" msgstr "" -#: ../../intro/news.rst:46 +#: ../../intro/news.rst:90 msgid "" "Weekly Python Newsletter containing Python Articles, Projects, Videos, " -"Tweets delivered in your inbox. Keep Your Python Programming Skills " +"and Tweets delivered in your inbox. Keep Your Python Programming Skills " "Updated." msgstr "" -#: ../../intro/news.rst:49 +#: ../../intro/news.rst:93 msgid "" "`Import Python Weekly Newsletter " "`_" msgstr "" -#: ../../intro/news.rst:52 +#: ../../intro/news.rst:98 msgid "Awesome Python Newsletter" msgstr "" -#: ../../intro/news.rst:54 -msgid "A weekly overview of the most popular Python news, articles and packages." +#: ../../intro/news.rst:100 +msgid "A weekly overview of the most popular Python news, articles, and packages." msgstr "" -#: ../../intro/news.rst:56 +#: ../../intro/news.rst:102 msgid "`Awesome Python Newsletter `_" msgstr "" #~ msgid "" -#~ "News section in the official Python " -#~ "web site (www.python.org). It briefly " -#~ "highlights the news from Python " -#~ "community." +#~ msgstr "" + +#~ msgid "`Planet Python `_" +#~ msgstr "" + +#~ msgid "`/r/python `_" +#~ msgstr "" + +#~ msgid "Pycoder's Weekly" +#~ msgstr "" + +#~ msgid "" +#~ "Pycoder's Weekly is a free weekly " +#~ "Python newsletter for Python developers " +#~ "by Python developers (Projects, Articles, " +#~ "News, and Jobs)." +#~ msgstr "" + +#~ msgid "`Pycoder's Weekly `_" +#~ msgstr "" + +#~ msgid "`Python Weekly `_" +#~ msgstr "" + +#~ msgid "`Python News `_" +#~ msgstr "" + +#~ msgid "" +#~ "Weekly Python Newsletter containing Python " +#~ "Articles, Projects, Videos, Tweets delivered" +#~ " in your inbox. Keep Your Python " +#~ "Programming Skills Updated." +#~ msgstr "" + +#~ msgid "" +#~ "A weekly overview of the most " +#~ "popular Python news, articles and " +#~ "packages." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo b/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo index 5465d1bf1c397c9cf3514bc94d80b5b7b41c994a..b50c6ebeacdf72d069791f4b344c4de23381f418 100644 GIT binary patch delta 1812 zcmeIwONbOl9LMqh?7BV@GwZIe-St69qF!dEchwv4aO!ua% zhZ*8yLN1b%3B!_u27G{cPz((5l2a7)qDVY=(s=Q(LL>(f4@$`QzhlTj50Y!r(0r<@ ztNvB>qc41XWqsqf-f0uUlj2>>dn}>7f1U>&B9G}l#KU;KQ)CR6PZJr&Z*c_gV-i<% ziF|-rT!34!7Z2bUSizb22yclrWRiwq;K%7AKj5#Z3&I&9H05jb@Ed#||G);m#6R&U z)wbc6vv~13euf*~6QQ)6!Z|pBdcljx6uE&tTImjr&lz}x^YIgQ(S;+Z{e8FwkKkoI zi@S06Y?0M?8v97?F0P8XECc z>4bs0mm5 z#hr@yCkV?blyL*bDt>I@l2-VLspFA1>en-}o%w!H zw6bH=xUG#{OB0{kb&gZ3)iQRx93~=L zJ5}#PZKk$2I_z2w3~=c>$L>-X-)|3ArFf3*MBPx2S? Can~3C delta 1258 zcmeIu&r1|x9LMozb~UxkO-)@)NKh)2{gq~=$a*nJ67tYNytIy!`_%5tGCP$PwRPwp zNV=3n=p_g-81htf3J)0sLQq6?usj421swvR_t#wr!at#9W?uV!cAoEkpU-07!qLKq zy0SZpPX~7kcgB$F@8@YisddU{IDzv)r8Jh8DK&@=9>FJAgI{qs{>DbEELW-y_hTg< z#ueh<lR zgc9jEN~8-Ykq+$h-vw?Mvp4IOW{2xf`X9?Xjc{))md~ZNJsr(CrsG5%cPi#udC#{S zt{KVgezm5(nCDD7(X^M%B-45-o#FQSWvy*eyO!zcOIAe6+g0;{>0bY3(_rA#cCE50 z_rk?oOxqc4TU-6wOxMZhBd&GMaxL4`_EaS0PH4|fxigWBW2QXq*!kJ<=JWnq^>84u vT~`_Z-{DN{mA0M@&D11%B8hk;k!Xz{>y3B$8=)p6*cI*ejoQNhcnKenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" #: ../../notes/styleguide.rst:5 msgid "The Guide Style Guide" msgstr "" -#: ../../notes/styleguide.rst:7 +#: ../../notes/styleguide.rst:9 msgid "" "As with all documentation, having a consistent format helps make the " "document more understandable. In order to make The Guide easier to " @@ -24,97 +33,102 @@ msgid "" " where appropriate." msgstr "" -#: ../../notes/styleguide.rst:12 +#: ../../notes/styleguide.rst:14 msgid "The Guide is written as :ref:`restructuredtext-ref`." msgstr "" -#: ../../notes/styleguide.rst:14 +#: ../../notes/styleguide.rst:16 msgid "" "Parts of The Guide may not yet match this style guide. Feel free to " "update those parts to be in sync with The Guide Style Guide" msgstr "" -#: ../../notes/styleguide.rst:17 +#: ../../notes/styleguide.rst:19 msgid "" "On any page of the rendered HTML you can click \"Show Source\" to see how" " authors have styled the page." msgstr "" -#: ../../notes/styleguide.rst:21 +#: ../../notes/styleguide.rst:25 msgid "Relevancy" msgstr "" -#: ../../notes/styleguide.rst:23 +#: ../../notes/styleguide.rst:27 msgid "" "Strive to keep any contributions relevant to the :ref:`purpose of The " "Guide `." msgstr "" -#: ../../notes/styleguide.rst:26 +#: ../../notes/styleguide.rst:30 msgid "" "Avoid including too much information on subjects that don't directly " "relate to Python development." msgstr "" -#: ../../notes/styleguide.rst:28 +#: ../../notes/styleguide.rst:32 msgid "" "Prefer to link to other sources if the information is already out there. " "Be sure to describe what and why you are linking." msgstr "" -#: ../../notes/styleguide.rst:30 +#: ../../notes/styleguide.rst:34 msgid "" -"`Cite `_" -" references where needed." +"`Cite `_ " +"references where needed." msgstr "" -#: ../../notes/styleguide.rst:32 +#: ../../notes/styleguide.rst:36 msgid "" "If a subject isn't directly relevant to Python, but useful in conjunction" " with Python (e.g., Git, GitHub, Databases), reference by linking to " "useful resources, and describe why it's useful to Python." msgstr "" -#: ../../notes/styleguide.rst:35 +#: ../../notes/styleguide.rst:39 msgid "When in doubt, ask." msgstr "" -#: ../../notes/styleguide.rst:38 +#: ../../notes/styleguide.rst:44 msgid "Headings" msgstr "" -#: ../../notes/styleguide.rst:40 +#: ../../notes/styleguide.rst:46 msgid "Use the following styles for headings." msgstr "" -#: ../../notes/styleguide.rst:42 +#: ../../notes/styleguide.rst:48 msgid "Chapter title:" msgstr "" -#: ../../notes/styleguide.rst:50 +#: ../../notes/styleguide.rst:56 msgid "Page title:" msgstr "" -#: ../../notes/styleguide.rst:58 +#: ../../notes/styleguide.rst:64 msgid "Section headings:" msgstr "" -#: ../../notes/styleguide.rst:65 +#: ../../notes/styleguide.rst:71 msgid "Sub section headings:" msgstr "" -#: ../../notes/styleguide.rst:73 +#: ../../notes/styleguide.rst:81 msgid "Prose" msgstr "" -#: ../../notes/styleguide.rst:75 +#: ../../notes/styleguide.rst:83 msgid "" "Wrap text lines at 78 characters. Where necessary, lines may exceed 78 " "characters, especially if wrapping would make the source text more " "difficult to read." msgstr "" -#: ../../notes/styleguide.rst:79 +#: ../../notes/styleguide.rst:87 +msgid "Use Standard American English, not British English." +msgstr "" + +#: ../../notes/styleguide.rst:89 msgid "" "Use of the `serial comma `_ " "(also known as the Oxford comma) is 100% non-optional. Any attempt to " @@ -122,98 +136,149 @@ msgid "" "banishment from this project, due to complete and total lack of taste." msgstr "" -#: ../../notes/styleguide.rst:84 +#: ../../notes/styleguide.rst:94 msgid "Banishment? Is this a joke? Hopefully we will never have to find out." msgstr "" -#: ../../notes/styleguide.rst:87 +#: ../../notes/styleguide.rst:99 msgid "Code Examples" msgstr "" -#: ../../notes/styleguide.rst:89 +#: ../../notes/styleguide.rst:101 msgid "Wrap all code examples at 70 characters to avoid horizontal scrollbars." msgstr "" -#: ../../notes/styleguide.rst:91 +#: ../../notes/styleguide.rst:103 msgid "Command line examples:" msgstr "" -#: ../../notes/styleguide.rst:100 -msgid "Be sure to include the ``$`` prefix before each line." +#: ../../notes/styleguide.rst:112 +msgid "" +"Be sure to include the ``$`` prefix before each line for Unix console " +"examples." msgstr "" -#: ../../notes/styleguide.rst:102 +#: ../../notes/styleguide.rst:114 +msgid "" +"For Windows console examples, use ``doscon`` or ``powershell`` instead of" +" ``console``, and omit the ``$`` prefix." +msgstr "" + +#: ../../notes/styleguide.rst:117 msgid "Python interpreter examples:" msgstr "" -#: ../../notes/styleguide.rst:112 +#: ../../notes/styleguide.rst:127 msgid "Python examples:" msgstr "" -#: ../../notes/styleguide.rst:124 +#: ../../notes/styleguide.rst:141 msgid "Externally Linking" msgstr "" -#: ../../notes/styleguide.rst:126 -msgid "Prefer labels for well known subjects (ex: proper nouns) when linking:" +#: ../../notes/styleguide.rst:143 +msgid "Prefer labels for well known subjects (e.g. proper nouns) when linking:" msgstr "" -#: ../../notes/styleguide.rst:134 +#: ../../notes/styleguide.rst:151 msgid "" "Prefer to use descriptive labels with inline links instead of leaving " "bare links:" msgstr "" -#: ../../notes/styleguide.rst:141 +#: ../../notes/styleguide.rst:158 msgid "" -"Avoid using labels such as \"click here\", \"this\", etc. preferring " +"Avoid using labels such as \"click here\", \"this\", etc., preferring " "descriptive labels (SEO worthy) instead." msgstr "" -#: ../../notes/styleguide.rst:145 +#: ../../notes/styleguide.rst:164 msgid "Linking to Sections in The Guide" msgstr "" -#: ../../notes/styleguide.rst:147 +#: ../../notes/styleguide.rst:166 msgid "" "To cross-reference other parts of this documentation, use the `:ref: " -"`_ keyword and labels." +"`_ keyword and labels." msgstr "" -#: ../../notes/styleguide.rst:151 +#: ../../notes/styleguide.rst:170 msgid "" "To make reference labels more clear and unique, always add a ``-ref`` " "suffix:" msgstr "" -#: ../../notes/styleguide.rst:161 +#: ../../notes/styleguide.rst:182 msgid "Notes and Warnings" msgstr "" -#: ../../notes/styleguide.rst:163 +#: ../../notes/styleguide.rst:184 msgid "" -"Make use of the appropriate `admonitions directives " -"`_ when making notes." +"Make use of the appropriate `admonitions directives `_ when " +"making notes." msgstr "" -#: ../../notes/styleguide.rst:166 +#: ../../notes/styleguide.rst:187 msgid "Notes:" msgstr "" -#: ../../notes/styleguide.rst:175 +#: ../../notes/styleguide.rst:196 msgid "Warnings:" msgstr "" -#: ../../notes/styleguide.rst:182 +#: ../../notes/styleguide.rst:205 msgid "TODOs" msgstr "" -#: ../../notes/styleguide.rst:184 +#: ../../notes/styleguide.rst:207 msgid "" "Please mark any incomplete areas of The Guide with a `todo directive " -"`_. " -"To avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for " -"stub documents or large incomplete sections." -msgstr "" +"`_. To " +"avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for stub" +" documents or large incomplete sections." +msgstr "" + +#~ msgid "" +#~ "`Cite " +#~ "`_" +#~ " references where needed." +#~ msgstr "" + +#~ msgid "Be sure to include the ``$`` prefix before each line." +#~ msgstr "" + +#~ msgid "Prefer labels for well known subjects (ex: proper nouns) when linking:" +#~ msgstr "" + +#~ msgid "" +#~ "Avoid using labels such as \"click " +#~ "here\", \"this\", etc. preferring descriptive" +#~ " labels (SEO worthy) instead." +#~ msgstr "" + +#~ msgid "" +#~ "To cross-reference other parts of " +#~ "this documentation, use the `:ref: " +#~ "`_ keyword and" +#~ " labels." +#~ msgstr "" + +#~ msgid "" +#~ "Make use of the appropriate `admonitions" +#~ " directives `_" +#~ " when making notes." +#~ msgstr "" + +#~ msgid "" +#~ "Please mark any incomplete areas of " +#~ "The Guide with a `todo directive " +#~ "`_. To avoid cluttering the :ref" +#~ ":`todo-list-ref`, use a single " +#~ "``todo`` for stub documents or large " +#~ "incomplete sections." +#~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo b/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo index b8d8fc66ac4dffd91bbeddd62623a864a56b7c1b..66cb50defc0c78ae3a027fca07f0583ec51b679d 100644 GIT binary patch delta 1540 zcmeIw=}Q!G9LMqR&$UA`EssjO#!M64*(=A^P18#9h{~f&G}>`@+uhO`Yi1KE*beAP z;1&}lK{pW{6f{QHlO8D;^(^X1$CIA;sKAh-pwG{rkNXP(+1LDLe!t%wZ{Mfbk8|u? zO>&444b38&LqyB*^B9)E7We^Xz~Z??_#+uV>97ihv2H!Q2Crk%Y@Dy3NAv(T!a+C* zyP=jzR0&^08Pa?r1Gwf>k|uF*6DP9ar7W@0of#j(5uASleYnv>Q#+um^sEgRlzw?9CcaWA zi-~ZF%9n^6*TEph4G>f5HXMa7;YE0=fJnjmf0#@s%*{UM}8zcm>gS%o~MX z_$;}SXg?-Qz{@z%QiK~~{1q0%U#rB#6{~TK>#Y#aL|aRUj^TO;KEwEPDU!h9HTWv< z59DdDmx(XqE*ELnL7sL3^0Y~%LbR=e{L?l;-gX=0Z67;Dl6IG9+X;Ew*>2JH1gymP zBjjy!JfdwqoWytpq8i=B>+=7R=QF;7Be*|};efY2?h_C2Xsu{F0voX)1G~?GZEy^B z!gg4sh_)u=ZO=m9_F$E0dt;qQ`wjB6Eq;;qbhSwPCBW07f6aPv<2D$?M!O+z`xNrF zZy;}bp+>Z=s1XWCXx0xD*n%Wm}+T&$@M$AT9%}0VX4125shnxOR|EMl6A7Ow9qLH#Nwft6xTw%iEzY__QbWYK7bu9ma~gF z?E>XKb98hx*<)1+X4m?4<}hOs>wfhMCfSj|5MzezDNvZB*)*(*+VXTWrkeKo!mq3? z*g9y&bWMsxqlQ!yGtGV@;C36P8akvOjT|}9s}HzBdY}7nB4U_vT{GN1kK*-K``iQA zLyjA=D)&!sA!CaT!Tt8hWvTSMXxxk?dZt%K<7!{Os`u(vQBfEV+tiS9Sa~JwSw64q fSu1-L$>R?wifxuGW)7drV-J=7`v3j@{r&y|Jiq}E{9LMqRX{!vKIh#!j^O$YkcGao#o~emK(n1l*DBTX*VD6Yl5fvKsz=v*m zLMR9;N)jug6Ldicy7(l@Cq)tEgNleA1l6%`u)!Noy%|U{YnV0;zFV( zmJo<0Hxg|oq8xnPg88rwzJXhyC5Z?ha^g!5y)c05YT*TV35z!2cw;irHP{A6;R@`5 z$5V(r@HwW2L@MgU@JVE%5OBc?oD_b$M3)rJSc)i>;-1hh&te9*aBA} z-jy1RL{DKW^udgDqU|sUm*ELmj{6+hM%0e^8B>g?8-oufqDr=-45BVLf~yYW_>!3j zr>HoSKX@-ZhIuo@QksQN-~yb6r?QA#xISwK(IRZyNmLDu*?i{*b`gEUx^d`+{jnUP zqgXHl*$w`Rcp&D}xkPzzem7sZlt;9N^THk?yc7L_<2Y}!5Z%Q*VMP+ynvWdt24rb{ z1^kzJU&zybfh_I$BAzz(83Sab?~whpzaeW&#k{R#<4HC-cv}NxZSORE=3+B==9p{!H$rOyjGMG0xf zieW)-6XikG<;~RM86ASUT6s^qXr2@_S5}#z>j+8eSZ$FuSNl;&J~%oQlB1#&3@X}k zeOzz!%K^y|l;vPVa`@$b=YV>$DWH97itALrKenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/admin.rst:2 +#: ../../scenarios/admin.rst:4 msgid "Systems Administration" msgstr "" -#: ../../scenarios/admin.rst:5 +#: ../../scenarios/admin.rst:11 msgid "Fabric" msgstr "" -#: ../../scenarios/admin.rst:7 +#: ../../scenarios/admin.rst:13 msgid "" "`Fabric `_ is a library for simplifying system " "administration tasks. While Chef and Puppet tend to focus on managing " @@ -28,44 +37,44 @@ msgid "" " tasks such as deployment." msgstr "" -#: ../../scenarios/admin.rst:12 +#: ../../scenarios/admin.rst:18 msgid "Install Fabric:" msgstr "" -#: ../../scenarios/admin.rst:18 +#: ../../scenarios/admin.rst:24 msgid "" "The following code will create two tasks that we can use: " "``memory_usage`` and ``deploy``. The former will output the memory usage " -"on each machine. The latter will ssh into each server, cd to our project " +"on each machine. The latter will SSH into each server, cd to our project " "directory, activate the virtual environment, pull the newest codebase, " "and restart the application server." msgstr "" -#: ../../scenarios/admin.rst:41 +#: ../../scenarios/admin.rst:47 msgid "" "With the previous code saved in a file named :file:`fabfile.py`, we can " "check memory usage with:" msgstr "" -#: ../../scenarios/admin.rst:61 +#: ../../scenarios/admin.rst:67 msgid "and we can deploy with:" msgstr "" -#: ../../scenarios/admin.rst:67 +#: ../../scenarios/admin.rst:73 msgid "" "Additional features include parallel execution, interaction with remote " "programs, and host grouping." msgstr "" -#: ../../scenarios/admin.rst:70 +#: ../../scenarios/admin.rst:76 msgid "`Fabric Documentation `_" msgstr "" -#: ../../scenarios/admin.rst:73 +#: ../../scenarios/admin.rst:81 msgid "Salt" msgstr "" -#: ../../scenarios/admin.rst:75 +#: ../../scenarios/admin.rst:83 msgid "" "`Salt `_ is an open source infrastructure " "management tool. It supports remote command execution from a central " @@ -74,121 +83,121 @@ msgid "" "template files." msgstr "" -#: ../../scenarios/admin.rst:80 +#: ../../scenarios/admin.rst:88 msgid "Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" -#: ../../scenarios/admin.rst:86 +#: ../../scenarios/admin.rst:94 msgid "" "After configuring a master server and any number of minion hosts, we can " "run arbitrary shell commands or use pre-built modules of complex commands" " on our minions." msgstr "" -#: ../../scenarios/admin.rst:90 +#: ../../scenarios/admin.rst:98 msgid "" "The following command lists all available minion hosts, using the ping " "module." msgstr "" -#: ../../scenarios/admin.rst:96 +#: ../../scenarios/admin.rst:104 msgid "" -"The host filtering is accomplished by matching the minion id, or using " -"the grains system. The `grains " +"The host filtering is accomplished by matching the minion id or using the" +" grains system. The `grains " "`_ " "system uses static host information like the operating system version or " "the CPU architecture to provide a host taxonomy for the Salt modules." msgstr "" -#: ../../scenarios/admin.rst:102 +#: ../../scenarios/admin.rst:110 msgid "" "The following command lists all available minions running CentOS using " "the grains system:" msgstr "" -#: ../../scenarios/admin.rst:109 +#: ../../scenarios/admin.rst:117 msgid "" "Salt also provides a state system. States can be used to configure the " "minion hosts." msgstr "" -#: ../../scenarios/admin.rst:112 +#: ../../scenarios/admin.rst:120 msgid "" "For example, when a minion host is ordered to read the following state " "file, it will install and start the Apache server:" msgstr "" -#: ../../scenarios/admin.rst:126 +#: ../../scenarios/admin.rst:134 msgid "" -"State files can be written using YAML, the Jinja2 template system or pure" -" Python." +"State files can be written using YAML, the Jinja2 template system, or " +"pure Python." msgstr "" -#: ../../scenarios/admin.rst:128 +#: ../../scenarios/admin.rst:136 msgid "`Salt Documentation `_" msgstr "" -#: ../../scenarios/admin.rst:132 +#: ../../scenarios/admin.rst:141 msgid "Psutil" msgstr "" -#: ../../scenarios/admin.rst:134 +#: ../../scenarios/admin.rst:143 msgid "" -"`Psutil `_ is an interface to " -"different system information (e.g. CPU, memory, disks, network, users and" -" processes)." +"`Psutil `_ is an interface to " +"different system information (e.g. CPU, memory, disks, network, users, " +"and processes)." msgstr "" -#: ../../scenarios/admin.rst:137 +#: ../../scenarios/admin.rst:146 msgid "" "Here is an example to be aware of some server overload. If any of the " "tests (net, CPU) fail, it will send an email." msgstr "" -#: ../../scenarios/admin.rst:183 +#: ../../scenarios/admin.rst:192 msgid "" "A full terminal application like a widely extended top which is based on " "psutil and with the ability of a client-server monitoring is `glance " "`_." msgstr "" -#: ../../scenarios/admin.rst:188 +#: ../../scenarios/admin.rst:199 msgid "Ansible" msgstr "" -#: ../../scenarios/admin.rst:190 +#: ../../scenarios/admin.rst:201 msgid "" "`Ansible `_ is an open source system automation " -"tool. The biggest advantage over Puppet or Chef is it does not require an" -" agent on the client machine. Playbooks are Ansible’s configuration, " -"deployment, and orchestration language and are written in YAML with " -"Jinja2 for templating." +"tool. Its biggest advantage over Puppet or Chef is that it does not " +"require an agent on the client machine. Playbooks are Ansible’s " +"configuration, deployment, and orchestration language and are written in " +"YAML with Jinja2 for templating." msgstr "" -#: ../../scenarios/admin.rst:195 +#: ../../scenarios/admin.rst:206 msgid "Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" -#: ../../scenarios/admin.rst:201 +#: ../../scenarios/admin.rst:212 msgid "" "Ansible requires an inventory file that describes the hosts to which it " "has access. Below is an example of a host and playbook that will ping all" " the hosts in the inventory file." msgstr "" -#: ../../scenarios/admin.rst:205 +#: ../../scenarios/admin.rst:216 msgid "Here is an example inventory file: :file:`hosts.yml`" msgstr "" -#: ../../scenarios/admin.rst:213 +#: ../../scenarios/admin.rst:224 msgid "Here is an example playbook: :file:`ping.yml`" msgstr "" -#: ../../scenarios/admin.rst:225 +#: ../../scenarios/admin.rst:236 msgid "To run the playbook:" msgstr "" -#: ../../scenarios/admin.rst:231 +#: ../../scenarios/admin.rst:242 msgid "" "The Ansible playbook will ping all of the servers in the " ":file:`hosts.yml` file. You can also select groups of servers using " @@ -196,18 +205,18 @@ msgid "" "`_." msgstr "" -#: ../../scenarios/admin.rst:235 +#: ../../scenarios/admin.rst:246 msgid "" "`An Ansible tutorial `_ is also a great and detailed introduction to getting started" " with Ansible." msgstr "" -#: ../../scenarios/admin.rst:240 +#: ../../scenarios/admin.rst:252 msgid "Chef" msgstr "" -#: ../../scenarios/admin.rst:241 +#: ../../scenarios/admin.rst:254 msgid "" "`Chef `_ is a systems and cloud " "infrastructure automation framework that makes it easy to deploy servers " @@ -216,7 +225,7 @@ msgid "" "Ruby to write your infrastructure code." msgstr "" -#: ../../scenarios/admin.rst:246 +#: ../../scenarios/admin.rst:259 msgid "" "Chef clients run on every server that is part of your infrastructure and " "these regularly check with your Chef server to ensure your system is " @@ -225,23 +234,23 @@ msgid "" "and this distributed approach makes Chef a scalable automation platform." msgstr "" -#: ../../scenarios/admin.rst:251 +#: ../../scenarios/admin.rst:264 msgid "" "Chef works by using custom recipes (configuration elements), implemented " "in cookbooks. Cookbooks, which are basically packages for infrastructure " -"choices, are usually stored in your Chef server. Read the `Digital Ocean " +"choices, are usually stored in your Chef server. Read the `DigitalOcean " "tutorial series `_ " -"on chef to learn how to create a simple Chef Server." +"on Chef to learn how to create a simple Chef Server." msgstr "" -#: ../../scenarios/admin.rst:257 +#: ../../scenarios/admin.rst:270 msgid "" "To create a simple cookbook the `knife " "`_ command is used:" msgstr "" -#: ../../scenarios/admin.rst:263 +#: ../../scenarios/admin.rst:276 msgid "" "`Getting started with Chef `_ is a good starting point for Chef Beginners and " @@ -250,15 +259,15 @@ msgid "" " the `Chef Supermarket `_." msgstr "" -#: ../../scenarios/admin.rst:268 +#: ../../scenarios/admin.rst:281 msgid "`Chef Documentation `_" msgstr "" -#: ../../scenarios/admin.rst:271 +#: ../../scenarios/admin.rst:286 msgid "Puppet" msgstr "" -#: ../../scenarios/admin.rst:273 +#: ../../scenarios/admin.rst:288 msgid "" "`Puppet `_ is IT Automation and configuration " "management software from Puppet Labs that allows System Administrators to" @@ -266,7 +275,7 @@ msgid "" "elegant way to manage their fleet of physical and virtual machines." msgstr "" -#: ../../scenarios/admin.rst:278 +#: ../../scenarios/admin.rst:293 msgid "" "Puppet is available both as an Open Source and an Enterprise variant. " "Modules are small, shareable units of code written to automate or define " @@ -275,61 +284,61 @@ msgid "" "Enterprise Puppet." msgstr "" -#: ../../scenarios/admin.rst:283 +#: ../../scenarios/admin.rst:298 msgid "" "Puppet Agents are installed on nodes whose state needs to be monitored or" " changed. A designated server known as the Puppet Master is responsible " "for orchestrating the agent nodes." msgstr "" -#: ../../scenarios/admin.rst:287 +#: ../../scenarios/admin.rst:302 msgid "" -"Agent nodes send basic facts about the system such as to the operating " -"system, kernel, architecture, ip address, hostname etc. to the Puppet " +"Agent nodes send basic facts about the system such as the operating " +"system, kernel, architecture, IP address, hostname, etc. to the Puppet " "Master. The Puppet Master then compiles a catalog with information " "provided by the agents on how each node should be configured and sends it" " to the agent. The agent enforces the change as prescribed in the catalog" " and sends a report back to the Puppet Master." msgstr "" -#: ../../scenarios/admin.rst:294 +#: ../../scenarios/admin.rst:309 msgid "" "Facter is an interesting tool that ships with Puppet that pulls basic " "facts about the system. These facts can be referenced as a variable while" " writing your Puppet modules." msgstr "" -#: ../../scenarios/admin.rst:307 +#: ../../scenarios/admin.rst:322 msgid "" "Writing Modules in Puppet is pretty straight forward. Puppet Manifests " -"together form Puppet Modules. Puppet manifest end with an extension of " +"together form Puppet Modules. Puppet manifests end with an extension of " "``.pp``. Here is an example of 'Hello World' in Puppet." msgstr "" -#: ../../scenarios/admin.rst:319 +#: ../../scenarios/admin.rst:334 msgid "" "Here is another example with system based logic. Note how the operating " "system fact is being used as a variable prepended with the ``$`` sign. " "Similarly, this holds true for other facts such as hostname which can be " -"referenced by ``$hostname``" +"referenced by ``$hostname``." msgstr "" -#: ../../scenarios/admin.rst:333 +#: ../../scenarios/admin.rst:348 msgid "" "There are several resource types for Puppet but the package-file-service " -"paradigm is all you need for undertaking majority of the configuration " -"management. The following Puppet code makes sure that the OpenSSH-Server " -"package is installed in a system and the sshd service is notified to " -"restart everytime the sshd configuration file is changed." +"paradigm is all you need for undertaking the majority of the " +"configuration management. The following Puppet code makes sure that the " +"OpenSSH-Server package is installed in a system and the sshd service is " +"notified to restart every time the sshd configuration file is changed." msgstr "" -#: ../../scenarios/admin.rst:364 +#: ../../scenarios/admin.rst:379 msgid "" "For more information, refer to the `Puppet Labs Documentation " "`_" msgstr "" -#: ../../scenarios/admin.rst:367 +#: ../../scenarios/admin.rst:384 msgid "Blueprint" msgstr "" @@ -337,30 +346,31 @@ msgstr "" msgid "Todo" msgstr "" -#: ../../scenarios/admin.rst:369 +#: ../../scenarios/admin.rst:386 msgid "Write about Blueprint" msgstr "" -#: ../../scenarios/admin.rst:372 +#: ../../scenarios/admin.rst:391 msgid "Buildout" msgstr "" -#: ../../scenarios/admin.rst:374 +#: ../../scenarios/admin.rst:393 msgid "" "`Buildout `_ is an open source software build " "tool. Buildout is created using the Python programming language. It " "implements a principle of separation of configuration from the scripts " "that do the setting up. Buildout is primarily used to download and set up" -" dependencies in Python eggs format of the software being developed or " -"deployed. Recipes for build tasks in any environment can be created, and " -"many are already available." +" dependencies in `Python eggs " +"`_ " +"format of the software being developed or deployed. Recipes for build " +"tasks in any environment can be created, and many are already available." msgstr "" -#: ../../scenarios/admin.rst:382 +#: ../../scenarios/admin.rst:404 msgid "Shinken" msgstr "" -#: ../../scenarios/admin.rst:384 +#: ../../scenarios/admin.rst:406 msgid "" "`Shinken `_ is a modern, Nagios " "compatible monitoring framework written in Python. Its main goal is to " @@ -368,101 +378,156 @@ msgid "" "designed to scale to large environments." msgstr "" -#: ../../scenarios/admin.rst:389 +#: ../../scenarios/admin.rst:411 msgid "" -"Shinken is backwards-compatible with the Nagios configuration standard, " -"and plugins.It works on any operating system, and architecture that " -"supports Python which includes Windows, GNU/Linux, and FreeBSD." +"Shinken is backwards-compatible with the Nagios configuration standard " +"and plugins. It works on any operating system and architecture that " +"supports Python, which includes Windows, Linux, and FreeBSD." msgstr "" #~ msgid "" -#~ "`Salt `_ is an open " -#~ "source infrastructure management tool. It " -#~ "supports remote command execution from a" -#~ " central point (master host) to " -#~ "multiple hosts (minions). It also " -#~ "supports system states which can be " -#~ "used to configure multiple servers using" -#~ " simple template files." +#~ msgstr "" + +#~ msgid "Write about Chef" +#~ msgstr "" + +#~ msgid "Write about Buildout" +#~ msgstr "" + +#~ msgid "`Buildout Website `_" +#~ msgstr "" + +#~ msgid "" +#~ "The following code will create two " +#~ "tasks that we can use: ``memory_usage``" +#~ " and ``deploy``. The former will " +#~ "output the memory usage on each " +#~ "machine. The latter will ssh into " +#~ "each server, cd to our project " +#~ "directory, activate the virtual environment," +#~ " pull the newest codebase, and " +#~ "restart the application server." #~ msgstr "" #~ msgid "" -#~ "`Ansible `_ is an open" -#~ " source system automation tool. The " -#~ "biggest advantage over Puppet or Chef" -#~ " is it does not require an " -#~ "agent on the client machine. Playbooks" -#~ " are Ansible’s configuration, deployment, " -#~ "and orchestration language and are " -#~ "written in in YAML with Jinja2 for" -#~ " templating." +#~ "The host filtering is accomplished by" +#~ " matching the minion id, or using " +#~ "the grains system. The `grains " +#~ "`_" +#~ " system uses static host information " +#~ "like the operating system version or " +#~ "the CPU architecture to provide a " +#~ "host taxonomy for the Salt modules." #~ msgstr "" -#~ msgid "Write about Chef" +#~ msgid "" +#~ "State files can be written using " +#~ "YAML, the Jinja2 template system or " +#~ "pure Python." #~ msgstr "" #~ msgid "" -#~ "`Chef Documentation " -#~ "`_" +#~ "`Psutil `_ is an" +#~ " interface to different system information" +#~ " (e.g. CPU, memory, disks, network, " +#~ "users and processes)." #~ msgstr "" #~ msgid "" -#~ "`Puppet `_ is an IT " -#~ "Automation and configuration management " -#~ "software from Puppet Labs that allows" -#~ " System Administrators to define the " -#~ "state of their IT Infrastructure, " -#~ "thereby providing an elegant way to " -#~ "manage their fleet of physical and " -#~ "virtual machines." +#~ "`Ansible `_ is an open" +#~ " source system automation tool. The " +#~ "biggest advantage over Puppet or Chef" +#~ " is it does not require an " +#~ "agent on the client machine. Playbooks" +#~ " are Ansible’s configuration, deployment, " +#~ "and orchestration language and are " +#~ "written in YAML with Jinja2 for " +#~ "templating." #~ msgstr "" #~ msgid "" -#~ "Puppet is available both as an " -#~ "Open Source and an Enterprise variant." -#~ " Modules are small,shareable units of " -#~ "code written to automate or define " -#~ "the state of a system. `Puppet " -#~ "Forge `_ is a " -#~ "repository for modules written by the" -#~ " community for Open Source and " -#~ "Enterprise Puppet." +#~ "Chef works by using custom recipes " +#~ "(configuration elements), implemented in " +#~ "cookbooks. Cookbooks, which are basically " +#~ "packages for infrastructure choices, are " +#~ "usually stored in your Chef server. " +#~ "Read the `Digital Ocean tutorial series" +#~ " `_ on " +#~ "chef to learn how to create a " +#~ "simple Chef Server." #~ msgstr "" #~ msgid "" -#~ "Puppet Agents are installed on nodes " -#~ "whose state needs to be monitored " -#~ "or changed. A desginated server known" -#~ " as the Puppet Master is responsible" -#~ " for orchastrating the agent nodes." +#~ "Agent nodes send basic facts about " +#~ "the system such as to the " +#~ "operating system, kernel, architecture, ip " +#~ "address, hostname etc. to the Puppet " +#~ "Master. The Puppet Master then compiles" +#~ " a catalog with information provided " +#~ "by the agents on how each node " +#~ "should be configured and sends it " +#~ "to the agent. The agent enforces " +#~ "the change as prescribed in the " +#~ "catalog and sends a report back to" +#~ " the Puppet Master." #~ msgstr "" #~ msgid "" -#~ "Facter is an interesting tool that " -#~ "ships with Puppet that pulls basic " -#~ "facts about the System. These facts " -#~ "can be referenced as a variable " -#~ "while writing your Puppet modules." +#~ "Writing Modules in Puppet is pretty " +#~ "straight forward. Puppet Manifests together" +#~ " form Puppet Modules. Puppet manifest " +#~ "end with an extension of ``.pp``. " +#~ "Here is an example of 'Hello " +#~ "World' in Puppet." #~ msgstr "" #~ msgid "" #~ "Here is another example with system " -#~ "based logic. Note how the " -#~ "operatingsystem fact is being used as" -#~ " a variable prepended with the ``$``" -#~ " sign. Similarly, this holds true for" -#~ " other facts such as hostname which" -#~ " can be referenced by ``$hostname``" +#~ "based logic. Note how the operating " +#~ "system fact is being used as a " +#~ "variable prepended with the ``$`` sign." +#~ " Similarly, this holds true for other" +#~ " facts such as hostname which can " +#~ "be referenced by ``$hostname``" #~ msgstr "" #~ msgid "" -#~ "For more information checkout `Puppet " -#~ "Labs Documentation `_" +#~ "There are several resource types for " +#~ "Puppet but the package-file-service " +#~ "paradigm is all you need for " +#~ "undertaking majority of the configuration " +#~ "management. The following Puppet code " +#~ "makes sure that the OpenSSH-Server " +#~ "package is installed in a system " +#~ "and the sshd service is notified " +#~ "to restart everytime the sshd " +#~ "configuration file is changed." #~ msgstr "" -#~ msgid "Write about Buildout" +#~ msgid "" +#~ "`Buildout `_ is an " +#~ "open source software build tool. " +#~ "Buildout is created using the Python " +#~ "programming language. It implements a " +#~ "principle of separation of configuration " +#~ "from the scripts that do the " +#~ "setting up. Buildout is primarily used" +#~ " to download and set up dependencies" +#~ " in Python eggs format of the " +#~ "software being developed or deployed. " +#~ "Recipes for build tasks in any " +#~ "environment can be created, and many " +#~ "are already available." #~ msgstr "" -#~ msgid "`Buildout Website `_" +#~ msgid "" +#~ "Shinken is backwards-compatible with the" +#~ " Nagios configuration standard, and " +#~ "plugins.It works on any operating " +#~ "system, and architecture that supports " +#~ "Python which includes Windows, GNU/Linux, " +#~ "and FreeBSD." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo b/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo index dcecf97dcaa29f66029b80d56e72cf8c1d3bce91..594b3872a3d18226e3741525240fd4247641504a 100644 GIT binary patch delta 849 zcmd_m&1(}u7{~Ev+t`ze4M>cL6a@89(I7%w*zIPTteV}rGfAyd z@;AufRS-cv7S@A`dg(#Wo)p1@c(f-Eo&5FNq13fC}i9U>Zp-{EWc11`d6 z14M~MJ^F=G=barMLO^W)Pe7y4%~q{aADd6 zK88AQDX%VB8|lkzz3Uh=Z!<{(J2H zec~xQR~xP;em4}wg^TH8?x&@$41BUZuk8!T6VFr5pm)8%{HVd&ouI|qal#!|Z*k`B zeaCRLV6~Q%>!RwqdUB*WGzgs_Zo3`96Zf_sH9LNj3wM1}w&E!LFqyH`BYP(OHg(Oi z3hJDFVn0URv7h2zHovXjk6axq&lOAa#kmSAovv0Y>Fj9U>MuJbbw1nuKmNiWp6$_b delta 657 zcmd7Mze@sP9LMqRshQd-mp{RRYzS%4yUU0WhoIF6q97tEHA{!Q(9?zn$F`OSqp2T5 zO+mp$)SyHSEe$m~)IShS&Ox7t1M5%d;NkV$^W*OQrL^S6hu795JU)zJj2r&)=Sd4h zHN4M32YiCd@C63pn1!f=c?yR4nvG}^>uMiSKRkkMcnas?nw@AB=dPfYs6isW>coZw zahJld0Y_j4p1?a?_=Xa^brJ2s=K(Wp)@_E}Lmu`BdDxK044Z&FOq9&9=%5*P0Na!% zI>dyREqTqdbBHps_{}go9>Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/ci.rst:2 +#: ../../scenarios/ci.rst:4 msgid "Continuous Integration" msgstr "" -#: ../../scenarios/ci.rst:6 +#: ../../scenarios/ci.rst:9 +msgid "For advice on writing your tests, see :doc:`/writing/tests`." +msgstr "" + +#: ../../scenarios/ci.rst:14 msgid "Why?" msgstr "" -#: ../../scenarios/ci.rst:8 +#: ../../scenarios/ci.rst:16 msgid "" "Martin Fowler, who first wrote about `Continuous Integration " "`_ (short: " -"CI) together with Kent Beck, describes the CI as follows:" +"CI) together with Kent Beck, describes CI as follows:" msgstr "" -#: ../../scenarios/ci.rst:11 +#: ../../scenarios/ci.rst:19 msgid "" "Continuous Integration is a software development practice where members " "of a team integrate their work frequently, usually each person integrates" @@ -38,89 +51,90 @@ msgid "" " team to develop cohesive software more rapidly." msgstr "" -#: ../../scenarios/ci.rst:20 +#: ../../scenarios/ci.rst:30 msgid "Jenkins" msgstr "" -#: ../../scenarios/ci.rst:22 +#: ../../scenarios/ci.rst:32 msgid "" -"`Jenkins CI `_ is an extensible continuous " -"integration engine. Use it." +"`Jenkins CI `_ is an extensible Continuous " +"Integration engine. Use it." msgstr "" -#: ../../scenarios/ci.rst:28 +#: ../../scenarios/ci.rst:37 msgid "Buildbot" msgstr "" -#: ../../scenarios/ci.rst:30 +#: ../../scenarios/ci.rst:39 msgid "" "`Buildbot `_ is a Python system to " "automate the compile/test cycle to validate code changes." msgstr "" -#: ../../scenarios/ci.rst:36 +#: ../../scenarios/ci.rst:45 msgid "Tox" msgstr "" -#: ../../scenarios/ci.rst:38 +#: ../../scenarios/ci.rst:47 msgid "" "`tox `_ is an automation tool " -"providing packaging, testing and deployment of Python software right from" -" the console or CI server. It is a generic virtualenv management and test" -" command line tool which provides the following features:" +"providing packaging, testing, and deployment of Python software right " +"from the console or CI server. It is a generic virtualenv management and " +"test command line tool which provides the following features:" msgstr "" -#: ../../scenarios/ci.rst:43 +#: ../../scenarios/ci.rst:52 msgid "" "Checking that packages install correctly with different Python versions " "and interpreters" msgstr "" -#: ../../scenarios/ci.rst:45 +#: ../../scenarios/ci.rst:54 msgid "" "Running tests in each of the environments, configuring your test tool of " "choice" msgstr "" -#: ../../scenarios/ci.rst:47 +#: ../../scenarios/ci.rst:56 msgid "" "Acting as a front-end to Continuous Integration servers, reducing " -"boilerplate and merging CI and shell-based testing." +"boilerplate and merging CI and shell-based testing" msgstr "" -#: ../../scenarios/ci.rst:52 +#: ../../scenarios/ci.rst:62 msgid "Travis-CI" msgstr "" -#: ../../scenarios/ci.rst:54 +#: ../../scenarios/ci.rst:64 msgid "" "`Travis-CI `_ is a distributed CI server which " "builds tests for open source projects for free. It provides multiple " "workers to run Python tests on and seamlessly integrates with GitHub. You" " can even have it comment on your Pull Requests whether this particular " -"changeset breaks the build or not. So if you are hosting your code on " -"GitHub, travis-ci is a great and easy way to get started with Continuous " +"changeset breaks the build or not. So, if you are hosting your code on " +"GitHub, Travis-CI is a great and easy way to get started with Continuous " "Integration." msgstr "" -#: ../../scenarios/ci.rst:61 +#: ../../scenarios/ci.rst:71 msgid "" "In order to get started, add a :file:`.travis.yml` file to your " "repository with this example content::" msgstr "" -#: ../../scenarios/ci.rst:77 +#: ../../scenarios/ci.rst:87 msgid "" "This will get your project tested on all the listed Python versions by " -"running the given script, and will only build the master branch. There " -"are a lot more options you can enable, like notifications, before and " -"after steps and much more. The `travis-ci docs `_ explain all of these options, and are very thorough." +"running the given script, and will only build the ``master`` branch. " +"There are a lot more options you can enable, like notifications, before " +"and after steps, and much more. The `Travis-CI docs `_ explain all of these options, and are " +"very thorough." msgstr "" -#: ../../scenarios/ci.rst:83 +#: ../../scenarios/ci.rst:93 msgid "" -"In order to activate testing for your project, go to `the travis-ci site " +"In order to activate testing for your project, go to `the Travis-CI site " "`_ and login with your GitHub account. Then " "activate your project in your profile settings and you're ready to go. " "From now on, your project's tests will be run on every push to GitHub." @@ -130,23 +144,24 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "`Mule " -#~ "`_" -#~ " is a lightweight integration platform " -#~ "that enables you to connect anything," -#~ " anywhere. You can use Mule to " -#~ "intelligently manage message routing, data " -#~ "mapping, orchestration, reliability, security " -#~ "and scalability between nodes. Plug " -#~ "other systems and applications into Mule" -#~ " and let it handle all the " -#~ "communication between systems, enabling you" -#~ " to track and monitor everything that" -#~ " happens." #~ msgstr "" #~ msgid "" -#~ "`tox `_ is an" +#~ "Martin Fowler, who first wrote about " +#~ "`Continuous Integration " +#~ "`_ " +#~ "(short: CI) together with Kent Beck, " +#~ "describes the CI as follows:" +#~ msgstr "" + +#~ msgid "" +#~ "`Jenkins CI `_ is " +#~ "an extensible continuous integration engine." +#~ " Use it." +#~ msgstr "" + +#~ msgid "" +#~ "`tox `_ is an" #~ " automation tool providing packaging, " #~ "testing and deployment of Python " #~ "software right from the console or " @@ -156,3 +171,51 @@ msgstr "" #~ " features:" #~ msgstr "" +#~ msgid "" +#~ "Acting as a front-end to " +#~ "Continuous Integration servers, reducing " +#~ "boilerplate and merging CI and shell-" +#~ "based testing." +#~ msgstr "" + +#~ msgid "" +#~ "`Travis-CI `_ is " +#~ "a distributed CI server which builds " +#~ "tests for open source projects for " +#~ "free. It provides multiple workers to" +#~ " run Python tests on and seamlessly" +#~ " integrates with GitHub. You can even" +#~ " have it comment on your Pull " +#~ "Requests whether this particular changeset " +#~ "breaks the build or not. So if " +#~ "you are hosting your code on " +#~ "GitHub, travis-ci is a great and" +#~ " easy way to get started with " +#~ "Continuous Integration." +#~ msgstr "" + +#~ msgid "" +#~ "This will get your project tested " +#~ "on all the listed Python versions " +#~ "by running the given script, and " +#~ "will only build the master branch. " +#~ "There are a lot more options you" +#~ " can enable, like notifications, before " +#~ "and after steps and much more. The" +#~ " `travis-ci docs `_ explain all of these " +#~ "options, and are very thorough." +#~ msgstr "" + +#~ msgid "" +#~ "In order to activate testing for " +#~ "your project, go to `the travis-ci" +#~ " site `_ and login" +#~ " with your GitHub account. Then " +#~ "activate your project in your profile" +#~ " settings and you're ready to go. " +#~ "From now on, your project's tests " +#~ "will be run on every push to " +#~ "GitHub." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo b/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo index c9e0639fa61287178ec297f644df076045373f1b..ecbdcc99260969f7ff8ebad02aa9a57af683088d 100644 GIT binary patch delta 1499 zcmeH_yKfUQ7{GnBw6r1WBYg%0h6NCL^r5P#Egc#a(W+GCu`oc-xi}ZYoqe*Mwt*qA zlnL?hfW*wgh_V!cgerl=jF^~VgaHHtEPT$j;tyc$;QPt<`SbVtZ2z3NKlyN`K8z5$ z;~><4@f1cY%$HjbN&qhd^T1W$Cd3{99|H&WBUFI@&)X1+fM0>F`w+U`j?i6*dmRWR zfnPciT7dWu*lY`U_8{yH`~{T2`6Q|%$VFR8glhj|ugMXv#^=;z*8biFSYeFe0lnf_RGbZ|a4Z4AYx+fc=tCepF#Tc9;f z9g4*^fv7-3$~7tk%)4p7<#MCF>!Xucsp*Q~_#BheeCmE?>OBqfqVHGwr(OWr~~k!v*Jpsi%ec-qx28($7ay+@PK|Px^kF-UG+YcK?YKDTR!y z3|1b4;!J6kF@O3Wb^a@Ay3+&Gz7T#u^HEbJTLzW^*Tzv)%JGuLo{9OJ;Jg z)Oa`4;T|tdlj1>2VVzuO`Pvvm@i#(Fr_qW@@7GAvxp>j^#!= T_ny|?)B2C6)m{>wh&1{O!DGj% delta 1455 zcmeH`PiqrF9EN9;Hf@upwpG$G2H}>*f)?= zy}%0#zSg{F0C`A zuVun?F_!-V4Wzwi~cePEzSG*fFW3epA?6vxn{vGi)O zPZj4rp7Myg-n!>=f%Pdg0-RCN*KvBVRiX=u%2)^DX>65!PErb@FKGu-iw2fiU`hLG)WnHTVeGzTS8AnypC*%;Xzt3DsX&E zQ9G)~=A+XF60zrc`+Kg((r+`>Zu7mE4*LqaJT_rb{U|@3S`GAGhU?w@a=vneRPQqyF@)MepaE#KS)@%_y7O^ diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po index d1e330630..6143edc86 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po @@ -1,22 +1,31 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/cli.rst:2 +#: ../../scenarios/cli.rst:4 msgid "Command-line Applications" msgstr "" -#: ../../scenarios/cli.rst:4 +#: ../../scenarios/cli.rst:8 msgid "" "Command-line applications, also referred to as `Console Applications " "`_, are computer " @@ -27,122 +36,207 @@ msgid "" "as flags or switches." msgstr "" -#: ../../scenarios/cli.rst:12 +#: ../../scenarios/cli.rst:15 msgid "Some popular command-line applications include:" msgstr "" -#: ../../scenarios/cli.rst:14 +#: ../../scenarios/cli.rst:17 msgid "" -"`Grep `_ - A plain-text data search " +"`grep `_ - A plain-text data search " "utility" msgstr "" -#: ../../scenarios/cli.rst:15 +#: ../../scenarios/cli.rst:18 msgid "`curl `_ - A tool for data transfer with URL syntax" msgstr "" -#: ../../scenarios/cli.rst:16 +#: ../../scenarios/cli.rst:19 msgid "" -"`httpie `_ - A command line HTTP" +"`httpie `_ - A command-line HTTP" " client, a user-friendly cURL replacement" msgstr "" -#: ../../scenarios/cli.rst:18 -msgid "`git `_ - A distributed version control system" +#: ../../scenarios/cli.rst:21 +msgid "`Git `_ - A distributed version control system" msgstr "" -#: ../../scenarios/cli.rst:19 +#: ../../scenarios/cli.rst:22 msgid "" -"`mercurial `_ - A distributed version " +"`Mercurial `_ - A distributed version " "control system primarily written in Python" msgstr "" -#: ../../scenarios/cli.rst:23 -msgid "Clint" -msgstr "" - -#: ../../scenarios/cli.rst:25 -msgid "" -"`clint `_ is a Python module which " -"is filled with very useful tools for developing command-line " -"applications. It supports features such as; CLI colors and indents, " -"simple and powerful column printer, iterator based progress bars and " -"implicit argument handling." -msgstr "" - -#: ../../scenarios/cli.rst:31 +#: ../../scenarios/cli.rst:28 msgid "Click" msgstr "" -#: ../../scenarios/cli.rst:33 +#: ../../scenarios/cli.rst:30 msgid "" -"`click `_ is an upcoming Python package for " +"`click `_ is a Python package for " "creating command-line interfaces in a composable way with as little code " -"as possible. This “Command-line Interface Creation Kit” is highly " +"as possible. This “Command-Line Interface Creation Kit” is highly " "configurable but comes with good defaults out of the box." msgstr "" -#: ../../scenarios/cli.rst:39 +#: ../../scenarios/cli.rst:38 msgid "docopt" msgstr "" -#: ../../scenarios/cli.rst:41 +#: ../../scenarios/cli.rst:40 msgid "" "`docopt `_ is a lightweight, highly Pythonic package " "that allows creating command-line interfaces easily and intuitively, by " "parsing POSIX-style usage instructions." msgstr "" -#: ../../scenarios/cli.rst:46 +#: ../../scenarios/cli.rst:47 msgid "Plac" msgstr "" -#: ../../scenarios/cli.rst:48 +#: ../../scenarios/cli.rst:49 msgid "" -"`Plac `_ is a simple wrapper over the " +"`Plac `_ is a simple wrapper over the " "Python standard library `argparse " "`_, which hides most of " "its complexity by using a declarative interface: the argument parser is " -"inferred rather than written down by imperatively. This module targets " -"especially unsophisticated users, programmers, sys-admins, scientists and" -" in general people writing throw-away scripts for themselves, who choose " -"to create a command-line interface because it is quick and simple." +"inferred rather than written down imperatively. This module targets " +"unsophisticated users, programmers, sysadmins, scientists, and in general" +" people writing throw-away scripts for themselves, who choose to create a" +" command-line interface because it is quick and simple." msgstr "" -#: ../../scenarios/cli.rst:57 +#: ../../scenarios/cli.rst:60 msgid "Cliff" msgstr "" -#: ../../scenarios/cli.rst:59 +#: ../../scenarios/cli.rst:62 msgid "" "`Cliff `_ is a framework for" " building command-line programs. It uses setuptools entry points to " "provide subcommands, output formatters, and other extensions. The " "framework is meant to be used to create multi-level commands such as " -"subversion and git, where the main program handles some basic argument " +"``svn`` and ``git``, where the main program handles some basic argument " "parsing and then invokes a sub-command to do the work." msgstr "" -#: ../../scenarios/cli.rst:67 +#: ../../scenarios/cli.rst:72 msgid "Cement" msgstr "" -#: ../../scenarios/cli.rst:69 +#: ../../scenarios/cli.rst:74 msgid "" "`Cement `_ is an advanced CLI Application " -"Framework. Its goal is to introduce a standard, and feature-full platform" -" for both simple and complex command line applications as well as support" -" rapid development needs without sacrificing quality. Cement is flexible," -" and it's use cases span from the simplicity of a micro-framework to the " -"complexity of a meg-framework." +"Framework. Its goal is to introduce a standard and feature-full platform " +"for both simple and complex command line applications as well as support " +"rapid development needs without sacrificing quality. Cement is flexible, " +"and its use cases span from the simplicity of a micro-framework to the " +"complexity of a mega-framework." +msgstr "" + +#: ../../scenarios/cli.rst:84 +msgid "Python Fire" msgstr "" +#: ../../scenarios/cli.rst:86 +msgid "" +"`Python Fire `_ is a library for " +"automatically generating command-line interfaces from absolutely any " +"Python object. It can help debug Python code more easily from the command" +" line, create CLI interfaces to existing code, allow you to interactively" +" explore code in a REPL, and simplify transitioning between Python and " +"Bash (or any other shell)." +msgstr "" + +#~ msgid "" +#~ msgstr "" + +#~ msgid "" +#~ "`Grep `_ - A " +#~ "plain-text data search utility" +#~ msgstr "" + +#~ msgid "" +#~ "`httpie `_ - " +#~ "A command line HTTP client, a " +#~ "user-friendly cURL replacement" +#~ msgstr "" + +#~ msgid "`git `_ - A distributed version control system" +#~ msgstr "" + +#~ msgid "" +#~ "`mercurial `_ - " +#~ "A distributed version control system " +#~ "primarily written in Python" +#~ msgstr "" + +#~ msgid "Clint" +#~ msgstr "" + +#~ msgid "" +#~ "`clint `_ is a" +#~ " Python module which is filled with" +#~ " very useful tools for developing " +#~ "command-line applications. It supports " +#~ "features such as; CLI colors and " +#~ "indents, simple and powerful column " +#~ "printer, iterator based progress bars " +#~ "and implicit argument handling." +#~ msgstr "" + +#~ msgid "" +#~ "`click `_ is an " +#~ "upcoming Python package for creating " +#~ "command-line interfaces in a composable " +#~ "way with as little code as " +#~ "possible. This “Command-line Interface " +#~ "Creation Kit” is highly configurable but" +#~ " comes with good defaults out of " +#~ "the box." +#~ msgstr "" + +#~ msgid "" +#~ "`Plac `_ is a " +#~ "simple wrapper over the Python standard" +#~ " library `argparse " +#~ "`_, which " +#~ "hides most of its complexity by " +#~ "using a declarative interface: the " +#~ "argument parser is inferred rather than" +#~ " written down by imperatively. This " +#~ "module targets especially unsophisticated " +#~ "users, programmers, sys-admins, scientists " +#~ "and in general people writing throw-" +#~ "away scripts for themselves, who choose" +#~ " to create a command-line interface" +#~ " because it is quick and simple." +#~ msgstr "" + #~ msgid "" +#~ "`Cliff `_ is" +#~ " a framework for building command-" +#~ "line programs. It uses setuptools entry" +#~ " points to provide subcommands, output " +#~ "formatters, and other extensions. The " +#~ "framework is meant to be used to" +#~ " create multi-level commands such as" +#~ " subversion and git, where the main" +#~ " program handles some basic argument " +#~ "parsing and then invokes a sub-" +#~ "command to do the work." #~ msgstr "" #~ msgid "" -#~ "`mercurial `_ - A " -#~ "distributed version control system primarily" -#~ " written in Python" +#~ "`Cement `_ is an " +#~ "advanced CLI Application Framework. Its " +#~ "goal is to introduce a standard, " +#~ "and feature-full platform for both " +#~ "simple and complex command line " +#~ "applications as well as support rapid" +#~ " development needs without sacrificing " +#~ "quality. Cement is flexible, and it's" +#~ " use cases span from the simplicity" +#~ " of a micro-framework to the " +#~ "complexity of a meg-framework." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo b/docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo index 65f2fc83ea03ba2b71403249b75c41f789ae9721..3af336a9024145e672a83c32ac18ac86a674d5a6 100644 GIT binary patch delta 931 zcmeH@yKWRQ6ox&URg~Q<$rJbLIM)M_B~ z7LJ`mD1&ou9-*heXDx)_iW(;nI&gi!RfwN2A#@V>8h8r$4(Re9fXl#7zz*;m@I3Gb z@B*+6MGU+IYyyYNh)#v>K*AYeKxgFR%FKuXb!X(u+RVuPv-M@K(U_3AUs1GmbBM2J z)|O_IQe#=Nryg@X%2nkjs-Ta?+*qNcp}lYrhJyjEGG>V|gh|56G8YMRbrK87^ga>N z!fTdr!eVhFdN9Gw_easTV(GSsHFW$Lma4?~g-EnAYGkL=xFlmkDD=4t6Gy-RQJ+`GF&Z*6Rl zSs#Uw{E460A_swbYxUTxzs?_f3$PKHGM(0+7rNeh7c-0XSXxnV9}g{#wUE1}zStgm zla({AiC%osbh58H@lr1&!4(qrad2(3->=Kgy4URaLHkYD`@j2tv-{Id78l%RD)muf I_e*ZjZ$|(dfB*mh delta 430 zcmcJ}ze>YU6vy#%lPD@}w6>*H6z(FZ`A@5en{I&)E3*jj|V*Zx9+X1>V;foYj4eu{hhb~cvo>Yd2(I-wgoamu5Zd#6#~@8xE7!kC&X z^$E+3hQgM)lkj-dOTwb%7 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/clibs.po b/docs/locale/ko/LC_MESSAGES/scenarios/clibs.po index 8ca312e0d..a47573a93 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/clibs.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/clibs.po @@ -1,86 +1,91 @@ # SOME DESCRIPTIVE TITLE. -# Copyright (C) 2016. A Kenneth Reitz -# Project. CC -# BY-NC-SA 3.0 +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 # This file is distributed under the same license as the pythonguide # package. -# FIRST AUTHOR , 2016. +# FIRST AUTHOR , 2021. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/clibs.rst:2 +#: ../../scenarios/clibs.rst:4 msgid "Interfacing with C/C++ Libraries" msgstr "" -#: ../../scenarios/clibs.rst:5 +#: ../../scenarios/clibs.rst:11 msgid "C Foreign Function Interface" msgstr "" -#: ../../scenarios/clibs.rst:7 +#: ../../scenarios/clibs.rst:13 msgid "" "`CFFI `_ provides a simple to use" " mechanism for interfacing with C from both CPython and PyPy. It supports" -" two modes: an inline ABI compatibility mode (example provided below), " -"which allows you to dynamically load and run functions from executable " -"modules (essentially exposing the same functionality as LoadLibrary or " -"dlopen), and an API mode, which allows you to build C extension modules." +" two modes: an inline `ABI `_ compatibility mode " +"(example provided below), which allows you to dynamically load and run " +"functions from executable modules (essentially exposing the same " +"functionality as `LoadLibrary `_ or " +"`dlopen `_), and an API" +" mode, which allows you to build C extension modules." msgstr "" -#: ../../scenarios/clibs.rst:15 +#: ../../scenarios/clibs.rst:21 msgid "ABI Interaction" msgstr "" -#: ../../scenarios/clibs.rst:29 +#: ../../scenarios/clibs.rst:37 msgid "ctypes" msgstr "" -#: ../../scenarios/clibs.rst:31 +#: ../../scenarios/clibs.rst:39 msgid "" "`ctypes `_ is the de facto" -" library for interfacing with C/C++ from CPython, and it provides not " -"only full access to the native C interface of most major operating " -"systems (e.g., kernel32 on Windows, or libc on \\*nix), but also provides" -" support for loading and interfacing with dynamic libraries, such as DLLs" -" or shared objects at runtime. It does bring along with it a whole host " -"of types for interacting with system APIs, and allows you to rather " -"easily define your own complex types, such as structs and unions, and " -"allows you to modify things such as padding and alignment, if needed. It " -"can be a bit crufty to use, but in conjunction with the `struct " -"`_ module, you are " +" standard library for interfacing with C/C++ from CPython, and it " +"provides not only full access to the native C interface of most major " +"operating systems (e.g., kernel32 on Windows, or libc on \\*nix), but " +"also provides support for loading and interfacing with dynamic libraries," +" such as DLLs or shared objects, at runtime. It brings along with it a " +"whole host of types for interacting with system APIs, and allows you to " +"rather easily define your own complex types, such as structs and unions, " +"and allows you to modify things such as padding and alignment, if needed." +" It can be a bit crufty to use, but in conjunction with the `struct " +"`_ module, you are " "essentially provided full control over how your data types get translated" -" into something usable by a pure C(++) method." +" into something usable by a pure C/C++ method." msgstr "" -#: ../../scenarios/clibs.rst:45 +#: ../../scenarios/clibs.rst:53 msgid "Struct Equivalents" msgstr "" -#: ../../scenarios/clibs.rst:47 +#: ../../scenarios/clibs.rst:55 msgid ":file:`MyStruct.h`" msgstr "" -#: ../../scenarios/clibs.rst:57 +#: ../../scenarios/clibs.rst:65 msgid ":file:`MyStruct.py`" msgstr "" -#: ../../scenarios/clibs.rst:68 +#: ../../scenarios/clibs.rst:78 msgid "SWIG" msgstr "" -#: ../../scenarios/clibs.rst:70 +#: ../../scenarios/clibs.rst:80 msgid "" "`SWIG `_, though not strictly Python focused (it " "supports a large number of scripting languages), is a tool for generating" @@ -88,7 +93,7 @@ msgid "" "extremely simple to use: the consumer simply needs to define an interface" " file (detailed in the tutorial and documentations), include the " "requisite C/C++ headers, and run the build tool against them. While it " -"does have some limits, (it currently seems to have issues with a small " +"does have some limits (it currently seems to have issues with a small " "subset of newer C++ features, and getting template-heavy code to work can" " be a bit verbose), it provides a great deal of power and exposes lots of" " features to Python with little effort. Additionally, you can easily " @@ -97,29 +102,114 @@ msgid "" " catchable by Python, etc." msgstr "" -#: ../../scenarios/clibs.rst:84 +#: ../../scenarios/clibs.rst:94 msgid "Example: Overloading __repr__" msgstr "" -#: ../../scenarios/clibs.rst:86 +#: ../../scenarios/clibs.rst:96 msgid ":file:`MyClass.h`" msgstr "" -#: ../../scenarios/clibs.rst:99 +#: ../../scenarios/clibs.rst:110 msgid ":file:`myclass.i`" msgstr "" -#: ../../scenarios/clibs.rst:123 +#: ../../scenarios/clibs.rst:135 msgid "Boost.Python" msgstr "" -#: ../../scenarios/clibs.rst:125 +#: ../../scenarios/clibs.rst:137 msgid "" "`Boost.Python `_ " "requires a bit more manual work to expose C++ object functionality, but " "it is capable of providing all the same features SWIG does and then some," " to include providing wrappers to access PyObjects in C++, extracting " -"SWIG- wrapper objects, and even embedding bits of Python into your C++ " +"SWIG wrapper objects, and even embedding bits of Python into your C++ " "code." msgstr "" +#~ msgid "" +#~ "`CFFI `_ provides" +#~ " a simple to use mechanism for " +#~ "interfacing with C from both CPython " +#~ "and PyPy. It supports two modes: " +#~ "an inline ABI compatibility mode " +#~ "(example provided below), which allows " +#~ "you to dynamically load and run " +#~ "functions from executable modules (essentially" +#~ " exposing the same functionality as " +#~ "LoadLibrary or dlopen), and an API " +#~ "mode, which allows you to build C" +#~ " extension modules." +#~ msgstr "" + +#~ msgid "" +#~ "`ctypes `_ " +#~ "is the de facto library for " +#~ "interfacing with C/C++ from CPython, and" +#~ " it provides not only full access " +#~ "to the native C interface of most" +#~ " major operating systems (e.g., kernel32" +#~ " on Windows, or libc on \\*nix), " +#~ "but also provides support for loading" +#~ " and interfacing with dynamic libraries," +#~ " such as DLLs or shared objects " +#~ "at runtime. It does bring along " +#~ "with it a whole host of types " +#~ "for interacting with system APIs, and" +#~ " allows you to rather easily define" +#~ " your own complex types, such as " +#~ "structs and unions, and allows you " +#~ "to modify things such as padding " +#~ "and alignment, if needed. It can " +#~ "be a bit crufty to use, but " +#~ "in conjunction with the `struct " +#~ "`_ module, " +#~ "you are essentially provided full " +#~ "control over how your data types " +#~ "get translated into something usable by" +#~ " a pure C(++) method." +#~ msgstr "" + +#~ msgid "" +#~ "`SWIG `_, though not " +#~ "strictly Python focused (it supports a" +#~ " large number of scripting languages), " +#~ "is a tool for generating bindings " +#~ "for interpreted languages from C/C++ " +#~ "header files. It is extremely simple " +#~ "to use: the consumer simply needs " +#~ "to define an interface file (detailed" +#~ " in the tutorial and documentations), " +#~ "include the requisite C/C++ headers, and" +#~ " run the build tool against them. " +#~ "While it does have some limits, " +#~ "(it currently seems to have issues " +#~ "with a small subset of newer C++" +#~ " features, and getting template-heavy " +#~ "code to work can be a bit " +#~ "verbose), it provides a great deal " +#~ "of power and exposes lots of " +#~ "features to Python with little effort." +#~ " Additionally, you can easily extend " +#~ "the bindings SWIG creates (in the " +#~ "interface file) to overload operators " +#~ "and built-in methods, effectively re-" +#~ " cast C++ exceptions to be catchable" +#~ " by Python, etc." +#~ msgstr "" + +#~ msgid "" +#~ "`Boost.Python " +#~ "`_ " +#~ "requires a bit more manual work to" +#~ " expose C++ object functionality, but " +#~ "it is capable of providing all the" +#~ " same features SWIG does and then " +#~ "some, to include providing wrappers to" +#~ " access PyObjects in C++, extracting " +#~ "SWIG- wrapper objects, and even " +#~ "embedding bits of Python into your " +#~ "C++ code." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.mo b/docs/locale/ko/LC_MESSAGES/scenarios/client.mo index 47618612f3b0aebbe2adc56e3a16bc540d6e235b..645355df0fd2c6f5bdc22332336917620b4c6dff 100644 GIT binary patch delta 225 zcmeyX_*HSjlzJ@&28Q!&3=9#B3=F@3bTyC;=3rnD28nYrFt7mW$3R*HNWTEmflmlhj|$ofJQQO@i8#C1L=uC+5|}71k%<( znvb7Bj6n^^@Zx7+06C-(NP`?QXR{{bPFC*xqICU&qWrAX*7U85!yt80#9E cDi~N;nVN3i&LPgoY@}zf`6B0bbk%8$0CguR^8f$< delta 240 zcmeyW_*ZellzKe|28Q!&3=9#B3=IE(bTyC;=U`wE28v(iWME(c($9gk2#|gQqy>TU zj9d&1KqU;q+zbq99_ zwg%Ed{0x!|YCwh`KLZ2EA*DbXG}ng1(}=s`O_FD m2Xh4R8Jg)D8t57tDi~N;85nQg%puOmY^-Op`7Gyl?79GJku7on diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.po b/docs/locale/ko/LC_MESSAGES/scenarios/client.po index f7c460ef7..6596445aa 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/client.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/client.po @@ -1,37 +1,46 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/client.rst:2 +#: ../../scenarios/client.rst:4 msgid "Network Applications" msgstr "" -#: ../../scenarios/client.rst:7 +#: ../../scenarios/client.rst:11 msgid "HTTP" msgstr "" -#: ../../scenarios/client.rst:9 +#: ../../scenarios/client.rst:13 msgid "" "The Hypertext Transfer Protocol (HTTP) is an application protocol for " "distributed, collaborative, hypermedia information systems. HTTP is the " "foundation of data communication for the World Wide Web." msgstr "" -#: ../../scenarios/client.rst:14 +#: ../../scenarios/client.rst:18 msgid "Requests" msgstr "" -#: ../../scenarios/client.rst:16 +#: ../../scenarios/client.rst:20 msgid "" "Python’s standard urllib2 module provides most of the HTTP capabilities " "you need, but the API is thoroughly broken. It was built for a different " @@ -39,7 +48,7 @@ msgid "" "method overrides) to perform the simplest of tasks." msgstr "" -#: ../../scenarios/client.rst:21 +#: ../../scenarios/client.rst:25 msgid "" "Requests takes all of the work out of Python HTTP — making your " "integration with web services seamless. There’s no need to manually add " @@ -48,27 +57,27 @@ msgid "" " is embedded within Requests." msgstr "" -#: ../../scenarios/client.rst:27 +#: ../../scenarios/client.rst:31 msgid "`Documentation `_" msgstr "" -#: ../../scenarios/client.rst:28 -msgid "`PyPi `_" +#: ../../scenarios/client.rst:32 +msgid "`PyPi `_" msgstr "" -#: ../../scenarios/client.rst:29 +#: ../../scenarios/client.rst:33 msgid "`GitHub `_" msgstr "" -#: ../../scenarios/client.rst:33 +#: ../../scenarios/client.rst:38 msgid "Distributed Systems" msgstr "" -#: ../../scenarios/client.rst:37 +#: ../../scenarios/client.rst:42 msgid "ZeroMQ" msgstr "" -#: ../../scenarios/client.rst:39 +#: ../../scenarios/client.rst:44 msgid "" "ØMQ (also spelled ZeroMQ, 0MQ or ZMQ) is a high-performance asynchronous " "messaging library aimed at use in scalable distributed or concurrent " @@ -77,11 +86,11 @@ msgid "" "library is designed to have a familiar socket-style API." msgstr "" -#: ../../scenarios/client.rst:46 +#: ../../scenarios/client.rst:51 msgid "RabbitMQ" msgstr "" -#: ../../scenarios/client.rst:48 +#: ../../scenarios/client.rst:53 msgid "" "RabbitMQ is an open source message broker software that implements the " "Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written" @@ -91,24 +100,17 @@ msgid "" "languages." msgstr "" -#: ../../scenarios/client.rst:54 +#: ../../scenarios/client.rst:59 msgid "`Homepage `_" msgstr "" -#: ../../scenarios/client.rst:55 +#: ../../scenarios/client.rst:60 msgid "`GitHub Organization `_" msgstr "" #~ msgid "" -#~ "RabbitMQ is an open source message " -#~ "broker software that implements the " -#~ "Advanced Message Queuing Protocol (AMQP). " -#~ "The RabbitMQ server is written in " -#~ "the Erlang programming language and is" -#~ " built on the Open Telecom Platform" -#~ " framework for clustering and failover. " -#~ "Client libraries to interface with the" -#~ " broker are available for all major" -#~ " programming languages." +#~ msgstr "" + +#~ msgid "`PyPi `_" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo index 6a6bbb3363b7c74531ab89194eac11a33c47a6c1..b47fab70afccacb0c2dcd19e0e82412ea2208606 100644 GIT binary patch literal 4157 zcmeHKO^@3|7&cIW2wxIs4zH?8wCdW>Rx0*8Ko!?feR9?feF5?OcFzYiAqM z+W8(o*3M6m*3K7LWar1PIXfRfdR@w;;uOieR6ON{7IRKV{c(TPqj7CgSz zGm&u}uqt4&UCLB#Z8-0r_&SVKT^ji~2UC-0@GzhiEZd}6UcyZsDN!0tGbQuJUH+hX zp-B|Y*x|+iGt0E3Qpvf9dHm1#TzGa>6mhMEg}?@MjPX-Kzj7-~(%*gOWC8#I;3+i~*FONI9} zWehr3X**9*#wyJNZ?{1_QLIdBuji0kNzgLpRB5n}Qjw&T@j1^(*Llv35)tvDNtoq< z;*ltM$8*%3E;;KBiYTir*wdO~K4Vp8XaSx#j2D^J?7k2#yhs)^kyOZnODknEg5!XK zbXAs88R&AyQXIqNP

z9#Wh?+-7mAIX-ye&=ZFqM!jV#mTv#poNpScL8q3JGgYC->m2o|;18+@n zeQIDmjD_n`z(|r=NEC35MrxC{?n25wL1Ja4DYpeK(BkMKCNV;e$ntu%yisrx7Ai_K z4RpmE1YDv;Jhr@Tv^H^0v-9OdRVEj{>kVrm0jo89ys=}PKZyNz-QLkz7IIRd9aB4K z2b-+}Zfo2h=|sf-tt!#}M0Th(-kS_ZCqIB zAMm-bThnsgd%f;~Kic>Ay4XNFqrv6(_wV*vLu`%yM6p7H7gBZT_Pybd?sh@&YrRo- zFud8_+dJqT9^SyxBB@vclON0Dfj{9aw=;BYIJ}vOW&>@Fvr4hdzb(aAc47S2u?rw$=!rwkM_4o_#NjI&e5zx)evcFM5- MOU_Oi|NB$M-$;apxc~qF delta 725 zcmdUrze~eF6vwYx+xi0w3hLnSz_m>pD=MY9WGXHloV90?_5x`x++7-?L;r{%IJ&u5 z9NZNB8w7DG3T|B;+f`~zG(`0{zjd-u8H9^tw?d|%055M1+^O^lsxeytmTdu$Y+1aXCny%l+hI(cEbHQc=&N%H=+3$Jr$5n2BDv9Rl@j zXvghXBb}cfG?`L?Z0LFvMVjro>P+(;rAyvb5fzRe#MbmW{h)IKu0#h{%n{(Zr-F*O z0ugg927%xM*LEaG#|ni5j7kRG(6`c;q^E3X4XAK=D8cckN^Ai2dR(}Q^`!pC diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po index c10e6f930..e9abcec47 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.po @@ -1,73 +1,130 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/crypto.rst:2 ../../scenarios/crypto.rst:5 +#: ../../scenarios/crypto.rst:4 msgid "Cryptography" msgstr "" -#: ../../scenarios/crypto.rst:7 +#: ../../scenarios/crypto.rst:11 +msgid "cryptography" +msgstr "" + +#: ../../scenarios/crypto.rst:13 msgid "" -"`Cryptography `_ is an actively " +"`cryptography `_ is an actively " "developed library that provides cryptographic recipes and primitives. It " -"supports Python 2.6-2.7, Python 3.3+ and PyPy." +"supports Python 2.6-2.7, Python 3.3+, and PyPy." msgstr "" -#: ../../scenarios/crypto.rst:12 +#: ../../scenarios/crypto.rst:18 msgid "" -"Cryptography is divided into two layers of recipes and hazardous " -"materials (hazmat). The recipes layer provides simple API for proper " +"cryptography is divided into two layers of recipes and hazardous " +"materials (hazmat). The recipes layer provides a simple API for proper " "symmetric encryption and the hazmat layer provides low-level " "cryptographic primitives." msgstr "" -#: ../../scenarios/crypto.rst:19 ../../scenarios/crypto.rst:49 +#: ../../scenarios/crypto.rst:25 ../../scenarios/crypto.rst:57 msgid "Installation" msgstr "" -#: ../../scenarios/crypto.rst:26 ../../scenarios/crypto.rst:56 +#: ../../scenarios/crypto.rst:32 ../../scenarios/crypto.rst:62 msgid "Example" msgstr "" -#: ../../scenarios/crypto.rst:28 +#: ../../scenarios/crypto.rst:34 msgid "Example code using high level symmetric encryption recipe:" msgstr "" -#: ../../scenarios/crypto.rst:42 -msgid "PyCrypto" +#: ../../scenarios/crypto.rst:47 +msgid "GPGME bindings" +msgstr "" + +#: ../../scenarios/crypto.rst:49 +msgid "" +"The `GPGME Python bindings " +"`_ provide" +" Pythonic access to `GPG Made Easy " +"`_, a C API for the " +"entire GNU Privacy Guard suite of projects, including GPG, libgcrypt, and" +" gpgsm (the S/MIME engine). It supports Python 2.6, 2.7, 3.4, and above. " +"Depends on the SWIG C interface for Python as well as the GnuPG software " +"and libraries." +msgstr "" + +#: ../../scenarios/crypto.rst:52 +msgid "" +"A more comprehensive `GPGME Python Bindings HOWTO " +"`_" +" is available with the source, and an HTML version is available `at " +"http://files.au.adversary.org " +"`_. Python" +" 3 sample scripts from the examples in the HOWTO are also provided with " +"the source and are accessible `at gnupg.org " +"`_." msgstr "" -#: ../../scenarios/crypto.rst:44 +#: ../../scenarios/crypto.rst:54 msgid "" -"`PyCrypto `_ is another " -"library, which provides secure hash functions and various encryption " -"algorithms. It supports Python version 2.1 through 3.3." +"Available under the same terms as the rest of the GnuPG Project: GPLv2 " +"and LGPLv2.1, both with the \"or any later version\" clause." +msgstr "" + +#: ../../scenarios/crypto.rst:59 +msgid "" +"Included by default when compiling GPGME if the configure script locates " +"a supported python version (which it will if it's in $PATH during " +"configuration)." msgstr "" +#~ msgid "" +#~ msgstr "" + #~ msgid "" #~ "`Cryptography `_ is" #~ " an actively developed library that " #~ "provides cryptographic recipes and primitives." #~ " It supports Python 2.6-2.7, Python " -#~ "3.2+ and PyPy." +#~ "3.3+ and PyPy." #~ msgstr "" #~ msgid "" #~ "Cryptography is divided into two layers" #~ " of recipes and hazardous materials " -#~ "(hazmat). The recipes layer provides " +#~ "(hazmat). The recipes layer provides " #~ "simple API for proper symmetric " #~ "encryption and the hazmat layer provides" #~ " low-level cryptographic primitives." #~ msgstr "" +#~ msgid "PyCrypto" +#~ msgstr "" + +#~ msgid "" +#~ "`PyCrypto `_ is" +#~ " another library, which provides secure " +#~ "hash functions and various encryption " +#~ "algorithms. It supports Python version " +#~ "2.1 through 3.3." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.mo b/docs/locale/ko/LC_MESSAGES/scenarios/db.mo index 45440de18de2d2bb01856438a0b8e21251f0d65f..c2b96773fca131bd7b4d80d3271b2071bf79f667 100644 GIT binary patch delta 1234 zcmeH_O=}ZD9EWGy8m%vB+9uhydKkQjkheC5loC8hFM_c#`2g*jPLk2hZrq(%QiXW& z;Kf51JrtxTZ!HL`(3^S^@z6t{NG;-_Ck0EzgHRNIlPOs619)*^dFJi^^6YFUy`OD= z9O`>S@QmU;gLg+x4n3<9P29#X4SoACTypAac-7!mm1XN^@ho4p(SdzMY$!IQ!&bnR&0mjoMG`rZdJQ! zo30!+49BQ59OH{@K1OROxZrRh*bR%Kg9N=Sx|uD+2p*p)=BcO|-L*!Io3?8MWy3UE z)U@Lj9;4Tr*cH?j+%##!VJ@?TYz+>^;g+~{&}PDW7+&*p5m(d7-m|E#oBSrD`BwJ> z6l_;i9VW-#W;8pdK1rUJ9h9yJ*&{76=QeXZUEd0+?LR^OFa5ms*Q$46bjAC2vKX8g jkEhb{@eEB(PGvHF@szIhP9##k8I1hDobEsLZ!YII-_lE9 delta 716 zcmd7Ozb^w}9LMqJs(!TUt}Sg9!xITYT4__M60xvI+Mq_3qZbmcO z#E-$P%o4E(3k{=4BnDH%z~}Kq!hhhB%j=$Rd(ZREeYD?179QQ!O@hmZyAJm)U;Mh3 zB|^HeUV$a>658N3w8K1P@CnA?oQ05HXu>^MfTeJ|NVpIAdj}BvED#e9Qy84XSJ+}D zq#XK-32|c61~?0&IQ;?h6YQ3U%VmUEFrVPN;E+k|$^%~o1 z>mCu_=S8@J@;JUdFTe8Rv#l#t7Ix%HvQJmREV%0}QkvCxw(JINr2W(C*p$Y0yvI_& zRBeXT)RWQmOq!*MZ yitpvmAIxq?v-EewMr!w%S5C^|XfPZKhQl-z>kLKA8QCWlMOxd;HO2FPO1}W>b(nep diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.po b/docs/locale/ko/LC_MESSAGES/scenarios/db.po index ed28f3372..ceb1ad22a 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/db.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/db.po @@ -1,34 +1,43 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/db.rst:2 +#: ../../scenarios/db.rst:4 msgid "Databases" msgstr "" -#: ../../scenarios/db.rst:5 +#: ../../scenarios/db.rst:11 msgid "DB-API" msgstr "" -#: ../../scenarios/db.rst:7 +#: ../../scenarios/db.rst:13 msgid "" "The Python Database API (DB-API) defines a standard interface for Python " "database access modules. It's documented in :pep:`249`. Nearly all Python" -" database modules such as `sqlite3`, `psycopg` and `mysql-python` conform" -" to this interface." +" database modules such as `sqlite3`, `psycopg`, and `mysql-python` " +"conform to this interface." msgstr "" -#: ../../scenarios/db.rst:12 +#: ../../scenarios/db.rst:18 msgid "" "Tutorials that explain how to work with modules that conform to this " "interface can be found `here " @@ -38,11 +47,11 @@ msgid "" "/DB-API.html>`__." msgstr "" -#: ../../scenarios/db.rst:17 +#: ../../scenarios/db.rst:25 msgid "SQLAlchemy" msgstr "" -#: ../../scenarios/db.rst:19 +#: ../../scenarios/db.rst:27 msgid "" "`SQLAlchemy `_ is a commonly used database " "toolkit. Unlike many database libraries it not only provides an ORM layer" @@ -50,106 +59,183 @@ msgid "" "SQL." msgstr "" -#: ../../scenarios/db.rst:28 +#: ../../scenarios/db.rst:38 msgid "Records" msgstr "" -#: ../../scenarios/db.rst:30 +#: ../../scenarios/db.rst:40 msgid "" "`Records `_ is minimalist SQL " "library, designed for sending raw SQL queries to various databases. Data " -"can be used programmatically, or exported to a number of useful data " +"can be used programmatically or exported to a number of useful data " "formats." msgstr "" -#: ../../scenarios/db.rst:38 +#: ../../scenarios/db.rst:48 msgid "Also included is a command-line tool for exporting SQL data." msgstr "" -#: ../../scenarios/db.rst:41 +#: ../../scenarios/db.rst:53 +msgid "PugSQL" +msgstr "" + +#: ../../scenarios/db.rst:55 +msgid "" +"`PugSQL `_ is a simple Python interface for " +"organizing and using parameterized, handwritten SQL. It is an anti-ORM " +"that is philosophically lo-fi, but it still presents a clean interface in" +" Python." +msgstr "" + +#: ../../scenarios/db.rst:66 msgid "Django ORM" msgstr "" -#: ../../scenarios/db.rst:43 +#: ../../scenarios/db.rst:68 msgid "" "The Django ORM is the interface used by `Django " -"`_ to provide database access." +"`_ to provide database access." msgstr "" -#: ../../scenarios/db.rst:46 +#: ../../scenarios/db.rst:71 msgid "" "It's based on the idea of `models `_, an abstraction that makes it easier to manipulate " "data in Python." msgstr "" -#: ../../scenarios/db.rst:50 +#: ../../scenarios/db.rst:75 msgid "The basics:" msgstr "" -#: ../../scenarios/db.rst:52 +#: ../../scenarios/db.rst:77 msgid "Each model is a Python class that subclasses django.db.models.Model." msgstr "" -#: ../../scenarios/db.rst:53 +#: ../../scenarios/db.rst:78 msgid "Each attribute of the model represents a database field." msgstr "" -#: ../../scenarios/db.rst:54 +#: ../../scenarios/db.rst:79 msgid "" "Django gives you an automatically-generated database-access API; see " "`Making queries " "`__." msgstr "" -#: ../../scenarios/db.rst:58 +#: ../../scenarios/db.rst:85 msgid "peewee" msgstr "" -#: ../../scenarios/db.rst:60 +#: ../../scenarios/db.rst:87 msgid "" "`peewee `_ is another ORM with a " "focus on being lightweight with support for Python 2.6+ and 3.2+ which " -"supports SQLite, MySQL and Postgres by default. The `model layer " +"supports SQLite, MySQL, and PostgreSQL by default. The `model layer " "`_ is similar to that of the Django ORM and it has `SQL-like " "methods `_ to query data. While SQLite, MySQL and Postgres are " -"supported out-of-the-box, there is a `collection of add-ons " +"#retrieving-data>`_ to query data. While SQLite, MySQL, and PostgreSQL " +"are supported out-of-the-box, there is a `collection of add-ons " "`_" " available." msgstr "" -#: ../../scenarios/db.rst:71 +#: ../../scenarios/db.rst:100 msgid "PonyORM" msgstr "" -#: ../../scenarios/db.rst:73 +#: ../../scenarios/db.rst:102 msgid "" "`PonyORM `_ is an ORM that takes a different " "approach to querying the database. Instead of writing an SQL-like " "language or boolean expressions, Python's generator syntax is used. " -"There's also an graphical schema editor that can generate PonyORM " -"entities for you. It supports Python 2.6+ and Python 3.3+ and can connect" -" to SQLite, MySQL, Postgres & Oracle" +"There's also a graphical schema editor that can generate PonyORM entities" +" for you. It supports Python 2.6+ and Python 3.3+ and can connect to " +"SQLite, MySQL, PostgreSQL, and Oracle." msgstr "" -#: ../../scenarios/db.rst:82 +#: ../../scenarios/db.rst:111 msgid "SQLObject" msgstr "" -#: ../../scenarios/db.rst:84 +#: ../../scenarios/db.rst:113 msgid "" "`SQLObject `_ is yet another ORM. It supports " -"a wide variety of databases: Common database systems MySQL, Postgres and " -"SQLite and more exotic systems like SAP DB, SyBase and MSSQL. It only " -"supports Python 2 from Python 2.6 upwards." +"a wide variety of databases: common database systems like MySQL, " +"PostgreSQL, and SQLite and more exotic systems like SAP DB, SyBase, and " +"Microsoft SQL Server. It only supports Python 2 from Python 2.6 upwards." msgstr "" #~ msgid "" -#~ "It's based on the idea of `models" -#~ " `_, an abstraction that makes it" -#~ " easier to manipulate data in Python." +#~ msgstr "" + +#~ msgid "" +#~ "The Python Database API (DB-API) " +#~ "defines a standard interface for Python" +#~ " database access modules. It's documented" +#~ " in :pep:`249`. Nearly all Python " +#~ "database modules such as `sqlite3`, " +#~ "`psycopg` and `mysql-python` conform to" +#~ " this interface." +#~ msgstr "" + +#~ msgid "" +#~ "`Records `_ is" +#~ " minimalist SQL library, designed for " +#~ "sending raw SQL queries to various " +#~ "databases. Data can be used " +#~ "programmatically, or exported to a " +#~ "number of useful data formats." +#~ msgstr "" + +#~ msgid "" +#~ "The Django ORM is the interface " +#~ "used by `Django `_ " +#~ "to provide database access." +#~ msgstr "" + +#~ msgid "" +#~ "`peewee `_ is" +#~ " another ORM with a focus on " +#~ "being lightweight with support for " +#~ "Python 2.6+ and 3.2+ which supports " +#~ "SQLite, MySQL and Postgres by default." +#~ " The `model layer " +#~ "`_ is similar to that " +#~ "of the Django ORM and it has " +#~ "`SQL-like methods " +#~ "`_ to query data. While" +#~ " SQLite, MySQL and Postgres are " +#~ "supported out-of-the-box, there is" +#~ " a `collection of add-ons " +#~ "`_" +#~ " available." +#~ msgstr "" + +#~ msgid "" +#~ "`PonyORM `_ is an ORM " +#~ "that takes a different approach to " +#~ "querying the database. Instead of " +#~ "writing an SQL-like language or " +#~ "boolean expressions, Python's generator syntax" +#~ " is used. There's also an graphical" +#~ " schema editor that can generate " +#~ "PonyORM entities for you. It supports" +#~ " Python 2.6+ and Python 3.3+ and " +#~ "can connect to SQLite, MySQL, Postgres" +#~ " & Oracle" +#~ msgstr "" + +#~ msgid "" +#~ "`SQLObject `_ is yet " +#~ "another ORM. It supports a wide " +#~ "variety of databases: Common database " +#~ "systems MySQL, Postgres and SQLite and" +#~ " more exotic systems like SAP DB, " +#~ "SyBase and MSSQL. It only supports " +#~ "Python 2 from Python 2.6 upwards." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo b/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo index e18d973471c0d2032fe469acfec1699cb663d968..109faa4eb2dee263eee6a0de0e0050b33f703cfb 100644 GIT binary patch literal 10297 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 H+_C)&CrzJ7 delta 1964 zcmeIwOK1~87zgk#t@ZtCtEtu+r&VjB?Itl+q>61t2*uI{saSf^Z8I@rH@nNu)-wfpAbcYD)!~;8sMgfyMj6o;%RsRdv4&T6)Ff^MefqB~? z_DJ>|A`?p30YAV?aLrtz7Wfdpg5O~o)~6@)h#sTkDNMkt^NDW2XYdO=zJRC+3)l;Z zdeFYSi0Bsl3|rwPJg(Z{OIQVKDv7WcS`T|LF98q3G2B#1{;2ko9K%!J#riak3p@mHZVgB zIJ#3{!j;^}G(jdL8yt2VZn{PR_XoKtd72HIY3}&*y7#cIWU5PJou$Ef%W<>Jv|M2x zzyRH4sRC*<%f$StN^;n?F)}IrBJNQ0My-!^q&iu+yQh~W(UH(%k;$r46CFNi<#HVB zr>B+o-py=?mR92v`<@_yqr)#h6KB(t(xs%Hw*RomI zE*zBXS1UrP!f$txgkGw`tPCoY?rD=3lO=@ow$|<374FEm2*}|E*Cl6%V%p}vN2+qV z<4!Bb!l)}Fc%CoEpPmc0r0X xFTQK+4|va)>|Pk(+#HWJ$Kx!vr8Sl)wk)j)lqa-JUQckt|AYAdApVns_!E@v4Br3% diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po index 0c875eb84..dcc48d3f4 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po @@ -1,88 +1,95 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/gui.rst:2 +#: ../../scenarios/gui.rst:4 msgid "GUI Applications" msgstr "" -#: ../../scenarios/gui.rst:4 +#: ../../scenarios/gui.rst:9 msgid "Alphabetical list of GUI Applications." msgstr "" -#: ../../scenarios/gui.rst:7 +#: ../../scenarios/gui.rst:14 msgid "Camelot" msgstr "" -#: ../../scenarios/gui.rst:8 +#: ../../scenarios/gui.rst:16 msgid "" "`Camelot `_ provides components for " -"building applications on top of Python, SQLAlchemy and Qt. It is " +"building applications on top of Python, SQLAlchemy, and Qt. It is " "inspired by the Django admin interface." msgstr "" -#: ../../scenarios/gui.rst:12 +#: ../../scenarios/gui.rst:20 msgid "" "The main resource for information is the website: http://www.python-" "camelot.com and the mailing list https://groups.google.com/forum/#!forum" -"/project-camelot" +"/project-camelot." msgstr "" -#: ../../scenarios/gui.rst:17 +#: ../../scenarios/gui.rst:27 msgid "Cocoa" msgstr "" -#: ../../scenarios/gui.rst:18 +#: ../../scenarios/gui.rst:29 msgid "" "The Cocoa framework is only available on OS X. Don't pick this if you're " "writing a cross-platform application!" msgstr "" -#: ../../scenarios/gui.rst:21 +#: ../../scenarios/gui.rst:34 msgid "GTk" msgstr "" -#: ../../scenarios/gui.rst:22 +#: ../../scenarios/gui.rst:36 msgid "" -"PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ " -"library itself, it is currently licensed under the GNU LGPL. It is worth " -"noting that PyGTK only currently supports the Gtk-2.X API (NOT Gtk-3.0). " -"It is currently recommended that PyGTK not be used for new projects and " -"that existing applications be ported from PyGTK to PyGObject." +"PyGTK provides Python bindings for the GTK+ toolkit. However, it has been" +" superseded by PyGObject. PyGTK should not be used for new projects and " +"existing projects should be ported to PyGObject." msgstr "" -#: ../../scenarios/gui.rst:29 +#: ../../scenarios/gui.rst:41 msgid "PyGObject aka (PyGi)" msgstr "" -#: ../../scenarios/gui.rst:30 +#: ../../scenarios/gui.rst:43 msgid "" "`PyGObject `_ provides Python " -"bindings, which gives access to the entire GNOME software platform. It is" -" fully compatible with GTK+ 3. Here is a tutorial to get started with " +"bindings which gives access to the entire GNOME software platform. It is " +"fully compatible with GTK+ 3. Here is a tutorial to get started with " "`Python GTK+ 3 Tutorial `_." msgstr "" -#: ../../scenarios/gui.rst:33 +#: ../../scenarios/gui.rst:48 msgid "`API Reference `_" msgstr "" -#: ../../scenarios/gui.rst:36 +#: ../../scenarios/gui.rst:53 msgid "Kivy" msgstr "" -#: ../../scenarios/gui.rst:37 +#: ../../scenarios/gui.rst:55 msgid "" "`Kivy `_ is a Python library for development of multi-" "touch enabled media rich applications. The aim is to allow for quick and " @@ -90,131 +97,157 @@ msgid "" "reusable and deployable." msgstr "" -#: ../../scenarios/gui.rst:42 +#: ../../scenarios/gui.rst:60 msgid "" -"Kivy is written in Python, based on OpenGL and supports different input " +"Kivy is written in Python, based on OpenGL, and supports different input " "devices such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, " -"Apple's products and so on." +"Apple's products, and so on." msgstr "" -#: ../../scenarios/gui.rst:46 +#: ../../scenarios/gui.rst:64 msgid "" "Kivy is actively being developed by a community and is free to use. It " -"operates on all major platforms (Linux, OSX, Windows, Android)." +"operates on all major platforms (Linux, OS X, Windows, Android)." msgstr "" -#: ../../scenarios/gui.rst:49 +#: ../../scenarios/gui.rst:67 msgid "The main resource for information is the website: http://kivy.org" msgstr "" -#: ../../scenarios/gui.rst:52 +#: ../../scenarios/gui.rst:72 msgid "PyObjC" msgstr "" -#: ../../scenarios/gui.rst:53 +#: ../../scenarios/gui.rst:74 msgid "" "Only available on OS X. Don't pick this if you're writing a cross-" "platform application." msgstr "" -#: ../../scenarios/gui.rst:56 +#: ../../scenarios/gui.rst:79 msgid "PySide" msgstr "" -#: ../../scenarios/gui.rst:57 +#: ../../scenarios/gui.rst:81 msgid "PySide is a Python binding of the cross-platform GUI toolkit Qt." msgstr "" -#: ../../scenarios/gui.rst:59 -msgid "pip install pyside" -msgstr "" - -#: ../../scenarios/gui.rst:61 +#: ../../scenarios/gui.rst:87 msgid "https://wiki.qt.io/Category:LanguageBindings::PySide::Downloads" msgstr "" -#: ../../scenarios/gui.rst:64 +#: ../../scenarios/gui.rst:92 msgid "PyQt" msgstr "" -#: ../../scenarios/gui.rst:65 +#: ../../scenarios/gui.rst:94 msgid "" "If your software does not fully comply with the GPL you will need a " "commercial license!" msgstr "" -#: ../../scenarios/gui.rst:67 +#: ../../scenarios/gui.rst:96 msgid "PyQt provides Python bindings for the Qt Framework (see below)." msgstr "" -#: ../../scenarios/gui.rst:69 +#: ../../scenarios/gui.rst:98 msgid "http://www.riverbankcomputing.co.uk/software/pyqt/download" msgstr "" -#: ../../scenarios/gui.rst:72 -msgid "PyjamasDesktop (pyjs Desktop)" -msgstr "" - -#: ../../scenarios/gui.rst:73 -msgid "" -"PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget" -" set for desktop and a cross-platform framework. (After release v0.6 " -"PyjamasDesktop is a part of Pyjamas (Pyjs)). Briefly, it allows the exact" -" same Python web application source code to be executed as a standalone " -"desktop application." +#: ../../scenarios/gui.rst:103 +msgid "Pyjs Desktop (formerly Pyjamas Desktop)" msgstr "" -#: ../../scenarios/gui.rst:78 +#: ../../scenarios/gui.rst:105 msgid "" -"`Python Wiki for PyjamasDesktop " -"`_." +"Pyjs Desktop is a application widget set for desktop and a cross-platform" +" framework. It allows the exact same Python web application source code " +"to be executed as a standalone desktop application." msgstr "" -#: ../../scenarios/gui.rst:80 -msgid "The main website; `pyjs Desktop `_." +#: ../../scenarios/gui.rst:110 +msgid "The main website: `pyjs `_." msgstr "" -#: ../../scenarios/gui.rst:83 +#: ../../scenarios/gui.rst:115 msgid "Qt" msgstr "" -#: ../../scenarios/gui.rst:84 +#: ../../scenarios/gui.rst:117 msgid "" "`Qt `_ is a cross-platform application framework " "that is widely used for developing software with a GUI but can also be " "used for non-GUI applications." msgstr "" -#: ../../scenarios/gui.rst:89 +#: ../../scenarios/gui.rst:124 +msgid "PySimpleGUI" +msgstr "" + +#: ../../scenarios/gui.rst:126 +msgid "" +"`PySimpleGUI `_ is a wrapper for " +"Tkinter and Qt (others on the way). The amount of code required to " +"implement custom GUIs is much shorter using PySimpleGUI than if the same " +"GUI were written directly using Tkinter or Qt. PySimpleGUI code can be " +"\"ported\" between GUI frameworks by changing import statements." +msgstr "" + +#: ../../scenarios/gui.rst:136 +msgid "" +"PySimpleGUI is contained in a single PySimpleGUI.py file. Should pip " +"installation be impossible, copying the PySimpleGUI.py file into a " +"project's folder is all that's required to import and begin using." +msgstr "" + +#: ../../scenarios/gui.rst:143 +msgid "Toga" +msgstr "" + +#: ../../scenarios/gui.rst:145 +msgid "" +"`Toga `_ is a Python native, OS " +"native, cross platform GUI toolkit. Toga consists of a library of base " +"components with a shared interface to simplify platform-agnostic GUI " +"development." +msgstr "" + +#: ../../scenarios/gui.rst:149 +msgid "" +"Toga is available on macOS, Windows, Linux (GTK), and mobile platforms " +"such as Android and iOS." +msgstr "" + +#: ../../scenarios/gui.rst:155 msgid "Tk" msgstr "" -#: ../../scenarios/gui.rst:90 +#: ../../scenarios/gui.rst:157 msgid "" "Tkinter is a thin object-oriented layer on top of Tcl/Tk. **It has the " "advantage of being included with the Python standard library, making it " "the most convenient and compatible toolkit to program with.**" msgstr "" -#: ../../scenarios/gui.rst:94 +#: ../../scenarios/gui.rst:161 msgid "" "Both Tk and Tkinter are available on most Unix platforms, as well as on " "Windows and Macintosh systems. Starting with the 8.0 release, Tk offers " "native look and feel on all platforms." msgstr "" -#: ../../scenarios/gui.rst:98 +#: ../../scenarios/gui.rst:165 msgid "" "There's a good multi-language Tk tutorial with Python examples at `TkDocs" " `_. There's more information " "available on the `Python Wiki `_." msgstr "" -#: ../../scenarios/gui.rst:103 +#: ../../scenarios/gui.rst:172 msgid "wxPython" msgstr "" -#: ../../scenarios/gui.rst:104 +#: ../../scenarios/gui.rst:174 msgid "" "wxPython is a GUI toolkit for the Python programming language. It allows " "Python programmers to create programs with a robust, highly functional " @@ -223,27 +256,103 @@ msgid "" "cross platform GUI library, which is written in C++." msgstr "" -#: ../../scenarios/gui.rst:110 +#: ../../scenarios/gui.rst:180 msgid "" "**Install (Stable) wxPython** *go to " -"http://www.wxpython.org/download.php#stable and download the appropriate " +"https://www.wxpython.org/pages/downloads/ and download the appropriate " "package for your OS.*" msgstr "" #~ msgid "" -#~ "The Cocoa framework is only available" -#~ " on OS X. Don't pick this if " -#~ "you're writing a cross-platform " -#~ "application!" +#~ msgstr "" + +#~ msgid "http://developer.qt.nokia.com/wiki/PySideDownloads/" +#~ msgstr "" + +#~ msgid "" +#~ "`Camelot `_ provides" +#~ " components for building applications on" +#~ " top of Python, SQLAlchemy and Qt." +#~ " It is inspired by the Django " +#~ "admin interface." +#~ msgstr "" + +#~ msgid "" +#~ "The main resource for information is " +#~ "the website: http://www.python-camelot.com and" +#~ " the mailing list " +#~ "https://groups.google.com/forum/#!forum/project-camelot" +#~ msgstr "" + +#~ msgid "" +#~ "PyGTK provides Python bindings for the" +#~ " GTK+ toolkit. Like the GTK+ library" +#~ " itself, it is currently licensed " +#~ "under the GNU LGPL. It is worth" +#~ " noting that PyGTK only currently " +#~ "supports the Gtk-2.X API (NOT Gtk-3.0)." +#~ " It is currently recommended that " +#~ "PyGTK not be used for new projects" +#~ " and that existing applications be " +#~ "ported from PyGTK to PyGObject." +#~ msgstr "" + +#~ msgid "" +#~ "`PyGObject `_ " +#~ "provides Python bindings, which gives " +#~ "access to the entire GNOME software " +#~ "platform. It is fully compatible with" +#~ " GTK+ 3. Here is a tutorial to" +#~ " get started with `Python GTK+ 3 " +#~ "Tutorial `_." +#~ msgstr "" + +#~ msgid "" +#~ "Kivy is written in Python, based " +#~ "on OpenGL and supports different input" +#~ " devices such as: Mouse, Dual Mouse," +#~ " TUIO, WiiMote, WM_TOUCH, HIDtouch, Apple's" +#~ " products and so on." #~ msgstr "" #~ msgid "" #~ "Kivy is actively being developed by " -#~ "a community and free to use. It" -#~ " operates on all major platforms " -#~ "(Linux, OSX, Windows, Android)." +#~ "a community and is free to use." +#~ " It operates on all major platforms" +#~ " (Linux, OSX, Windows, Android)." #~ msgstr "" -#~ msgid "http://developer.qt.nokia.com/wiki/PySideDownloads/" +#~ msgid "pip install pyside" +#~ msgstr "" + +#~ msgid "PyjamasDesktop (pyjs Desktop)" +#~ msgstr "" + +#~ msgid "" +#~ "PyjamasDesktop is a port of Pyjamas. " +#~ "PyjamasDesktop is application widget set " +#~ "for desktop and a cross-platform " +#~ "framework. (After release v0.6 PyjamasDesktop" +#~ " is a part of Pyjamas (Pyjs)). " +#~ "Briefly, it allows the exact same " +#~ "Python web application source code to" +#~ " be executed as a standalone desktop" +#~ " application." +#~ msgstr "" + +#~ msgid "" +#~ "`Python Wiki for PyjamasDesktop " +#~ "`_." +#~ msgstr "" + +#~ msgid "The main website; `pyjs Desktop `_." +#~ msgstr "" + +#~ msgid "" +#~ "**Install (Stable) wxPython** *go to " +#~ "http://www.wxpython.org/download.php#stable and download" +#~ " the appropriate package for your " +#~ "OS.*" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo index d944fcd30f6aa222eff504c0295a3a47822c729b..bb9f7373033965dec632691a6b1ad30648bb5213 100644 GIT binary patch delta 330 zcmeBGp07M1rv3;61H*l028K02dI<{ygAI@lWMyEG2GV^%8YI68NQ(jKd^QG#XF$3Q zNN)tvx$F!K9Y9*1gMp!%k%3_akk$tBRk#=!6oGUAkiHJ2i-0sxDT5a`1A`Ed4g%82 zK=rBI41NqeK!KA$0%XxOAPsWJY+i^%Joq3EX$8_C`Gr6l#Dq49#>6 f4Rj3+6$~t_42(B(aEdds80(pEZPsB_BGw=P{CPWE diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po index 435aca666..107e02fef 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po @@ -1,37 +1,46 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/imaging.rst:3 +#: ../../scenarios/imaging.rst:4 msgid "Image Manipulation" msgstr "" -#: ../../scenarios/imaging.rst:5 +#: ../../scenarios/imaging.rst:8 msgid "" "Most image processing and manipulation techniques can be carried out " -"effectively using two libraries: Python Imaging Library (PIL) and " -"OpenSource Computer Vision (OpenCV)." +"effectively using two libraries: Python Imaging Library (PIL) and Open " +"Source Computer Vision (OpenCV)." msgstr "" -#: ../../scenarios/imaging.rst:9 +#: ../../scenarios/imaging.rst:12 msgid "A brief description of both is given below." msgstr "" -#: ../../scenarios/imaging.rst:12 +#: ../../scenarios/imaging.rst:17 msgid "Python Imaging Library" msgstr "" -#: ../../scenarios/imaging.rst:14 +#: ../../scenarios/imaging.rst:19 msgid "" "The `Python Imaging Library `_, " "or PIL for short, is one of the core libraries for image manipulation in " @@ -39,18 +48,18 @@ msgid "" "release in 2009." msgstr "" -#: ../../scenarios/imaging.rst:18 +#: ../../scenarios/imaging.rst:23 msgid "" "Luckily for you, there's an actively-developed fork of PIL called `Pillow" -" `_ - it's easier to install, runs on " -"all operating systems, and supports Python 3." +" `_ -- it's easier to install, runs on " +"all major operating systems, and supports Python 3." msgstr "" -#: ../../scenarios/imaging.rst:23 ../../scenarios/imaging.rst:71 +#: ../../scenarios/imaging.rst:28 ../../scenarios/imaging.rst:77 msgid "Installation" msgstr "" -#: ../../scenarios/imaging.rst:25 +#: ../../scenarios/imaging.rst:30 msgid "" "Before installing Pillow, you'll have to install Pillow's prerequisites. " "Find the instructions for your platform in the `Pillow installation " @@ -58,32 +67,32 @@ msgid "" "`_." msgstr "" -#: ../../scenarios/imaging.rst:29 +#: ../../scenarios/imaging.rst:34 msgid "After that, it's straightforward:" msgstr "" -#: ../../scenarios/imaging.rst:36 ../../scenarios/imaging.rst:86 +#: ../../scenarios/imaging.rst:41 ../../scenarios/imaging.rst:92 msgid "Example" msgstr "" -#: ../../scenarios/imaging.rst:59 +#: ../../scenarios/imaging.rst:64 msgid "" "There are more examples of the Pillow library in the `Pillow tutorial " "`_." msgstr "" -#: ../../scenarios/imaging.rst:64 -msgid "OpenSource Computer Vision" +#: ../../scenarios/imaging.rst:70 +msgid "Open Source Computer Vision" msgstr "" -#: ../../scenarios/imaging.rst:66 +#: ../../scenarios/imaging.rst:72 msgid "" -"OpenSource Computer Vision, more commonly known as OpenCV, is a more " +"Open Source Computer Vision, more commonly known as OpenCV, is a more " "advanced image manipulation and processing software than PIL. It has been" " implemented in several languages and is widely used." msgstr "" -#: ../../scenarios/imaging.rst:73 +#: ../../scenarios/imaging.rst:79 msgid "" "In Python, image processing using OpenCV is implemented using the ``cv2``" " and ``NumPy`` modules. The `installation instructions for OpenCV " @@ -92,11 +101,11 @@ msgid "" "the project for yourself." msgstr "" -#: ../../scenarios/imaging.rst:78 +#: ../../scenarios/imaging.rst:84 msgid "NumPy can be downloaded from the Python Package Index(PyPI):" msgstr "" -#: ../../scenarios/imaging.rst:105 +#: ../../scenarios/imaging.rst:110 msgid "" "There are more Python-implemented examples of OpenCV in this `collection " "of tutorials `_, or PIL " -#~ "for short, is *the* library for " -#~ "image manipulation in Python. Unfortunately," -#~ " its development has stagnated, with " -#~ "its last release in 2009." +#~ msgstr "" + +#~ msgid "Todo" +#~ msgstr "" + +#~ msgid "" +#~ "Most image processing and manipulation " +#~ "techniques can be carried out " +#~ "effectively using two libraries: Python " +#~ "Imaging Library (PIL) and OpenSource " +#~ "Computer Vision (OpenCV)." #~ msgstr "" #~ msgid "" -#~ "Before installing Pillow, you'll have to" -#~ " install Pillow's prerequisites. Find the" -#~ " instructions for your platform `here " -#~ "`_." +#~ "Luckily for you, there's an actively-" +#~ "developed fork of PIL called `Pillow " +#~ "`_ - it's " +#~ "easier to install, runs on all " +#~ "operating systems, and supports Python " +#~ "3." #~ msgstr "" -#~ msgid "Todo" +#~ msgid "OpenSource Computer Vision" +#~ msgstr "" + +#~ msgid "" +#~ "OpenSource Computer Vision, more commonly " +#~ "known as OpenCV, is a more " +#~ "advanced image manipulation and processing " +#~ "software than PIL. It has been " +#~ "implemented in several languages and is" +#~ " widely used." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/json.mo b/docs/locale/ko/LC_MESSAGES/scenarios/json.mo index 28b599d0472d68adb3c4e7df0caf1f7105fc28ee..d2c3a66cc4f2187e635f06d76ad35c0996c011e0 100644 GIT binary patch delta 227 zcmaDVa*?b4o)F7a1|Z-7Vi_Qg0dbJP93Wd7i01+^3lQ%FVjdvg2gLe7d>V+K0`YGk z)&}B-j1ZcaiGiUS$hHL1ApKjJA^I-@X^{SFKpLoDmfnD`{n0-X8h~hx1R-g-o$tp;~QRF zd;Y}SWBi5j4#w!EAh-?u3it-_YhVKW4)`u-Ua=LaC? z`4JejaxX2Z+1yyKiU~PPwS3}CLBbK^`{bvR#K2@KfV`J zr>g(GZS^Qm3ab^!+1QzU?OZc*d5x;WsrPf2CdqCuwo+u^ATwhZE0f3~(ZWmTljF-T zwxualwh&5-k(RVj0vQIKxcY?4stMc3Rh)TMd~EC_*-zGVCTtf^{Y+mE%=}j5)>P!y z%+L*H&5^N`D|9g?rfMCgwsy6-D!>#MQ*o84u?JCT9lL7fJou_xD6})&25{v6Wv(EU zwF3mgA*;5m%ZP)=5DeG(LJ*eCuF-3sbZZMmAycie9oe*;%A!(SMcU?*z;0puHHJs4 z|CV}LWN5UYOyxNgTzD$POr`QdH<{( zc7^lN(2Bz06O2vi(Wl)mowa&xI&Ak^o$iCy>FIg<;^G*l#iSGyq`WfQMKqLR#yfP_ z?LN?o&&hE((4`eRdW4R-l!|$^bVtqmR8Nl@VXxC`?+9qdjqo9E7RVqPuI9+$Kenneth Reitz -# Project. CC -# BY-NC-SA 3.0 +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 # This file is distributed under the same license as the pythonguide # package. -# FIRST AUTHOR , 2016. +# FIRST AUTHOR , 2021. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/json.rst:2 +#: ../../scenarios/json.rst:4 msgid "JSON" msgstr "" -#: ../../scenarios/json.rst:4 +#: ../../scenarios/json.rst:8 msgid "" -"The `json `_ library can " +"The `json `_ library can " "parse JSON from strings or files. The library parses JSON into a Python " "dictionary or list. It can also convert Python dictionaries or lists into" " JSON strings." msgstr "" -#: ../../scenarios/json.rst:9 +#: ../../scenarios/json.rst:15 msgid "Parsing JSON" msgstr "" -#: ../../scenarios/json.rst:11 +#: ../../scenarios/json.rst:17 msgid "Take the following string containing JSON data:" msgstr "" -#: ../../scenarios/json.rst:17 +#: ../../scenarios/json.rst:23 msgid "It can be parsed like this:" msgstr "" -#: ../../scenarios/json.rst:24 +#: ../../scenarios/json.rst:30 msgid "and can now be used as a normal dictionary:" msgstr "" -#: ../../scenarios/json.rst:31 +#: ../../scenarios/json.rst:37 msgid "You can also convert the following to JSON:" msgstr "" -#: ../../scenarios/json.rst:46 -msgid "simplejson" -msgstr "" +#~ msgid "" +#~ "The `json `_" +#~ " library can parse JSON from strings" +#~ " or files. The library parses JSON" +#~ " into a Python dictionary or list." +#~ " It can also convert Python " +#~ "dictionaries or lists into JSON strings." +#~ msgstr "" -#: ../../scenarios/json.rst:48 -msgid "" -"The JSON library was added to Python in version 2.6. If you're using an " -"earlier version of Python, the `simplejson " -"`_ library is available via" -" PyPI." -msgstr "" +#~ msgid "simplejson" +#~ msgstr "" -#: ../../scenarios/json.rst:53 -msgid "" -"simplejson mimics the json standard library. It is available so that " -"developers that use older versions of Python can use the latest features " -"available in the json lib." -msgstr "" +#~ msgid "" +#~ "The JSON library was added to " +#~ "Python in version 2.6. If you're " +#~ "using an earlier version of Python, " +#~ "the `simplejson " +#~ "`_ library " +#~ "is available via PyPI." +#~ msgstr "" -#: ../../scenarios/json.rst:57 -msgid "" -"You can start using simplejson when the json library is not available by " -"importing simplejson under a different name:" -msgstr "" +#~ msgid "" +#~ "simplejson mimics the json standard " +#~ "library. It is available so that " +#~ "developers that use older versions of" +#~ " Python can use the latest features" +#~ " available in the json lib." +#~ msgstr "" -#: ../../scenarios/json.rst:64 -msgid "" -"After importing simplejson as json, the above examples will all work as " -"if you were using the standard json library." -msgstr "" +#~ msgid "" +#~ "You can start using simplejson when " +#~ "the json library is not available " +#~ "by importing simplejson under a " +#~ "different name:" +#~ msgstr "" + +#~ msgid "" +#~ "After importing simplejson as json, the" +#~ " above examples will all work as " +#~ "if you were using the standard " +#~ "json library." +#~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ml.mo b/docs/locale/ko/LC_MESSAGES/scenarios/ml.mo index 4eea334c83cd90a1b183ad5621a4c3a96013ebc2..6ff4e395832941623f23532c8abdcc79f0351b9d 100644 GIT binary patch delta 803 zcmd7Ny=zlZ7=ZEjrW%83K1`bCYdHlgwInf3iS?^=Q=tgKiWOU0V{)ZwOQSaUfkG^Z zE)|Mr6G4Y`5T(lw4HZ7ez4!_9=;PykSj2ujhaAZre1aNp z@W-PpUuWKo*o)3a+qV2Gd8-_3VF$15vJ0{?TRwoM{2-e04stgci`(*XTw%V{W6OV_ zDL<32<+HuE{3)99k4gC#{<4;`<-KWJz8g*XF!o_4W6O`AVy>Ynzm0j^KvVu1O?h|L zUc7{+d<^yL$lFj(RhR0@tuDK&dBJ-ao$@(3{WEqpP`R!qTGiTuJ`vA2O3%eNIH>w( z^sSy3`f(tgRn^O`T5K%0+`2mNE;g?g?#2b?~v%g;hpei5qj*HD$0 zJ9K%N)8%!j%2}r_ufP)Kz|`d%P?hg=(ZBGIQ{B4!SdT8Zp(-DPs=V)rE-yijc^0a2 z2`#t@RrwF7%6ohD#m_-iUY03iE5{vwnhPiNd=Z8`s_}cFh_{WKh8#`YkgExkS@KO{ zT~?YW)23AgFq-6L~d1hmAUJm3`=LMFJe5=$P*A>R{vfNW(!}4=$gm*4yCYj;+@Kenneth Reitz -# Project. CC -# BY-NC-SA 3.0 +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 # This file is distributed under the same license as the pythonguide # package. -# FIRST AUTHOR , 2016. +# FIRST AUTHOR , 2021. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/ml.rst:3 +#: ../../scenarios/ml.rst:5 msgid "Machine Learning" msgstr "" -#: ../../scenarios/ml.rst:5 +#: ../../scenarios/ml.rst:9 msgid "" -"Python has a vast number of libraries for data analysis, statistics and " +"Python has a vast number of libraries for data analysis, statistics, and " "Machine Learning itself, making it a language of choice for many data " "scientists." msgstr "" -#: ../../scenarios/ml.rst:7 +#: ../../scenarios/ml.rst:11 msgid "" -"Some widely used packages for Machine Learning and other Data Science " -"applications are enlisted below." +"Some widely used packages for Machine Learning and other data science " +"applications are listed below." msgstr "" -#: ../../scenarios/ml.rst:10 -msgid "Scipy Stack" +#: ../../scenarios/ml.rst:16 +msgid "SciPy Stack" msgstr "" -#: ../../scenarios/ml.rst:12 +#: ../../scenarios/ml.rst:18 msgid "" -"The Scipy stack consists of a bunch of core helper packages used in data " -"science, for statistical analysis and visualising data. Because of its " +"The SciPy stack consists of a bunch of core helper packages used in data " +"science for statistical analysis and visualising data. Because of its " "huge number of functionalities and ease of use, the Stack is considered a" " must-have for most data science applications." msgstr "" -#: ../../scenarios/ml.rst:14 +#: ../../scenarios/ml.rst:20 msgid "" "The Stack consists of the following packages (link to documentation " "given):" msgstr "" -#: ../../scenarios/ml.rst:16 +#: ../../scenarios/ml.rst:22 msgid "`NumPy `_" msgstr "" -#: ../../scenarios/ml.rst:17 +#: ../../scenarios/ml.rst:23 msgid "`SciPy library `_" msgstr "" -#: ../../scenarios/ml.rst:18 +#: ../../scenarios/ml.rst:24 msgid "`Matplotlib `_" msgstr "" -#: ../../scenarios/ml.rst:19 +#: ../../scenarios/ml.rst:25 msgid "`IPython `_" msgstr "" -#: ../../scenarios/ml.rst:20 +#: ../../scenarios/ml.rst:26 msgid "`pandas `_" msgstr "" -#: ../../scenarios/ml.rst:21 +#: ../../scenarios/ml.rst:27 msgid "`Sympy `_" msgstr "" -#: ../../scenarios/ml.rst:22 +#: ../../scenarios/ml.rst:28 msgid "`nose `_" msgstr "" -#: ../../scenarios/ml.rst:24 +#: ../../scenarios/ml.rst:30 msgid "" "The stack also comes with Python bundled in, but has been excluded from " "the above list." msgstr "" -#: ../../scenarios/ml.rst:27 ../../scenarios/ml.rst:41 +#: ../../scenarios/ml.rst:33 ../../scenarios/ml.rst:49 msgid "Installation" msgstr "" -#: ../../scenarios/ml.rst:29 +#: ../../scenarios/ml.rst:35 msgid "" "For installing the full stack, or individual packages, you can refer to " "the instructions given `here `_." msgstr "" -#: ../../scenarios/ml.rst:31 +#: ../../scenarios/ml.rst:37 msgid "" "**NB:** `Anaconda `_ is " "highly preferred and recommended for installing and maintaining data " "science packages seamlessly." msgstr "" -#: ../../scenarios/ml.rst:34 +#: ../../scenarios/ml.rst:42 msgid "scikit-learn" msgstr "" -#: ../../scenarios/ml.rst:36 +#: ../../scenarios/ml.rst:44 msgid "" -"Scikit is a free and open-source machine learning library for Python. It " +"Scikit is a free and open source machine learning library for Python. It " "offers off-the-shelf functions to implement many algorithms like linear " -"regression, classifiers, SVMs, k-means, Neural Networks etc. It also has " -"a few sample datasets which can be directly used for training and " +"regression, classifiers, SVMs, k-means, Neural Networks, etc. It also has" +" a few sample datasets which can be directly used for training and " "testing." msgstr "" -#: ../../scenarios/ml.rst:38 +#: ../../scenarios/ml.rst:46 msgid "" -"Because of its speed, robustness and easiness to use, it's one of the " -"most widely-used libraries for many Machine Learning applications." +"Because of its speed, robustness, and ease of, it's one of the most " +"widely-used libraries for many Machine Learning applications." msgstr "" -#: ../../scenarios/ml.rst:43 +#: ../../scenarios/ml.rst:51 msgid "Through PyPI:" msgstr "" -#: ../../scenarios/ml.rst:49 +#: ../../scenarios/ml.rst:57 msgid "Through conda:" msgstr "" -#: ../../scenarios/ml.rst:55 +#: ../../scenarios/ml.rst:63 msgid "" -"scikit-learn also comes in shipped with Anaconda (mentioned above). For " -"more installation instructions, refer to `this link `_." msgstr "" -#: ../../scenarios/ml.rst:58 +#: ../../scenarios/ml.rst:66 msgid "Example" msgstr "" -#: ../../scenarios/ml.rst:60 +#: ../../scenarios/ml.rst:68 msgid "" "For this example, we train a simple classifier on the `Iris dataset " "`_, which comes " "bundled in with scikit-learn." msgstr "" -#: ../../scenarios/ml.rst:62 +#: ../../scenarios/ml.rst:70 msgid "" "The dataset takes four features of flowers: sepal length, sepal width, " -"petal length and petal width, and classifies them into three flower " -"species (labels): setosa, versicolor or virginica. The labels have been " -"represented as numbers in the dataset: 0 (setosa), 1 (versicolor) and 2 " +"petal length, and petal width, and classifies them into three flower " +"species (labels): setosa, versicolor, or virginica. The labels have been " +"represented as numbers in the dataset: 0 (setosa), 1 (versicolor), and 2 " "(virginica)." msgstr "" -#: ../../scenarios/ml.rst:64 +#: ../../scenarios/ml.rst:72 msgid "" -"We shuffle the Iris dataset, and divide it into separate training and " -"testing sets: keeping the last 10 data points for testing and rest for " -"training. We then train the classifier on the training set, and predict " -"on the testing set." +"We shuffle the Iris dataset and divide it into separate training and " +"testing sets, keeping the last 10 data points for testing and rest for " +"training. We then train the classifier on the training set and predict on" +" the testing set." msgstr "" -#: ../../scenarios/ml.rst:107 +#: ../../scenarios/ml.rst:115 msgid "" "Since we're splitting randomly and the classifier trains on every " "iteration, the accuracy may vary. Running the above code gives:" msgstr "" -#: ../../scenarios/ml.rst:115 +#: ../../scenarios/ml.rst:123 msgid "" -"The first line contains the labels (i.e flower species) of the testing " +"The first line contains the labels (i.e. flower species) of the testing " "data as predicted by our classifier, and the second line contains the " "actual flower species as given in the dataset. We thus get an accuracy of" " 100% this time." msgstr "" -#: ../../scenarios/ml.rst:117 +#: ../../scenarios/ml.rst:125 msgid "" "More on scikit-learn can be read in the `documentation `_." msgstr "" +#~ msgid "" +#~ "Python has a vast number of " +#~ "libraries for data analysis, statistics " +#~ "and Machine Learning itself, making it" +#~ " a language of choice for many " +#~ "data scientists." +#~ msgstr "" + +#~ msgid "" +#~ "Some widely used packages for Machine" +#~ " Learning and other Data Science " +#~ "applications are enlisted below." +#~ msgstr "" + +#~ msgid "Scipy Stack" +#~ msgstr "" + +#~ msgid "" +#~ "The Scipy stack consists of a " +#~ "bunch of core helper packages used " +#~ "in data science, for statistical " +#~ "analysis and visualising data. Because " +#~ "of its huge number of functionalities" +#~ " and ease of use, the Stack is" +#~ " considered a must-have for most " +#~ "data science applications." +#~ msgstr "" + +#~ msgid "" +#~ "Scikit is a free and open-source" +#~ " machine learning library for Python. " +#~ "It offers off-the-shelf functions " +#~ "to implement many algorithms like linear" +#~ " regression, classifiers, SVMs, k-means, " +#~ "Neural Networks etc. It also has a" +#~ " few sample datasets which can be " +#~ "directly used for training and testing." +#~ msgstr "" + +#~ msgid "" +#~ "Because of its speed, robustness and " +#~ "easiness to use, it's one of the" +#~ " most widely-used libraries for many" +#~ " Machine Learning applications." +#~ msgstr "" + +#~ msgid "" +#~ "scikit-learn also comes in shipped " +#~ "with Anaconda (mentioned above). For " +#~ "more installation instructions, refer to " +#~ "`this link `_." +#~ msgstr "" + +#~ msgid "" +#~ "The dataset takes four features of " +#~ "flowers: sepal length, sepal width, " +#~ "petal length and petal width, and " +#~ "classifies them into three flower " +#~ "species (labels): setosa, versicolor or " +#~ "virginica. The labels have been " +#~ "represented as numbers in the dataset:" +#~ " 0 (setosa), 1 (versicolor) and 2 " +#~ "(virginica)." +#~ msgstr "" + +#~ msgid "" +#~ "We shuffle the Iris dataset, and " +#~ "divide it into separate training and " +#~ "testing sets: keeping the last 10 " +#~ "data points for testing and rest " +#~ "for training. We then train the " +#~ "classifier on the training set, and " +#~ "predict on the testing set." +#~ msgstr "" + +#~ msgid "" +#~ "The first line contains the labels " +#~ "(i.e flower species) of the testing " +#~ "data as predicted by our classifier, " +#~ "and the second line contains the " +#~ "actual flower species as given in " +#~ "the dataset. We thus get an " +#~ "accuracy of 100% this time." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.mo b/docs/locale/ko/LC_MESSAGES/scenarios/network.mo index a4b0a79537757ccff474634d8fb551b40683e186..08885992f1c968d456cc8a26fae3473f7f3bbff9 100644 GIT binary patch delta 413 zcmbO(xmR+6OT8*11A{vdhXZjg69dCq1_p+s%nS@{K)RR(C_5fiw^?yaf^<^S=UVkonS_5c7+Hib3Wpax;j5 zEzsbGSTGGpgDkM0c(aPJc=Anl&&dlI?*UnLO!HYhLP7#2D>7R$>P&vXsUohUkeHXE zkdRxNoS~4LUzDm~lTlJq08%Qoc`b7uBcuLgIack-7r2j47Gw+JGcwdQFxE9RRWPuy zGBurC$d>48rI4M^<&&6~UYeMmsvDA;m9h5t_9MQ zSs54tf$9Z;iUNTAWOfDyE+D-HNCTx9_5*1kVmJyUK<1wX(jfD{aX`%X0xAZX|AUJ` z3~a%Fpa95%TyBU3k`r%MO%7r7WGOE%*PA?-@!sSbrui%xB_#!u<(VxfM>4C3DkSEm zC?w>TCTA$*<`<pL?jIyQ_kYkB>u6re1zgy4_?^_Cgk8Jrk~pcgm^cjL9CX F#{s-&RqOx& diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.po b/docs/locale/ko/LC_MESSAGES/scenarios/network.po index 8ad46c422..3eebe1887 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/network.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/network.po @@ -1,77 +1,120 @@ -# +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/network.rst:2 +#: ../../scenarios/network.rst:4 msgid "Networking" msgstr "" -#: ../../scenarios/network.rst:5 +#: ../../scenarios/network.rst:11 msgid "Twisted" msgstr "" -#: ../../scenarios/network.rst:7 +#: ../../scenarios/network.rst:13 msgid "" -"`Twisted `_ is an event-driven networking " -"engine. It can be used to build applications around many different " -"networking protocols, including http servers and clients, applications using" -" SMTP, POP3, IMAP or SSH protocols, instant messaging and `much more " -"`_." +"`Twisted `_ is an event-driven " +"networking engine. It can be used to build applications around many " +"different networking protocols, including HTTP servers and clients, " +"applications using SMTP, POP3, IMAP, or SSH protocols, instant messaging," +" and `much more `_." msgstr "" -#: ../../scenarios/network.rst:13 +#: ../../scenarios/network.rst:22 msgid "PyZMQ" msgstr "" -#: ../../scenarios/network.rst:15 +#: ../../scenarios/network.rst:24 msgid "" -"`PyZMQ `_ is the Python binding for `ZeroMQ" -" `_, which is a high-performance asynchronous " -"messaging library. One great advantage of ZeroMQ is that it can be used for " -"message queuing without a message broker. The basic patterns for this are:" +"`PyZMQ `_ is the Python binding for " +"`ZeroMQ `_, which is a high-performance asynchronous " +"messaging library. One great advantage of ZeroMQ is that it can be used " +"for message queuing without a message broker. The basic patterns for this" +" are:" msgstr "" -#: ../../scenarios/network.rst:20 +#: ../../scenarios/network.rst:29 msgid "" "request-reply: connects a set of clients to a set of services. This is a " "remote procedure call and task distribution pattern." msgstr "" -#: ../../scenarios/network.rst:22 +#: ../../scenarios/network.rst:31 msgid "" "publish-subscribe: connects a set of publishers to a set of subscribers. " "This is a data distribution pattern." msgstr "" -#: ../../scenarios/network.rst:24 +#: ../../scenarios/network.rst:33 msgid "" -"push-pull (or pipeline): connects nodes in a fan-out / fan-in pattern that " -"can have multiple steps, and loops. This is a parallel task distribution and" -" collection pattern." +"push-pull (or pipeline): connects nodes in a fan-out/fan-in pattern that " +"can have multiple steps and loops. This is a parallel task distribution " +"and collection pattern." msgstr "" -#: ../../scenarios/network.rst:28 +#: ../../scenarios/network.rst:37 msgid "" "For a quick start, read the `ZeroMQ guide " "`_." msgstr "" -#: ../../scenarios/network.rst:31 +#: ../../scenarios/network.rst:42 msgid "gevent" msgstr "" -#: ../../scenarios/network.rst:33 +#: ../../scenarios/network.rst:44 msgid "" -"`gevent `_ is a coroutine-based Python networking " -"library that uses greenlets to provide a high-level synchronous API on top " -"of the libev event loop." +"`gevent `_ is a coroutine-based Python networking" +" library that uses greenlets to provide a high-level synchronous API on " +"top of the libev event loop." msgstr "" + +#~ msgid "" +#~ "`Twisted `_ is an" +#~ " event-driven networking engine. It " +#~ "can be used to build applications " +#~ "around many different networking protocols," +#~ " including http servers and clients, " +#~ "applications using SMTP, POP3, IMAP or" +#~ " SSH protocols, instant messaging and " +#~ "`much more " +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "`PyZMQ `_ is the" +#~ " Python binding for `ZeroMQ " +#~ "`_, which is a " +#~ "high-performance asynchronous messaging library." +#~ " One great advantage of ZeroMQ is " +#~ "that it can be used for message" +#~ " queuing without a message broker. " +#~ "The basic patterns for this are:" +#~ msgstr "" + +#~ msgid "" +#~ "push-pull (or pipeline): connects nodes" +#~ " in a fan-out / fan-in " +#~ "pattern that can have multiple steps," +#~ " and loops. This is a parallel " +#~ "task distribution and collection pattern." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.mo b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.mo index a7df334644317c202d38a3186e93b86022d05160..84190ed21c64dc0466f43ec367f9fe4c08dcb9d3 100644 GIT binary patch delta 1843 zcmeH_OKeP07{|{YRXU{}Z9VFBs03r?PPLj;sl+4kh$4y|dV23^d-U9gd(Rk+$b^Mh ziW`rR2+PuyA%cxqSlEczilt4xBC%rOf96cf(!$cs-20pFyXSuY@B5!KaeTrpy`Num zmEdZ{y%hIGOGm%2eJMg_BJ2fg!K2^|@EG_7Yk4(3QbR}=;$vVP-d~$e$ZN!Rz%=3z zAK@=K3+@EZgJXo0$jj=B5Gq>WG^hp7;V}+g1a-j9b0N+?a=MkoY*Cke~R_Zz9A-Jkm_aA@Jq` zbP9fgnr`s=VoZVfHmDnISz_|7AZ8&MP&?CJjaMx*&SXIJNSx)y84pZDpY%{O(QZ&% zvmYD-6Hrguv(gCc0JY#=P&?BH>VjmIaV8Dw^>aY&Of#sR$yM_gu*ce&OQ3e<1-M^Z z^L4ecre%$>=JQ%@4fZx;oO!a|II}rtoawTSGeddf%+og0pxd5gQV(l`NJY#qZ)-VV zS$6sIl8%&>Ef3b(R{8pj`&RNHooOl-i#GF_6ZkH(oxsa)?LU!p*I!BA)vrj3txYv_ zkn`k6eQ&a@?qqqqZn{<8GwZHZo|yg3O5V?TJgISO?%kBdlFf~4tb@t(%q}aN+-rOV zxi{;lSwOM5lqzK@^IaN?A)iSaMuEfQSolLW=|97wh>g-M!%BtS`Me43aMWdr*+Ddv z=YBp`Y(R3|AQdsHctWy>s(>CuRTgLIKtWM~UrdFsxbJe84h9h|Ml1{=LrY#kD&Y!` z`>_ag53wV-uf(8mXhn%`AElBFa4GeAHOwn%S`=!SPJIU@CkP@}_)KvGdM2h+B%rTj zwBWH39%GdkN`8h;%9f^dgOEo|p$9CIoJBmURPlm{>)s1OiPPMsdlY3d4k{DGD5^pk zC@BUiW1T7pXN2mELbIj~hxru4%2DbCv7&#-2%m=gSj42{k`}b&F8{FUW;p*^fT z3GZ!UHYb_AsIQ@YL$0kOx1p1^b#-@kmi|I_#X^y$;r`!7!) F`32S2{1*TK delta 1097 zcmds!-%C?r7{{OYG_@_A)n;>8dTjk*%bjh^M8$*=F^N*tBD&GWHn#(7XYHI7A+aKm z2)eMBh=PhF2}vY6mKO=#)J+#r(Pj7tBzVzn5Pe_XiFDCF(1CM4=X;)Wp6A(T>zVb5 z>e_C{J;Kq6b1%*VOr))&OCj2h7zXRX9WDreS3wu@ zFh0U9od=WPB)EVwJ+Bo;F+~hG2a16cxGaJ>P&D-7g5J~)ibes@2L@|70rnv$K@Ed% zfcL?dm>$BCLybh=kWDwyWpHRG(KxFTz1u}}4G%mXqF-n*>y-`ev=EKr`RX2`Y0%v& z7rX73i*gXV(?d|0n5*U4HfiDkh#lxFvTP`Vj1@9hDFA226SfH z9XsmS(c?zZ(uYARbcRg0&bp^#}A z<*fGCJ83g-lp?8O3QsdB@x_(Ap3d_p&b!T9gUoE9VDhL-<$2d>JJ2}Cm}-A$`pHKenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/scientific.rst:3 +#: ../../scenarios/scientific.rst:4 msgid "Scientific Applications" msgstr "" -#: ../../scenarios/scientific.rst:6 +#: ../../scenarios/scientific.rst:11 msgid "Context" msgstr "" -#: ../../scenarios/scientific.rst:8 +#: ../../scenarios/scientific.rst:13 msgid "" "Python is frequently used for high-performance scientific applications. " "It is widely used in academia and scientific projects because it is easy " "to write and performs well." msgstr "" -#: ../../scenarios/scientific.rst:12 +#: ../../scenarios/scientific.rst:17 msgid "" "Due to its high performance nature, scientific computing in Python often " "utilizes external libraries, typically written in faster languages (like " -"C, or FORTRAN for matrix operations). The main libraries used are " +"C, or Fortran for matrix operations). The main libraries used are " "`NumPy`_, `SciPy`_ and `Matplotlib`_. Going into detail about these " "libraries is beyond the scope of the Python guide. However, a " "comprehensive introduction to the scientific Python ecosystem can be " "found in the `Python Scientific Lecture Notes `_" +"lectures.github.com/>`_." msgstr "" -#: ../../scenarios/scientific.rst:22 +#: ../../scenarios/scientific.rst:28 msgid "Tools" msgstr "" -#: ../../scenarios/scientific.rst:25 +#: ../../scenarios/scientific.rst:31 msgid "IPython" msgstr "" -#: ../../scenarios/scientific.rst:27 +#: ../../scenarios/scientific.rst:33 msgid "" "`IPython `_ is an enhanced version of Python " "interpreter, which provides features of great interest to scientists. The" " `inline mode` allows graphics and plots to be displayed in the terminal " "(Qt based version). Moreover, the `notebook` mode supports literate " "programming and reproducible science generating a web-based Python " -"notebook. This notebook allows you to store chunks of Python code along " -"side the results and additional comments (HTML, LaTeX, Markdown). The " -"notebook can then be shared and exported in various file formats." +"notebook. This notebook allows you to store chunks of Python code " +"alongside the results and additional comments (HTML, LaTeX, Markdown). " +"The notebook can then be shared and exported in various file formats." msgstr "" -#: ../../scenarios/scientific.rst:38 +#: ../../scenarios/scientific.rst:45 msgid "Libraries" msgstr "" -#: ../../scenarios/scientific.rst:41 +#: ../../scenarios/scientific.rst:48 msgid "NumPy" msgstr "" -#: ../../scenarios/scientific.rst:43 +#: ../../scenarios/scientific.rst:50 msgid "" "`NumPy `_ is a low level library written in C " -"(and FORTRAN) for high level mathematical functions. NumPy cleverly " +"(and Fortran) for high level mathematical functions. NumPy cleverly " "overcomes the problem of running slower algorithms on Python by using " "multidimensional arrays and functions that operate on arrays. Any " "algorithm can then be expressed as a function on arrays, allowing the " "algorithms to be run quickly." msgstr "" -#: ../../scenarios/scientific.rst:49 +#: ../../scenarios/scientific.rst:56 msgid "" "NumPy is part of the SciPy project, and is released as a separate library" " so people who only need the basic requirements can use it without " "installing the rest of SciPy." msgstr "" -#: ../../scenarios/scientific.rst:53 -msgid "NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." +#: ../../scenarios/scientific.rst:60 +msgid "NumPy is compatible with Python versions 2.4 through 2.7.2 and 3.1+." msgstr "" -#: ../../scenarios/scientific.rst:56 +#: ../../scenarios/scientific.rst:63 msgid "Numba" msgstr "" -#: ../../scenarios/scientific.rst:58 +#: ../../scenarios/scientific.rst:65 msgid "" "`Numba `_ is a NumPy aware Python compiler " "(just-in-time (JIT) specializing compiler) which compiles annotated " @@ -101,53 +110,67 @@ msgid "" "code with LLVM to code which can be natively executed at runtime." msgstr "" -#: ../../scenarios/scientific.rst:65 +#: ../../scenarios/scientific.rst:72 msgid "SciPy" msgstr "" -#: ../../scenarios/scientific.rst:67 +#: ../../scenarios/scientific.rst:74 msgid "" "`SciPy `_ is a library that uses NumPy for more " "mathematical functions. SciPy uses NumPy arrays as the basic data " "structure, and comes with modules for various commonly used tasks in " "scientific programming, including linear algebra, integration (calculus)," -" ordinary differential equation solving and signal processing." +" ordinary differential equation solving, and signal processing." msgstr "" -#: ../../scenarios/scientific.rst:74 +#: ../../scenarios/scientific.rst:81 msgid "Matplotlib" msgstr "" -#: ../../scenarios/scientific.rst:76 +#: ../../scenarios/scientific.rst:83 msgid "" "`Matplotlib `_ is a flexible plotting" " library for creating interactive 2D and 3D plots that can also be saved " "as manuscript-quality figures. The API in many ways reflects that of " "`MATLAB `_, easing transition " "of MATLAB users to Python. Many examples, along with the source code to " -"re-create them, are available in the `matplotlib gallery " +"recreate them, are available in the `matplotlib gallery " "`_." msgstr "" -#: ../../scenarios/scientific.rst:85 +#: ../../scenarios/scientific.rst:92 msgid "Pandas" msgstr "" -#: ../../scenarios/scientific.rst:87 +#: ../../scenarios/scientific.rst:94 +msgid "" +"`Pandas `_ is a data manipulation library " +"based on NumPy which provides many useful functions for accessing, " +"indexing, merging, and grouping data easily. The main data structure " +"(DataFrame) is close to what could be found in the R statistical package;" +" that is, heterogeneous data tables with name indexing, time series " +"operations, and auto-alignment of data." +msgstr "" + +#: ../../scenarios/scientific.rst:102 +msgid "xarray" +msgstr "" + +#: ../../scenarios/scientific.rst:104 msgid "" -"`Pandas `_ is data manipulation library based " -"on Numpy which provides many useful functions for accessing, indexing, " -"merging and grouping data easily. The main data structure (DataFrame) is " -"close to what could be found in the R statistical package; that is, " -"heterogeneous data tables with name indexing, time series operations and " -"auto-alignment of data." +"`xarray `_ is similar to Pandas, but" +" it is intended for wrapping multidimensional scientific data. By " +"labelling the data with dimensions, coordinates, and attributes, it makes" +" complex multidimensional operations clearer and more intuitive. It also " +"wraps matplotlib for quick plotting, and can apply most operations in " +"parallel using `dask `_." msgstr "" -#: ../../scenarios/scientific.rst:95 +#: ../../scenarios/scientific.rst:113 msgid "Rpy2" msgstr "" -#: ../../scenarios/scientific.rst:97 +#: ../../scenarios/scientific.rst:115 msgid "" "`Rpy2 `_ is a Python binding for the R " "statistical package allowing the execution of R functions from Python and" @@ -156,23 +179,23 @@ msgid "" "`_ bindings." msgstr "" -#: ../../scenarios/scientific.rst:104 +#: ../../scenarios/scientific.rst:122 msgid "PsychoPy" msgstr "" -#: ../../scenarios/scientific.rst:106 +#: ../../scenarios/scientific.rst:124 msgid "" "`PsychoPy `_ is a library for cognitive " "scientists allowing the creation of cognitive psychology and neuroscience" " experiments. The library handles presentation of stimuli, scripting of " -"experimental design and data collection." +"experimental design, and data collection." msgstr "" -#: ../../scenarios/scientific.rst:113 +#: ../../scenarios/scientific.rst:132 msgid "Resources" msgstr "" -#: ../../scenarios/scientific.rst:115 +#: ../../scenarios/scientific.rst:134 msgid "" "Installation of scientific Python packages can be troublesome, as many of" " these packages are implemented as Python C extensions which need to be " @@ -181,54 +204,72 @@ msgid "" "of scientific Python packages." msgstr "" -#: ../../scenarios/scientific.rst:122 +#: ../../scenarios/scientific.rst:141 msgid "Unofficial Windows Binaries for Python Extension Packages" msgstr "" -#: ../../scenarios/scientific.rst:124 +#: ../../scenarios/scientific.rst:143 msgid "" "Many people who do scientific computing are on Windows, yet many of the " "scientific computing packages are notoriously difficult to build and " "install on this platform. `Christoph Gohlke " -"`_ however, has compiled a " +"`_, however, has compiled a " "list of Windows binaries for many useful Python packages. The list of " "packages has grown from a mainly scientific Python resource to a more " "general list. If you're on Windows, you may want to check it out." msgstr "" -#: ../../scenarios/scientific.rst:133 +#: ../../scenarios/scientific.rst:152 msgid "Anaconda" msgstr "" -#: ../../scenarios/scientific.rst:135 +#: ../../scenarios/scientific.rst:154 msgid "" -"`Continuum Analytics `_ offers the `Anaconda Python" -" Distribution `_ which " -"includes all the common scientific Python packages as well as many " -"packages related to data analytics and big data. Anaconda itself is free," -" and Continuum sells a number of proprietary add-ons. Free licenses for " +"The `Anaconda Python Distribution `_ includes " +"all the common scientific Python packages as well as many packages " +"related to data analytics and big data. Anaconda itself is free, and a " +"number of proprietary add-ons are available for a fee. Free licenses for " "the add-ons are available for academics and researchers." msgstr "" -#: ../../scenarios/scientific.rst:143 +#: ../../scenarios/scientific.rst:161 msgid "Canopy" msgstr "" -#: ../../scenarios/scientific.rst:145 +#: ../../scenarios/scientific.rst:163 msgid "" -"`Canopy `_ is another " +"`Canopy `_ is another " "scientific Python distribution, produced by `Enthought " "`_. A limited 'Canopy Express' variant is " "available for free, but Enthought charges for the full distribution. Free" " licenses are available for academics." msgstr "" +#~ msgid "" +#~ msgstr "" + +#~ msgid "" +#~ "Due to its high performance nature, " +#~ "scientific computing in Python often " +#~ "utilizes external libraries, typically written" +#~ " in faster languages (like C, or " +#~ "FORTRAN for matrix operations). The main" +#~ " libraries used are `NumPy`_, `SciPy`_ " +#~ "and `Matplotlib`_. Going into detail " +#~ "about these libraries is beyond the " +#~ "scope of the Python guide. However, " +#~ "a comprehensive introduction to the " +#~ "scientific Python ecosystem can be found" +#~ " in the `Python Scientific Lecture " +#~ "Notes `_" +#~ msgstr "" + #~ msgid "" #~ "`IPython `_ is an " #~ "enhanced version of Python interpreter, " #~ "which provides features of great " #~ "interest to scientists. The `inline " -#~ "mode` allow graphics and plots to " +#~ "mode` allows graphics and plots to " #~ "be displayed in the terminal (Qt " #~ "based version). Moreover, the `notebook` " #~ "mode supports literate programming and " @@ -243,27 +284,71 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "`Numba `_ is an Numpy" -#~ " aware Python compiler (just-in-time" -#~ " (JIT) specializing compiler) which " -#~ "compiles annotated Python (and Numpy) " -#~ "code to LLVM (Low Level Virtual " -#~ "Machine) through special decorators. Briefly," -#~ " Numba uses a system that compiles" -#~ " Python code with LLVM to code " -#~ "which can be natively executed at " -#~ "runtime." +#~ "`NumPy `_ is a low" +#~ " level library written in C (and " +#~ "FORTRAN) for high level mathematical " +#~ "functions. NumPy cleverly overcomes the " +#~ "problem of running slower algorithms on" +#~ " Python by using multidimensional arrays" +#~ " and functions that operate on " +#~ "arrays. Any algorithm can then be " +#~ "expressed as a function on arrays, " +#~ "allowing the algorithms to be run " +#~ "quickly." +#~ msgstr "" + +#~ msgid "NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." +#~ msgstr "" + +#~ msgid "" +#~ "`SciPy `_ is a library " +#~ "that uses NumPy for more mathematical" +#~ " functions. SciPy uses NumPy arrays " +#~ "as the basic data structure, and " +#~ "comes with modules for various commonly" +#~ " used tasks in scientific programming, " +#~ "including linear algebra, integration " +#~ "(calculus), ordinary differential equation " +#~ "solving and signal processing." #~ msgstr "" #~ msgid "" -#~ "`Rpy2 `_ is a" -#~ " Python binding for the R statistical" -#~ " package allowing the execution of R" -#~ " functions from Python and passing " -#~ "data back and forth between the " -#~ "two environments. Rpy2 is the object " -#~ "oriented implementation of the `Rpy " -#~ "`_ bindings." +#~ "`Matplotlib `_ is " +#~ "a flexible plotting library for creating" +#~ " interactive 2D and 3D plots that " +#~ "can also be saved as manuscript-" +#~ "quality figures. The API in many " +#~ "ways reflects that of `MATLAB " +#~ "`_, easing " +#~ "transition of MATLAB users to Python." +#~ " Many examples, along with the source" +#~ " code to re-create them, are " +#~ "available in the `matplotlib gallery " +#~ "`_." +#~ msgstr "" + +#~ msgid "" +#~ "`Pandas `_ is data " +#~ "manipulation library based on Numpy " +#~ "which provides many useful functions for" +#~ " accessing, indexing, merging and grouping" +#~ " data easily. The main data structure" +#~ " (DataFrame) is close to what could" +#~ " be found in the R statistical " +#~ "package; that is, heterogeneous data " +#~ "tables with name indexing, time series" +#~ " operations and auto-alignment of " +#~ "data." +#~ msgstr "" + +#~ msgid "" +#~ "`PsychoPy `_ is a " +#~ "library for cognitive scientists allowing " +#~ "the creation of cognitive psychology and" +#~ " neuroscience experiments. The library " +#~ "handles presentation of stimuli, scripting " +#~ "of experimental design and data " +#~ "collection." #~ msgstr "" #~ msgid "" @@ -275,10 +360,35 @@ msgstr "" #~ "Gohlke `_ " #~ "however, has compiled a list of " #~ "Windows binaries for many useful Python" -#~ " packages. The list of packages has" +#~ " packages. The list of packages has" #~ " grown from a mainly scientific " #~ "Python resource to a more general " #~ "list. If you're on Windows, you " #~ "may want to check it out." #~ msgstr "" +#~ msgid "" +#~ "`Continuum Analytics `_ offers" +#~ " the `Anaconda Python Distribution " +#~ "`_ which " +#~ "includes all the common scientific " +#~ "Python packages as well as many " +#~ "packages related to data analytics and" +#~ " big data. Anaconda itself is free," +#~ " and Continuum sells a number of " +#~ "proprietary add-ons. Free licenses for" +#~ " the add-ons are available for " +#~ "academics and researchers." +#~ msgstr "" + +#~ msgid "" +#~ "`Canopy `_ is" +#~ " another scientific Python distribution, " +#~ "produced by `Enthought " +#~ "`_. A limited 'Canopy" +#~ " Express' variant is available for " +#~ "free, but Enthought charges for the " +#~ "full distribution. Free licenses are " +#~ "available for academics." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo index decaf70b569e67137682a2ad9ab2a87d083a1243..6f711906f83af3c6bcdc0af7671b49e433997a1c 100644 GIT binary patch delta 395 zcma*hJ4?e*7{>AE9IL&g##rx&C9^apX$fBF<|e2^z`@N~MQ{}?c2OKO5C<2fQ=tWm zkX5B1;;aY-#gE{s;N){SU%(;!cwbJ=`Tw|IZd9su0Ne?n$ZuN$gPc$MfGv7Si}aVy z(5Vz~PUmTtKGQV+JLw0$IY$FPo*t)xN$xM`1LvCzpx)WZ0xj;RbHFg?Cj&JcaM3e> zLoPzTt`5FZ6?A0kpvI66>QEJASvtt2Drl8<=_ge|*SuW?H48fEYD5RMsS0`=)$i2D zc%drt$92(1yeQri$Bd*XCHK~gAZLYHX)K2u_TIj|60Wbsx0#mMO*XS{(k%OqS8@En Z_7;|cAgSgjM5;XJ<>IR7{r8%>`~&zHM=byV delta 406 zcmb8pJ4?e*7{>AEq*^a&V{KD)v1BgRCPeD(Q`E`vh+74V23!OSqJmIwWN;M0!Gb#U zY$8$z7s0`)A`UK&u8Nz_;d}yz@Z){qy!n5Xf6B)bjcWjR0x0mSSwNceegascr?fzS z={Ozh0S;+}cIYEb^4(r9@Xh%k38d&wAK-C+Lhm`Z`+*y}HUPA^_XdGs&QCTP*yQ5f z2DZ3Ze+L2kwbg;WPsX@`DL9dyp?I_NTMg3fX#=!)u~XV(NZ z^E{}F=0{A?XFMz3RM9!I)NSTPsAjfk<)mDWHl+0G>z+>os_E3INQ9G9aW(z=ziWTn#ZaIC diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po index 33a613cb2..b23642b2a 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po @@ -1,35 +1,43 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/scrape.rst:2 +#: ../../scenarios/scrape.rst:4 msgid "HTML Scraping" msgstr "" -#: ../../scenarios/scrape.rst:5 +#: ../../scenarios/scrape.rst:11 msgid "Web Scraping" msgstr "" -#: ../../scenarios/scrape.rst:7 +#: ../../scenarios/scrape.rst:13 msgid "" "Web sites are written using HTML, which means that each web page is a " "structured document. Sometimes it would be great to obtain some data from" " them and preserve the structure while we're at it. Web sites don't " -"always provide their data in comfortable formats such as ``csv`` or " -"``json``." +"always provide their data in comfortable formats such as CSV or JSON." msgstr "" -#: ../../scenarios/scrape.rst:12 +#: ../../scenarios/scrape.rst:18 msgid "" "This is where web scraping comes in. Web scraping is the practice of " "using a computer program to sift through a web page and gather the data " @@ -37,11 +45,11 @@ msgid "" "preserving the structure of the data." msgstr "" -#: ../../scenarios/scrape.rst:18 +#: ../../scenarios/scrape.rst:26 msgid "lxml and Requests" msgstr "" -#: ../../scenarios/scrape.rst:20 +#: ../../scenarios/scrape.rst:28 msgid "" "`lxml `_ is a pretty extensive library written for " "parsing XML and HTML documents very quickly, even handling messed up tags" @@ -51,62 +59,62 @@ msgid "" "install both using ``pip install lxml`` and ``pip install requests``." msgstr "" -#: ../../scenarios/scrape.rst:28 +#: ../../scenarios/scrape.rst:36 msgid "Let's start with the imports:" msgstr "" -#: ../../scenarios/scrape.rst:35 +#: ../../scenarios/scrape.rst:43 msgid "" "Next we will use ``requests.get`` to retrieve the web page with our data," -" parse it using the ``html`` module and save the results in ``tree``:" +" parse it using the ``html`` module, and save the results in ``tree``:" msgstr "" -#: ../../scenarios/scrape.rst:43 +#: ../../scenarios/scrape.rst:51 msgid "" "(We need to use ``page.content`` rather than ``page.text`` because " "``html.fromstring`` implicitly expects ``bytes`` as input.)" msgstr "" -#: ../../scenarios/scrape.rst:46 +#: ../../scenarios/scrape.rst:54 msgid "" "``tree`` now contains the whole HTML file in a nice tree structure which " "we can go over two different ways: XPath and CSSSelect. In this example, " "we will focus on the former." msgstr "" -#: ../../scenarios/scrape.rst:50 +#: ../../scenarios/scrape.rst:58 msgid "" "XPath is a way of locating information in structured documents such as " "HTML or XML documents. A good introduction to XPath is on `W3Schools " -"`_ ." +"`_ ." msgstr "" -#: ../../scenarios/scrape.rst:54 +#: ../../scenarios/scrape.rst:62 msgid "" "There are also various tools for obtaining the XPath of elements such as " "FireBug for Firefox or the Chrome Inspector. If you're using Chrome, you " "can right click an element, choose 'Inspect element', highlight the code," -" right click again and choose 'Copy XPath'." +" right click again, and choose 'Copy XPath'." msgstr "" -#: ../../scenarios/scrape.rst:59 +#: ../../scenarios/scrape.rst:67 msgid "" "After a quick analysis, we see that in our page the data is contained in " -"two elements - one is a div with title 'buyer-name' and the other is a " +"two elements -- one is a div with title 'buyer-name' and the other is a " "span with class 'item-price':" msgstr "" -#: ../../scenarios/scrape.rst:68 +#: ../../scenarios/scrape.rst:76 msgid "" "Knowing this we can create the correct XPath query and use the lxml " "``xpath`` function like this:" msgstr "" -#: ../../scenarios/scrape.rst:78 +#: ../../scenarios/scrape.rst:86 msgid "Let's see what we got exactly:" msgstr "" -#: ../../scenarios/scrape.rst:98 +#: ../../scenarios/scrape.rst:106 msgid "" "Congratulations! We have successfully scraped all the data we wanted from" " a web page using lxml and Requests. We have it stored in memory as two " @@ -114,19 +122,62 @@ msgid "" "using Python or we can save it to a file and share it with the world." msgstr "" -#: ../../scenarios/scrape.rst:103 +#: ../../scenarios/scrape.rst:111 msgid "" "Some more cool ideas to think about are modifying this script to iterate " "through the rest of the pages of this example dataset, or rewriting this " "application to use threads for improved speed." msgstr "" +#~ msgid "" +#~ msgstr "" + +#~ msgid "" +#~ "Web sites are written using HTML, " +#~ "which means that each web page is" +#~ " a structured document. Sometimes it " +#~ "would be great to obtain some data" +#~ " from them and preserve the structure" +#~ " while we're at it. Web sites " +#~ "don't always provide their data in " +#~ "comfortable formats such as ``csv`` or" +#~ " ``json``." +#~ msgstr "" + +#~ msgid "" +#~ "Next we will use ``requests.get`` to " +#~ "retrieve the web page with our " +#~ "data, parse it using the ``html`` " +#~ "module and save the results in " +#~ "``tree``:" +#~ msgstr "" + #~ msgid "" #~ "XPath is a way of locating " #~ "information in structured documents such " #~ "as HTML or XML documents. A good" #~ " introduction to XPath is on " -#~ "`W3Schools `_ " +#~ "`W3Schools `_ " #~ "." #~ msgstr "" +#~ msgid "" +#~ "There are also various tools for " +#~ "obtaining the XPath of elements such " +#~ "as FireBug for Firefox or the " +#~ "Chrome Inspector. If you're using " +#~ "Chrome, you can right click an " +#~ "element, choose 'Inspect element', highlight" +#~ " the code, right click again and " +#~ "choose 'Copy XPath'." +#~ msgstr "" + +#~ msgid "" +#~ "After a quick analysis, we see " +#~ "that in our page the data is " +#~ "contained in two elements - one is" +#~ " a div with title 'buyer-name' " +#~ "and the other is a span with " +#~ "class 'item-price':" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo b/docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo index bc4abd4b9b207b96981df9d7466f99d6fd3064fa..744b69261d2c7957ae0623f93cbf265cfcaf2b77 100644 GIT binary patch literal 6889 zcmeHL%Wot{9WEdtU|!jT@CcD8i9-^_-7~gvvOD`A_Ifrk@(Vu_7DcRUx@%_2?yl*7#xFEh?RridC-9_TeSiAn*JypNQ zSKsefRr8l89{DN5&vW?y4F13I0eYJL{Op5_{Rxjh2YwiM{vpOb4SWmu1n?)oF6O)o z{2reF_6TDi0p5L-v5x`Y1k(6>!0%w(J3yNE^ka;j0VCjhz+VDC3p~Q)cY!(Z6TqiF z8s2{iNOrCQ$^IVj2zVQq0DoP-e{zAb$MO6O@C(4G#!VpEm%!V=Zv%e?`~&a@znJ4jI4nb!9iw@MBEU+M22`QViZ1YBxju|#Xypw2~$Wc zOq-ch%EZ7C`0ay!xGohINMuv5G2hhOnq2ZkSZNo%MT==VMb_ZN(F%cESa<;Al$znW z(kiEgZo+vM@zV2XsFESQ)f_8V(F&x>o^o4=1o4-=Cv-YesT<<+yOk=ud2%ccJN%*K4jE6j7kZXuJL^j}Jm(xNs2Ph_^p zAtn$E!PYD(n^e|%W;H+F8@nMUXr6OFD}PJmuHmBB0t{j9^QJ0{n2O?E9v^)IN6OvnGDsLY>i~Ebz+Tf zB~^(Ea;@AB+AA-uT$xzrSU^v_bs{;H=gClLNOKaqHGMZijY$pRNmPm+#4|(V#N@5J z71#t9wzaa_esOuFMKuy3p)?>+ zY9LKFN~sHFCJ|^5RP!hsDr?FEs&_(Z8`=mtSmgD}80sMqJ61H8AU*ZMpBVKzh{^5P zRL?>QnK7rdk_Z|ensGtSwRU}V4+To4DySz?FnN_Z1*z~1G*&2bROBnh3^Gdac&{{A z-l{*PH>fAFaHe|A}!r<4FG22)w3z0xTRM!5;;e)E%Rb#c0MNnTVr_a9C(pCUf_DhrV-WYC6 zS(F%5x5b$4hj!Cp2er6qc@E{dV+Yt~k#SuQUWIjU!r=QqqpUD@^4WbG-67VTcEFk) zD7CH&Z_77ro@Bye3wZ!tPV}lwV2h^>4s-op>bJOw1WmLj_&&#*Ox^5RzXWj3a6 zPd14M`m{pT)|F0F`2HD6td56VxN#w4eh{jP4h-a$USeh`JGA*BSyYy;ax_cY^eWox z7k%Faq$+WMo-t_J8h?@d9iwFkH;@3qP`{x4YLWLVo%jY8#@4+5_cHjOrJvZd3(_az zG#biTb5^=|3~3gMxM^03qRBGwaa`BKL#u6hQf-B=oW^TNpH$ea(o_geoD#p-_cgi| zH@y>?I9fh|1(j%mps)pT>FQM#yHhs1$CL`Sq-=sqe}Rpd?`rG`6;3BjjZ91Tbvkz8(d(wEN#DA^!d`DGg__uG zL!mbm3Kij$7uYEbgi5*2_RmSTjF}I1)|#*`zE~HGh+=43#A~#fMz2A+=;0k+_(Q;; zqSJFbZpTXt`;zvPXxk1{8m(6Y8y%VsU)b9{jBcV0kWixyR8og8x0jcq_DZz0%G;Ma ztE(@x@q>ZUzC2T8z8-hGyS5)~??xMI{MFsg_T~%U*xl(aY$3?#utbSqyEbKq-#Xgb z;yY{GU4E^*y|%ga^4iA6e)r(u28M?Htiw;u6m9K%<3v_e7952Je{EmaWoY&6$jzgUR z{eOPP!DVKC$C=-8=69S6Up~z5ICS5h-*NDL;rxy>^A*BFFC5eB{rrw|-KZ+D!3 E1IB3T%>V!Z delta 597 zcmdsyKS~2Z6o)6eF&bp^M@c{fPGJ)yAxol28aqn~0c)M?&a#7>9od~Em=qqsa_|lc zQ3Nkw<0UKvOTB=d_?sk!XK>)n_ulOLeXyVVues~@qIFAf)=(9cXNEs#ioS??K%J%t zd0EV*B|@IiSHTtV4O|63Km~q*+u+$UArs^#pz(ZLb5Axsn``78X(LKNBihZ(MSGwT zwLl}f2lXgl&$u#j`K8j+{LZn6l%$OMGVU`)Re+0yp&TVtV3f4SX%euQdsN0WQPOlG zqRGGw5F4?pSw;M)ju00eY5$P>j?KEKenneth Reitz -# Project. CC -# BY-NC-SA 3.0 +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 # This file is distributed under the same license as the pythonguide # package. -# FIRST AUTHOR , 2016. +# FIRST AUTHOR , 2021. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/serialization.rst:3 +#: ../../scenarios/serialization.rst:4 msgid "Data Serialization" msgstr "" -#: ../../scenarios/serialization.rst:6 +#: ../../scenarios/serialization.rst:11 msgid "What is data serialization?" msgstr "" -#: ../../scenarios/serialization.rst:8 +#: ../../scenarios/serialization.rst:13 msgid "" -"Data serialization is the concept of converting structured data into a " -"format that allows it to be shared or stored in such a way that its " -"original structure to be recovered. In some cases, the secondary " -"intention of data serialization is to minimize the size of the serialized" -" data which then minimizes disk space or bandwidth requirements." +"Data serialization is the process of converting structured data to a " +"format that allows sharing or storage of the data in a form that allows " +"recovery of its original structure. In some cases, the secondary " +"intention of data serialization is to minimize the data's size which then" +" reduces disk space or bandwidth requirements." msgstr "" -#: ../../scenarios/serialization.rst:15 -msgid "Pickle" +#: ../../scenarios/serialization.rst:21 +msgid "Flat vs. Nested data" msgstr "" -#: ../../scenarios/serialization.rst:17 +#: ../../scenarios/serialization.rst:23 +msgid "" +"Before beginning to serialize data, it is important to identify or decide" +" how the data should be structured during data serialization - flat or " +"nested. The differences in the two styles are shown in the below " +"examples." +msgstr "" + +#: ../../scenarios/serialization.rst:27 +msgid "Flat style:" +msgstr "" + +#: ../../scenarios/serialization.rst:34 +msgid "Nested style:" +msgstr "" + +#: ../../scenarios/serialization.rst:42 +msgid "" +"For more reading on the two styles, please see the discussion on `Python " +"mailing list `__, `IETF mailing list " +"`__ and" +" `in stackexchange " +"`__." +msgstr "" + +#: ../../scenarios/serialization.rst:49 +msgid "Serializing Text" +msgstr "" + +#: ../../scenarios/serialization.rst:53 +msgid "Simple file (flat data)" +msgstr "" + +#: ../../scenarios/serialization.rst:55 +msgid "" +"If the data to be serialized is located in a file and contains flat data," +" Python offers two methods to serialize data." +msgstr "" + +#: ../../scenarios/serialization.rst:58 +msgid "repr" +msgstr "" + +#: ../../scenarios/serialization.rst:60 +msgid "" +"The repr method in Python takes a single object parameter and returns a " +"printable representation of the input:" +msgstr "" + +#: ../../scenarios/serialization.rst:79 +msgid "ast.literal_eval" +msgstr "" + +#: ../../scenarios/serialization.rst:81 +msgid "" +"The literal_eval method safely parses and evaluates an expression for a " +"Python datatype. Supported data types are: strings, numbers, tuples, " +"lists, dicts, booleans, and None." +msgstr "" + +#: ../../scenarios/serialization.rst:90 +msgid "CSV file (flat data)" +msgstr "" + +#: ../../scenarios/serialization.rst:92 +msgid "" +"The CSV module in Python implements classes to read and write tabular " +"data in CSV format." +msgstr "" + +#: ../../scenarios/serialization.rst:95 +msgid "Simple example for reading:" +msgstr "" + +#: ../../scenarios/serialization.rst:106 +msgid "Simple example for writing:" +msgstr "" + +#: ../../scenarios/serialization.rst:117 +msgid "" +"The module's contents, functions, and examples can be found `in the " +"Python documentation `__." +msgstr "" + +#: ../../scenarios/serialization.rst:122 +msgid "YAML (nested data)" +msgstr "" + +#: ../../scenarios/serialization.rst:124 +msgid "" +"There are many third party modules to parse and read/write YAML file " +"structures in Python. One such example is below." +msgstr "" + +#: ../../scenarios/serialization.rst:137 +msgid "" +"Documentation on the third party module can be found `in the PyYAML " +"Documentation `__." +msgstr "" + +#: ../../scenarios/serialization.rst:142 +msgid "JSON file (nested data)" +msgstr "" + +#: ../../scenarios/serialization.rst:144 +msgid "" +"Python's JSON module can be used to read and write JSON files. Example " +"code is below." +msgstr "" + +#: ../../scenarios/serialization.rst:147 +msgid "Reading:" +msgstr "" + +#: ../../scenarios/serialization.rst:156 +msgid "Writing:" +msgstr "" + +#: ../../scenarios/serialization.rst:167 +msgid "XML (nested data)" +msgstr "" + +#: ../../scenarios/serialization.rst:169 +msgid "XML parsing in Python is possible using the `xml` package." +msgstr "" + +#: ../../scenarios/serialization.rst:171 ../../scenarios/serialization.rst:194 +msgid "Example:" +msgstr "" + +#: ../../scenarios/serialization.rst:180 +msgid "" +"More documentation on using the `xml.dom` and `xml.sax` packages can be " +"found `in the Python XML library documentation " +"`__." +msgstr "" + +#: ../../scenarios/serialization.rst:186 +msgid "Binary" +msgstr "" + +#: ../../scenarios/serialization.rst:190 +msgid "NumPy Array (flat data)" +msgstr "" + +#: ../../scenarios/serialization.rst:192 +msgid "" +"Python's NumPy array can be used to serialize and deserialize data to and" +" from byte representation." +msgstr "" + +#: ../../scenarios/serialization.rst:210 +msgid "Pickle (nested data)" +msgstr "" + +#: ../../scenarios/serialization.rst:212 msgid "" "The native data serialization module for Python is called `Pickle " "`_." msgstr "" -#: ../../scenarios/serialization.rst:20 +#: ../../scenarios/serialization.rst:215 msgid "Here's an example:" msgstr "" -#: ../../scenarios/serialization.rst:36 +#: ../../scenarios/serialization.rst:233 msgid "Protobuf" msgstr "" -#: ../../scenarios/serialization.rst:38 +#: ../../scenarios/serialization.rst:235 msgid "" "If you're looking for a serialization module that has support in multiple" " languages, Google's `Protobuf `_ library is an option." msgstr "" +#~ msgid "" +#~ "Data serialization is the concept of " +#~ "converting structured data into a format" +#~ " that allows it to be shared or" +#~ " stored in such a way that its" +#~ " original structure to be recovered. " +#~ "In some cases, the secondary intention" +#~ " of data serialization is to minimize" +#~ " the size of the serialized data " +#~ "which then minimizes disk space or " +#~ "bandwidth requirements." +#~ msgstr "" + +#~ msgid "Pickle" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo b/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo index 74984cb5317a1017c8404682af488581b7f75892..fcd5e17e7355a13de75b5ca7e4414f6bfe8c917b 100644 GIT binary patch delta 1125 zcmb`_%}bO~6vy#1y z$W4nvBgjIkr>Hi1}MwZAZ#^E^DvhP05G5(z((u~s{ zk{d@sxt`Nn*6 zq{)#MX0v!`*aTMLLsoo8KjT|j=Hz$S%Q!Y$-h;-l^Y{iOoCd4t+5TB!l7+G&ZyuQJ#yNg;lJ=gTiLhVrz z>P0G0L##p#acH9nu_@1lIF%PRDgI=F{z~m86XHSC=Fg*s_yuclOTG#53=T2AhZ`U0laOQ<1c2Th1A{AD!6kHyA@ttP~m zs3HC!KhlteQjx0|TPC8BUc(8TMUC`qxrwx-($oo|M!I`so5|F>-DDcS!(_Gwy)4K@ zZDmn(Tps;ijr!91sD~m?V=g+|d+c4Vn@)FQZ_}~kR=vFxH|TcNb#;a!{Yk&k4BvaFqsLy%`s_^TZR-v-HMe)R pMy9RC#9*O6P~3)RaW0OUI;LGAgGM1;v?#(!2dzLwMTx)(gs`j- zhFZALpeVu;?QIbVMg+ByAS)=az?53JvPCV5==*TyUuZFW-g7_a`OWI^%J8@^eqKcC zog$t101Gi|v&fPqQig8)nepi~Amyd4RaomPun2M9gRJo7GSoat|(Egb&(t(RE zksyXxe1h?)TjG*Mht2Mz_!2o&A{qR!1sib+EAcztz`{(CL41hg=wTDikU7)~&7IGY~MSL853YTb)Zmkh1*A7-4#p^jD7abz+az%QX(3EdnzzW8L1tJ^tpG`!q zoVXt8qF`(yxj2Ine9Fw<=%+oqgH^P@-~jE+og#m51oQB+M}#uTZPc1hq1JFZ*?xjL zzJPk(YrMpMZ#~pb-`3<6(GV9=L#)|tLYzVkaUM0qn?)wXiQ;6~s0U`1n3@%$)+m5_ zfojwc8&E^Mvd4sYy3~aDqBL$&+@OQ{%8@b?Vk>I#mr+Cfij5fbnGlCiL!3qpF-)1p zaTfK3hXUq8$5Hn=gZj`8OvP2y5ZB{;Xo>~pCd75r5Vu#D5Zn37^fLZ=ud%t>g!mja z#2@5F3bIx!atobdbAbueNblhcE~7>|R%aqTSZ^YYbn~H^PBxfKbM~7|vk#ceiqXw@ z5VfTHlI_FE@n+N)pTtCy_p1HLd)JZDKM-xd&|{AjjijcuHTQJK+7d4RFRR410(Y!* zpQo#5C^i`Dv!{cvoR&Yak{7o8_M@s=r^8d1SgU=O*3}n_cAV?(v?szJ9d>{HH%DU0 i(~=RY_J>0LP>rWNR99t(b`@BgDg#xCi1*rmJNF;zQMpk7 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po index db850f015..8e1eed663 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po @@ -1,43 +1,52 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/speed.rst:2 +#: ../../scenarios/speed.rst:4 msgid "Speed" msgstr "" -#: ../../scenarios/speed.rst:4 +#: ../../scenarios/speed.rst:8 msgid "" "CPython, the most commonly used implementation of Python, is slow for CPU" " bound tasks. `PyPy`_ is fast." msgstr "" -#: ../../scenarios/speed.rst:7 +#: ../../scenarios/speed.rst:11 msgid "" "Using a slightly modified version of `David Beazley's`_ CPU bound test " "code (added loop for multiple tests), you can see the difference between " "CPython and PyPy's processing." msgstr "" -#: ../../scenarios/speed.rst:37 +#: ../../scenarios/speed.rst:43 msgid "Context" msgstr "" -#: ../../scenarios/speed.rst:41 ../../scenarios/speed.rst:59 +#: ../../scenarios/speed.rst:47 ../../scenarios/speed.rst:65 msgid "The GIL" msgstr "" -#: ../../scenarios/speed.rst:43 +#: ../../scenarios/speed.rst:49 msgid "" "`The GIL`_ (Global Interpreter Lock) is how Python allows multiple " "threads to operate at the same time. Python's memory management isn't " @@ -45,7 +54,7 @@ msgid "" "from running the same Python code at once." msgstr "" -#: ../../scenarios/speed.rst:48 +#: ../../scenarios/speed.rst:54 msgid "" "David Beazley has a great `guide`_ on how the GIL operates. He also " "covers the `new GIL`_ in Python 3.2. His results show that maximizing " @@ -54,47 +63,47 @@ msgid "" "have, and where your application bottlenecks are." msgstr "" -#: ../../scenarios/speed.rst:55 ../../scenarios/speed.rst:65 +#: ../../scenarios/speed.rst:61 ../../scenarios/speed.rst:73 msgid "C Extensions" msgstr "" -#: ../../scenarios/speed.rst:61 +#: ../../scenarios/speed.rst:67 msgid "" "`Special care`_ must be taken when writing C extensions to make sure you " "register your threads with the interpreter." msgstr "" -#: ../../scenarios/speed.rst:69 +#: ../../scenarios/speed.rst:77 msgid "Cython" msgstr "" -#: ../../scenarios/speed.rst:71 +#: ../../scenarios/speed.rst:79 msgid "" -"`Cython `_ implements a superset of the Python " +"`Cython `_ implements a superset of the Python " "language with which you are able to write C and C++ modules for Python. " "Cython also allows you to call functions from compiled C libraries. Using" " Cython allows you to take advantage of Python's strong typing of " "variables and operations." msgstr "" -#: ../../scenarios/speed.rst:76 +#: ../../scenarios/speed.rst:84 msgid "Here's an example of strong typing with Cython:" msgstr "" -#: ../../scenarios/speed.rst:103 +#: ../../scenarios/speed.rst:111 msgid "" "This implementation of an algorithm to find prime numbers has some " "additional keywords compared to the next one, which is implemented in " "pure Python:" msgstr "" -#: ../../scenarios/speed.rst:128 +#: ../../scenarios/speed.rst:136 msgid "" "Notice that in the Cython version you declare integers and integer arrays" " to be compiled into C types while also creating a Python list:" msgstr "" -#: ../../scenarios/speed.rst:151 +#: ../../scenarios/speed.rst:159 msgid "" "What is the difference? In the upper Cython version you can see the " "declaration of the variable types and the integer array in a similar way " @@ -105,50 +114,50 @@ msgid "" "files." msgstr "" -#: ../../scenarios/speed.rst:158 +#: ../../scenarios/speed.rst:166 msgid "What's the difference in speed? Let's try it!" msgstr "" -#: ../../scenarios/speed.rst:184 +#: ../../scenarios/speed.rst:190 msgid "These lines both need a remark:" msgstr "" -#: ../../scenarios/speed.rst:192 +#: ../../scenarios/speed.rst:198 msgid "" "The `pyximport` module allows you to import :file:`*.pyx` files (e.g., " ":file:`primesCy.pyx`) with the Cython-compiled version of the `primes` " "function. The `pyximport.install()` command allows the Python interpreter" -" to start the Cython compiler directly to generate C-code, which is " -"automatically compiled to a :file:`*.so` C-library. Cython is then able " +" to start the Cython compiler directly to generate C code, which is " +"automatically compiled to a :file:`*.so` C library. Cython is then able " "to import this library for you in your Python code, easily and " "efficiently. With the `time.time()` function you are able to compare the " "time between these 2 different calls to find 500 prime numbers. On a " "standard notebook (dual core AMD E-450 1.6 GHz), the measured values are:" msgstr "" -#: ../../scenarios/speed.rst:209 +#: ../../scenarios/speed.rst:215 msgid "" -"And here the output of an embedded `ARM beaglebone " +"And here is the output of an embedded `ARM beaglebone " "`_ machine:" msgstr "" -#: ../../scenarios/speed.rst:219 +#: ../../scenarios/speed.rst:225 msgid "Pyrex" msgstr "" -#: ../../scenarios/speed.rst:223 +#: ../../scenarios/speed.rst:229 msgid "Shedskin?" msgstr "" -#: ../../scenarios/speed.rst:226 +#: ../../scenarios/speed.rst:234 msgid "Concurrency" msgstr "" -#: ../../scenarios/speed.rst:230 +#: ../../scenarios/speed.rst:238 msgid "Concurrent.futures" msgstr "" -#: ../../scenarios/speed.rst:232 +#: ../../scenarios/speed.rst:240 msgid "" "The `concurrent.futures`_ module is a module in the standard library that" " provides a \"high-level interface for asynchronously executing " @@ -157,7 +166,7 @@ msgid "" " user to focus on accomplishing the task at hand." msgstr "" -#: ../../scenarios/speed.rst:238 +#: ../../scenarios/speed.rst:246 msgid "" "The `concurrent.futures`_ module exposes two main classes, the " "`ThreadPoolExecutor` and the `ProcessPoolExecutor`. The " @@ -166,16 +175,16 @@ msgid "" "the next worker thread becomes available." msgstr "" -#: ../../scenarios/speed.rst:244 +#: ../../scenarios/speed.rst:252 msgid "" "The ProcessPoolExecutor works in the same way, except instead of using " "multiple threads for its workers, it will use multiple processes. This " -"makes it possible to side-step the GIL, however because of the way things" -" are passed to worker processes, only picklable objects can be executed " -"and returned." +"makes it possible to side-step the GIL; however, because of the way " +"things are passed to worker processes, only picklable objects can be " +"executed and returned." msgstr "" -#: ../../scenarios/speed.rst:249 +#: ../../scenarios/speed.rst:257 msgid "" "Because of the way the GIL works, a good rule of thumb is to use a " "ThreadPoolExecutor when the task being executed involves a lot of " @@ -183,137 +192,137 @@ msgid "" "ProcessPoolExecutor executor when the task is computationally expensive." msgstr "" -#: ../../scenarios/speed.rst:254 +#: ../../scenarios/speed.rst:262 msgid "" "There are two main ways of executing things in parallel using the two " "Executors. One way is with the `map(func, iterables)` method. This works " "almost exactly like the builtin `map()` function, except it will execute " -"everything in parallel. :" +"everything in parallel." msgstr "" -#: ../../scenarios/speed.rst:276 +#: ../../scenarios/speed.rst:284 msgid "" "For even more control, the `submit(func, *args, **kwargs)` method will " "schedule a callable to be executed ( as `func(*args, **kwargs)`) and " "returns a `Future`_ object that represents the execution of the callable." msgstr "" -#: ../../scenarios/speed.rst:280 +#: ../../scenarios/speed.rst:288 msgid "" "The Future object provides various methods that can be used to check on " "the progress of the scheduled callable. These include:" msgstr "" -#: ../../scenarios/speed.rst:283 +#: ../../scenarios/speed.rst:291 msgid "cancel()" msgstr "" -#: ../../scenarios/speed.rst:284 +#: ../../scenarios/speed.rst:292 msgid "Attempt to cancel the call." msgstr "" -#: ../../scenarios/speed.rst:285 +#: ../../scenarios/speed.rst:293 msgid "cancelled()" msgstr "" -#: ../../scenarios/speed.rst:286 +#: ../../scenarios/speed.rst:294 msgid "Return True if the call was successfully cancelled." msgstr "" -#: ../../scenarios/speed.rst:288 +#: ../../scenarios/speed.rst:296 msgid "running()" msgstr "" -#: ../../scenarios/speed.rst:288 +#: ../../scenarios/speed.rst:296 msgid "" "Return True if the call is currently being executed and cannot be " "cancelled." msgstr "" -#: ../../scenarios/speed.rst:290 +#: ../../scenarios/speed.rst:298 msgid "done()" msgstr "" -#: ../../scenarios/speed.rst:291 +#: ../../scenarios/speed.rst:299 msgid "Return True if the call was successfully cancelled or finished running." msgstr "" -#: ../../scenarios/speed.rst:293 +#: ../../scenarios/speed.rst:301 msgid "result()" msgstr "" -#: ../../scenarios/speed.rst:293 +#: ../../scenarios/speed.rst:301 msgid "" "Return the value returned by the call. Note that this call will block " "until the scheduled callable returns by default." msgstr "" -#: ../../scenarios/speed.rst:296 +#: ../../scenarios/speed.rst:304 msgid "exception()" msgstr "" -#: ../../scenarios/speed.rst:296 +#: ../../scenarios/speed.rst:304 msgid "" "Return the exception raised by the call. If no exception was raised then " -"this returns `None`. Note that this will block just like `result()`." +"this returns None. Note that this will block just like `result()`." msgstr "" -#: ../../scenarios/speed.rst:301 +#: ../../scenarios/speed.rst:309 msgid "add_done_callback(fn)" msgstr "" -#: ../../scenarios/speed.rst:299 +#: ../../scenarios/speed.rst:307 msgid "" "Attach a callback function that will be executed (as `fn(future)`) when " "the scheduled callable returns." msgstr "" -#: ../../scenarios/speed.rst:340 +#: ../../scenarios/speed.rst:348 msgid "" "The `concurrent.futures`_ module contains two helper functions for " "working with Futures. The `as_completed(futures)` function returns an " "iterator over the list of futures, yielding the futures as they complete." msgstr "" -#: ../../scenarios/speed.rst:344 +#: ../../scenarios/speed.rst:352 msgid "" "The `wait(futures)` function will simply block until all futures in the " "list of futures provided have completed." msgstr "" -#: ../../scenarios/speed.rst:347 +#: ../../scenarios/speed.rst:355 msgid "" "For more information, on using the `concurrent.futures`_ module, consult " "the official documentation." msgstr "" -#: ../../scenarios/speed.rst:351 -msgid "Threading" +#: ../../scenarios/speed.rst:359 +msgid "threading" msgstr "" -#: ../../scenarios/speed.rst:353 +#: ../../scenarios/speed.rst:361 msgid "" "The standard library comes with a `threading`_ module that allows a user " "to work with multiple threads manually." msgstr "" -#: ../../scenarios/speed.rst:356 +#: ../../scenarios/speed.rst:364 msgid "" "Running a function in another thread is as simple as passing a callable " -"and it's arguments to `Thread`'s constructor and then calling `start()`:" +"and its arguments to `Thread`'s constructor and then calling `start()`:" msgstr "" -#: ../../scenarios/speed.rst:371 +#: ../../scenarios/speed.rst:379 msgid "To wait until the thread has terminated, call `join()`:" msgstr "" -#: ../../scenarios/speed.rst:377 +#: ../../scenarios/speed.rst:385 msgid "" "After calling `join()`, it is always a good idea to check whether the " "thread is still alive (because the join call timed out):" msgstr "" -#: ../../scenarios/speed.rst:387 +#: ../../scenarios/speed.rst:395 msgid "" "Because multiple threads have access to the same section of memory, " "sometimes there might be situations where two or more threads are trying " @@ -321,10 +330,10 @@ msgid "" "dependent on the sequence or timing of certain events. This is called a " "`data race`_ or race condition. When this happens, the output will be " "garbled or you may encounter problems which are difficult to debug. A " -"good example is this `stackoverflow post`_." +"good example is this `Stack Overflow post`_." msgstr "" -#: ../../scenarios/speed.rst:394 +#: ../../scenarios/speed.rst:402 msgid "" "The way this can be avoided is by using a `Lock`_ that each thread needs " "to acquire before writing to a shared resource. Locks can be acquired and" @@ -333,7 +342,7 @@ msgid "" "contrived) example:" msgstr "" -#: ../../scenarios/speed.rst:426 +#: ../../scenarios/speed.rst:434 msgid "" "Here, we have a bunch of threads checking for changes on a list of sites " "and whenever there are any changes, they attempt to write those changes " @@ -342,11 +351,11 @@ msgid "" " time, only one thread is writing to the file." msgstr "" -#: ../../scenarios/speed.rst:433 +#: ../../scenarios/speed.rst:441 msgid "Spawning Processes" msgstr "" -#: ../../scenarios/speed.rst:437 +#: ../../scenarios/speed.rst:445 msgid "Multiprocessing" msgstr "" @@ -362,3 +371,98 @@ msgstr "" #~ msgid "Write about Numba and the autojit compiler for NumPy" #~ msgstr "" +#~ msgid "" +#~ "`Cython `_ implements a " +#~ "superset of the Python language with " +#~ "which you are able to write C " +#~ "and C++ modules for Python. Cython " +#~ "also allows you to call functions " +#~ "from compiled C libraries. Using Cython" +#~ " allows you to take advantage of " +#~ "Python's strong typing of variables and" +#~ " operations." +#~ msgstr "" + +#~ msgid "" +#~ "The `pyximport` module allows you to " +#~ "import :file:`*.pyx` files (e.g., " +#~ ":file:`primesCy.pyx`) with the Cython-compiled" +#~ " version of the `primes` function. " +#~ "The `pyximport.install()` command allows the" +#~ " Python interpreter to start the " +#~ "Cython compiler directly to generate " +#~ "C-code, which is automatically compiled " +#~ "to a :file:`*.so` C-library. Cython is" +#~ " then able to import this library " +#~ "for you in your Python code, " +#~ "easily and efficiently. With the " +#~ "`time.time()` function you are able to" +#~ " compare the time between these 2 " +#~ "different calls to find 500 prime " +#~ "numbers. On a standard notebook (dual" +#~ " core AMD E-450 1.6 GHz), the " +#~ "measured values are:" +#~ msgstr "" + +#~ msgid "" +#~ "And here the output of an embedded" +#~ " `ARM beaglebone " +#~ "`_ machine:" +#~ msgstr "" + +#~ msgid "" +#~ "The ProcessPoolExecutor works in the " +#~ "same way, except instead of using " +#~ "multiple threads for its workers, it " +#~ "will use multiple processes. This makes" +#~ " it possible to side-step the " +#~ "GIL, however because of the way " +#~ "things are passed to worker processes," +#~ " only picklable objects can be " +#~ "executed and returned." +#~ msgstr "" + +#~ msgid "" +#~ "There are two main ways of " +#~ "executing things in parallel using the" +#~ " two Executors. One way is with " +#~ "the `map(func, iterables)` method. This " +#~ "works almost exactly like the builtin" +#~ " `map()` function, except it will " +#~ "execute everything in parallel. :" +#~ msgstr "" + +#~ msgid "" +#~ "Return the exception raised by the " +#~ "call. If no exception was raised " +#~ "then this returns `None`. Note that " +#~ "this will block just like `result()`." +#~ msgstr "" + +#~ msgid "Threading" +#~ msgstr "" + +#~ msgid "" +#~ "Running a function in another thread " +#~ "is as simple as passing a callable" +#~ " and it's arguments to `Thread`'s " +#~ "constructor and then calling `start()`:" +#~ msgstr "" + +#~ msgid "" +#~ "Because multiple threads have access to" +#~ " the same section of memory, " +#~ "sometimes there might be situations " +#~ "where two or more threads are " +#~ "trying to write to the same " +#~ "resource at the same time or where" +#~ " the output is dependent on the " +#~ "sequence or timing of certain events." +#~ " This is called a `data race`_ " +#~ "or race condition. When this happens," +#~ " the output will be garbled or " +#~ "you may encounter problems which are " +#~ "difficult to debug. A good example " +#~ "is this `stackoverflow post`_." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo index a7b04560bf97976b6ecc91d738bafb1f26fb9c93..5bd4c90e68a2773545f9d5d86c3b8cdf30e27bea 100644 GIT binary patch delta 6993 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 Tru~o3S61mIHZVxFGd=gISK{OQ}fE5bS zRk#)7KD~&x!(9;nsIE8B7B~yy5jqVA6XobEE-)AU4v)aAa1Q*q4^c6sQlizM1mYuV zf&6?Nu7&Gi6n+JJ!n(dhN8wC3AC{C6je|{)-^;><@Cn#c$q{{li;K8%rk~u|!E&PM z7$1c*U{QafF4zE1z`_cmpWsQz6Yd*8v>1K_i(rp|*aR$vMW{#vT#oVlK{!AG(N4$* zdus^Mg&ZE(i;GIwF;s5g!(k{J9ykoYf!dw&wv8gbJ1_G6Bge^l!h-t zoP|n9@Coq_fc>cnH1?bDek~F64vPMxsCXp!go5d9V?lf?MEesEs1p1Zzjj ziQb2QVH_AkR1e3Fl?P~r=pMx(SELQ1JM<{z7Ci&G1)XEje^i++;0C|&D_jZxfd{a$ zrD&WD%O()LjQhDtoF3z06J-m6KB5TjH>gC5;5%>~KEDe0z*PaF^SEDJP4pQ25tiV7 zOAV0%Begl1{MfxjBMOO*L+;JR$=EF(xB}ZSHgG)biGF}w`ksh9r+*vd^xrW}roS0( z#W;GOO#d~=>30#REpR970o57#^wXpqE;vMs;Styj=fJ@;wL6CbLf}H*skFmfm$mxFryW#Zz4T~`@LccC3=zniqaQZJ{ z7B0=eC3p!Ahn)U{kWaq7Nv8ib$SvrCoc@JNW%@P9>Hh=vgRy1ugc~5gzX`kG^mo8R zu%sF9@!$V3TyQB?BYCs%fwoGf|8;l@8FKo)uuQ)ek?Eg~pm6&4Lr(uEG2{$$(x-+@|ERd^&FrN2Y)N}jp`Eqe zt~rzY*ZckHRMyU>w4@PMLsrsV(&wr>uXLLGLRma#nPDqMjd?^&bA%?M86&I<%M@YV zPFPvPjEZ1GTr;DVuv1oC52YP3EtXE(4yKOg-&76D?__M-N~Qhb{G)zHPiJiZ^k9p6 zeRjhUsf;OFvslAPYKephS&NdkX5xk!77;6yadd|lj_C=Tmu<~BhN(MzH)7xsCld-` zDB6v5Of+TFF+9t!%H65nd-GMLD3(qp-0|ffc$dmA7I^C5p^Cd;$Xu^;$S;cPtvEg) zs+)RBOY{6;BZbo>vflG6n+v@0Bc3Z(YP|L9-c-D$V_qsQFdX-C<)L2rC4z=2+`SV= zc>AJ<6z_4PK=C%kCo10FMx()@S{Fuy?+J8G z)USvb3B5j;u<%w3de8NBR685YpOPQ<<&PdQLN}(&A59o0>cHz+rb@xajA?|dlqoCe zzH6$A?S5~XiqCz(YVf|T9ixFr}A}Aq`~v_T1DH>v$vWPSg->&aIou|Jh*G_V#x5#{8<4iu!HC)=>o` z!RvOP0b2>w`4(gnS%09qHZVDGeLZh&d!gcK8(vjhW#eY|^BK#^swVlW0=}v$5tv*b isPQUi4pE9~)Y{%&M@i=PcfsxNg4^E(q4fXYyWn4{#I}|I diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.po b/docs/locale/ko/LC_MESSAGES/scenarios/web.po index 3924c2592..910cd142b 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/web.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/web.po @@ -1,36 +1,45 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/web.rst:3 -msgid "Web Applications" +#: ../../scenarios/web.rst:4 +msgid "Web Applications & Frameworks" msgstr "" -#: ../../scenarios/web.rst:5 +#: ../../scenarios/web.rst:8 msgid "" "As a powerful scripting language adapted to both fast prototyping and " "bigger projects, Python is widely used in web application development." msgstr "" -#: ../../scenarios/web.rst:10 +#: ../../scenarios/web.rst:15 msgid "Context" msgstr "" -#: ../../scenarios/web.rst:14 +#: ../../scenarios/web.rst:20 msgid "WSGI" msgstr "" -#: ../../scenarios/web.rst:16 +#: ../../scenarios/web.rst:22 msgid "" "The Web Server Gateway Interface (or \"WSGI\" for short) is a standard " "interface between web servers and Python web application frameworks. By " @@ -40,11 +49,11 @@ msgid "" "servers-ref>`. WSGI is documented in :pep:`3333`." msgstr "" -#: ../../scenarios/web.rst:25 +#: ../../scenarios/web.rst:32 msgid "Frameworks" msgstr "" -#: ../../scenarios/web.rst:27 +#: ../../scenarios/web.rst:34 msgid "" "Broadly speaking, a web framework consists of a set of libraries and a " "main handler within which you can build custom code to implement a web " @@ -52,108 +61,109 @@ msgid "" "patterns and utilities to accomplish at least the following:" msgstr "" -#: ../../scenarios/web.rst:34 +#: ../../scenarios/web.rst:41 msgid "URL Routing" msgstr "" -#: ../../scenarios/web.rst:33 +#: ../../scenarios/web.rst:40 msgid "" "Matches an incoming HTTP request to a particular piece of Python code to " "be invoked" msgstr "" -#: ../../scenarios/web.rst:37 +#: ../../scenarios/web.rst:44 msgid "Request and Response Objects" msgstr "" -#: ../../scenarios/web.rst:37 -msgid "Encapsulate the information received from or sent to a user's browser" +#: ../../scenarios/web.rst:44 +msgid "Encapsulates the information received from or sent to a user's browser" msgstr "" -#: ../../scenarios/web.rst:41 +#: ../../scenarios/web.rst:48 msgid "Template Engine" msgstr "" -#: ../../scenarios/web.rst:40 +#: ../../scenarios/web.rst:47 msgid "" "Allows for separating Python code implementing an application's logic " "from the HTML (or other) output that it produces" msgstr "" -#: ../../scenarios/web.rst:46 +#: ../../scenarios/web.rst:53 msgid "Development Web Server" msgstr "" -#: ../../scenarios/web.rst:44 +#: ../../scenarios/web.rst:51 msgid "" "Runs an HTTP server on development machines to enable rapid development; " "often automatically reloads server-side code when files are updated" msgstr "" -#: ../../scenarios/web.rst:49 +#: ../../scenarios/web.rst:56 msgid "Django" msgstr "" -#: ../../scenarios/web.rst:51 +#: ../../scenarios/web.rst:58 msgid "" -"`Django `_ is a \"batteries included\" web " -"application framework, and is an excellent choice for creating content-" +"`Django `_ is a \"batteries included\" web" +" application framework, and is an excellent choice for creating content-" "oriented websites. By providing many utilities and patterns out of the " "box, Django aims to make it possible to build complex, database-backed " "web applications quickly, while encouraging best practices in code " "written using it." msgstr "" -#: ../../scenarios/web.rst:57 +#: ../../scenarios/web.rst:64 msgid "" "Django has a large and active community, and many pre-built `re-usable " "modules `_ that can be incorporated into a " "new project as-is, or customized to fit your needs." msgstr "" -#: ../../scenarios/web.rst:61 +#: ../../scenarios/web.rst:68 msgid "" "There are annual Django conferences `in the United States " -"`_ and `in Europe `_." +"`_, `Europe `_, and `Australia " +"`_." msgstr "" -#: ../../scenarios/web.rst:64 +#: ../../scenarios/web.rst:71 msgid "The majority of new Python web applications today are built with Django." msgstr "" -#: ../../scenarios/web.rst:67 +#: ../../scenarios/web.rst:74 msgid "Flask" msgstr "" -#: ../../scenarios/web.rst:69 +#: ../../scenarios/web.rst:76 msgid "" "`Flask `_ is a \"microframework\" for Python, " "and is an excellent choice for building smaller applications, APIs, and " "web services." msgstr "" -#: ../../scenarios/web.rst:72 +#: ../../scenarios/web.rst:79 msgid "" "Building an app with Flask is a lot like writing standard Python modules," " except some functions have routes attached to them. It's really " "beautiful." msgstr "" -#: ../../scenarios/web.rst:75 +#: ../../scenarios/web.rst:82 msgid "" "Rather than aiming to provide everything you could possibly need, Flask " "implements the most commonly-used core components of a web application " "framework, like URL routing, request and response objects, and templates." msgstr "" -#: ../../scenarios/web.rst:79 +#: ../../scenarios/web.rst:86 msgid "" "If you use Flask, it is up to you to choose other components for your " "application, if any. For example, database access or form generation and " "validation are not built-in functions of Flask." msgstr "" -#: ../../scenarios/web.rst:83 +#: ../../scenarios/web.rst:90 msgid "" "This is great, because many web applications don't need those features. " "For those that do, there are many `Extensions " @@ -161,164 +171,257 @@ msgid "" "needs. Or, you can easily use any library you want yourself!" msgstr "" -#: ../../scenarios/web.rst:88 +#: ../../scenarios/web.rst:95 msgid "" "Flask is default choice for any Python web application that isn't a good " "fit for Django." msgstr "" -#: ../../scenarios/web.rst:93 +#: ../../scenarios/web.rst:99 +msgid "Falcon" +msgstr "" + +#: ../../scenarios/web.rst:101 +msgid "" +"`Falcon `_ is a good choice when your goal " +"is to build RESTful API microservices that are fast and scalable." +msgstr "" + +#: ../../scenarios/web.rst:104 +msgid "" +"It is a reliable, high-performance Python web framework for building " +"large-scale app backends and microservices. Falcon encourages the REST " +"architectural style of mapping URIs to resources, trying to do as little " +"as possible while remaining highly effective." +msgstr "" + +#: ../../scenarios/web.rst:108 +msgid "" +"Falcon highlights four main focuses: speed, reliability, flexibility, and" +" debuggability. It implements HTTP through \"responders\" such as " +"``on_get()``, ``on_put()``, etc. These responders receive intuitive " +"request and response objects." +msgstr "" + +#: ../../scenarios/web.rst:113 msgid "Tornado" msgstr "" -#: ../../scenarios/web.rst:95 +#: ../../scenarios/web.rst:115 msgid "" -"`Tornado `_ is an asyncronous web framework " +"`Tornado `_ is an asynchronous web framework " "for Python that has its own event loop. This allows it to natively " "support WebSockets, for example. Well-written Tornado applications are " "known to have excellent performance characteristics." msgstr "" -#: ../../scenarios/web.rst:100 +#: ../../scenarios/web.rst:120 msgid "I do not recommend using Tornado unless you think you need it." msgstr "" -#: ../../scenarios/web.rst:103 +#: ../../scenarios/web.rst:123 msgid "Pyramid" msgstr "" -#: ../../scenarios/web.rst:105 +#: ../../scenarios/web.rst:125 msgid "" "`Pyramid `_ is a very flexible framework with a " "heavy focus on modularity. It comes with a small number of libraries " "(\"batteries\") built-in, and encourages users to extend its base " -"functionality." +"functionality. A set of provided cookiecutter templates helps making new " +"project decisions for users. It powers one of the most important parts of" +" python infrastructure `PyPI `_." msgstr "" -#: ../../scenarios/web.rst:109 +#: ../../scenarios/web.rst:132 msgid "" "Pyramid does not have a large user base, unlike Django and Flask. It's a " "capable framework, but not a very popular choice for new Python web " "applications today." msgstr "" -#: ../../scenarios/web.rst:114 +#: ../../scenarios/web.rst:137 +msgid "Masonite" +msgstr "" + +#: ../../scenarios/web.rst:139 +msgid "" +"`Masonite `_ is a modern and developer " +"centric, \"batteries included\", web framework." +msgstr "" + +#: ../../scenarios/web.rst:141 +msgid "" +"The Masonite framework follows the MVC (Model-View-Controller) " +"architecture pattern and is heavily inspired by frameworks such as Rails " +"and Laravel, so if you are coming to Python from a Ruby or PHP background" +" then you will feel right at home!" +msgstr "" + +#: ../../scenarios/web.rst:143 +msgid "" +"Masonite comes with a lot of functionality out of the box including a " +"powerful IOC container with auto resolving dependency injection, craft " +"command line tools, and the Orator active record style ORM." +msgstr "" + +#: ../../scenarios/web.rst:145 +msgid "" +"Masonite is perfect for beginners or experienced developers alike and " +"works hard to be fast and easy from install through to deployment. Try it" +" once and you’ll fall in love." +msgstr "" + +#: ../../scenarios/web.rst:148 +msgid "FastAPI" +msgstr "" + +#: ../../scenarios/web.rst:150 +msgid "" +"`FastAPI `_ is a modern web framework for " +"building APIs with Python 3.6+." +msgstr "" + +#: ../../scenarios/web.rst:153 +msgid "" +"It has very high performance as it is based on `Starlette " +"`_ and `Pydantic `_." +msgstr "" + +#: ../../scenarios/web.rst:156 +msgid "" +"FastAPI takes advantage of standard Python type declarations in function " +"parameters to declare request parameters and bodies, perform data " +"conversion (serialization, parsing), data validation, and automatic API " +"documentation with **OpenAPI 3** (including **JSON Schema**)." +msgstr "" + +#: ../../scenarios/web.rst:161 +msgid "" +"It includes tools and utilities for security and authentication " +"(including OAuth2 with JWT tokens), a dependency injection system, " +"automatic generation of interactive API documentation, and other " +"features." +msgstr "" + +#: ../../scenarios/web.rst:168 msgid "Web Servers" msgstr "" -#: ../../scenarios/web.rst:119 +#: ../../scenarios/web.rst:173 msgid "Nginx" msgstr "" -#: ../../scenarios/web.rst:121 +#: ../../scenarios/web.rst:175 msgid "" "`Nginx `_ (pronounced \"engine-x\") is a web server " -"and reverse-proxy for HTTP, SMTP and other protocols. It is known for its" -" high performance, relative simplicity, and compatibility with many " +"and reverse-proxy for HTTP, SMTP, and other protocols. It is known for " +"its high performance, relative simplicity, and compatibility with many " "application servers (like WSGI servers). It also includes handy features " "like load-balancing, basic authentication, streaming, and others. " "Designed to serve high-load websites, Nginx is gradually becoming quite " "popular." msgstr "" -#: ../../scenarios/web.rst:132 +#: ../../scenarios/web.rst:188 msgid "WSGI Servers" msgstr "" -#: ../../scenarios/web.rst:134 +#: ../../scenarios/web.rst:190 msgid "" "Stand-alone WSGI servers typically use less resources than traditional " -"web servers and provide top performance [3]_." +"web servers and provide top performance [1]_." msgstr "" -#: ../../scenarios/web.rst:140 +#: ../../scenarios/web.rst:196 msgid "Gunicorn" msgstr "" -#: ../../scenarios/web.rst:142 +#: ../../scenarios/web.rst:198 msgid "" -"`Gunicorn `_ (Green Unicorn) is a pure-python WSGI " -"server used to serve Python applications. Unlike other Python web " -"servers, it has a thoughtful user-interface, and is extremely easy to use" +"`Gunicorn `_ (Green Unicorn) is a pure-Python WSGI" +" server used to serve Python applications. Unlike other Python web " +"servers, it has a thoughtful user interface, and is extremely easy to use" " and configure." msgstr "" -#: ../../scenarios/web.rst:147 +#: ../../scenarios/web.rst:203 msgid "" "Gunicorn has sane and reasonable defaults for configurations. However, " "some other servers, like uWSGI, are tremendously more customizable, and " "therefore, are much more difficult to effectively use." msgstr "" -#: ../../scenarios/web.rst:151 +#: ../../scenarios/web.rst:207 msgid "Gunicorn is the recommended choice for new Python web applications today." msgstr "" -#: ../../scenarios/web.rst:155 +#: ../../scenarios/web.rst:211 msgid "Waitress" msgstr "" -#: ../../scenarios/web.rst:157 +#: ../../scenarios/web.rst:213 msgid "" -"`Waitress `_ is a pure-python WSGI " +"`Waitress `_ is a pure-Python WSGI " "server that claims \"very acceptable performance\". Its documentation is " "not very detailed, but it does offer some nice functionality that " "Gunicorn doesn't have (e.g. HTTP request buffering)." msgstr "" -#: ../../scenarios/web.rst:162 +#: ../../scenarios/web.rst:218 msgid "" "Waitress is gaining popularity within the Python web development " "community." msgstr "" -#: ../../scenarios/web.rst:167 +#: ../../scenarios/web.rst:223 msgid "uWSGI" msgstr "" -#: ../../scenarios/web.rst:169 +#: ../../scenarios/web.rst:225 msgid "" "`uWSGI `_ is a full stack for building" " hosting services. In addition to process management, process " "monitoring, and other functionality, uWSGI acts as an application server " -"for various programming languages and protocols - including Python and " +"for various programming languages and protocols -- including Python and " "WSGI. uWSGI can either be run as a stand-alone web router, or be run " "behind a full web server (such as Nginx or Apache). In the latter case, " "a web server can configure uWSGI and an application's operation over the " "`uwsgi protocol `_. uWSGI's web server " "support allows for dynamically configuring Python, passing environment " -"variables and further tuning. For full details, see `uWSGI magic " +"variables, and further tuning. For full details, see `uWSGI magic " "variables `_." msgstr "" -#: ../../scenarios/web.rst:182 +#: ../../scenarios/web.rst:238 msgid "I do not recommend using uWSGI unless you know why you need it." msgstr "" -#: ../../scenarios/web.rst:188 +#: ../../scenarios/web.rst:245 msgid "Server Best Practices" msgstr "" -#: ../../scenarios/web.rst:190 +#: ../../scenarios/web.rst:247 msgid "" "The majority of self-hosted Python applications today are hosted with a " "WSGI server such as :ref:`Gunicorn `, either directly or " "behind a lightweight web server such as :ref:`nginx `." msgstr "" -#: ../../scenarios/web.rst:194 +#: ../../scenarios/web.rst:251 msgid "" "The WSGI servers serve the Python applications while the web server " "handles tasks better suited for it such as static file serving, request " "routing, DDoS protection, and basic authentication." msgstr "" -#: ../../scenarios/web.rst:199 +#: ../../scenarios/web.rst:258 msgid "Hosting" msgstr "" -#: ../../scenarios/web.rst:201 +#: ../../scenarios/web.rst:260 msgid "" "Platform-as-a-Service (PaaS) is a type of cloud computing infrastructure " "which abstracts and manages infrastructure, routing, and scaling of web " @@ -327,17 +430,17 @@ msgid "" "deployment details." msgstr "" -#: ../../scenarios/web.rst:208 +#: ../../scenarios/web.rst:267 msgid "Heroku" msgstr "" -#: ../../scenarios/web.rst:210 +#: ../../scenarios/web.rst:269 msgid "" -"`Heroku `_ offers first-class support for " +"`Heroku `_ offers first-class support for " "Python 2.7–3.5 applications." msgstr "" -#: ../../scenarios/web.rst:213 +#: ../../scenarios/web.rst:272 msgid "" "Heroku supports all types of Python web applications, servers, and " "frameworks. Applications can be developed on Heroku for free. Once your " @@ -345,54 +448,29 @@ msgid "" "Professional application." msgstr "" -#: ../../scenarios/web.rst:217 +#: ../../scenarios/web.rst:276 msgid "" "Heroku maintains `detailed articles " -"`_ on using Python with " -"Heroku, as well as `step-by-step instructions " +"`_ on using " +"Python with Heroku, as well as `step-by-step instructions " "`_ on " "how to set up your first application." msgstr "" -#: ../../scenarios/web.rst:222 +#: ../../scenarios/web.rst:281 msgid "" "Heroku is the recommended PaaS for deploying Python web applications " "today." msgstr "" -#: ../../scenarios/web.rst:225 -msgid "Gondor" -msgstr "" - -#: ../../scenarios/web.rst:227 -msgid "" -"`Gondor `_ is a PaaS specialized for deploying Django" -" and Pinax applications. Gondor recommends Django version 1.6 and " -"supports any WSGI application on Python version 2.7. Gondor can " -"automatically configure your Django site if you use " -":file:`local_settings.py` for site-specific configuration information." -msgstr "" - -#: ../../scenarios/web.rst:233 -msgid "" -"Gondor has a guide on deploying `Django projects " -"`_." -msgstr "" - -#: ../../scenarios/web.rst:235 -msgid "" -"Gondor is run by a small company and focuses on helping businesses find " -"success with Python and Django." -msgstr "" - -#: ../../scenarios/web.rst:239 +#: ../../scenarios/web.rst:286 msgid "Templating" msgstr "" -#: ../../scenarios/web.rst:241 +#: ../../scenarios/web.rst:288 msgid "" "Most WSGI applications are responding to HTTP requests to serve content " -"in HTML or other markup languages. Instead of generating directly textual" +"in HTML or other markup languages. Instead of directly generating textual" " content from Python, the concept of separation of concerns advises us to" " use templates. A template engine manages a suite of template files, with" " a system of hierarchy and inclusion to avoid unnecessary repetition, and" @@ -401,19 +479,19 @@ msgid "" " application." msgstr "" -#: ../../scenarios/web.rst:249 +#: ../../scenarios/web.rst:296 msgid "" "As template files are sometimes written by designers or front-end " "developers, it can be difficult to handle increasing complexity." msgstr "" -#: ../../scenarios/web.rst:253 +#: ../../scenarios/web.rst:300 msgid "" "Some general good practices apply to the part of the application passing " "dynamic content to the template engine, and to the templates themselves." msgstr "" -#: ../../scenarios/web.rst:256 +#: ../../scenarios/web.rst:303 msgid "" "Template files should be passed only the dynamic content that is needed " "for rendering the template. Avoid the temptation to pass additional " @@ -421,7 +499,7 @@ msgid "" "needed than to remove a likely unused variable later." msgstr "" -#: ../../scenarios/web.rst:262 +#: ../../scenarios/web.rst:309 msgid "" "Many template engines allow for complex statements or assignments in the " "template itself, and many allow some Python code to be evaluated in the " @@ -429,48 +507,48 @@ msgid "" "complexity, and often make it harder to find bugs." msgstr "" -#: ../../scenarios/web.rst:268 +#: ../../scenarios/web.rst:315 msgid "" "It is often necessary to mix JavaScript templates with HTML templates. A " "sane approach to this design is to isolate the parts where the HTML " "template passes some variable content to the JavaScript code." msgstr "" -#: ../../scenarios/web.rst:276 +#: ../../scenarios/web.rst:323 msgid "Jinja2" msgstr "" -#: ../../scenarios/web.rst:277 +#: ../../scenarios/web.rst:324 msgid "" "`Jinja2 `_ is a very well-regarded template " "engine." msgstr "" -#: ../../scenarios/web.rst:279 +#: ../../scenarios/web.rst:326 msgid "" "It uses a text-based template language and can thus be used to generate " -"any type markup, not just HTML. It allows customization of filters, tags," -" tests and globals. It features many improvements over Django's " +"any type of markup, not just HTML. It allows customization of filters, " +"tags, tests, and globals. It features many improvements over Django's " "templating system." msgstr "" -#: ../../scenarios/web.rst:283 -msgid "Here some important html tags in Jinja2:" +#: ../../scenarios/web.rst:330 +msgid "Here some important HTML tags in Jinja2:" msgstr "" -#: ../../scenarios/web.rst:303 +#: ../../scenarios/web.rst:350 msgid "" -"The next listings is an example of a web site in combination with the " +"The next listings are an example of a web site in combination with the " "Tornado web server. Tornado is not very complicated to use." msgstr "" -#: ../../scenarios/web.rst:344 +#: ../../scenarios/web.rst:391 msgid "" "The :file:`base.html` file can be used as base for all site pages which " "are for example implemented in the content block." msgstr "" -#: ../../scenarios/web.rst:369 +#: ../../scenarios/web.rst:416 msgid "" "The next listing is our site page (:file:`site.html`) loaded in the " "Python app which extends :file:`base.html`. The content block is " @@ -478,22 +556,22 @@ msgid "" "page." msgstr "" -#: ../../scenarios/web.rst:391 +#: ../../scenarios/web.rst:438 msgid "" "Jinja2 is the recommended templating library for new Python web " "applications." msgstr "" -#: ../../scenarios/web.rst:394 +#: ../../scenarios/web.rst:441 msgid "Chameleon" msgstr "" -#: ../../scenarios/web.rst:396 +#: ../../scenarios/web.rst:443 msgid "" "`Chameleon `_ Page Templates are an " "HTML/XML template engine implementation of the `Template Attribute " "Language (TAL) " -"`_, `TAL " +"`_, `TAL " "Expression Syntax (TALES) " "`_, and `Macro Expansion TAL (Metal) " @@ -501,28 +579,29 @@ msgid "" "metal>`_ syntaxes." msgstr "" -#: ../../scenarios/web.rst:401 +#: ../../scenarios/web.rst:448 msgid "" -"Chameleon is available for Python 2.5 and up (including 3.x and pypy), " -"and is commonly used by the `Pyramid Framework `_." +"Chameleon is available for Python 2.5 and up (including 3.x and PyPy), " +"and is commonly used by the `Pyramid Framework " +"`_." msgstr "" -#: ../../scenarios/web.rst:404 +#: ../../scenarios/web.rst:451 msgid "" "Page Templates add within your document structure special element " "attributes and text markup. Using a set of simple language constructs, " -"you control the document flow, element repetition, text replacement and " +"you control the document flow, element repetition, text replacement, and " "translation. Because of the attribute-based syntax, unrendered page " "templates are valid HTML and can be viewed in a browser and even edited " "in WYSIWYG editors. This can make round-trip collaboration with designers" " and prototyping with static files in a browser easier." msgstr "" -#: ../../scenarios/web.rst:412 +#: ../../scenarios/web.rst:459 msgid "The basic TAL language is simple enough to grasp from an example:" msgstr "" -#: ../../scenarios/web.rst:430 +#: ../../scenarios/web.rst:477 msgid "" "The `` pattern for text insertion is " "common enough that if you do not require strict validity in your " @@ -530,195 +609,152 @@ msgid "" "syntax that uses the pattern `${expression}`, as follows:" msgstr "" -#: ../../scenarios/web.rst:451 +#: ../../scenarios/web.rst:498 msgid "" "But keep in mind that the full `Default " "Text` syntax also allows for default content in the unrendered " "template." msgstr "" -#: ../../scenarios/web.rst:454 +#: ../../scenarios/web.rst:501 msgid "Being from the Pyramid world, Chameleon is not widely used." msgstr "" -#: ../../scenarios/web.rst:457 +#: ../../scenarios/web.rst:504 msgid "Mako" msgstr "" -#: ../../scenarios/web.rst:459 +#: ../../scenarios/web.rst:506 msgid "" "`Mako `_ is a template language that " -"compiles to Python for maximum performance. Its syntax and api is " +"compiles to Python for maximum performance. Its syntax and API are " "borrowed from the best parts of other templating languages like Django " "and Jinja2 templates. It is the default template language included with " "the `Pylons and Pyramid `_ web frameworks." msgstr "" -#: ../../scenarios/web.rst:465 +#: ../../scenarios/web.rst:512 msgid "An example template in Mako looks like:" msgstr "" -#: ../../scenarios/web.rst:487 +#: ../../scenarios/web.rst:534 msgid "To render a very basic template, you can do the following:" msgstr "" -#: ../../scenarios/web.rst:494 +#: ../../scenarios/web.rst:541 msgid "Mako is well respected within the Python web community." msgstr "" -#: ../../scenarios/web.rst:497 +#: ../../scenarios/web.rst:544 msgid "References" msgstr "" -#: ../../scenarios/web.rst:498 -msgid "" -"`The mod_python project is now officially dead " -"`_" -msgstr "" - -#: ../../scenarios/web.rst:499 -msgid "" -"`mod_wsgi vs mod_python " -"`_" -msgstr "" - -#: ../../scenarios/web.rst:500 +#: ../../scenarios/web.rst:545 msgid "" "`Benchmark of Python WSGI Servers `_" msgstr "" #~ msgid "" -#~ "As a powerful scripting language adapted" -#~ " to both fast prototyping and bigger" -#~ " projects, Python is widely used in" -#~ " Web applications development." #~ msgstr "" -#~ msgid "" -#~ "`Django `_ is a " -#~ "\"batteries included\" web application " -#~ "framework. By providing many utilities " -#~ "and patterns out of the box, " -#~ "Django aims to make it possible to" -#~ " build complex, database-backed web " -#~ "applications quickly, while encouraging best" -#~ " practices in code written using it." +#~ msgid "Werkzeug" #~ msgstr "" -#~ msgid "" -#~ "`Flask `_ is a " -#~ "\"microframework\" for Python. Rather than " -#~ "aiming to provide everything you could" -#~ " possibly need, Flask implements the " -#~ "most commonly-used core components of" -#~ " a web application framework, like " -#~ "URL routing, request and response " -#~ "objects, and templates. As a user " -#~ "of Flask, it is therefore up to" -#~ " you to choose and integrate other" -#~ " components you may need, such as " -#~ "database access or form generation and" -#~ " validation. For many popular modules, " -#~ "`Extensions `_ may " -#~ "already exist to suit your needs." +#~ msgid "Platform-as-a-Service" #~ msgstr "" -#~ msgid "" -#~ "**Support** for flask can best be " -#~ "found in its mailing list. Just " -#~ "shoot an email to flask@librelist.com " -#~ "and reply to the confirmation email." +#~ msgid "DotCloud" #~ msgstr "" -#~ msgid "Werkzeug" +#~ msgid "Web Applications" +#~ msgstr "" + +#~ msgid "Encapsulate the information received from or sent to a user's browser" #~ msgstr "" #~ msgid "" -#~ "`Werkzeug `_ is not " -#~ "actually a real framework, but rather" -#~ " a very powerful set of tools " -#~ "for building web applications. It " -#~ "provides URL routing utilities, request " -#~ "and response objects and a basic " -#~ "development server. It is mostly used" -#~ " where users need bigger flexibility " -#~ "for their application that is not " -#~ "commonly found in other web frameworks." +#~ "`Django `_ is a " +#~ "\"batteries included\" web application " +#~ "framework, and is an excellent choice" +#~ " for creating content-oriented websites." +#~ " By providing many utilities and " +#~ "patterns out of the box, Django " +#~ "aims to make it possible to build" +#~ " complex, database-backed web applications" +#~ " quickly, while encouraging best practices" +#~ " in code written using it." #~ msgstr "" #~ msgid "" -#~ "Support can be found on its " -#~ "`mailing list " -#~ "`_." +#~ "There are annual Django conferences `in" +#~ " the United States `_ " +#~ "and `in Europe `_." #~ msgstr "" #~ msgid "" -#~ "`Tornado `_ is a " -#~ "scalable, non-blocking web server and" -#~ " web application framework with a " -#~ "relative simple usage. Tornado is known" -#~ " for its high performance. It was " -#~ "initially developed for `friendfeed " -#~ "`_ , a real time " -#~ "chat and blog system." +#~ "`Tornado `_ is an " +#~ "asyncronous web framework for Python " +#~ "that has its own event loop. This" +#~ " allows it to natively support " +#~ "WebSockets, for example. Well-written " +#~ "Tornado applications are known to have" +#~ " excellent performance characteristics." #~ msgstr "" #~ msgid "" -#~ "In the Jinja2 template engine example" -#~ " it is used to serve the " -#~ "rendered pages." +#~ "`Pyramid `_ is a very" +#~ " flexible framework with a heavy " +#~ "focus on modularity. It comes with " +#~ "a small number of libraries " +#~ "(\"batteries\") built-in, and encourages " +#~ "users to extend its base functionality." #~ msgstr "" #~ msgid "" -#~ "`Pyramid `_ lies " -#~ "somewhere between a big framework like" -#~ " Django and the microframeworks: It " -#~ "comes with a lot of libraries and" -#~ " functionality and can thus not be" -#~ " considered lightweight. On the other " -#~ "hand, it does not provide all the" -#~ " functionality Django does. Instead Pyramid" -#~ " brings basic support for most " -#~ "regular tasks and provides a great " -#~ "deal of extensibility. Additionally, Pyramid" -#~ " has a huge focus on complete " -#~ "`documentation " -#~ "`__. " -#~ "As a little extra it comes with" -#~ " the Werkzeug Debugger which allows " -#~ "you to debug a running web " -#~ "application in the browser." +#~ "`Nginx `_ (pronounced " +#~ "\"engine-x\") is a web server and " +#~ "reverse-proxy for HTTP, SMTP and " +#~ "other protocols. It is known for " +#~ "its high performance, relative simplicity, " +#~ "and compatibility with many application " +#~ "servers (like WSGI servers). It also " +#~ "includes handy features like load-" +#~ "balancing, basic authentication, streaming, " +#~ "and others. Designed to serve high-" +#~ "load websites, Nginx is gradually " +#~ "becoming quite popular." #~ msgstr "" #~ msgid "" -#~ "**Support** can also be found in " -#~ "the `documentation " -#~ "`__." +#~ "Stand-alone WSGI servers typically use" +#~ " less resources than traditional web " +#~ "servers and provide top performance " +#~ "[3]_." #~ msgstr "" #~ msgid "" #~ "`Gunicorn `_ (Green Unicorn)" -#~ " is a WSGI server used to serve" -#~ " Python applications. It is a Python" -#~ " interpretation of the Ruby `Unicorn " -#~ "`_ server. Unicorn is" -#~ " designed to be lightweight, easy to" -#~ " use, and uses many UNIX idioms. " -#~ "Gunicorn is not designed to face " -#~ "the internet -- it was designed to" -#~ " run behind Nginx which buffers slow" -#~ " requests and takes care of other " -#~ "important considerations. A sample setup " -#~ "for Nginx + Gunicorn can be found" -#~ " in the `Gunicorn help " -#~ "`_." +#~ " is a pure-python WSGI server " +#~ "used to serve Python applications. " +#~ "Unlike other Python web servers, it " +#~ "has a thoughtful user-interface, and " +#~ "is extremely easy to use and " +#~ "configure." #~ msgstr "" #~ msgid "" -#~ "`uWSGI `_ is " +#~ "`Waitress `_ is a" +#~ " pure-python WSGI server that claims" +#~ " \"very acceptable performance\". Its " +#~ "documentation is not very detailed, but" +#~ " it does offer some nice " +#~ "functionality that Gunicorn doesn't have " +#~ "(e.g. HTTP request buffering)." +#~ msgstr "" + +#~ msgid "" +#~ "`uWSGI `_ is " #~ "a full stack for building hosting " #~ "services. In addition to process " #~ "management, process monitoring, and other " @@ -732,139 +768,156 @@ msgstr "" #~ "Apache). In the latter case, a " #~ "web server can configure uWSGI and " #~ "an application's operation over the " -#~ "`uwsgi `_ protocol. " -#~ "uWSGI's web server support allows for" -#~ " dynamically configuring Python, passing " +#~ "`uwsgi protocol `_. uWSGI's " +#~ "web server support allows for " +#~ "dynamically configuring Python, passing " #~ "environment variables and further tuning. " #~ "For full details, see `uWSGI magic " #~ "variables `_." +#~ "docs.readthedocs.io/en/latest/Vars.html>`_." #~ msgstr "" #~ msgid "" -#~ "The majority of self hosted Python " -#~ "applications today are hosted with a " -#~ "WSGI server such as :ref:`Gunicorn " -#~ "`, either directly or behind" -#~ " a lightweight web server such as " -#~ ":ref:`nginx `." +#~ "`Heroku `_ offers " +#~ "first-class support for Python 2.7–3.5 " +#~ "applications." #~ msgstr "" -#~ msgid "Platform-as-a-Service" +#~ msgid "" +#~ "Heroku maintains `detailed articles " +#~ "`_ on " +#~ "using Python with Heroku, as well " +#~ "as `step-by-step instructions " +#~ "`_ on how to set up " +#~ "your first application." #~ msgstr "" -#~ msgid "" -#~ "Platform-as-a-Service (PaaS) is a type" -#~ " of cloud computing infrastructure which" -#~ " abstracts and manages infrastructure, " -#~ "routing, and scaling of web " -#~ "applications. When using PaaS, application " -#~ "developers can focus on writing " -#~ "application code rather than needing to" -#~ " be concerned with deployment details." +#~ msgid "Gondor" #~ msgstr "" #~ msgid "" -#~ "Most PaaS services offer a command-" -#~ "line interface that developers can use" -#~ " to set up and interrogate " -#~ "configuration, and to deploy new " -#~ "releases of an application to the " -#~ "service." +#~ "`Gondor `_ is a PaaS " +#~ "specialized for deploying Django and " +#~ "Pinax applications. Gondor recommends Django" +#~ " version 1.6 and supports any WSGI" +#~ " application on Python version 2.7. " +#~ "Gondor can automatically configure your " +#~ "Django site if you use " +#~ ":file:`local_settings.py` for site-specific " +#~ "configuration information." #~ msgstr "" #~ msgid "" -#~ "PaaS services and their partners offer" -#~ " add-on functionality which is well" -#~ " integrated into the platform, such " -#~ "as database hosting, email services, " -#~ "logging, scheduled and background tasks, " -#~ "billing and payment, etc." +#~ "Gondor has a guide on deploying " +#~ "`Django projects " +#~ "`_." #~ msgstr "" #~ msgid "" -#~ "`Heroku `_'s `Cedar stack" -#~ " `_ offers " -#~ "first class support for Python 2.7 " -#~ "applications." +#~ "Gondor is run by a small company" +#~ " and focuses on helping businesses " +#~ "find success with Python and Django." #~ msgstr "" #~ msgid "" -#~ "Heroku allows you to run as many" -#~ " Python web applications as you like," -#~ " 24/7 and free of charge. Heroku " -#~ "is best described as a horizontal " -#~ "scaling platform. They start to charge" -#~ " you once you \"scale\" your " -#~ "application to run on more than " -#~ "one Dyno (abstracted servers) at a " -#~ "time." +#~ "Most WSGI applications are responding to" +#~ " HTTP requests to serve content in" +#~ " HTML or other markup languages. " +#~ "Instead of generating directly textual " +#~ "content from Python, the concept of " +#~ "separation of concerns advises us to " +#~ "use templates. A template engine manages" +#~ " a suite of template files, with " +#~ "a system of hierarchy and inclusion " +#~ "to avoid unnecessary repetition, and is" +#~ " in charge of rendering (generating) " +#~ "the actual content, filling the static" +#~ " content of the templates with the" +#~ " dynamic content generated by the " +#~ "application." #~ msgstr "" #~ msgid "" -#~ "Heroku maintains `articles " -#~ "`_ on " -#~ "using Python with Heroku as well " -#~ "as `step-by-step instructions " -#~ "`_ on how to set up " -#~ "your first application." +#~ "It uses a text-based template " +#~ "language and can thus be used to" +#~ " generate any type markup, not just" +#~ " HTML. It allows customization of " +#~ "filters, tags, tests and globals. It " +#~ "features many improvements over Django's " +#~ "templating system." #~ msgstr "" -#~ msgid "DotCloud" +#~ msgid "Here some important html tags in Jinja2:" #~ msgstr "" #~ msgid "" -#~ "`DotCloud `_ supports WSGI" -#~ " applications and background/worker tasks " -#~ "natively on their platform. Web " -#~ "applications run Python version 2.6, use" -#~ " :ref:`nginx ` and :ref:`uWSGI" -#~ " `, and allow custom " -#~ "configuration of both for advanced " -#~ "users." +#~ "The next listings is an example of" +#~ " a web site in combination with " +#~ "the Tornado web server. Tornado is " +#~ "not very complicated to use." #~ msgstr "" #~ msgid "" -#~ "DotCloud uses a custom command-line " -#~ "API client which can work with " -#~ "applications managed in git repositories " -#~ "or any other version control system." +#~ "`Chameleon `_ Page " +#~ "Templates are an HTML/XML template " +#~ "engine implementation of the `Template " +#~ "Attribute Language (TAL) " +#~ "`_, " +#~ "`TAL Expression Syntax (TALES) " +#~ "`_, and `Macro Expansion " +#~ "TAL (Metal) " +#~ "`_ syntaxes." #~ msgstr "" #~ msgid "" -#~ "DotCloud has a free plan with " -#~ "limited database size, and without extra" -#~ " services (caching…)." +#~ "Chameleon is available for Python 2.5" +#~ " and up (including 3.x and pypy), " +#~ "and is commonly used by the " +#~ "`Pyramid Framework `_." #~ msgstr "" #~ msgid "" -#~ "See the `DotCloud documentation on " -#~ "Python `_ for" -#~ " more information and help getting " -#~ "started." +#~ "Page Templates add within your document" +#~ " structure special element attributes and" +#~ " text markup. Using a set of " +#~ "simple language constructs, you control " +#~ "the document flow, element repetition, " +#~ "text replacement and translation. Because " +#~ "of the attribute-based syntax, " +#~ "unrendered page templates are valid HTML" +#~ " and can be viewed in a browser" +#~ " and even edited in WYSIWYG editors." +#~ " This can make round-trip " +#~ "collaboration with designers and prototyping" +#~ " with static files in a browser " +#~ "easier." #~ msgstr "" #~ msgid "" -#~ "`Jinja2 `_ is a " -#~ "template engine which is similar to " -#~ "the Django template system with some " -#~ "extra features. It is a text-based" -#~ " template language and thus can be" -#~ " used to generate any markup. It " -#~ "allows customization of filters, tags, " -#~ "tests and globals, and unlike the " -#~ "template system implemented in the " -#~ "Django Framework, also allows calling " -#~ "functions. Jinja2 is released under the" -#~ " BSD license." +#~ "`Mako `_ is a " +#~ "template language that compiles to " +#~ "Python for maximum performance. Its " +#~ "syntax and api is borrowed from " +#~ "the best parts of other templating " +#~ "languages like Django and Jinja2 " +#~ "templates. It is the default template" +#~ " language included with the `Pylons " +#~ "and Pyramid `_ web" +#~ " frameworks." #~ msgstr "" #~ msgid "" -#~ "The next listings is an example of" -#~ " a web site in combination with " -#~ "the tornado web server. Tornado is " -#~ "not very complicate to use." +#~ "`The mod_python project is now " +#~ "officially dead `_" +#~ msgstr "" + +#~ msgid "" +#~ "`mod_wsgi vs mod_python " +#~ "`_" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo b/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo index 43fbe2dae14ba5b624d28b65bbf9fc3f1123c06e..d3dfcff06856a99b0d7fc6314d822a836640bbb3 100644 GIT binary patch delta 428 zcma*iF;Buk7{>9p(o(=gfx!?LFJW+yV!<@gD#VC772;r`ljhV0iO|+wJ2_|^oHQYH zGGXEqn2`7pG!BmLeh(L)!sz01zq=dm|K4ZrIp5#CeITMAiKqeZXNY#-8(e|u1W^GR zFa=xCghwz92k-?B;SJts%0vq|e<(yn_zh>FoFsaMSs3@;VFR{Q+L#0f>NNNTfx^sIJzs%Yr$)XEPoIe&;L0Gs<>1$fWVEVdg7|~GXdnUVbGZuH+A#dB-q0M{o4coG;?QW;+ z`t5q=pd0$UtL?jfPngW{CPz`LY_jRLrbh+kI#Dg_<3}a?zX_NAPB{6B@c6kc%Jd7) Ck6!Np delta 346 zcmbO!bXIVJOMNQ?1H*4d1_mb}-N?kiU=E~@0BLO?{Rc=(0BH?o1_llw?Fgi;fwUKp z<^Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.2.0\n" -#: ../../scenarios/xml.rst:2 +#: ../../scenarios/xml.rst:4 msgid "XML parsing" msgstr "" -#: ../../scenarios/xml.rst:5 +#: ../../scenarios/xml.rst:11 msgid "untangle" msgstr "" -#: ../../scenarios/xml.rst:7 +#: ../../scenarios/xml.rst:13 msgid "" -"`untangle `_ is a simple library which " -"takes an XML document and returns a Python object which mirrors the nodes " -"and attributes in its structure." +"`untangle `_ is a simple library " +"which takes an XML document and returns a Python object which mirrors the" +" nodes and attributes in its structure." msgstr "" -#: ../../scenarios/xml.rst:11 +#: ../../scenarios/xml.rst:17 msgid "For example, an XML file like this:" msgstr "" -#: ../../scenarios/xml.rst:20 +#: ../../scenarios/xml.rst:26 msgid "can be loaded like this:" msgstr "" -#: ../../scenarios/xml.rst:27 -msgid "and then you can get the child elements name like this:" +#: ../../scenarios/xml.rst:33 +msgid "and then you can get the child element's name attribute like this:" msgstr "" -#: ../../scenarios/xml.rst:33 -msgid "untangle also supports loading XML from a string or an URL." +#: ../../scenarios/xml.rst:39 +msgid "untangle also supports loading XML from a string or a URL." msgstr "" -#: ../../scenarios/xml.rst:36 +#: ../../scenarios/xml.rst:44 msgid "xmltodict" msgstr "" -#: ../../scenarios/xml.rst:38 +#: ../../scenarios/xml.rst:46 msgid "" -"`xmltodict `_ is another simple " -"library that aims at making XML feel like working with JSON." +"`xmltodict `_ is another simple" +" library that aims at making XML feel like working with JSON." msgstr "" -#: ../../scenarios/xml.rst:41 +#: ../../scenarios/xml.rst:49 msgid "An XML file like this:" msgstr "" -#: ../../scenarios/xml.rst:55 +#: ../../scenarios/xml.rst:63 msgid "can be loaded into a Python dict like this:" msgstr "" -#: ../../scenarios/xml.rst:64 -msgid "and then you can access elements, attributes and values like this:" +#: ../../scenarios/xml.rst:72 +msgid "and then you can access elements, attributes, and values like this:" msgstr "" -#: ../../scenarios/xml.rst:73 +#: ../../scenarios/xml.rst:81 msgid "" -"xmltodict also lets you roundtrip back to XML with the unparse function, has" -" a streaming mode suitable for handling files that don't fit in memory and " -"supports namespaces." +"xmltodict also lets you roundtrip back to XML with the unparse function, " +"has a streaming mode suitable for handling files that don't fit in " +"memory, and supports XML namespaces." msgstr "" + +#~ msgid "and then you can get the child elements name like this:" +#~ msgstr "" + +#~ msgid "untangle also supports loading XML from a string or an URL." +#~ msgstr "" + +#~ msgid "" +#~ "`xmltodict `_ is" +#~ " another simple library that aims at" +#~ " making XML feel like working with" +#~ " JSON." +#~ msgstr "" + +#~ msgid "and then you can access elements, attributes and values like this:" +#~ msgstr "" + +#~ msgid "" +#~ "xmltodict also lets you roundtrip back" +#~ " to XML with the unparse function," +#~ " has a streaming mode suitable for" +#~ " handling files that don't fit in " +#~ "memory and supports namespaces." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo b/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo index adb35ead63c64f6aa4faa81b762199a46c2befd9..64da1a3da1a3f59d74e603530b81482de2a5a3d7 100644 GIT binary patch literal 15527 zcmeI3U5q5xRmX3_5}OSehyw(Y!1XM6XW6OhncffYws)8Pm|c6!%+7dc){8BR?dtA3 z-Q}sSs;#P?o;DC8MS}1pAQnLZ2@nKfMS{o@2q}I+G7m@~f{@5d04F>m!k5Sc0Rz8t zZ&h`Vy(oU*jUH+JpX$DKKhF8z|2gO0@!!7h$S)~=p5fnz`1fb;mZ#~@kAA&UukiR| z;8WnE?@{Uiya#?K`1jyf!6OeSm4g2behEw;RO+MPt#4531K{Vu0Q@KL8^NcKD)n*j zhd~+lU%(CUq4zp`9$e%3)8G;C-@r$}e+Q-g2kC^N)H(1?@G|&5@X|La^>yIWU=zFz z$~->?%DBG?(uMjA_%Qey_+Q}XK_+?P$bNid!=g)z! z^V|pj0X+FFO3{`2z_%*(ZQ!Gz^m73e`&PinGg7L-{Hpp6^#DVw0i~I0Z(Cs8{o%44So)k zb^J3Z>;4LO6?_wX4ZQqaO1%L7C-}W!|AY7j{8{ik_^Y7I@2|iW@ET5$^^Cv^;2YpF z_@NIg^*7)KDC;=+-LBu$;2S*uI(Qs>>3fud8tQkzJ@8dfsQ6*+?5IJgrp}gl5fpo^ zf@0q-@JCqx4ki$@$^Cku|Re+;rTb@7m5-1af`)$349&=DEQmo=lFW!QODP- zp!ok&;K#vNL6)Xgne+x2l=vA?`1&R&c70;e@pT=P_A&SX_%opJ^<@y3t6x0f=Km?M z$@43q%<~JNjQbT(*7@%5cYJ*a6uvBg(%&N|9bZp?VuuDO@0|ks;AK$e^Gf;o?}D%M z{8>==`jI8amp#wfc>+p5KM#t1UIsr29`T)je+`uJA8fdJJ%E#6;`w24DDA-q!FNFl z!K0w?^`e{)3`ll>b`1-|DZu~Ewc6|L0Q26>2XB=O@0BW8W&boD617+P$g2LA= z@HOydQ24s}nB(hbLE-Bgpz!q{L7Cs;Img#efFaL+0$u={G-B#10fn!>0m}S8(sKR& zB=`o;{|X)l|MGFi*RO(mJRhMG;cE)AB~=c-2mGlLe*t_i&%X?ceSZs73pX-jUJT>@ zf}SL!Om~x>(P6H;nF$I$)`8A}$auS9WVAUj-BA&A_|-laiSC7Yk%gU6VKh%B?s=o! zWciXV20=l8aS?=Zu7fDj$*vnDNYg0n(ti@W0fStR4Gq9zVD#3c81PjX7bZ(H!+(9X zxS2|Ox|y8N?J({}Bbh1v>kEUTNL!7@cs%ygNs~GHN!D+KanBt1-G11(Hp+`+xJKLj zQv2>(x=P}5Z9`eQ?JK9Vya>8`$-c>Uqh#!NlVRiD$mBAGys@&DBD zFkWe>sg117j;*YmT3$K*wt;7tpicXGD@*o6W*`RG2)kL5C%c7yCd@}cq_3Sksk2dB zghQiO*VpxKlG%p4;yuix*9tuh`-4Jvj82n055-0J15@J?XZDsjx7E%kxt|8bpsmMY zF}VMD+r_9CCR&=3qq9lcvzPbX@@+2BrU+UPH9wfi7#d#fb!rlVf z(G0GMcZwkE8|)o)2VrcM*c4sEil775_Vs2QO`z~v`C3N9JtoCQGSRL#Wru7g`eT!H zMsY8qiF8gE*fk3wl=U>0i}3>PC^PWCEh}Wp#OyB? zJy{Zq>TbYRlReD{x^#gZyO)#$TPn#Q!Yy9$^_5s(*~0UOxhA#`_Jc5TDv%{ZJ8x(G ziRDxnw`S*H{ZQ$Qx-#ATxz0!3f$aL@t1P;c92{TL$FJ`ju_31ANgux!?uSwMqEm~t zXZS3DiC4p7C&@AsBQa43g(qDCEZ+JIj^odp5diZnehE?F%F<(K1fCp z&X2~yBzK;s??W1wWW%8F^$iT3OAlfn=-qCMq1#$|5%bhtnivinXl5tLPAkk%2fbk! zi%JGXA_Tma3{!}jLnjomGK}64%Body5g*G^^f(Jegj;&ETj(=xMS8pDt{5VXf`Taw z^TsaTg#u#KG)=O?^jc~)iH{dDMIkJF83Y)&XG9ZB+?Bmjd7#u>+hv%}kY3g|%7eb~ z>1`ZGNr1^j3mm_7DZV*7v}^20er$>cEPlasi@a3HhH$oiP}lqYTw&EntXan({j7wb zYi#ocofo5yy203Km^PP~fm25G1U(j;C~G+Lh(mEqxda=+u|MHESw4N1km65QU)xSS zv9+$AD1%a^5IzeRWu9t=XlI+~o#CY z&9#nMa?$dLumG`mRO_ZV4*m0dg#3&2Sk6_Vv!wF?Nm>{X?h`iAg5^@63BDsDR@Vvb zf_tpLpXp|I6nAanfSU+MqG1fzF+u=HBD{1V#F^LEHxsAvtbB}O%;@0@qyZNur||e0#Kg-9Mo=V@MX} zL2o}Gtz;Hh!g`>ZyF^o1F?Px#D=2j%4_~ycVG{eeN?9cV?M!sgNyu@UfA`}ruQc_> zRU%)MCoXQqt3(m=L71kNbE&Ytr^ys^Ne*ke5XkE!*9P&N)EPaW=>1V7 z8Dj@MC`5v>c%{C?6LPNZ!1R1stV_BjF;$z{k_|PiXmYnCMN4gM-%wi_xz)WFgt3A8{4Y%sH#o#^8`p4tD24c>XS&cw$g zqPBj?Te{tkl8)3dNR`bjHCeM5>u_Eona;kE`YKA|zU19bWF#nj?doY~M0^N?=-75)(lbpPb!Gyjn)$tw zu}X-gcpQ=`W_mYZ$FN3XF6t`kWZhYrz-4!R$wm2E@?cv%41<`RA}^7vjin;A-^uG_ z(>4y^^qEv!(p+|{9iMI08HFTxx8v|&Ch)u5%!OGtF8fsS0KE}(?Y#8LvVT@DZpSF~ zx=F~?dMCt|u^CGpTJF?Ss!GF@@c6J0J4u&}r!t7?u{nFP)7xEJjE1Eyxfxa!tji1r z2{PZaHSEmV8potts|cP{GS*}`W6Allq*s;Cwd}MG31!U%ku8^A25?Zy4ph?$;~~uw z4PCG?lDN6IKnA@}DH2L*YAuY8;xEZBg9xGRO=6>Q&kjEEDg7aDTA0AzLqDc zm@2(-$-Ny2m*D{%y>_atkkPLKOm^{Oh1lHy*$@lKH?mCkKVwnfz{+mFM&(7#vsVbZuF zvE6gu+ug#>NCzB7Ma(m!iiD}9@eUh9HWa3@oRa-en|a7?)g4Ynx~NEb zEap9Qm0bVYJn+nWv6%!-Q19spGbLqc+n7VJ5fcr16e$`hu-8tP)c zprHu6h`N*x3}OXxW;4Hy2VNP^O|NqO{W{Iwrk&&<5|_#0-$D&?PdkY1riyDb>g8rY zEhi0niMr#e98gY}IydY&)>IR0@^u`$Ibp#%WupC7nWCJwU5K77N$NM{Zh7=nmJ~wN z25IIlXHg-C4#EL@Fe%=isR~Q~&m{Y`nE8347xMv%K?>fn)$NHgU!{WE<5Qb`Lx<^6 zl#N7k&Q^x5lKW-uukMf#5&dny7q)C^n8Q9GTx^}y=6FtuST9LfoTYHtLw96#Fe>5biz7Vdu>% z`JAbVJ>j9%P8qEhDjQBKJt~i&2Z$31L_#^rNX}u?H)aLw&98EHUPN74zpWDnD<^TEfIzWN(Jcp<)9`I` zkJ%l!H2u;Y@r-d;ol(uY$5)k5)W1~uRlUvZ5~ia`vS8Dj0Tw7%RVN;_B^`F@lbkY% zI~x*QXG*N;m`~Qp=LmaZ<+8)3PkI^ehglL!8N#ZOaOxB}n1~Zd7xzhG-4TT_ zN_0oW0#X(>p`Zk{jfvbtTGnmkT;E=qh!XN1`HEzQGIYo=l!;vqFYs4pIP(wX7)QRF z$wOq%_EDcv$3@WYU>IhN>S%|p!}{d#SyDpk*r1fN`eI-zjH-KZ*QvB}0ZLw}2{~oT zV#xz{6@WFX=R9$o&QCax%#x3^ois9xcO}_JEjVZ^F=wYw1=C@ zowf@wM_{cwZdVhNQ=;0_M{lj?J>v@V7PY0^D)mQ_C@lNS{>sr?m@O;3jl3WBysM*r z?(HNkeROMc$Gaxsm4d~S^Vk;kXLH3{KIN^P(aYyrXU?2l=7)yfEwfMIUAKGo`juPW z#-_J=ML)UO+E_dJ+~&>eN7t!xy`3zGa}vlTYv~)exx=}6W#hWOaDC&-+WO@ytE;!J zZ*O0sDKq3`qowzf`oY^V!B9TY7uMG=N1>DkmyT{lBa&8+bZ|&j8K?F!zqs-^XTtK$ z#pRoNHn zK5yxBov=7soiAdyNlRZ1IwsOhzsU&mE5$as*!1LP8a&zU^DD*qmEvp_YL9&o@WV$x z^D9Lg)m%`SUn$P76wUlfkxaHRzfzoEDbBAHxd@$KDY~+Hex(>i)!`5~lX{0#YJR0C zr#SN~MR#I4zf!cP9`h?jxx1WSDbBAH=U0mJD@FNRh541@{7UigpV`i@6zy%<{7P}= cZ^-OLn9ZlTP`Ce=ll>dd`IX}TzbnQ60q`|M;{X5v delta 1898 zcmeIw?{8C87{KvU%6_mhp<^&`%-yoB8+QG1*Ric*K#0*~3yXwJ65|{1y4&qSckgBG z(k&PljT%$}3CBs6h>J$!WG@676BCFMd0~8^j6l?A*b9F|3F<3+Lnit?-m3qCFKpU= z&U1Qt&U2shyfc0M@tNi7)w6=vUOrp-G_6w6zpu8{LM#wQuphs`JO)dIaB&Wou%c9m z&G-!(cn446!7^{(Ti8cjS}p`zi2WE8Vn#g1;CCkSSdEiwgz)1rY{%osf5k`0S>lu8 z@1Nl)@ikN%CM$%vg1hlHuBsHG3V%hl-wLXP#abaAfg@;fzW9K_3KQE{%^J~gpAh31 zMsgB!Mc>3Q@gk~{eTkZnwd+U>PpoHed?nx={02`m$h!AX9q8Y{dhAD)@L??DeBm-U zgj3jn-ywSoe~l2+SdA*7;JUz@+~uneYwM}MDuq%1S2Kt-s$MvTR873_fS14=wiBO0)eB3gdf}_$@5`uq z;agPu^;1UG3y9!*9&ilyn`=r4}+|`jOx6aR<9SHm|>tYehSr-J%j3QUqsal zcTn|0&33OB8d3Ga8B}*(`JlIc7xoe_pql>yZ(=Q3mg8^8+2S6q!BCsm3mtI=su^BG z)eG~edg1+|m#~uf3i|OX7On<2`DEqx23gYBEe|w3*EBGw9kjBOMn-!m9M(oM87=2% z!=`50*_@Hdm?N5F%X8%|>;9gY(8i6!W>)TO4mGOf`7zVhTqB#c>`|@9adVbq_dFSi zIJTL#GNyc~IV3wmt~?()FYmP+k$cy=Wl^nnESGahWGS%EN||=n6#FcDa!L&J4aq%W zr*JVG^2w9yPs@{$i}GBcRoa1vWkqajp*80B$;J4Xj90eF%QdrwclFnO@~B=_NF`qN z`P$_3JBH-fJMwaWm%AmKGu^C~cF5Vu=ColWYo)ZPIc3V_u6nB{7R%@JQFr>EM~gZW zqcL;JbtZDLkwhZdJu=dj9PaE+#&yHgO`=Xcok*MUbVoX^CsXNR-H5pp&LK0!ADmQd zz_2N0bSyWX*~78pMsC-HkuO}Ut5T`yNt^Ha(^b diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po index 283cdf820..0a465c68e 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po @@ -1,35 +1,44 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../shipping/freezing.rst:5 +#: ../../shipping/freezing.rst:6 msgid "Freezing Your Code" msgstr "" -#: ../../shipping/freezing.rst:7 +#: ../../shipping/freezing.rst:10 msgid "" "\"Freezing\" your code is creating a single-file executable file to " "distribute to end-users, that contains all of your application code as " "well as the Python interpreter." msgstr "" -#: ../../shipping/freezing.rst:11 +#: ../../shipping/freezing.rst:14 msgid "" "Applications such as 'Dropbox', 'Eve Online', 'Civilization IV', and " "BitTorrent clients do this." msgstr "" -#: ../../shipping/freezing.rst:14 +#: ../../shipping/freezing.rst:17 msgid "" "The advantage of distributing this way is that your application will " "\"just work\", even if the user doesn't already have the required version" @@ -38,32 +47,32 @@ msgid "" "installed." msgstr "" -#: ../../shipping/freezing.rst:19 +#: ../../shipping/freezing.rst:22 msgid "" "Besides, end-user software should always be in an executable format. " "Files ending in ``.py`` are for software engineers and system " "administrators." msgstr "" -#: ../../shipping/freezing.rst:22 +#: ../../shipping/freezing.rst:25 msgid "" "One disadvantage of freezing is that it will increase the size of your " -"distribution by about 2–12MB. Also, you will be responsible for shipping " -"updated versions of your application when security vulnerabilities to " +"distribution by about 2–12 MB. Also, you will be responsible for shipping" +" updated versions of your application when security vulnerabilities to " "Python are patched." msgstr "" -#: ../../shipping/freezing.rst:28 +#: ../../shipping/freezing.rst:33 msgid "Alternatives to Freezing" msgstr "" -#: ../../shipping/freezing.rst:30 +#: ../../shipping/freezing.rst:35 msgid "" ":ref:`Packaging your code ` is for distributing " "libraries or tools to other developers." msgstr "" -#: ../../shipping/freezing.rst:33 +#: ../../shipping/freezing.rst:38 msgid "" "On Linux, an alternative to freezing is to :ref:`create a Linux distro " "package ` (e.g. .deb files for " @@ -74,221 +83,275 @@ msgstr "" msgid "Todo" msgstr "" -#: ../../shipping/freezing.rst:37 +#: ../../shipping/freezing.rst:42 msgid "Fill in \"Freezing Your Code\" stub" msgstr "" -#: ../../shipping/freezing.rst:41 +#: ../../shipping/freezing.rst:47 msgid "Comparison of Freezing Tools" msgstr "" -#: ../../shipping/freezing.rst:43 -msgid "Solutions and platforms/features supported:" +#: ../../shipping/freezing.rst:49 +msgid "" +"Date of this writing: Oct 5, 2019 Solutions and platforms/features " +"supported:" msgstr "" -#: ../../shipping/freezing.rst:46 +#: ../../shipping/freezing.rst:53 msgid "Solution" msgstr "" -#: ../../shipping/freezing.rst:46 ../../shipping/freezing.rst:66 +#: ../../shipping/freezing.rst:53 ../../shipping/freezing.rst:75 msgid "Windows" msgstr "" -#: ../../shipping/freezing.rst:46 ../../shipping/freezing.rst:170 +#: ../../shipping/freezing.rst:53 ../../shipping/freezing.rst:220 msgid "Linux" msgstr "" -#: ../../shipping/freezing.rst:46 ../../shipping/freezing.rst:115 +#: ../../shipping/freezing.rst:53 ../../shipping/freezing.rst:164 msgid "OS X" msgstr "" -#: ../../shipping/freezing.rst:46 +#: ../../shipping/freezing.rst:53 msgid "Python 3" msgstr "" -#: ../../shipping/freezing.rst:46 +#: ../../shipping/freezing.rst:53 msgid "License" msgstr "" -#: ../../shipping/freezing.rst:46 +#: ../../shipping/freezing.rst:53 msgid "One-file mode" msgstr "" -#: ../../shipping/freezing.rst:46 +#: ../../shipping/freezing.rst:53 msgid "Zipfile import" msgstr "" -#: ../../shipping/freezing.rst:46 +#: ../../shipping/freezing.rst:53 msgid "Eggs" msgstr "" -#: ../../shipping/freezing.rst:46 +#: ../../shipping/freezing.rst:53 msgid "pkg_resources support" msgstr "" -#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:69 -#: ../../shipping/freezing.rst:174 +#: ../../shipping/freezing.rst:53 +msgid "Latest release date" +msgstr "" + +#: ../../shipping/freezing.rst:55 ../../shipping/freezing.rst:78 +#: ../../shipping/freezing.rst:224 msgid "bbFreeze" msgstr "" -#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:49 -#: ../../shipping/freezing.rst:50 ../../shipping/freezing.rst:51 -#: ../../shipping/freezing.rst:52 +#: ../../shipping/freezing.rst:55 ../../shipping/freezing.rst:56 +#: ../../shipping/freezing.rst:57 ../../shipping/freezing.rst:58 +#: ../../shipping/freezing.rst:59 msgid "yes" msgstr "" -#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:49 -#: ../../shipping/freezing.rst:50 ../../shipping/freezing.rst:51 -#: ../../shipping/freezing.rst:52 +#: ../../shipping/freezing.rst:55 ../../shipping/freezing.rst:56 +#: ../../shipping/freezing.rst:57 ../../shipping/freezing.rst:58 +#: ../../shipping/freezing.rst:59 msgid "no" msgstr "" -#: ../../shipping/freezing.rst:48 ../../shipping/freezing.rst:49 -#: ../../shipping/freezing.rst:52 +#: ../../shipping/freezing.rst:55 ../../shipping/freezing.rst:56 +#: ../../shipping/freezing.rst:59 msgid "MIT" msgstr "" -#: ../../shipping/freezing.rst:49 ../../shipping/freezing.rst:76 +#: ../../shipping/freezing.rst:55 +msgid "Jan 20, 2014" +msgstr "" + +#: ../../shipping/freezing.rst:56 ../../shipping/freezing.rst:124 msgid "py2exe" msgstr "" -#: ../../shipping/freezing.rst:50 +#: ../../shipping/freezing.rst:56 +msgid "Oct 21, 2014" +msgstr "" + +#: ../../shipping/freezing.rst:57 msgid "pyInstaller" msgstr "" -#: ../../shipping/freezing.rst:50 +#: ../../shipping/freezing.rst:57 msgid "GPL" msgstr "" -#: ../../shipping/freezing.rst:51 +#: ../../shipping/freezing.rst:57 +msgid "Jul 9, 2019" +msgstr "" + +#: ../../shipping/freezing.rst:58 msgid "cx_Freeze" msgstr "" -#: ../../shipping/freezing.rst:51 +#: ../../shipping/freezing.rst:58 msgid "PSF" msgstr "" -#: ../../shipping/freezing.rst:52 ../../shipping/freezing.rst:119 +#: ../../shipping/freezing.rst:58 +msgid "Aug 29, 2019" +msgstr "" + +#: ../../shipping/freezing.rst:59 ../../shipping/freezing.rst:168 msgid "py2app" msgstr "" -#: ../../shipping/freezing.rst:56 +#: ../../shipping/freezing.rst:59 +msgid "Mar 25, 2019" +msgstr "" + +#: ../../shipping/freezing.rst:63 msgid "" "Freezing Python code on Linux into a Windows executable was only once " -"supported in PyInstaller `and later dropped. " -"`_." msgstr "" -#: ../../shipping/freezing.rst:61 +#: ../../shipping/freezing.rst:68 msgid "" -"All solutions need MS Visual C++ dll to be installed on target machine, " -"except py2app. Only Pyinstaller makes self-executable exe that bundles " -"the dll when passing :option:`--onefile` to :file:`Configure.py`." +"All solutions need a Microsoft Visual C++ to be installed on the target " +"machine, except py2app. Only PyInstaller makes a self-executable exe that" +" bundles the appropriate DLL when passing ``--onefile`` to " +":file:`Configure.py`." msgstr "" -#: ../../shipping/freezing.rst:71 +#: ../../shipping/freezing.rst:80 msgid "" "Prerequisite is to install :ref:`Python, Setuptools and pywin32 " "dependency on Windows `." msgstr "" -#: ../../shipping/freezing.rst:73 -msgid "Write steps for most basic .exe" +#: ../../shipping/freezing.rst:82 +msgid "Install :code:`bbfreeze`:" msgstr "" -#: ../../shipping/freezing.rst:78 -msgid "Prerequisite is to install :ref:`Python on Windows `." +#: ../../shipping/freezing.rst:88 +msgid "Write most basic :file:`bb_setup.py`" msgstr "" -#: ../../shipping/freezing.rst:80 +#: ../../shipping/freezing.rst:100 +msgid "" +"This will work for the most basic one file scripts. For more advanced " +"freezing you will have to provide include and exclude paths like so:" +msgstr "" + +#: ../../shipping/freezing.rst:107 +msgid "(Optionally) include icon" +msgstr "" + +#: ../../shipping/freezing.rst:113 +msgid "" +"4. Provide the Microsoft Visual C++ runtime DLL for the freezer. It might" +" be possible to append your :code:`sys.path` with the Microsoft Visual " +"Studio path but I find it easier to drop :file:`msvcp90.dll` in the same " +"folder where your script resides." +msgstr "" + +#: ../../shipping/freezing.rst:117 +msgid "Freeze!" +msgstr "" + +#: ../../shipping/freezing.rst:126 +msgid "" +"Prerequisite is to install :ref:`Python on Windows `. " +"The last release of py2exe is from the year 2014. There is not active " +"development." +msgstr "" + +#: ../../shipping/freezing.rst:128 msgid "Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" msgstr "" -#: ../../shipping/freezing.rst:82 +#: ../../shipping/freezing.rst:130 msgid "" "Write :file:`setup.py` (`List of configuration options " "`_):" msgstr "" -#: ../../shipping/freezing.rst:93 +#: ../../shipping/freezing.rst:141 msgid "(Optionally) `include icon `_" msgstr "" -#: ../../shipping/freezing.rst:95 +#: ../../shipping/freezing.rst:143 msgid "" -"(Optionally) `one-file mode `_" msgstr "" -#: ../../shipping/freezing.rst:97 +#: ../../shipping/freezing.rst:145 msgid "Generate :file:`.exe` into :file:`dist` directory:" msgstr "" -#: ../../shipping/freezing.rst:103 +#: ../../shipping/freezing.rst:151 msgid "" -"Provide the Microsoft Visual C runtime DLL. Two options: `globally " +"Provide the Microsoft Visual C++ runtime DLL. Two options: `globally " "install dll on target machine `_ or `distribute dll alongside with .exe " "`_." msgstr "" -#: ../../shipping/freezing.rst:106 ../../shipping/freezing.rst:122 -#: ../../shipping/freezing.rst:177 +#: ../../shipping/freezing.rst:154 ../../shipping/freezing.rst:171 +#: ../../shipping/freezing.rst:263 msgid "PyInstaller" msgstr "" -#: ../../shipping/freezing.rst:108 +#: ../../shipping/freezing.rst:156 msgid "" "Prerequisite is to have installed :ref:`Python, Setuptools and pywin32 " "dependency on Windows `." msgstr "" -#: ../../shipping/freezing.rst:110 +#: ../../shipping/freezing.rst:158 msgid "" "`Most basic tutorial `_" msgstr "" -#: ../../shipping/freezing.rst:111 -msgid "" -"`Manual " -"`_" +#: ../../shipping/freezing.rst:159 +msgid "`Manual `_" msgstr "" -#: ../../shipping/freezing.rst:124 +#: ../../shipping/freezing.rst:173 msgid "" "PyInstaller can be used to build Unix executables and windowed apps on " "Mac OS X 10.6 (Snow Leopard) or newer." msgstr "" -#: ../../shipping/freezing.rst:126 +#: ../../shipping/freezing.rst:175 msgid "To install PyInstaller, use pip:" msgstr "" -#: ../../shipping/freezing.rst:132 +#: ../../shipping/freezing.rst:181 msgid "To create a standard Unix executable, from say :code:`script.py`, use:" msgstr "" -#: ../../shipping/freezing.rst:138 -msgid "This creates," +#: ../../shipping/freezing.rst:187 +msgid "This creates:" msgstr "" -#: ../../shipping/freezing.rst:140 +#: ../../shipping/freezing.rst:189 msgid "a :code:`script.spec` file, analogous to a :code:`make` file" msgstr "" -#: ../../shipping/freezing.rst:141 +#: ../../shipping/freezing.rst:190 msgid "a :code:`build` folder, that holds some log files" msgstr "" -#: ../../shipping/freezing.rst:142 +#: ../../shipping/freezing.rst:191 msgid "" "a :code:`dist` folder, that holds the main executable :code:`script`, and" -" some dependent Python libraries," +" some dependent Python libraries" msgstr "" -#: ../../shipping/freezing.rst:144 +#: ../../shipping/freezing.rst:193 msgid "" "all in the same folder as :code:`script.py`. PyInstaller puts all the " "Python libraries used in :code:`script.py` into the :code:`dist` folder, " @@ -296,40 +359,40 @@ msgid "" "folder." msgstr "" -#: ../../shipping/freezing.rst:146 +#: ../../shipping/freezing.rst:195 msgid "" "The :code:`script.spec` file can be edited to `customise the build " "`_, with " -"options such as" +"options such as:" msgstr "" -#: ../../shipping/freezing.rst:148 +#: ../../shipping/freezing.rst:197 msgid "bundling data files with the executable" msgstr "" -#: ../../shipping/freezing.rst:149 +#: ../../shipping/freezing.rst:198 msgid "" "including run-time libraries (:code:`.dll` or :code:`.so` files) that " "PyInstaller can't infer automatically" msgstr "" -#: ../../shipping/freezing.rst:150 -msgid "adding Python run-time options to the executable," +#: ../../shipping/freezing.rst:199 +msgid "adding Python run-time options to the executable" msgstr "" -#: ../../shipping/freezing.rst:152 +#: ../../shipping/freezing.rst:201 msgid "" "Now :code:`script.spec` can be run with :code:`pyinstaller` (instead of " "using :code:`script.py` again):" msgstr "" -#: ../../shipping/freezing.rst:158 +#: ../../shipping/freezing.rst:207 msgid "" "To create a standalone windowed OS X application, use the " -":code:`--windowed` option" +":code:`--windowed` option:" msgstr "" -#: ../../shipping/freezing.rst:164 +#: ../../shipping/freezing.rst:213 msgid "" "This creates a :code:`script.app` in the :code:`dist` folder. Make sure " "to use GUI packages in your Python code, like `PyQt " @@ -338,12 +401,71 @@ msgid "" " app." msgstr "" -#: ../../shipping/freezing.rst:166 +#: ../../shipping/freezing.rst:215 msgid "" "There are several options in :code:`script.spec` related to Mac OS X app " -"bundles `here `_. For example, to specify an icon for the app, " -"use the :code:`icon=\\path\\to\\icon.icns` option." +"bundles `here `_. For example, to specify an icon " +"for the app, use the :code:`icon=\\path\\to\\icon.icns` option." +msgstr "" + +#: ../../shipping/freezing.rst:225 +msgid "" +"bbFreeze will ONLY work in Python 2.x environment, since it's no longer " +"being maintained as stated by it's former maintainer. If you're " +"interested in it, check the repository in `here " +"`_." +msgstr "" + +#: ../../shipping/freezing.rst:227 +msgid "" +"bbFreeze can be used with all distributions that has Python installed " +"along with pip2 and/or easy_install." +msgstr "" + +#: ../../shipping/freezing.rst:229 +msgid "For pip2, use the following:" +msgstr "" + +#: ../../shipping/freezing.rst:235 +msgid "Or, for easy_install:" +msgstr "" + +#: ../../shipping/freezing.rst:241 +msgid "With bbFreeze installed, you're ready to freeze your applications." +msgstr "" + +#: ../../shipping/freezing.rst:243 +msgid "" +"Let's assume you have a script, say, \"hello.py\" and a module called " +"\"module.py\" and you have a function in it that's being used in your " +"script. No need to worry, you can just ask to freeze the main entrypoint " +"of your script and it should freeze entirely:" +msgstr "" + +#: ../../shipping/freezing.rst:250 +msgid "" +"With this, it creates a folder called dist/, of which contains the " +"executable of the script and required .so (shared objects) files linked " +"against libraries used within the Python script." +msgstr "" + +#: ../../shipping/freezing.rst:252 +msgid "" +"Alternatively, you can create a script that does the freezing for you. An" +" API for the freezer is available from the library within:" +msgstr "" + +#: ../../shipping/freezing.rst:264 +msgid "" +"PyInstaller can be used in a similar fashion as in OS X. The installation" +" goes in the same manner as shown in the OS X section." +msgstr "" + +#: ../../shipping/freezing.rst:266 +msgid "" +"Don't forget to have dependencies such as Python and pip installed for " +"usage." msgstr "" #~ msgid "" @@ -368,8 +490,95 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Applications such as 'Dropbox', 'Eve " -#~ "Online', 'Civilisation IV', and BitTorrent" -#~ " clients do this." +#~ "One disadvantage of freezing is that " +#~ "it will increase the size of your" +#~ " distribution by about 2–12MB. Also, " +#~ "you will be responsible for shipping " +#~ "updated versions of your application " +#~ "when security vulnerabilities to Python " +#~ "are patched." +#~ msgstr "" + +#~ msgid "Solutions and platforms/features supported:" +#~ msgstr "" + +#~ msgid "" +#~ "Freezing Python code on Linux into " +#~ "a Windows executable was only once " +#~ "supported in PyInstaller `and later " +#~ "dropped. `_." +#~ msgstr "" + +#~ msgid "" +#~ "All solutions need MS Visual C++ " +#~ "dll to be installed on target " +#~ "machine, except py2app. Only Pyinstaller " +#~ "makes self-executable exe that bundles" +#~ " the dll when passing :option:`--onefile`" +#~ " to :file:`Configure.py`." +#~ msgstr "" + +#~ msgid "Write steps for most basic .exe" +#~ msgstr "" + +#~ msgid "Prerequisite is to install :ref:`Python on Windows `." +#~ msgstr "" + +#~ msgid "" +#~ "(Optionally) `one-file mode " +#~ "`_" +#~ msgstr "" + +#~ msgid "" +#~ "Provide the Microsoft Visual C runtime" +#~ " DLL. Two options: `globally install " +#~ "dll on target machine " +#~ "`_" +#~ " or `distribute dll alongside with " +#~ ".exe `_." +#~ msgstr "" + +#~ msgid "" +#~ "`Manual " +#~ "`_" +#~ msgstr "" + +#~ msgid "This creates," +#~ msgstr "" + +#~ msgid "" +#~ "a :code:`dist` folder, that holds the" +#~ " main executable :code:`script`, and some" +#~ " dependent Python libraries," +#~ msgstr "" + +#~ msgid "" +#~ "The :code:`script.spec` file can be " +#~ "edited to `customise the build " +#~ "`_, with options such as" +#~ msgstr "" + +#~ msgid "adding Python run-time options to the executable," +#~ msgstr "" + +#~ msgid "" +#~ "To create a standalone windowed OS " +#~ "X application, use the :code:`--windowed` " +#~ "option" +#~ msgstr "" + +#~ msgid "" +#~ "There are several options in " +#~ ":code:`script.spec` related to Mac OS X" +#~ " app bundles `here " +#~ "`_. For example," +#~ " to specify an icon for the " +#~ "app, use the :code:`icon=\\path\\to\\icon.icns` " +#~ "option." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo b/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo index 5d1303bb327317e5d49848e8b1ee5feecd143625..20b771201f0317a9c06b08c13c791d7f9d6a6942 100644 GIT binary patch delta 1267 zcmdVX%}Z2K7{~GFI*R4Xq@(GKZ%tYm<)||{(~T)v>7vkNN-J=hF<}ZBYf(mq z=0$|4go0Lu&>$qHMGzr{QVYXH6h(`6<)Xw$`<~9C{)IO8bI!fbJulDiLhwmoXdpZz zBKBC3HhhcCSiVlAAxdNz)0uyY6WNGAu@{r$Me=YEQw)&^?qL2RLF5wuEuoKjXoJWX ze2>>~Hc6zK`oqb3zY&{+Wj!B$*hKgyMvBN7+R(&@IF2=`Y=qx25#u-wL$RY3U3e3# za2gl!6dR4EiM(WPv5TC>c^pu64v`j|b%aIsGsw#j;m{Jq5cXj$u3#hX%@nD`5!{Zi zQFUqs3-CY|vSA<6M0t?SA#noF^ZqHS^{Y0CP$G3$hR4GUsu_$SO^|oE6Tc#dl`N;$ zi>j_3)y4y;I`kR2jD$9GOExl5MLL?RTYQL|RQ)4VktT1^ksjNoBMqNp&`ZG(s!Xl< zI#Um-Ol!EV%JdAXOqY47GCj&ERi?FEUuC+0ZOl^(2oB~ zu$(Q{nO;Ga=_p$9KB`Qoa2lK4I@2_d&h%o5&a}Q%XF7!{(^{{N^bV?)FQJNb4OOI} zT{_ZdSSc)$x?5-3fT~p?5sLpeGd-z3y0)pQ!R$=BZCaDR4cnHfTDE;K>deKIaiidFe`-|ZYTBTo z%W~{D48J*PzZKsVI8o#ebe;6Icbh&(t`RgZJNEJKoTG(je#QdNUm1&LV)hZUH@k6b zt3TxL4Eh2+zJRl;qr2N5tSBl{?+X82X*F{qrnS{|u+^N&syFAdeO8a#Rb1k7d!5B) j6<%*-PfofK?I|pdi#)cx`rj{@(iUj%=b?eJB68 delta 1283 zcmdtf%S%*I9KiA4bxg~*j_Hh#GJ8qtjFV}jV$@1kJ)j~NmXcF5Wi!LfWLd-%Q7sY` zj$ltiqFR)-7=wx+7cGLK2+=TztWD7-Xi>RH`kqd^{)1MZbLO78_nh;65;+we?2A7V z5l5;>Cr;untXn9uHA$o&3z@%96IqNu@C0V2i!8_Um~V;P!!^vGW{8~Te_zqZJen=? z1!r(bKhF`_!1}gakq+h;@+2;c7|i8~@JwuWk!zTb3div-w&sg4lpmOh>FkD~I57)d zcm+Hhe$V0Vn1$lnuES_#znU9Lq(AYo0g+^6whEQ&f_+0DHdtM zi&)Q#r?7%~Mkyb{I;_G`v#>vQEzy=+a&#r zB#p~(jcIxtb<>BKg)dPzeTNfx%ww81tu;+=)taW!b*AYo>XU}*OwwnluiQ~@lCDIZ zbOd$MPuL{9q+z{jdKh)nJ6_Xt3OST)YA{WMsGIgA9@<{n5`C$*1y)sJAS2mQLzy4d zk*s;ulYP^wQYAT?ll`$+SOs%NQo_A4e<-NZbHDNASME>sJ#W?us5ka|*U#lAB?Y31 zvju~eSzqM1WNlUV9apo>zg(fnes{Px98m4fa&^+#qMkY1)M(wbnk$-NrR8<}v+_pC z{q)9AI2H&68#}6Zs6C~d)$8Kjc3;rl-5K*mW9~q3U&!T;9qLx@l5J|N)R*O{ulCeb tdpu<|-o~2RMA?!;E4kLSE-mrc_TqmzsJ%0?*B|KdiN4RMFVf?S$Zru25i|e* diff --git a/docs/locale/ko/LC_MESSAGES/shipping/packaging.po b/docs/locale/ko/LC_MESSAGES/shipping/packaging.po index 9ca117bfa..838899800 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/packaging.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/packaging.po @@ -1,29 +1,38 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../shipping/packaging.rst:5 +#: ../../shipping/packaging.rst:6 msgid "Packaging Your Code" msgstr "" -#: ../../shipping/packaging.rst:7 +#: ../../shipping/packaging.rst:10 msgid "" -"Package your code to share it with other developers. For example to share" -" a library for other developers to use in their application, or for " +"Package your code to share it with other developers. For example, to " +"share a library for other developers to use in their application, or for " "development tools like 'py.test'." msgstr "" -#: ../../shipping/packaging.rst:11 +#: ../../shipping/packaging.rst:14 msgid "" "An advantage of this method of distribution is its well established " "ecosystem of tools such as PyPI and pip, which make it easy for other " @@ -31,16 +40,16 @@ msgid "" "experiments, or as part of large, professional systems." msgstr "" -#: ../../shipping/packaging.rst:16 +#: ../../shipping/packaging.rst:19 msgid "" "It is a well-established convention for Python code to be shared this " "way. If your code isn't packaged on PyPI, then it will be harder for " -"other developers to find it, and to use it as part of their existing " +"other developers to find it and to use it as part of their existing " "process. They will regard such projects with substantial suspicion of " "being either badly managed or abandoned." msgstr "" -#: ../../shipping/packaging.rst:22 +#: ../../shipping/packaging.rst:25 msgid "" "The downside of distributing code like this is that it relies on the " "recipient understanding how to install the required version of Python, " @@ -50,250 +59,248 @@ msgid "" "applications to end-users." msgstr "" -#: ../../shipping/packaging.rst:28 +#: ../../shipping/packaging.rst:31 msgid "" "The `Python Packaging Guide `_ provides an extensive guide on creating and " "maintaining Python packages." msgstr "" -#: ../../shipping/packaging.rst:32 +#: ../../shipping/packaging.rst:37 msgid "Alternatives to Packaging" msgstr "" -#: ../../shipping/packaging.rst:34 +#: ../../shipping/packaging.rst:39 msgid "" "To distribute applications to end-users, you should :ref:`freeze your " "application `." msgstr "" -#: ../../shipping/packaging.rst:37 +#: ../../shipping/packaging.rst:42 msgid "" "On Linux, you may also want to consider :ref:`creating a Linux distro " "package ` (e.g. a .deb file for " "Debian or Ubuntu.)" msgstr "" -#: ../../shipping/packaging.rst:42 +#: ../../shipping/packaging.rst:49 msgid "For Python Developers" msgstr "" -#: ../../shipping/packaging.rst:44 +#: ../../shipping/packaging.rst:51 msgid "" -"If you're writing an open source Python module, `PyPI " -"`_ , more properly known as *The Cheeseshop*, is " -"the place to host it." +"If you're writing an open source Python module, `PyPI `_" +" , more properly known as *The Cheeseshop*, is the place to host it." msgstr "" -#: ../../shipping/packaging.rst:50 +#: ../../shipping/packaging.rst:57 msgid "Pip vs. easy_install" msgstr "" -#: ../../shipping/packaging.rst:52 +#: ../../shipping/packaging.rst:59 msgid "" -"Use `pip `_. More details `here " -"`_" +"Use `pip `_. More details `here " +"`_." msgstr "" -#: ../../shipping/packaging.rst:57 +#: ../../shipping/packaging.rst:64 msgid "Personal PyPI" msgstr "" -#: ../../shipping/packaging.rst:59 +#: ../../shipping/packaging.rst:66 msgid "" -"If you want to install packages from a source other than PyPI, (say, if " -"your packages are *proprietary*), you can do it by hosting a simple http " +"If you want to install packages from a source other than PyPI (say, if " +"your packages are *proprietary*), you can do it by hosting a simple HTTP " "server, running from the directory which holds those packages which need " "to be installed." msgstr "" -#: ../../shipping/packaging.rst:64 +#: ../../shipping/packaging.rst:71 msgid "**Showing an example is always beneficial**" msgstr "" -#: ../../shipping/packaging.rst:66 +#: ../../shipping/packaging.rst:73 msgid "" "For example, if you want to install a package called " ":file:`MyPackage.tar.gz`, and assuming this is your directory structure:" msgstr "" -#: ../../shipping/packaging.rst:72 +#: ../../shipping/packaging.rst:79 msgid "archive" msgstr "" -#: ../../shipping/packaging.rst:72 +#: ../../shipping/packaging.rst:79 msgid "MyPackage" msgstr "" -#: ../../shipping/packaging.rst:72 +#: ../../shipping/packaging.rst:79 msgid "MyPackage.tar.gz" msgstr "" -#: ../../shipping/packaging.rst:74 +#: ../../shipping/packaging.rst:81 msgid "Go to your command prompt and type:" msgstr "" -#: ../../shipping/packaging.rst:81 +#: ../../shipping/packaging.rst:88 msgid "" -"This runs a simple http server running on port 9000 and will list all " +"This runs a simple HTTP server running on port 9000 and will list all " "packages (like **MyPackage**). Now you can install **MyPackage** using " -"any Python package installer. Using Pip, you would do it like:" +"any Python package installer. Using pip, you would do it like:" msgstr "" -#: ../../shipping/packaging.rst:89 +#: ../../shipping/packaging.rst:96 msgid "" "Having a folder with the same name as the package name is **crucial** " "here. I got fooled by that, one time. But if you feel that creating a " "folder called :file:`MyPackage` and keeping :file:`MyPackage.tar.gz` " -"inside that, is *redundant*, you can still install MyPackage using:" +"inside that is *redundant*, you can still install MyPackage using:" msgstr "" -#: ../../shipping/packaging.rst:99 +#: ../../shipping/packaging.rst:106 msgid "pypiserver" msgstr "" -#: ../../shipping/packaging.rst:101 +#: ../../shipping/packaging.rst:108 msgid "" -"`Pypiserver `_ is a minimal PyPI" -" compatible server. It can be used to serve a set of packages to " +"`pypiserver `_ is a minimal PyPI " +"compatible server. It can be used to serve a set of packages to " "easy_install or pip. It includes helpful features like an administrative" -" command (:option:`-U`) which will update all its packages to their " -"latest versions found on PyPI." +" command (``-U``) which will update all its packages to their latest " +"versions found on PyPI." msgstr "" -#: ../../shipping/packaging.rst:109 +#: ../../shipping/packaging.rst:116 msgid "S3-Hosted PyPi" msgstr "" -#: ../../shipping/packaging.rst:111 +#: ../../shipping/packaging.rst:118 msgid "" -"One simple option for a personal PyPi server is to use Amazon S3. A " +"One simple option for a personal PyPI server is to use Amazon S3. A " "prerequisite for this is that you have an Amazon AWS account with an S3 " "bucket." msgstr "" -#: ../../shipping/packaging.rst:114 +#: ../../shipping/packaging.rst:121 msgid "**Install all your requirements from PyPi or another source**" msgstr "" -#: ../../shipping/packaging.rst:115 +#: ../../shipping/packaging.rst:122 msgid "**Install pip2pi**" msgstr "" -#: ../../shipping/packaging.rst:117 +#: ../../shipping/packaging.rst:124 msgid ":code:`pip install git+https://github.com/wolever/pip2pi.git`" msgstr "" -#: ../../shipping/packaging.rst:119 +#: ../../shipping/packaging.rst:126 msgid "**Follow pip2pi README for pip2tgz and dir2pi commands**" msgstr "" -#: ../../shipping/packaging.rst:121 +#: ../../shipping/packaging.rst:128 msgid "" ":code:`pip2tgz packages/ YourPackage` (or :code:`pip2tgz packages/ -r " "requirements.txt`)" msgstr "" -#: ../../shipping/packaging.rst:122 +#: ../../shipping/packaging.rst:129 msgid ":code:`dir2pi packages/`" msgstr "" -#: ../../shipping/packaging.rst:124 +#: ../../shipping/packaging.rst:131 msgid "**Upload the new files**" msgstr "" -#: ../../shipping/packaging.rst:126 +#: ../../shipping/packaging.rst:133 msgid "" "Use a client like Cyberduck to sync the entire :file:`packages` folder to" -" your s3 bucket" +" your s3 bucket." msgstr "" -#: ../../shipping/packaging.rst:127 +#: ../../shipping/packaging.rst:134 msgid "" "Make sure you upload :code:`packages/simple/index.html` as well as all " -"new files and directories" +"new files and directories." msgstr "" -#: ../../shipping/packaging.rst:129 +#: ../../shipping/packaging.rst:136 msgid "**Fix new file permissions**" msgstr "" -#: ../../shipping/packaging.rst:131 +#: ../../shipping/packaging.rst:138 msgid "" "By default, when you upload new files to the S3 bucket, they will have " "the wrong permissions set." msgstr "" -#: ../../shipping/packaging.rst:132 +#: ../../shipping/packaging.rst:139 msgid "" "Use the Amazon web console to set the READ permission of the files to " "EVERYONE." msgstr "" -#: ../../shipping/packaging.rst:133 +#: ../../shipping/packaging.rst:140 msgid "" "If you get HTTP 403 when trying to install a package, make sure you've " "set the permissions correctly." msgstr "" -#: ../../shipping/packaging.rst:135 +#: ../../shipping/packaging.rst:142 msgid "**All done**" msgstr "" -#: ../../shipping/packaging.rst:137 +#: ../../shipping/packaging.rst:144 msgid "" "You can now install your package with :code:`pip install --index-" -"url=http://your-s3-bucket/packages/simple/ YourPackage`" +"url=http://your-s3-bucket/packages/simple/ YourPackage`." msgstr "" -#: ../../shipping/packaging.rst:142 +#: ../../shipping/packaging.rst:151 msgid "For Linux Distributions" msgstr "" -#: ../../shipping/packaging.rst:144 +#: ../../shipping/packaging.rst:153 msgid "" "Creating a Linux distro package is arguably the \"right way\" to " "distribute code on Linux." msgstr "" -#: ../../shipping/packaging.rst:147 +#: ../../shipping/packaging.rst:156 msgid "" "Because a distribution package doesn't include the Python interpreter, it" -" makes the download and install about 2MB smaller than :ref:`freezing " -"your application `." +" makes the download and install about 2-12 MB smaller than :ref:`freezing" +" your application `." msgstr "" -#: ../../shipping/packaging.rst:151 +#: ../../shipping/packaging.rst:160 msgid "" "Also, if a distribution releases a new security update for Python, then " "your application will automatically start using that new version of " "Python." msgstr "" -#: ../../shipping/packaging.rst:154 +#: ../../shipping/packaging.rst:163 msgid "" "The bdist_rpm command makes `producing an RPM file " "`_ for use by distributions like Red Hat or SuSE is trivially " -"easy." +"packages>`_ for use by distributions like Red Hat or SuSE trivially easy." msgstr "" -#: ../../shipping/packaging.rst:157 +#: ../../shipping/packaging.rst:166 msgid "" "However, creating and maintaining the different configurations required " "for each distribution's format (e.g. .deb for Debian/Ubuntu, .rpm for Red" -" Hat/Fedora, etc) is a fair amount of work. If your code is an " +" Hat/Fedora, etc.) is a fair amount of work. If your code is an " "application that you plan to distribute on other platforms, then you'll " "also have to create and maintain the separate config required to freeze " -"your application for Windows and OSX. It would be much less work to " +"your application for Windows and OS X. It would be much less work to " "simply create and maintain a single config for one of the cross platform " ":ref:`freezing tools `, which will produce stand-" "alone executables for all distributions of Linux, as well as Windows and " -"OSX." +"OS X." msgstr "" -#: ../../shipping/packaging.rst:167 +#: ../../shipping/packaging.rst:176 msgid "" "Creating a distribution package is also problematic if your code is for a" " version of Python that isn't currently supported by a distribution. " @@ -307,70 +314,87 @@ msgid "" "them." msgstr "" -#: ../../shipping/packaging.rst:176 +#: ../../shipping/packaging.rst:185 msgid "Having said all that, here's how to do it:" msgstr "" -#: ../../shipping/packaging.rst:178 +#: ../../shipping/packaging.rst:187 msgid "`Fedora `_" msgstr "" -#: ../../shipping/packaging.rst:179 +#: ../../shipping/packaging.rst:188 msgid "" "`Debian and Ubuntu `_" msgstr "" -#: ../../shipping/packaging.rst:180 +#: ../../shipping/packaging.rst:189 msgid "`Arch `_" msgstr "" -#: ../../shipping/packaging.rst:183 +#: ../../shipping/packaging.rst:192 msgid "Useful Tools" msgstr "" -#: ../../shipping/packaging.rst:185 +#: ../../shipping/packaging.rst:194 msgid "`fpm `_" msgstr "" -#: ../../shipping/packaging.rst:186 +#: ../../shipping/packaging.rst:195 msgid "`alien `_" msgstr "" -#: ../../shipping/packaging.rst:187 +#: ../../shipping/packaging.rst:196 msgid "" -"`dh-virtualenv `_ (for APT/DEB omnibus " -"packaging)" +"`dh-virtualenv `_ (for APT/DEB " +"omnibus packaging)" msgstr "" #~ msgid "Packaging your code is important." #~ msgstr "" #~ msgid "" -#~ "You'll need to package your code " -#~ "first before sharing it with other " -#~ "developers." #~ msgstr "" #~ msgid "" -#~ "The `Python Packaging Guide `_ provides an " -#~ "extensive guide on creating and " -#~ "maintaining Python packages." +#~ "Package your code to share it with" +#~ " other developers. For example to " +#~ "share a library for other developers " +#~ "to use in their application, or " +#~ "for development tools like 'py.test'." +#~ msgstr "" + +#~ msgid "" +#~ "It is a well-established convention " +#~ "for Python code to be shared this" +#~ " way. If your code isn't packaged " +#~ "on PyPI, then it will be harder" +#~ " for other developers to find it, " +#~ "and to use it as part of " +#~ "their existing process. They will regard" +#~ " such projects with substantial suspicion" +#~ " of being either badly managed or " +#~ "abandoned." #~ msgstr "" #~ msgid "" #~ "If you're writing an open source " -#~ "Python module, `PyPI `_, " -#~ "more properly known as *The Cheeseshop*," -#~ " is the place to host it." +#~ "Python module, `PyPI `_ " +#~ ", more properly known as *The " +#~ "Cheeseshop*, is the place to host " +#~ "it." +#~ msgstr "" + +#~ msgid "" +#~ "Use `pip `_. More" +#~ " details `here " +#~ "`_" #~ msgstr "" #~ msgid "" #~ "If you want to install packages " -#~ "from a source different from PyPI, " +#~ "from a source other than PyPI, " #~ "(say, if your packages are " #~ "*proprietary*), you can do it by " #~ "hosting a simple http server, running" @@ -379,20 +403,104 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Say if you are after installing a" -#~ " package called :file:`MyPackage.tar.gz`, and" -#~ " assuming this is your directory " -#~ "structure:" +#~ "This runs a simple http server " +#~ "running on port 9000 and will list" +#~ " all packages (like **MyPackage**). Now " +#~ "you can install **MyPackage** using any" +#~ " Python package installer. Using Pip, " +#~ "you would do it like:" +#~ msgstr "" + +#~ msgid "" +#~ "Having a folder with the same name" +#~ " as the package name is **crucial**" +#~ " here. I got fooled by that, " +#~ "one time. But if you feel that " +#~ "creating a folder called :file:`MyPackage` " +#~ "and keeping :file:`MyPackage.tar.gz` inside " +#~ "that, is *redundant*, you can still " +#~ "install MyPackage using:" #~ msgstr "" #~ msgid "" #~ "`Pypiserver `_ is" -#~ " a minimal PyPI compatible server. It" -#~ " can be used to serve a set " -#~ "of packages to easy_install or pip. " -#~ "It includes helpful features like an " -#~ "administrative command (:option:`-U`) which " -#~ "will update all its packages to " -#~ "their latest versions found on PyPI." +#~ " a minimal PyPI compatible server. " +#~ "It can be used to serve a " +#~ "set of packages to easy_install or " +#~ "pip. It includes helpful features like" +#~ " an administrative command (:option:`-U`) " +#~ "which will update all its packages " +#~ "to their latest versions found on " +#~ "PyPI." +#~ msgstr "" + +#~ msgid "" +#~ "One simple option for a personal " +#~ "PyPi server is to use Amazon S3." +#~ " A prerequisite for this is that " +#~ "you have an Amazon AWS account " +#~ "with an S3 bucket." +#~ msgstr "" + +#~ msgid "" +#~ "Use a client like Cyberduck to " +#~ "sync the entire :file:`packages` folder " +#~ "to your s3 bucket" +#~ msgstr "" + +#~ msgid "" +#~ "Make sure you upload " +#~ ":code:`packages/simple/index.html` as well as " +#~ "all new files and directories" +#~ msgstr "" + +#~ msgid "" +#~ "You can now install your package " +#~ "with :code:`pip install --index-" +#~ "url=http://your-s3-bucket/packages/simple/ YourPackage`" +#~ msgstr "" + +#~ msgid "" +#~ "Because a distribution package doesn't " +#~ "include the Python interpreter, it makes" +#~ " the download and install about 2MB" +#~ " smaller than :ref:`freezing your " +#~ "application `." +#~ msgstr "" + +#~ msgid "" +#~ "The bdist_rpm command makes `producing " +#~ "an RPM file " +#~ "`_ for use by distributions" +#~ " like Red Hat or SuSE is " +#~ "trivially easy." +#~ msgstr "" + +#~ msgid "" +#~ "However, creating and maintaining the " +#~ "different configurations required for each " +#~ "distribution's format (e.g. .deb for " +#~ "Debian/Ubuntu, .rpm for Red Hat/Fedora, " +#~ "etc) is a fair amount of work. " +#~ "If your code is an application " +#~ "that you plan to distribute on " +#~ "other platforms, then you'll also have" +#~ " to create and maintain the separate" +#~ " config required to freeze your " +#~ "application for Windows and OSX. It " +#~ "would be much less work to simply" +#~ " create and maintain a single config" +#~ " for one of the cross platform " +#~ ":ref:`freezing tools `, which will produce stand-alone" +#~ " executables for all distributions of " +#~ "Linux, as well as Windows and OSX." +#~ msgstr "" + +#~ msgid "" +#~ "`dh-virtualenv `_ (for " +#~ "APT/DEB omnibus packaging)" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/shipping/publishing.mo b/docs/locale/ko/LC_MESSAGES/shipping/publishing.mo new file mode 100644 index 0000000000000000000000000000000000000000..6b91a0d8dc749a25848f9bb7261fe39e7d92531d GIT binary patch literal 4293 zcmeHJ&5j#I5FQ}m#|aQ2BrY5Za|qFTyxxrxMb3}1KTfiWy*4ojxJyYHFRn=ED^XD5Uz6$Vr z6W80ge&)qfzmJ~_f(EX8xFqhU&j-Op;IF`UfhS)Gf_H%DfL{V{1Gj;H0KWh(od|+Q zz@LB{z*{GS;34o4@O|K^7rpO$z$L5=@O$95z+Zs3U&7hI(=P`BjtDLS-vV9+eg;l^ zK<4+`E1uu)4bSiTDbH^PWPV=*ncrg|^V>e{`F#Uqe&MU0-;Y4%_cxIFeg2x~_Zx5t z>%V}^@679--(w*2dw9n4`wqzbegFn*luD7gbWXaEIaytrSW;p1eHlB-rA#adDl&n) zPE%1vnX)MDy-v7E}>k#*&0gwsg7R2oX;q0HdGV3)|TGs{Gzjc}4? z%B3{dWt;X>Whs+58B0T@W%IF6IS543Ih<4G32r(#Rr#3o$Xhaz7EPoqs4V<}xtuMW zG9TL_BMWUDMdcU^W*zI?85Nb_zz4L0jZDQ8(m8=LHJ6%%oh4H6z;WaiCvhm8Fa%0$ zQx=Gbj2fqox$vz53Gk<>SBt2XD)NWtonn+a^G-L%L`NCB}%T2JTzo{}==jYAgDo)^&GV%L?_xx#jrm$BX3 zX=~fDo-SWI_@o_daoSLJ{GrH(>#_*2MRA7EA+@9QXF3)cn8vBX12%>hP}G?=6ENuV zai~+B#434En|z?GV}f-ARr+wcuMkIKp)MF$b|jJnRCar7n}c494%%bo)Hp}Z4!mq2 z5}8}sraLGvZ{C@^6j^-Q5((tYBD_4#O70TMR6aS1gF~##UzHMis^nD@JZo$JG*TJZ zq3xtD@ZT)ebicID>!Q+IUFQTLR$}IYPI5hitwhlf&`2Rq%C&=SF|D#GM%+qIJFHSU zR?r%fjg0N}hT+I4nJ3vCZDeDk>VSq``3L|{;!2Z=mm@2mOU6Ca98{A4-U}7mW_3L0 zl^HvMJU5FfY5qyQIA5)nq0suqDsDg)1+r2Yg{El-L(^I`$}=s32~{ToX|3za4yz#l zoozl8HdF0nH`wt5jpcEdr_KgOL4dCD1COOSQ5ZeBA1hVLQ;n?7Pz{kItNT@+xj`(3 zoPj<^1`YCG(=^pyhnNM@(tBbesEIZlOWQoh<4;0Ss#c7bN2~59^etz1UAd@?C(?N- z!lo~x_CiYF8kfdk+@UtiG?LbNo%++5ER5=5T+Qj3jEL!wO?8<;C$)RtUcU>fF^_#b zzj*G;Yy|f_NXZ!iHmC{mFI=3GEu*QjmPP2p+bOe*cIBrfs5H+JutXf(xfqF7MPQ0L zp~ZBL%pJWZLe1)PGC?cHB{Qu?6#{tj3aV;bH{YWA@aseE!ZOjphbbyo)pci~52I%` zs8``u5`KUe3cPp8OLAN)^lPWxX|FVRcp4WD>{un?I$j*%zV1?EXSg3$;~3k*P3W>q ztDV)Auya0Kxj>yu-3u3%I{3jb+?9ulkFV|S_SSa8!7$uhqg%u7U~B24;dZal7uJRQ z7=AVr$a0r%-0Amedu`C8E4{(mR{#3i=H_m1Z|@pR^Kpqz>(WFYEy8^%rhJF4^!wK{ z)rMNGHFmNRY78NrsqIo;R7-nxKenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.2.0\n" + +#: ../../shipping/publishing.rst:6 +msgid "Publishing Your Code" +msgstr "" + +#: ../../shipping/publishing.rst +msgid "Todo" +msgstr "" + +#: ../../shipping/publishing.rst:8 +msgid "Replace this kitten with the photo we want." +msgstr "" + +#: ../../shipping/publishing.rst:12 +msgid "" +"A healthy open source project needs a place to publish its code and " +"project management stuff so other developers can collaborate with you. " +"This lets your users gain a better understanding of your code, keep up " +"with new developments, report bugs, and contribute code." +msgstr "" + +#: ../../shipping/publishing.rst:17 +msgid "" +"This development web site should include the source code history itself, " +"a bug tracker, a patch submission (aka \"Pull Request\") queue, and " +"possibly additional developer-oriented documentation." +msgstr "" + +#: ../../shipping/publishing.rst:21 +msgid "" +"There are several free open source project hosting sites (aka " +"\"forges\"). These include GitHub, SourceForge, Bitbucket, and GitLab. " +"GitHub is currently the best. Use GitHub." +msgstr "" + +#: ../../shipping/publishing.rst:28 +msgid "Creating a Project Repo on GitHub" +msgstr "" + +#: ../../shipping/publishing.rst:30 +msgid "To publish your Python project on GitHub:" +msgstr "" + +#: ../../shipping/publishing.rst:32 +msgid "Create a GitHub account if you don't already have one." +msgstr "" + +#: ../../shipping/publishing.rst:34 +msgid "Create a new repo for your project." +msgstr "" + +#: ../../shipping/publishing.rst:36 +msgid "" +"Click on the \"+\" menu next to your avatar in the upper right of the " +"page and choose \"New repository\"." +msgstr "" + +#: ../../shipping/publishing.rst:38 +msgid "Name it after your project and give it an SEO-friendly description." +msgstr "" + +#: ../../shipping/publishing.rst:40 +msgid "" +"If you don't have an existing project repo, choose the settings to add a " +"README, `.gitignore`, and license. Use the Python `.gitignore` option." +msgstr "" + +#: ../../shipping/publishing.rst:43 +msgid "" +"On the newly created repo page, click \"Manage topics\" and add the tags " +"\"python\" and \"python3\" and/or \"python2\" as appropriate." +msgstr "" + +#: ../../shipping/publishing.rst:45 +msgid "" +"Include a link to your new GitHub repo in your project's README file so " +"people who just have the project distribution know where to find it." +msgstr "" + +#: ../../shipping/publishing.rst:47 +msgid "" +"If this is a brand new repo, clone it to your local machine and start " +"working:" +msgstr "" + +#: ../../shipping/publishing.rst:53 +msgid "" +"Or, if you already have a project Git repo, add your new GitHub repo as a" +" remote:" +msgstr "" + +#: ../../shipping/publishing.rst:63 +msgid "When Your Project Grows" +msgstr "" + +#: ../../shipping/publishing.rst:65 +msgid "" +"For more information about managing an open source software project, see " +"the book `Producing Open Source Software `_." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo index 015d942b52aa46e6e74796b0c9eb3fc734a49654..985643769e936a2af2eeed8560713ba47ef656e7 100644 GIT binary patch delta 900 zcmdsz&ubGw6vy8-(bhI;H55-4-a(K;QqsgoyGRceM6gJ`2%?8wcPH7Q>CQ5{(c61h{IK*7@Z`Xo&&+#|@B7a5tB)4Dy+ZaG zVa*{fAPxtY6DwyCT}I>)8_2Iu5bc5o;3qJjA^Hh^2OaQZmgp>a@f6Wpum-MzKfq0J z;WUv1LvWs`OJ8wlBXI=oVMu+FXdmoP5oxe9JsRAfA$ozn)!bydW>ba@-s~iS3c1SIHe_hpSI5O_33bz6bDl;M54$&1OY8_;GxE C%L3^D delta 2248 zcmb_cOKcle6n&-%&>tc3v??HkTJfo%YJ!BsqM6vQ@d#&Tm>Jjc z0-RQkYLb*B*lFD21S6cJg;a`gT2d)2x?;r!i463Vu1VVM1NI_bk1^Uz(PW^9vkE5 zdBU;>kV>PImg6DbbyiA-soOE2hCk8!7r_*}$BfX!yL7Ee$#~s@-TwbHxd$wNF zj3$yXPI03@P9G=rgyE%0kHriR4d@B7>sk7Am&a7gUYr{ao#ZhKMWR+R$gDdV&()|W zjvgFtTdv_*P8$C7s1pi|TAkk(btNv_SK#yKMjRnrvXuF-Fzgl7?+P*Rg?#CW7H z9Z^`*48_S!yB;5S!QDvNi6=6_Bf6rku^xmapp5H1G>h5@!t3P2bcV;`x<^goyr{-? zFqqf-eP}I7ZEgQCu_I(9JvCj$r_UN}Ytu48Q7>g-WGEYTl2HTtd2z#uMQq)Htm_gq zBn^h;axZCnmX&bnc--@B_gH(oowg0l4g}LIr$0EiZv?)I=_yC`+J@bDD4%ZKsWgCb z+7X~Mz$|PyK>13?R0fPe$h+=MMZQ-zEi~Xze^Ln?lt=YcDy6wz5|laY?rJ>Qj=zm) zg1ca%oF8fOVI*akF)QV&qTz7eRj7DgHxhx3lcw5#V-B`Cw?%VXd>8+L8?Ak8Ud;5c7*7H!Mdga(aUNu`xNbEH5vT%vR)` zqCZt!TUn~kZ@(AHh;J|9OR`uIvqdpcBJq7zma}rE7_6YYI<&rlNF+uIO}VguYfD2U z3M-;qQO}PQ#O0+hp;RNu5Xox=IbT%iHdw4JmBdmhNSG;*EME|#cfd(5Abe^>j@%NX zIWbz%2tWRn&-~e(7|%Z1ekw+CHrJFxPA{U_I{VLyNF`=gl`LXxNM>dxQ8{Sr%P}!` z)1NAlyj@Uf{ITo)#R^CTUFIwD$}%$7yWHqzU5A>qNQH7&iaTOzx~^4M zapl%f8>s+W+4QLg)vd%vXE_(RJ|V>gvHz{ z`QwZJ)O9uKDv~{<2$Q!;aXg*h4 z_b{#fumYn66|OCb+gU%isHALbYgXq-V2E{>Y>f8CD5RBpzbR{oCkBz_>>SC;Bpib& zriUEon%hbEE+l_sGl$U@qwR#EU?bdxwyAPR$*PX`{XNaNJ zW?@M6)C(_)xfK{RCoV2ytpCH_69)AG`CkkvYvmhT(_lej{HmN;Ri0Fq1($3Y&H{%l ZmQ`_(7Z>HV8~#+oFB`_M=6Bp{`4=Y~xDWsU diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po index a2fd92586..b114912e3 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -1,48 +1,58 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../starting/install/linux.rst:4 -msgid "Installing Python on Linux" +#: ../../starting/install/linux.rst:6 +#, fuzzy +msgid "Installing Python 2 on Linux" msgstr "리눅스에 파이썬 설치하기" -#: ../../starting/install/linux.rst:6 +#: ../../starting/install/linux.rst:11 msgid "" -"The latest versions of CentOS, Fedora, Redhat Enterprise (RHEL) and " -"Ubuntu **come with Python 2.7 out of the box**." +"Check out our :ref:`guide for installing Python 3 on " +"Linux`." +msgstr "" + +#: ../../starting/install/linux.rst:13 +#, fuzzy +msgid "" +"The latest versions of CentOS, Red Hat Enterprise Linux (RHEL) and Ubuntu" +" **come with Python 2.7 out of the box**." msgstr "최신 버전의 CentOS, 페도라, 레드햇 엔터프라이즈(RHEL), 그리고 우분투는 **파이썬 2.7이 딸려옵니다. 멋지죠. ** " -#: ../../starting/install/linux.rst:9 +#: ../../starting/install/linux.rst:16 msgid "" "To see which version of Python you have installed, open a command prompt " "and run" msgstr "어느 버전의 파이썬이 설치되어 있는지 확인하려면, 명령창을 열고 아래의 스크립트를 실행하세요. " -#: ../../starting/install/linux.rst:15 +#: ../../starting/install/linux.rst:22 msgid "" -"Some older versions of RHEL and CentOS come with Python 2.4 which is " -"unacceptable for modern Python development. Fortunately, there are `Extra" -" Packages for Enterprise Linux`_ which include high quality additional " -"packages based on their Fedora counterparts. This repository contains a " -"Python 2.6 package specifically designed to install side-by-side with the" -" system's Python 2.4 installation." +"However, with the growing popularity of Python 3, some distributions, " +"such as Fedora, don't come with Python 2 pre-installed. You can install " +"the ``python2`` package with your distribution package manager:" msgstr "" -"몇몇 오래된 버전의 RHEL와 CentOS에는 파이썬 2.4가 딸려오는데, 이 버전은 요즘의 파이썬 개발에는 적당하지 않습니다. " -"다행히도 `Extra Packages for Enterprise Linux`가 있습니다. 여기에는 페도라에 대응하는 훌륭한 추가 " -"패키지가 들어있는데, 파이썬 2.4가 설치된 시스템에서도 2.4버전과 2.6버전이 병행하여 설치될 수 있도록 특별히 만들어진 파이썬" -" 2.6 패키지를 포함하고 있습니다. " -#: ../../starting/install/linux.rst:24 +#: ../../starting/install/linux.rst:30 msgid "" "You do not need to install or configure anything else to use Python. " "Having said that, I would strongly recommend that you install the tools " @@ -55,21 +65,22 @@ msgstr "" "이 안내서에서 앞으로 설명할 도구와 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools와 pip는 반드시 " "설치해야 합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다." -#: ../../starting/install/linux.rst:31 +#: ../../starting/install/linux.rst:39 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ../../starting/install/linux.rst:33 +#: ../../starting/install/linux.rst:41 +#, fuzzy msgid "" "The two most crucial third-party Python packages are `setuptools " -"`_ and `pip " +"`_ and `pip " "`_." msgstr "" "가장 중요한 파이썬 서드파티 패키지를 2개 뽑으라면 `setuptools " "`_ 와 `pip " "`_ 입니다." -#: ../../starting/install/linux.rst:35 +#: ../../starting/install/linux.rst:43 msgid "" "Once installed, you can download, install and uninstall any compliant " "Python software product with a single command. It also enables you to add" @@ -79,7 +90,7 @@ msgstr "" "이것들을 설치하면 단 한 줄의 명령만으로도 pip와 setuptools에 호환되는 모든 파이썬 소프트웨어를 다운로드, 설치, 삭제할" " 수 있습니다.또한 당신이 만든 파이썬 소프트웨어에 네트워크 설치 기능을 손쉽게 추가할 수 있도록 해줍니다. " -#: ../../starting/install/linux.rst:39 +#: ../../starting/install/linux.rst:47 msgid "" "Python 2.7.9 and later (on the python2 series), and Python 3.4 and later " "include pip by default." @@ -87,11 +98,11 @@ msgstr "" "파이썬 2.7.9와 그 이후의 버전(파이썬2 중에서), 그리고 파이썬 3.4와 그 이후의 버전은 pip를 기본적으로 포함하고 " "있습니다. " -#: ../../starting/install/linux.rst:42 +#: ../../starting/install/linux.rst:50 msgid "To see if pip is installed, open a command prompt and run" msgstr "pip가 설치되어 있는지 보고 싶다면, 명령창을 열어 아래의 파이썬 스크립트를 실행하면 됩니다." -#: ../../starting/install/linux.rst:48 +#: ../../starting/install/linux.rst:56 msgid "" "To install pip, `follow the official pip installation guide " "`_ - this will automatically " @@ -100,11 +111,11 @@ msgstr "" "pip를 설치하려면 `pip 공식 설치 안내서 `_ 를" " 따라해보세요. - 이 링크는 setuptools 최신 버전도 자동 설치해줍니다. " -#: ../../starting/install/linux.rst:51 +#: ../../starting/install/linux.rst:61 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/linux.rst:53 +#: ../../starting/install/linux.rst:63 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -116,13 +127,13 @@ msgstr "" " 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 패키지 " "디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." -#: ../../starting/install/linux.rst:58 +#: ../../starting/install/linux.rst:68 msgid "" "For example, you can work on a project which requires Django 1.10 while " "also maintaining a project which requires Django 1.8." msgstr "예를 들면 장고 1.10을 쓰는 프로젝트에서 작업하면서, 동시에 장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있습니다." -#: ../../starting/install/linux.rst:61 +#: ../../starting/install/linux.rst:71 msgid "" "To start using this and see more information: :ref:`Virtual Environments " "` docs." @@ -130,7 +141,7 @@ msgstr "" "Virtual Environments을 사용하기 위해 더 많은 정보를 알고 싶다면 :ref:`Virtual Environments " "` 문서에서 볼 수 있습니다. " -#: ../../starting/install/linux.rst:63 +#: ../../starting/install/linux.rst:73 msgid "" "You can also use :ref:`virtualenvwrapper ` to make" " it easier to manage your virtual environments." @@ -138,12 +149,35 @@ msgstr "" ":ref:`virtualenvwrapper ` 를 봐도 됩니다. Virtual " "Environments를 보다 쉽게 관리할 수 있을 것입니다. " -#: ../../starting/install/linux.rst:68 +#: ../../starting/install/linux.rst:78 +#, fuzzy msgid "" "This page is a remixed version of `another guide " -"`_, which" -" is available under the same license." +"`_, " +"which is available under the same license." msgstr "" "이 페이지는 `다른 안내서 `_ 를 풀어쓴 버전입니다. 동일한 라이선스 아래서 사용할 수 있습니다." +#~ msgid "" +#~ "Some older versions of RHEL and " +#~ "CentOS come with Python 2.4 which " +#~ "is unacceptable for modern Python " +#~ "development. Fortunately, there are `Extra " +#~ "Packages for Enterprise Linux`_ which " +#~ "include high quality additional packages " +#~ "based on their Fedora counterparts. This" +#~ " repository contains a Python 2.6 " +#~ "package specifically designed to install " +#~ "side-by-side with the system's " +#~ "Python 2.4 installation." +#~ msgstr "" +#~ "몇몇 오래된 버전의 RHEL와 CentOS에는 파이썬 2.4가" +#~ " 딸려오는데, 이 버전은 요즘의 파이썬 개발에는 적당하지" +#~ " 않습니다. 다행히도 `Extra Packages for " +#~ "Enterprise Linux`가 있습니다. 여기에는 페도라에 대응하는" +#~ " 훌륭한 추가 패키지가 들어있는데, 파이썬 2.4가 " +#~ "설치된 시스템에서도 2.4버전과 2.6버전이 병행하여 설치될 " +#~ "수 있도록 특별히 만들어진 파이썬 2.6 패키지를 " +#~ "포함하고 있습니다. " + diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo index 184893e37a05342d2f8ee5427f2f6ad1928b7879..99d8ee385ff7497b2ffb616b8e13dd0447ed0938 100644 GIT binary patch delta 1170 zcmc(cO=uHA6vt<6wAvWsM+Bj@eMUi)B+Z9`68xz3VC%*D0Tw~nX);Nc?#_hWS<@V9 zZk~i5Ru4kY9z7Vmi71{6;#m~Dcq&Li#DgFI-4OKBi%=XGemvfP-uu6KuV&WL-46$2 zj~LE=+%ep>F!<|?8H_a%9|h;Y``|wCEw}=H1PkDu9gJyk6{3%ymyqlWDz2zk%!Y5(1l5(>7u&Wa8#Esop%N)cS8ve5*{G0hm$J%R zK5quMVz0Zi$`Ok$nn>;lk91RzSQb@Z^F{m5FySnoLKdz%%BL!q1ZR*()Z51l>`jv8jPa2-o>JJU4 literal 8512 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 Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../starting/install/osx.rst:4 -msgid "Installing Python on Mac OS X" +#: ../../starting/install/osx.rst:6 +#, fuzzy +msgid "Installing Python 2 on Mac OS X" msgstr "맥 OS X에 파이썬 설치하기" -#: ../../starting/install/osx.rst:6 -msgid "" -"The latest version of Mac OS X, El Capitan, **comes with Python 2.7 out " -"of the box**." +#: ../../starting/install/osx.rst:11 +msgid "Check out our :ref:`guide for installing Python 3 on OS X`." +msgstr "" + +#: ../../starting/install/osx.rst:13 +#, fuzzy +msgid "**Mac OS X comes with Python 2.7 out of the box.**" msgstr "맥 OS X의 최신 버전인 엘 캐피탄에는 **파이썬 2.7이 딸려옵니다**." -#: ../../starting/install/osx.rst:8 +#: ../../starting/install/osx.rst:15 +#, fuzzy msgid "" "You do not need to install or configure anything else to use Python. " "Having said that, I would strongly recommend that you install the tools " "and libraries described in the next section before you start building " "Python applications for real-world use. In particular, you should always " -"install Setuptools, as it makes it much easier for you to use other " -"third-party Python libraries." +"install Setuptools, as it makes it much easier for you to install and " +"manage other third-party Python libraries." msgstr "" "파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 " "이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 " "합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " -#: ../../starting/install/osx.rst:14 +#: ../../starting/install/osx.rst:21 +#, fuzzy msgid "" -"The version of Python that ships with OS X is great for learning but it's" -" not good for development. The version shipped with OS X may be out of " -"date from the `official current Python release " +"The version of Python that ships with OS X is great for learning, but " +"it's not good for development. The version shipped with OS X may be out " +"of date from the `official current Python release " "`_, which is considered the " "stable production version." msgstr "" "OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. OS X에 딸려온 버전은 안정화된 `공식" " 릴리즈 된 파이썬 `_ 보다 구버전일 것입니다." -#: ../../starting/install/osx.rst:20 +#: ../../starting/install/osx.rst:29 msgid "Doing it Right" msgstr "바로 시작하기" -#: ../../starting/install/osx.rst:22 +#: ../../starting/install/osx.rst:31 msgid "Let's install a real version of Python." msgstr "진짜 파이썬을 설치해보자!" -#: ../../starting/install/osx.rst:24 +#: ../../starting/install/osx.rst:33 +#, fuzzy msgid "" "Before installing Python, you'll need to install a C compiler. The " "fastest way is to install the Xcode Command Line Tools by running " "``xcode-select --install``. You can also download the full version of " -"`Xcode `_ from the Mac App Store, or " +"`Xcode `_ from the Mac App Store, or " "the minimal but unofficial `OSX-GCC-Installer " "`_ package." msgstr "" -"파이썬을 설치하기 전에 C 컴파일러를 설치해야 합니다. " -"이를 위해서는 Xcode Command Line Tools을 설치하는 방법이 가장 빠릅니다. " -"``xcode-select --install`` 을 돌리시면 됩니다. " -"맥 앱스토어에서 `Xcode `_ 의 " -"풀 버전을 다운로드 받을 수도 있습니다. " -"비공식 버전이지만 아주 작은" -" `OSX-GCC-Installer `_ " -"패키지를 설치해도 됩니다. " +"파이썬을 설치하기 전에 C 컴파일러를 설치해야 합니다. 이를 위해서는 Xcode Command Line Tools을 설치하는 방법이" +" 가장 빠릅니다. ``xcode-select --install`` 을 돌리시면 됩니다. 맥 앱스토어에서 `Xcode " +"`_ 의 풀 버전을 다운로드 받을 수도 있습니다. 비공식 버전이지만 " +"아주 작은 `OSX-GCC-Installer `_ 패키지를 설치해도 됩니다. " + +#: ../../starting/install/osx.rst:42 +#, fuzzy +msgid "" +"If you already have Xcode installed, do not install OSX-GCC-Installer. In" +" combination, the software can cause issues that are difficult to " +"diagnose." +msgstr "" +"이미 XCode를 설치했거나 Homebrew를 사용할 계획이라면, OSX-GCC-Installer는 설치하지 마세요. 두 개를 모두" +" 설치하면 원인을 밝히 어려운 문제를 일으킬 수 있습니다. " -#: ../../starting/install/osx.rst:33 +#: ../../starting/install/osx.rst:47 msgid "" -"If you already have Xcode installed or plan to use Homebrew, do not " -"install OSX-GCC-Installer. In combination, the software can cause issues " -"that are difficult to diagnose." +"If you perform a fresh install of Xcode, you will also need to add the " +"commandline tools by running ``xcode-select --install`` on the terminal." msgstr "" -"이미 XCode를 설치했거나 Homebrew를 사용할 계획이라면, " -"OSX-GCC-Installer는 설치하지 마세요. " -"두 개를 모두 설치하면 원인을 밝히 어려운 문제를 " -"일으킬 수 있습니다. " -#: ../../starting/install/osx.rst:37 +#: ../../starting/install/osx.rst:51 +#, fuzzy msgid "" -"While OS X comes with a large number of UNIX utilities, those familiar " +"While OS X comes with a large number of Unix utilities, those familiar " "with Linux systems will notice one key component missing: a decent " -"package manager. `Homebrew `_ fills this void." +"package manager. `Homebrew `_ fills this void." msgstr "" "OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 요소 하나가 빠져있다는 사실을 알아차릴 " "것입니다. 바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를" " 채워줍니다." -#: ../../starting/install/osx.rst:41 +#: ../../starting/install/osx.rst:55 +#, fuzzy msgid "" -"To `install Homebrew `_, open :file:`Terminal` " -"or your favorite OSX terminal emulator and run" +"To `install Homebrew `_, open :file:`Terminal` " +"or your favorite OS X terminal emulator and run" msgstr "" "`Homebrew `_ 를 설치하려면 :file:`터미널` 을 열거나 마음에 드는 " "OSX 터미널 에뮬레이터를 열고 아래 코드를 그냥 실행하기만 하면 됩니다." -#: ../../starting/install/osx.rst:48 +#: ../../starting/install/osx.rst:62 msgid "" "The script will explain what changes it will make and prompt you before " "the installation begins. Once you've installed Homebrew, insert the " @@ -113,27 +133,31 @@ msgstr "" "디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣으세요. :file:`~/.profile` 파일의 마지막 줄에 다음과" " 같이 덧붙이면 됩니다." -#: ../../starting/install/osx.rst:58 +#: ../../starting/install/osx.rst:72 msgid "Now, we can install Python 2.7:" msgstr "이제 우리는 파이썬 2.7을 설치할 수 있습니다." -#: ../../starting/install/osx.rst:64 -msgid "or Python 3:" -msgstr "파이썬 3도 됩니다: " +#: ../../starting/install/osx.rst:78 +msgid "" +"Because ``python@2`` is a \"keg\", we need to update our ``PATH`` again, " +"to point at our new installation:" +msgstr "" -#: ../../starting/install/osx.rst:70 -msgid "This will take a minute or two." -msgstr "1~2분 정도 걸릴 것입니다." +#: ../../starting/install/osx.rst:84 +msgid "" +"Homebrew names the executable ``python2`` so that you can still run the " +"system Python via the executable ``python``." +msgstr "" -#: ../../starting/install/osx.rst:74 +#: ../../starting/install/osx.rst:96 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ../../starting/install/osx.rst:76 +#: ../../starting/install/osx.rst:98 msgid "Homebrew installs Setuptools and ``pip`` for you." msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해줍니다." -#: ../../starting/install/osx.rst:78 +#: ../../starting/install/osx.rst:100 msgid "" "Setuptools enables you to download and install any compliant Python " "software over a network (usually the Internet) with a single command " @@ -144,7 +168,7 @@ msgstr "" "다운로드받고 설치할 수 있도록 해줍니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." " " -#: ../../starting/install/osx.rst:83 +#: ../../starting/install/osx.rst:105 msgid "" "``pip`` is a tool for easily installing and managing Python packages, " "that is recommended over ``easy_install``. It is superior to " @@ -156,31 +180,30 @@ msgstr "" "추천한다. ``easy_install`` 는 `많은 면 `_ 에서 탁월하고, 활발히 운영되고 있습니다." -#: ../../starting/install/osx.rst:89 +#: ../../starting/install/osx.rst:118 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/osx.rst:91 +#: ../../starting/install/osx.rst:120 +#, fuzzy msgid "" -"A Virtual Environment is a tool to keep the dependencies required by " -"different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x " -"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " -"directory clean and manageable." +"A Virtual Environment (commonly referred to as a 'virtualenv') is a tool " +"to keep the dependencies required by different projects in separate " +"places, by creating virtual Python environments for them. It solves the " +"\"Project X depends on version 1.x but, Project Y needs 4.x\" dilemma, " +"and keeps your global site-packages directory clean and manageable." msgstr "" "Virtual Environments은 파이썬 가상 환경을 만들어 여러 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 " "툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " "패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:96 +#: ../../starting/install/osx.rst:125 msgid "" "For example, you can work on a project which requires Django 1.10 while " "also maintaining a project which requires Django 1.8." -msgstr "" -"예를 들면 장고 1.10을 쓰는 프로젝트에서 일하면서, " -"장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." +msgstr "예를 들면 장고 1.10을 쓰는 프로젝트에서 일하면서, 장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:99 +#: ../../starting/install/osx.rst:128 msgid "" "To start using this and see more information: :ref:`Virtual Environments " "` docs." @@ -189,11 +212,19 @@ msgstr "" "`_ 문서에서 볼 수 있습니다." -#: ../../starting/install/osx.rst:104 +#: ../../starting/install/osx.rst:132 +#, fuzzy msgid "" "This page is a remixed version of `another guide " -"`_, which" -" is available under the same license." +"`_, " +"which is available under the same license." msgstr "" "이 페이지는 `다른 안내서 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." + +#~ msgid "or Python 3:" +#~ msgstr "파이썬 3도 됩니다: " + +#~ msgid "This will take a minute or two." +#~ msgstr "1~2분 정도 걸릴 것입니다." + diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo index ede94b1a51db32bb8901a36ea0e8bcd712c2ac7a..195a0569defeb04a9c4403f2febc3ce677776acf 100644 GIT binary patch delta 1648 zcmeH_&ui3B5XWa%cU$|zt^J|aLYdwybd&A2rR`D*wSPcsDb$lD&A#kDo6U=PFI`rV z6?*YdL0G&MM0yiE$bu-|JrvYGK`$y4dh*b#lVsPb;LSr1LXuB1?|t8VXEL9cAI?3V zuCD^X!dZa(#7D$$#O@S;LHthaBd(_bJ`x!*kp!6O0C+;*v*+k0z9+sQrn&&;iA^FW z9udK)zIED1s;BHY=Mi$-HR^&q$6TC6Q)#R;s504>u+(zuQ=Dbf<6=@v0?8(%tJ8?E#6+N?Go#T`>I zAFon6Rc7c#>GLR=&zT&bh_8#l+YB6~HTu(E_n&npQw&vA zG>+3_bYn0MT`};({)R=i+G0j=N@+1ENhsP2 zVNDZg*urr{HBt!M<`y@dsM_D;@lX7lv9P&ysq~hF41^{zONWxhDt8<-10^bC#i9YI z{d5r848>C6HuGgzfUxPWw0jrXm5ge!V^36bJVfCn2#>jFq9rO7)9ouF)mZUV)JH#X zo0Xn}L?fG7>&;JQb5q&L8O+TUW}3U1@kA=G<+_08cCh)O@8HZopWDNsr>Apno6j$f fB$|7}_mUm!)cgOltDlD1z3}Jk#-o`Zy`KC5t{o4F delta 3299 zcmbVOU5p!76~3E>Q1a7OO~O(Uq7w-THCo%<5(o-WqW}Vx2S`b!s0b-Lwy$@GwP%Kz z>vgsQ&2HjF?%GW^I8L0z-WbX0rmzANJ9LAV9|`fo3vY&jQ&{rbuY_p4)!o!-sZPZ(pDKEc=##D60`g?MleV}C>ZJmP(< zdk=AJ7h~pBA(gD*sl=(h^QkP`x)DV_5VOTgy(k-F!nXX_YnVuc=8Fx zYWSXb65EUT@jGOj#=*}$&DeQ7H?gaQh4L_C#}HrpbO`8|h>zp@CgR@_|1!?ltJv3i z1^}^c9O!Q${t5BVh~NJlk|Q2Hiey;-A4COcf*3oCc$R?Z2l#LWFYr`9w(ns7dt<|0 z?l*PY5fhX(OGe(*vLt3WP31Mg9YJ&4c68IA(=$R?&Z$(YR4OH{c`;)eNz(pE_jk&%+b7A zq>^R`5+&7%`lq=@*^Hj7F!c1g=cZ7C=GI>2S8>IL~RFy+7 z&;{KRcvV=vx_jZsi!rFEN-!2B ztDoQV&-$59k?WW_QBox!2`V7nq4Qi6En%8@XM##IdS-_BCBcoX6QHoP%&ayYRBB{L zg=<2ok<&7IUKcud$g<5jJ77bZdg_Vn|CQl#{V_OQ?gQbAXheqN!;v5?Bwb z$JV#CQgT`sGsSc=V-|qY(o)v5x|J$uAj(c0)Mf!q%)OQ`=4ey1v}|*D?1M zv-kx#(lARjqs?*XXz&uD#)6VM<|g#VDLQ_fYtH<|s27hPN7oAFXAs~(V>@&sHp7xZ z3un1y^9(vPJ3)?#o}!YjS|IEjmvrI4I#yoGaHY1&0P@wr=X6VTi|Sg%SJ8;}gna;e zg=-*fB3+&V~>3?d7^*ziFY4!h>#{xYmpA0i6qAG}sco}udnH?qxpTfn1%A*J_0|^s#r0@GgbuKf_pJeW zDP{;dXp009l%2Uk8gCF+emA*(I9-1V1Q zs^G0M6-$8Z-RN##y0adVotFQzio)F9^xl98ezD|r9$_1FZ;{;JEh~}3Gwbg>HSRW7 zf)8*XPHMDNQF8T~ytx$l!K*%kFL5AwYc;Rl`QN$KRUynH{+IJm@>gJBky?~Wm4cQd#lP0qqbK1Ey6Ot z2OYtNYS+K<8W`B=_3++sKh(wX|L%>rNfcjl`#e$7jQs7qAHRzNlmZ_e{kF>?o>?E^ zdI@irec=VA{vI*>%RJP7`z}<+)^1bD4(s>g0i<-L=oftw&GviP)>Dms=U%3_7;_D@B(JIw~7|%27R@5 zbt_qthHr1E0a2}}1A}8~3-SRxhC2Wq55%J`9(aQ#w0AImqdO~{y5SsI2>LHD*F|}2 zLACSnH$9awZlQi>V#mFt)_GMmp2%;OVQ>tbme*_ftAKNRAe)OIXV~v3s$$ISzpqiq Aa{vGU diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.po b/docs/locale/ko/LC_MESSAGES/starting/install/win.po index c92a57121..7c52aa3bb 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/win.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/win.po @@ -1,35 +1,52 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../starting/install/win.rst:4 -msgid "Installing Python on Windows" +#: ../../starting/install/win.rst:6 +#, fuzzy +msgid "Installing Python 2 on Windows" msgstr "Windows에 파이썬 설치하기" -#: ../../starting/install/win.rst:6 +#: ../../starting/install/win.rst:11 +msgid "" +"Check out our :ref:`guide for installing Python 3 on " +"Windows`." +msgstr "" + +#: ../../starting/install/win.rst:13 +#, fuzzy msgid "" "First, download the `latest version " -"`_ of Python " -"2.7 from the official Website. If you want to be sure you are installing " +"`_ of Python " +"2.7 from the official website. If you want to be sure you are installing " "a fully up-to-date version, click the Downloads > Windows link from the " -"home page of the `Python.org web site `_ ." +"home page of the `Python.org web site `_ ." msgstr "" "우선 공식 웹사이트에서 파이썬 2.7의 `최신 버전 " -"`_ 을 다운로드 받아야 합니다. " -"최신 버전으로 파이썬을 설치하고자 한다면, `Python.org 웹사이트 `_ 에서 " +"`_ 을 다운로드 받아야" +" 합니다. 최신 버전으로 파이썬을 설치하고자 한다면, `Python.org 웹사이트 `_ 에서 " "Downloads > Windows 링크에서 다운받으면 됩니다." -#: ../../starting/install/win.rst:11 +#: ../../starting/install/win.rst:18 msgid "" "The Windows version is provided as an MSI package. To install it " "manually, just double-click the file. The MSI package format allows " @@ -39,7 +56,7 @@ msgstr "" "Windows버전은 MSI 패키지 형태로 제공됩니다. 수동으로 설치하고자 한다면, 그냥 파일을 더블 클릭하면 됩니다. Windows" " 관리자 계정 사용자라면 MSI 패키지로 Windows 표준 도구를 자동 설치할 수 있습니다. " -#: ../../starting/install/win.rst:15 +#: ../../starting/install/win.rst:22 msgid "" "By design, Python installs to a directory with the version number " "embedded, e.g. Python version 2.7 will install at " @@ -54,7 +71,7 @@ msgstr "" "사용할 수 있습니다. 물론 오직 하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있습니다. 또한 파이썬을 설치할 때 " ":envvar:`PATH` 환경 변수가 자동으로 변경되지도 않습니다. 그러니 어느 버전의 파이썬을 실행할지 늘 관리해야 합니다. " -#: ../../starting/install/win.rst:23 +#: ../../starting/install/win.rst:30 msgid "" "Typing the full path name for a Python interpreter each time quickly gets" " tedious, so add the directories for your default Python version to the " @@ -65,11 +82,15 @@ msgstr "" ":envvar:`PATH` 를 추가하세요. 파이썬이 :file:`C:\\\\Python27\\\\` 에 설치되었다면 아래와 같이 " "추가하세요." -#: ../../starting/install/win.rst:32 +#: ../../starting/install/win.rst:39 msgid "You can do this easily by running the following in ``powershell``:" msgstr "``powershell`` 에서 간단하게 실행할 수도 있습니다." -#: ../../starting/install/win.rst:38 +#: ../../starting/install/win.rst:45 +msgid "This is also an option during the installation process." +msgstr "" + +#: ../../starting/install/win.rst:47 msgid "" "The second (:file:`Scripts`) directory receives command files when " "certain packages are installed, so it is a very useful addition. You do " @@ -85,57 +106,47 @@ msgstr "" "전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 " "합니다. Setuptools는 다른 파이썬 서드파티 라이브러리들을 편리하게 사용할 수 있게 해줍니다. " -#: ../../starting/install/win.rst:47 +#: ../../starting/install/win.rst:58 msgid "Setuptools + Pip" msgstr "Setuptools + Pip" -#: ../../starting/install/win.rst:49 +#: ../../starting/install/win.rst:60 msgid "" -"The most crucial third-party Python software of all is Setuptools, which " -"extends the packaging and installation facilities provided by the " -"distutils in the standard library. Once you add Setuptools to your Python" -" system you can download and install any compliant Python software " -"product with a single command. It also enables you to add this network " -"installation capability to your own Python software with very little " -"work." -msgstr "" -"Setuptools는 가장 중요한 파이썬 서드파티 소프트웨어입니다. Setuptools는 표준 라이브러리인 distutils의 " -"패키징 기능과 설치 기능을 확장한 것입니다. Setuptools를 파이썬 시스템에 설치하면 어떤 파이썬 소프트웨어 제품이라도 명령어" -" 한 줄로 설치할 수 있습니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." - -#: ../../starting/install/win.rst:56 +"The two most crucial third-party Python packages are `setuptools " +"`_ and `pip " +"`_." +msgstr "" + +#: ../../starting/install/win.rst:62 msgid "" -"To obtain the latest version of Setuptools for Windows, run the Python " -"script available here: `ez_setup.py " -"`_" +"Once installed, you can download, install and uninstall any compliant " +"Python software product with a single command. It also enables you to add" +" this network installation capability to your own Python software with " +"very little work." msgstr "" -"Windows에서 최신 버전의 Setuptoos를 설치하려면 이 파이썬 스크립트를 실행하면 됩니다. `ez_setup.py " -"`_ " -#: ../../starting/install/win.rst:60 +#: ../../starting/install/win.rst:66 msgid "" -"You'll now have a new command available to you: **easy_install**. It is " -"considered by many to be deprecated, so we will install its replacement: " -"**pip**. Pip allows for uninstallation of packages, and is actively " -"maintained, unlike easy_install." +"Python 2.7.9 and later (on the python2 series), and Python 3.4 and later " +"include pip by default." msgstr "" -"이제 새로운 명령을 내릴 수 있게 되었습니다: **easy_install** 입니다. 하지만 이 명령어를 불편하게 생각하는 사람들도" -" 많습니다. 그러니 이를 대체할 것을 설치해봅시다. **pip**로 패키지의 설치와 제거도 가능하고, easy_install와 달리" -" 현재 활발히 운영되고 있습니다." -#: ../../starting/install/win.rst:65 +#: ../../starting/install/win.rst:69 +msgid "To see if pip is installed, open a command prompt and run" +msgstr "" + +#: ../../starting/install/win.rst:75 msgid "" -"To install pip, run the Python script available here: `get-pip.py " -"`_" +"To install pip, `follow the official pip installation guide " +"`_ - this will automatically " +"install the latest version of setuptools." msgstr "" -"pip를 설치하려면 아래 파이썬 스크립트를 실행하면 됩니다. `get-pip.py " -"`_" -#: ../../starting/install/win.rst:70 +#: ../../starting/install/win.rst:80 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/win.rst:72 +#: ../../starting/install/win.rst:82 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -147,13 +158,13 @@ msgstr "" "툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " "패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." -#: ../../starting/install/win.rst:77 +#: ../../starting/install/win.rst:87 msgid "" "For example, you can work on a project which requires Django 1.10 while " "also maintaining a project which requires Django 1.8." msgstr "예를 들면 장고 1.10을 쓰는 프로젝트에서 일하면서, 장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." -#: ../../starting/install/win.rst:80 +#: ../../starting/install/win.rst:90 msgid "" "To start using this and see more information: :ref:`Virtual Environments " "` docs." @@ -162,12 +173,70 @@ msgstr "" "`_ 문서에서 볼 수 있습니다." -#: ../../starting/install/win.rst:85 +#: ../../starting/install/win.rst:95 +#, fuzzy msgid "" "This page is a remixed version of `another guide " -"`_, which" -" is available under the same license." +"`_, " +"which is available under the same license." msgstr "" "이 페이지는 `다른 안내서 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." +#~ msgid "" +#~ "The most crucial third-party Python " +#~ "software of all is Setuptools, which " +#~ "extends the packaging and installation " +#~ "facilities provided by the distutils in" +#~ " the standard library. Once you add" +#~ " Setuptools to your Python system you" +#~ " can download and install any " +#~ "compliant Python software product with a" +#~ " single command. It also enables you" +#~ " to add this network installation " +#~ "capability to your own Python software" +#~ " with very little work." +#~ msgstr "" +#~ "Setuptools는 가장 중요한 파이썬 서드파티 소프트웨어입니다." +#~ " Setuptools는 표준 라이브러리인 distutils의 패키징 " +#~ "기능과 설치 기능을 확장한 것입니다. Setuptools를 " +#~ "파이썬 시스템에 설치하면 어떤 파이썬 소프트웨어 제품이라도" +#~ " 명령어 한 줄로 설치할 수 있습니다. 또한 " +#~ "최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크" +#~ " 설치를 가능하게 해줍니다." + +#~ msgid "" +#~ "To obtain the latest version of " +#~ "Setuptools for Windows, run the Python" +#~ " script available here: `ez_setup.py " +#~ "`_" +#~ msgstr "" +#~ "Windows에서 최신 버전의 Setuptoos를 설치하려면 이 " +#~ "파이썬 스크립트를 실행하면 됩니다. `ez_setup.py " +#~ "`_" +#~ " " + +#~ msgid "" +#~ "You'll now have a new command " +#~ "available to you: **easy_install**. It " +#~ "is considered by many to be " +#~ "deprecated, so we will install its " +#~ "replacement: **pip**. Pip allows for " +#~ "uninstallation of packages, and is " +#~ "actively maintained, unlike easy_install." +#~ msgstr "" +#~ "이제 새로운 명령을 내릴 수 있게 되었습니다: " +#~ "**easy_install** 입니다. 하지만 이 명령어를 불편하게" +#~ " 생각하는 사람들도 많습니다. 그러니 이를 대체할 것을" +#~ " 설치해봅시다. **pip**로 패키지의 설치와 제거도 가능하고," +#~ " easy_install와 달리 현재 활발히 운영되고 있습니다." + +#~ msgid "" +#~ "To install pip, run the Python " +#~ "script available here: `get-pip.py " +#~ "`_" +#~ msgstr "" +#~ "pip를 설치하려면 아래 파이썬 스크립트를 실행하면 됩니다." +#~ " `get-pip.py " +#~ "`_" + diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install3/linux.mo new file mode 100644 index 0000000000000000000000000000000000000000..b506310ae136bb6028a2ad4ac8d6f50a379ba8f1 GIT binary patch literal 6977 zcmeHKO>87b6>cB|Fd#w@zX|AV4(vvr?(ukb6MM32tvB`(BYSOZC!25}Q`22DQ*n1y z(^c*92!$hOE}TG-;EMJDTtEUOqFms{2~J!iMMy-sBk{fJ?wN5m3Y^i5)brFcRrTKY zz2ExB{d5JCIwS34#ZZIpikfH$Gdfe;M+Nc>g8j4`9ci zAQ{iC&sBH|C}ljqfn+?L&sTVU49R%@4as=ke7wT*;0qO=zd$mcbsWxk{tC%>e)pvc z&)*;!&&HQ4JbRFg=jV`&=h3fJ_WcZ!@%#&t@jUU>3eO)QAK?96NXGL99K`tl4#{{{ zpTO5Py`&0Pij;Qsxhjm#q;{k%33A4y_@Xl@b8=%ziOi)=q>h!eRLJj_s*ni{rj)4R zP!_x~FU)H)c9xVTD|1l@Cn--wENzQd#)TA4=@CJf*LpN{W1~sVm0KE`g7sw)?K!e0 zJ%>8h|I|@+I=x(*VhLN%WnmR$C%T|P=~~pRdWE!JDy!`=v`kEK#(+e_B2C6B9yd%|+Idar zkpa-o8vn%yrq)0;tiZ#x{`b8bQSgG9NU+wzAyQLm7yWU`5!VuF<3bJC%Q7{Srz>L< zqpvzoE{8`f3K%jlC6gjt6zmN>Bm8r9_KSm3yOKK3u;DqgJeM7gnd|InncfsKs~T&WY=>piT@;Mjupl`b#fN9$mI=@1_+ipN4D4v7t8 zmx&a?nAC2o{nZ8cGOVot?8ajRP};!PrS+SOOJ`q2C{(cnXK5KbnPY1uzmtYtQKdW>F8*iZjPPHZLi%MYrFd5sowjTa1S5kJP3djeP|H6F$a(o|AJRX(Fbm7{kUew!xEA@2!;~K&mut z)m4Vq!9-?uF`zEHxCYB>FIgIGF4#JY1M03bLnG;CEJT|qck|2-t+?7tc<@C=Kr$>ay*3zzUXEfYpm2OpQt>W~Jb z%7L!VMs6Azs-^Sn*Unw%BEyxcCPn4!yARvZje2ygDz>7wz?z|(aLS`KC1nf(xt<7Ad_96)wJE;U_-ZOOmulY~*hL~qU^@qy zbiP2>%FxBYT`Y1jP^ofLUJEA`1REbx?N!1lQ^HaQt$b1x94YkEbNc27wO|`G3`WmJ zo4x~a#us!AYMIO`6V}mX3$$ZYX6B;a(~Yh#?5O;R9V++DS`G!`B??ZYD|2r07AC-! z;KZ~L=pZY(LZ`-S=@oL=>wl=BbhGZ|i>)KXzO6nbCbn0CQ<$se1$w!|BmpkLRpYbj z=oX^T$2hlw=C4cR2BWKL>uhvb)E9Xr@DMT@RWUBgSfQ=Mb47x_Ucf;$H?tp>30HGOp>q=)bWPObBWIm^GCf1#Jfz)}x0G~mM zg8!k!*s7MFBNHP(OT45IhMI8TzFtdDhcnDBO9KY9<3Z5o`%o+sov;t2PLXU z>uc+saIG75ZqV9B@5YVQHGHrzJeKE*XZ3pBE4$mr;lW|JvrR7?_73(|zk7IZcV%B# z7oHYETM%oC9^HL$f1mDcAMDc2-GlAD{oC6+JIA{xCtFymMKenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.2.0\n" + +#: ../../starting/install3/linux.rst:6 +msgid "Installing Python 3 on Linux" +msgstr "" + +#: ../../starting/install3/linux.rst:10 +msgid "" +"This document describes how to install Python 3.6 or 3.8 on Ubuntu Linux " +"machines." +msgstr "" + +#: ../../starting/install3/linux.rst:12 +msgid "" +"To see which version of Python 3 you have installed, open a command " +"prompt and run" +msgstr "" + +#: ../../starting/install3/linux.rst:18 +msgid "" +"If you are using Ubuntu 16.10 or newer, then you can easily install " +"Python 3.6 with the following commands::" +msgstr "" + +#: ../../starting/install3/linux.rst:23 +msgid "" +"If you're using another version of Ubuntu (e.g. the latest LTS release) " +"or you want to use a more current Python, we recommend using the " +"`deadsnakes PPA `_" +" to install Python 3.8::" +msgstr "" + +#: ../../starting/install3/linux.rst:30 +msgid "" +"If you are using other Linux distribution, chances are you already have " +"Python 3 pre-installed as well. If not, use your distribution's package " +"manager. For example on Fedora, you would use `dnf`:" +msgstr "" + +#: ../../starting/install3/linux.rst:38 +msgid "" +"Note that if the version of the ``python3`` package is not recent enough " +"for you, there may be ways of installing more recent versions as well, " +"depending on you distribution. For example installing the ``python3.9`` " +"package on Fedora 32 to get Python 3.9. If you are a Fedora user, you " +"might want to read about `multiple Python versions available in Fedora`_." +msgstr "" + +#: ../../starting/install3/linux.rst:49 +msgid "Working with Python 3" +msgstr "" + +#: ../../starting/install3/linux.rst:51 +msgid "At this point, you may have system Python 2.7 available as well." +msgstr "" + +#: ../../starting/install3/linux.rst:57 +msgid "This might launch the Python 2 interpreter." +msgstr "" + +#: ../../starting/install3/linux.rst:63 +msgid "This will always launch the Python 3 interpreter." +msgstr "" + +#: ../../starting/install3/linux.rst:68 +msgid "Setuptools & Pip" +msgstr "" + +#: ../../starting/install3/linux.rst:70 +msgid "" +"The two most crucial third-party Python packages are `setuptools " +"`_ and `pip " +"`_." +msgstr "" + +#: ../../starting/install3/linux.rst:72 +msgid "" +"Once installed, you can download, install and uninstall any compliant " +"Python software product with a single command. It also enables you to add" +" this network installation capability to your own Python software with " +"very little work." +msgstr "" + +#: ../../starting/install3/linux.rst:76 +msgid "" +"Python 2.7.9 and later (on the python2 series), and Python 3.4 and later " +"include pip by default." +msgstr "" + +#: ../../starting/install3/linux.rst:79 +msgid "To see if pip is installed, open a command prompt and run" +msgstr "" + +#: ../../starting/install3/linux.rst:85 +msgid "" +"To install pip, `follow the official pip installation guide " +"`_ - this will automatically " +"install the latest version of setuptools." +msgstr "" + +#: ../../starting/install3/linux.rst:87 +msgid "" +"Note that on some Linux distributions including Ubuntu and Fedora the " +"``pip`` command is meant for Python 2, while the ``pip3`` command is " +"meant for Python 3." +msgstr "" + +#: ../../starting/install3/linux.rst:94 +msgid "" +"However, when using virtual environments (described below), you don't " +"need to care about that." +msgstr "" + +#: ../../starting/install3/linux.rst:100 +msgid "Pipenv & Virtual Environments" +msgstr "" + +#: ../../starting/install3/linux.rst:102 +msgid "" +"The next step is to install Pipenv, so you can install dependencies and " +"manage virtual environments." +msgstr "" + +#: ../../starting/install3/linux.rst:104 +msgid "" +"A Virtual Environment is a tool to keep the dependencies required by " +"different projects in separate places, by creating virtual Python " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"directory clean and manageable." +msgstr "" + +#: ../../starting/install3/linux.rst:109 +msgid "" +"For example, you can work on a project which requires Django 1.10 while " +"also maintaining a project which requires Django 1.8." +msgstr "" + +#: ../../starting/install3/linux.rst:112 +msgid "" +"So, onward! To the :ref:`Pipenv & Virtual Environments " +"` docs!" +msgstr "" + +#: ../../starting/install3/linux.rst:116 +msgid "" +"This page is a remixed version of `another guide " +"`_, " +"which is available under the same license." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.mo new file mode 100644 index 0000000000000000000000000000000000000000..5511c5a803829092595d82200ae35d3813d6bbba GIT binary patch literal 7703 zcmeHLTW=&s6>dnffC(1`0z~0*Hj%QMjk{-TXN5I;QM_w!*2rF4YbU!4NK8$4%}mAJ zT}@T>%oqg93vZF&0eIp8!BZr}1N;IaA%T#P_yhYwBz^)9T*P;(y2s9L*obGw(#&yn zSDov3E;aX`di*C5{=SUQ7x8)WL%cfq`zO|`SpEz2Wqi6Hj-uaUEgy@bZ({w-<5BcU ztS3)I(f2@q0D1%Tu`^NhE6}fj{uuP{pjScP`bZT05cE%=UjhBbN2BN*=yyTC1o}%* zu#SG$tbY%B2kXCrW}ufo7Wn@hbOrMN26~qD_;?ikg5N(G_}&MdVf}B=cR;6~h@z)K zdrX&sZ0|J$lkI&1Lf!;@7L@J%8R$CbeHMPXCbnQqF$&Doq^enk>A=;qVm2tJmX{($lqsu~;j+7-qPU{?BbR=cv zk7TlvWhTp1fwhs}u9cA)4UQ>O!=W^Murm4$nL10VBr7Xngp*X|B9(TTccw-Pr^*pQ zmY3QnCr^Z18fwGxiiEZuS)ETHj#YkcKX8Y6K^04|Ya)$RpexCY2DMwJcGo>BrOYh7 zoXnnsin%Nbu}q@OyhWCdb!}*r>j8|n%E`DA>5&*gSO&vVrw#PYr6~QGLX>zX2Dwb4 z4F`STqe`n10>OyJVj{hg_SiaEoOZgH2$l1}WgKwuk`j4->^Jv}9QOJ*5vzfb)43@K zQ5!V6tV-)}Al7zvwGY4gmCS-A?3PCyUn2n!$UIM?YZ7ji?RgGC5aHE7m*?JD9PUN} zy?Xt6!e5la0|QBV;Djohfa__QYmqUV{@qk(k}i*(t8A~+$>c=lx{@XlRRwPWiJcj5 z>0Ir9YdQF+fI-qw|GGv@5Re@(rbFP(KAKO~$hFLi&KI?H!ShgYgQby3Q(c$tMG6=q zC<7$6^7any#xN<~ZoFtt#Epbx}gqP)^gR#xf!fs)1u4^f?G$OGo-3rfy;!1}?8_Bb*LnOh+CLnG~Yu0G=6 zEer_r?)G@$qQ`oO%!h;x;vDm=xujdJ!=^4hp!$8Enz5BRDjvlx%;9Q4l`-O^Dc}!O zknP|%#!nN@HQv;=oM=b7bMwGKU4$ZkxTGb~Ej?XEQS$z5W6?6~Mf(X3!P%#;ZDm-yby$O-iAlDLh%gI1F8xJ0#JpF^<5irfQsB((Lv{K z4{U5|ROP~1IYX00&z>a5*|Cc;&B6P4E5lLi7>tX{>I_WKArLk;j!|K zmF__^_AN5i=L3)m82gF^K|`JAdde#g=0?asJEw~iIYU&=UjO@@1lIEZed2HL_=iiF zceWj?s+pC1nj-Wgo>P1+!~kG8RWQC_cv1{;E+QkXGylG6cRV&F#1LwQFxLt`^D~&| zTZm)dNW&18@n|$eM7*o|no9^K14?V-N2w+y3^G%oKFs^;bUIA}I1+6}os*VWh?Iwf z&}Kt#fhDOfEg;5|8ixea111qhLRP0-^~7^LVJ|tyD9roywKN5X}t+ zoq~p-3#rE#i!9`exf$S_i{?fNQ8mHCmu3QLp&8%(@Z~O6y**!Ff1FMp$5TE%}I22Z+|Z85~C9DY>jF=6%g8r0T)E5 zG7{f(UJY5P7ylOym^@B6BvEsbh_|!&^>E4PQ2=wme>XutU%D+TZCt!-M=Fc2)gv1p z>K-la?;Xb1xr!ji;!Wgwk5;>@D{*%%Ub#r!_1?vcFLm*UjqzZfz~?2oHckE43TO>nHnIYjm-AtHedX<8^(Y+|sME zlzc;k-;R59O$=m?Yw9W_EUvPPt1LICQ>9>Wm0etA7gt&S;RL_^EUvPPtE|XRU83yb jD*NCVxwy*S<(u5%DvO^`7FStZG8b3bwr~F5U1k3R2w*au literal 0 HcmV?d00001 diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po new file mode 100644 index 000000000..7386a9b36 --- /dev/null +++ b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po @@ -0,0 +1,187 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.2.0\n" + +#: ../../starting/install3/osx.rst:8 +msgid "Installing Python 3 on Mac OS X" +msgstr "" + +#: ../../starting/install3/osx.rst:12 +msgid "**Mac OS X comes with Python 2.7 out of the box.**" +msgstr "" + +#: ../../starting/install3/osx.rst:14 +msgid "" +"You do not need to install or configure anything else to use Python 2. " +"These instructions document the installation of Python 3." +msgstr "" + +#: ../../starting/install3/osx.rst:17 +msgid "" +"The version of Python that ships with OS X is great for learning, but " +"it's not good for development. The version shipped with OS X may be out " +"of date from the `official current Python release " +"`_, which is considered the " +"stable production version." +msgstr "" + +#: ../../starting/install3/osx.rst:25 +msgid "Doing it Right" +msgstr "" + +#: ../../starting/install3/osx.rst:27 +msgid "Let's install a real version of Python." +msgstr "" + +#: ../../starting/install3/osx.rst:29 +msgid "" +"Before installing Python, you'll need to install GCC. GCC can be obtained" +" by downloading `Xcode `_, the " +"smaller `Command Line Tools `_ " +"(must have an Apple account) or the even smaller `OSX-GCC-Installer " +"`_ package." +msgstr "" + +#: ../../starting/install3/osx.rst:36 +msgid "" +"If you already have Xcode installed, do not install OSX-GCC-Installer. In" +" combination, the software can cause issues that are difficult to " +"diagnose." +msgstr "" + +#: ../../starting/install3/osx.rst:41 +msgid "" +"If you perform a fresh install of Xcode, you will also need to add the " +"commandline tools by running ``xcode-select --install`` on the terminal." +msgstr "" + +#: ../../starting/install3/osx.rst:44 +msgid "" +"While OS X comes with a large number of Unix utilities, those familiar " +"with Linux systems will notice one key component missing: a package " +"manager. `Homebrew `_ fills this void." +msgstr "" + +#: ../../starting/install3/osx.rst:48 +msgid "" +"To `install Homebrew `_, open :file:`Terminal` " +"or your favorite OS X terminal emulator and run" +msgstr "" + +#: ../../starting/install3/osx.rst:55 +msgid "" +"The script will explain what changes it will make and prompt you before " +"the installation begins. Once you've installed Homebrew, insert the " +"Homebrew directory at the top of your :envvar:`PATH` environment " +"variable. You can do this by adding the following line at the bottom of " +"your :file:`~/.profile` file" +msgstr "" + +#: ../../starting/install3/osx.rst:65 +msgid "If you have OS X 10.12 (Sierra) or older use this line instead" +msgstr "" + +#: ../../starting/install3/osx.rst:71 +msgid "Now, we can install Python 3:" +msgstr "" + +#: ../../starting/install3/osx.rst:77 +msgid "This will take a minute or two." +msgstr "" + +#: ../../starting/install3/osx.rst:81 +msgid "Pip" +msgstr "" + +#: ../../starting/install3/osx.rst:83 +msgid "Homebrew installs ``pip`` pointing to the Homebrew'd Python 3 for you." +msgstr "" + +#: ../../starting/install3/osx.rst:88 +msgid "Working with Python 3" +msgstr "" + +#: ../../starting/install3/osx.rst:90 +msgid "" +"At this point, you have the system Python 2.7 available, potentially the " +":ref:`Homebrew version of Python 2 ` installed, and the " +"Homebrew version of Python 3 as well." +msgstr "" + +#: ../../starting/install3/osx.rst:98 ../../starting/install3/osx.rst:110 +msgid "will launch the Homebrew-installed Python 3 interpreter." +msgstr "" + +#: ../../starting/install3/osx.rst:104 +msgid "will launch the Homebrew-installed Python 2 interpreter (if any)." +msgstr "" + +#: ../../starting/install3/osx.rst:112 +msgid "" +"If the Homebrew version of Python 2 is installed then ``pip2`` will point" +" to Python 2. If the Homebrew version of Python 3 is installed then " +"``pip`` will point to Python 3." +msgstr "" + +#: ../../starting/install3/osx.rst:115 +msgid "The rest of the guide will assume that ``python`` references Python 3." +msgstr "" + +#: ../../starting/install3/osx.rst:126 +msgid "Pipenv & Virtual Environments" +msgstr "" + +#: ../../starting/install3/osx.rst:128 +msgid "" +"The next step is to install Pipenv, so you can install dependencies and " +"manage virtual environments." +msgstr "" + +#: ../../starting/install3/osx.rst:130 +msgid "" +"A Virtual Environment is a tool to keep the dependencies required by " +"different projects in separate places, by creating virtual Python " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"directory clean and manageable." +msgstr "" + +#: ../../starting/install3/osx.rst:135 +msgid "" +"For example, you can work on a project which requires Django 1.10 while " +"also maintaining a project which requires Django 1.8." +msgstr "" + +#: ../../starting/install3/osx.rst:138 +msgid "" +"So, onward! To the :ref:`Pipenv & Virtual Environments " +"` docs!" +msgstr "" + +#: ../../starting/install3/osx.rst:142 +msgid "" +"This page is a remixed version of `another guide " +"`_, " +"which is available under the same license." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install3/win.mo new file mode 100644 index 0000000000000000000000000000000000000000..92c6f90019a854cdbca36348183aa36cea6256d4 GIT binary patch literal 4185 zcmeHJJ&zkj7+xR+v4Ldc2=tJ>E?O>hZpN9bX-~D~!vTq^_C@qgBe4BVmb=(^}$- zjyccBO*kby<0|1Q7Tl8Ik8)vnLc=*FVl?8$FU*X7$YW|WJ?&`Fd z^?(%TiKQ#i$pyG5d7831F_jb%S(@wI&{*mrg15r)Fk|sC8v`ssV6oE%{z}eNu_k2- z@7PfCDCkJ6$g@lvhXhm(z?l(M;ao=ivCI?1F0wjepoh72l(J)vg@%)G7cJ#TtEL1g zY6m;QSol8DQtDX|tx(o6DUmJ&=LaT_{qHhAgIg0FYrN%i+MGC-*>Ypry9RSuS_%I29U^i(ys#%dCzRa9V*iEJf93?eLIku*phwA0#gQJ!vjQvoOw2Mi6w)_{1$W@%-=GV~LNl1^fa-Vh zIY%)ww2|@vF+3F~s|M-&m5m@A9cT^$bLZW7)t4~{mK+m{|S zqh{2q9dh5>!=4?BB)plAZP?dssvYe2!&}7(rd7D@`!=mN*IQxpa@e{`&5icet7}bs zFflyjQ{m60YTkox=P>N;hua;xz2ENbu6?q9r(4^Dh{L{N%A%8N)25w|_x9*cr`M&; zZm+YuccZhteb_xZ+QL*d&XL+S9qZ*F>~og-e`s@W?}jXBx>Y-nxnVLyM^0^#h>eikh`sS~;KC{yYPQgFG8Jw}rY!@q`&r{(A04;l^s7_Zp{u z*j2Gkz`ZtY427$G$QAdeKJqqi(@i$y673xgzIJxkIJ;~3`_Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: pythonguide 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.2.0\n" + +#: ../../starting/install3/win.rst:6 +msgid "Installing Python 3 on Windows" +msgstr "" + +#: ../../starting/install3/win.rst:10 +msgid "" +"First, follow the installation instructions for `Chocolatey " +"`_. It's a community system packager " +"manager for Windows 7+. (It's very much like Homebrew on OS X.)" +msgstr "" + +#: ../../starting/install3/win.rst:13 +msgid "" +"Once done, installing Python 3 is very simple, because Chocolatey pushes " +"Python 3 as the default." +msgstr "" + +#: ../../starting/install3/win.rst:19 +msgid "" +"Once you've run this command, you should be able to launch Python " +"directly from to the console. (Chocolatey is fantastic and automatically " +"adds Python to your path.)" +msgstr "" + +#: ../../starting/install3/win.rst:25 +msgid "Setuptools + Pip" +msgstr "" + +#: ../../starting/install3/win.rst:27 +msgid "" +"The two most crucial third-party Python packages are `setuptools " +"`_ and `pip " +"`_, which let you download, install and " +"uninstall any compliant Python software product with a single command. It" +" also enables you to add this network installation capability to your own" +" Python software with very little work." +msgstr "" + +#: ../../starting/install3/win.rst:32 +msgid "" +"All supported versions of Python 3 include pip, so just make sure it's up" +" to date:" +msgstr "" + +#: ../../starting/install3/win.rst:41 +msgid "Pipenv & Virtual Environments" +msgstr "" + +#: ../../starting/install3/win.rst:43 +msgid "" +"The next step is to install Pipenv, so you can install dependencies and " +"manage virtual environments." +msgstr "" + +#: ../../starting/install3/win.rst:45 +msgid "" +"A Virtual Environment is a tool to keep the dependencies required by " +"different projects in separate places, by creating virtual Python " +"environments for them. It solves the \"Project X depends on version 1.x " +"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"directory clean and manageable." +msgstr "" + +#: ../../starting/install3/win.rst:50 +msgid "" +"For example, you can work on a project which requires Django 2.0 while " +"also maintaining a project which requires Django 1.8." +msgstr "" + +#: ../../starting/install3/win.rst:53 +msgid "" +"So, onward! To the :ref:`Pipenv & Virtual Environments " +"` docs!" +msgstr "" + +#: ../../starting/install3/win.rst:57 +msgid "" +"This page is a remixed version of `another guide " +"`_, " +"which is available under the same license." +msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.mo b/docs/locale/ko/LC_MESSAGES/starting/installation.mo index 4f0252e59b75e52f122bc4c307f2ee3c6934c926..f6afc943b31c787a7c019a922f4ed76c73b00c53 100644 GIT binary patch delta 765 zcmc&wu}T9$5Z%N?MF^rcDi#BZ;9^2d5X9C(MG+DGfa7j1w{Y$qdwb#q<@^9UwX*Ra z(pibEVrwTNeu(c#1nulxn0>pmZ{C}o*NL}@{B5#wBd~@MbBNvI@?)Lhd|MLY95{uT zDGMe|#WDZk*6uke)Rs7N@3e_~Y_O0-i5eY>C*4MZMFAxAdyoUB3H zeFX<%zv%5{awCmqY#I*yKQ68x?+Uwu3`fR49E#Z_ki)m<`PAhwWNpc!M{W=*7O9@Z4yiidUN2-`+hz?-u}$@nQ;HqM2Fxz zftW>@S#s!YV0;1b9&r(|i@1X5Bi`f)IfFQj@yBC?oJanKyo~$-~lY!uJ8@VDL7fW zRMtk_TSf(L--Xh6fQiFxyW%mysy^JaUGprfi}7F`D_B6S50Ce9ZJxgwu2@u1SPg8G z3Rq>pYSaVYqQE`IF&rIX_%?HaRbhDHork`K`E_jp7VDN>u?l=pSt>)7d0^5Sbr`=- zT_1ShaVDs^3Wk6>b)1X^^#krR=FDQ9+Z>y&2{qgE1H++iZ8*^0&aX`CHwwC5&==sE zUYy@LH*q-^&S~=}|G!oLaEkOlZOiU6+3d-8DIBy~YO6H)E7yKBWriwAL3JAPX{w@F zK7S4U%~)>6Dv3bF(LpC3*_CZ2sd};TSI1Pc2CDl+bsO1+ih62i4dj_aWLnfcc bejTyv(jUJD5`#tgGJ@>Z^_^_B+0)2x5kCp` diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.po b/docs/locale/ko/LC_MESSAGES/starting/installation.po index 3fa99a38a..65e7fe3e4 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/installation.po +++ b/docs/locale/ko/LC_MESSAGES/starting/installation.po @@ -1,28 +1,37 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../starting/installation.rst:2 +#: ../../starting/installation.rst:6 msgid "Properly Installing Python" msgstr "올바른 파이썬 설치" -#: ../../starting/installation.rst:4 +#: ../../starting/installation.rst:10 msgid "" "There's a good chance that you already have Python on your operating " "system." msgstr "운좋게도 이미 파이썬이 당신의 운영체제에 설치되어 있을 수도 있습니다." -#: ../../starting/installation.rst:6 +#: ../../starting/installation.rst:12 msgid "" "If so, you do not need to install or configure anything else to use " "Python. Having said that, I would strongly recommend that you install the" @@ -35,28 +44,66 @@ msgstr "" " 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools, Pip, " "Virtualenv는 반드시 설치해야 합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " -#: ../../starting/installation.rst:14 +#: ../../starting/installation.rst:19 +msgid "" +"The use of **Python 3** is *highly* preferred over Python 2. Consider " +"upgrading your applications and infrastructure if you find yourself " +"*still* using Python 2 in production today. If you are using Python 3, " +"congratulations — you are indeed a person of excellent taste. —*Kenneth " +"Reitz*" +msgstr "" + +#: ../../starting/installation.rst:24 msgid "Installation Guides" msgstr "설치 안내" -#: ../../starting/installation.rst:16 +#: ../../starting/installation.rst:26 +#, fuzzy msgid "" -"These guides go over the proper installation of :ref:`Python 2.7 ` for development purposes, as well as setuptools, pip, and " -"virtualenv setup." +"These guides go over the proper installation of :ref:`Python ` for development purposes, as well as setuptools, pip and " +"virtualenv." msgstr "" "이 안내서는 개발을 위한 :ref:`파이썬 2.7 ` 의 적절한 설치 뿐 아니라 setuptools, " "pip, and virtualenv의 설치도 다룹니다." -#: ../../starting/installation.rst:19 -msgid ":ref:`Mac OS X `." +#: ../../starting/installation.rst:30 +#, fuzzy +msgid "Python 3 Installation Guides" +msgstr "설치 안내" + +#: ../../starting/installation.rst:32 +#, fuzzy +msgid ":ref:`Python 3 on MacOS `." +msgstr ":ref:`Mac OS X `." + +#: ../../starting/installation.rst:33 +#, fuzzy +msgid ":ref:`Python 3 on Windows `." +msgstr ":ref:`Microsoft Windows `." + +#: ../../starting/installation.rst:34 +#, fuzzy +msgid ":ref:`Python 3 on Linux `." +msgstr ":ref:`Linux `." + +#: ../../starting/installation.rst:37 +#, fuzzy +msgid "Legacy Python 2 Installation Guides" +msgstr "설치 안내" + +#: ../../starting/installation.rst:39 +#, fuzzy +msgid ":ref:`Python 2 on MacOS `." msgstr ":ref:`Mac OS X `." -#: ../../starting/installation.rst:20 -msgid ":ref:`Microsoft Windows `." +#: ../../starting/installation.rst:40 +#, fuzzy +msgid ":ref:`Python 2 on Microsoft Windows `." msgstr ":ref:`Microsoft Windows `." -#: ../../starting/installation.rst:21 -msgid ":ref:`Linux `." +#: ../../starting/installation.rst:41 +#, fuzzy +msgid ":ref:`Python 2 on Linux `." msgstr ":ref:`Linux `." diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.mo b/docs/locale/ko/LC_MESSAGES/starting/which-python.mo index c42f9c4265247d7ce44e264636527521c9a1aedd..e958b5be34c2370a95c263c71d1a36f38d694383 100644 GIT binary patch delta 3064 zcmc(gU2GIp6vxlnLZP%!K3XbPytF`Jvz={sZNw^w!5}CY`O+8yz-SQ@)CZ#v{?E>~UFA`+n@oOl z@7y^b|8wT-usXjj_;z0XF~Tp7s{@x2d7-HG*Va4onFTpkOE4&i1cHcmAW zeFlC7E`|yxnu+em`U27%1?yn#I`|#<6ZmBdo`EBCiB{wMp?O3JUe6~=gFl0;Xx9Rw z9&j!AJkFWm(^&t}3N_%Lg0@J~XFv|bT8JRPm%)>~ZjU5wy){zm6j%>KXFw!JXBS11 zj)2FpzxlT4+%Uz<%sM(FxhHK8$FZu>PV80=MJl(o&)} z@b_gz7jdAan`jx68+})r+>FXLYZX%*&!~=+eP`LRb#2JnZ-m z8!1_S_|!D5MLc4Of^>>PH-%S_Uii+m(Jd63DZVi?9;u%_-iTcF02hhWR%#eoRaWemG_N=$oQTxEl(6JM^!gD08>PcXH9xe zm%o{ji0u{|9m}i+lNLL>bSwv9GQDe1=q~JY3^}z|8J4Ybkpt|r4@b#dNpJ@6E~Lvs zY*V(UiW%jIRBx(RE6-@$6WhLtlNK4vD`;YSL6w9=aJ&?qk>^g0He1NwcC4JA^>kE0 z+N`(adslc?PF8Xp&p)k&2WNd6=Mb_5m8(do%p6CcdoIeBR{};JlBSRHiM~Ymc9Xcr ztqGY$uW^@Cwqccu%JkUAjn2ct=C;R?ch)M}2r6T!8|oq9Kdtrmq_tHVgtRN&WGau< z?AtX+TNPf0hg_5tZL>7|MEbsP&+LH!eTMfs;Ya)Wg(==*Tp)^3|u{jJ>MR3WNy6e{;mVN)Xlsj zUC%+0eAH0Sb9%O$h4!t@slJ}xbWdNu=v_6?U;d^)`m<7riibld1es zM_nv@WAVu#szo=%osuEdIyt3khtx}=D;8dv*?F@E)zu}}ZqA@8|I*bFOI4dL_5V(+ z9sh1(U48%P)ibZqk7qv^d+qeto9~U!tKsf70gs$1oLK=6ttp&YK{SS@Y-Y``HdO6D RRXDcdhw{7ebN|uI`U^zRp~e6J delta 5341 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 diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.po b/docs/locale/ko/LC_MESSAGES/starting/which-python.po index fd064acd8..106597a7b 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/which-python.po +++ b/docs/locale/ko/LC_MESSAGES/starting/which-python.po @@ -1,149 +1,125 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../starting/which-python.rst:2 -msgid "Picking an Interpreter" +#: ../../starting/which-python.rst:5 +#, fuzzy +msgid "Picking a Python Interpreter (3 vs 2)" msgstr "인터프리터 고르기" -#: ../../starting/which-python.rst:7 -msgid "The State of Python (2 vs 3)" +#: ../../starting/which-python.rst:14 +#, fuzzy +msgid "The State of Python (3 & 2)" msgstr "파이썬 현황(2 vs 3)" -#: ../../starting/which-python.rst:9 +#: ../../starting/which-python.rst:16 +#, fuzzy msgid "" "When choosing a Python interpreter, one looming question is always " -"present: \"Should I choose Python 2 or Python 3\"? The answer is not as " -"obvious as one might think." +"present: \"Should I choose Python 2 or Python 3\"? The answer is a bit " +"more subtle than one might think." msgstr "" "파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오릅니다. \"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\" 답은 생각처럼" " 간단하지 않습니다." -#: ../../starting/which-python.rst:14 +#: ../../starting/which-python.rst:21 msgid "The basic gist of the state of things is as follows:" msgstr "이 문제의 기본적인 요지는 다음과 같습니다." -#: ../../starting/which-python.rst:16 -msgid "Python 2.7 has been the standard for a *long* time." -msgstr "파이썬2.7이 *오랫동안* 표준이었다." - -#: ../../starting/which-python.rst:17 -msgid "" -"Python 3 introduced major changes to the language, which many developers " -"are unhappy with." -msgstr "파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." +#: ../../starting/which-python.rst:23 +msgid "Most production applications today use Python 3." +msgstr "" -#: ../../starting/which-python.rst:18 -msgid "" -"Python 2.7 will receive necessary security updates until 2020 " -"[#pep373_eol]_." -msgstr "파이썬2.7은 2020년까지는 필수 보안 업데이트를 받을 것이다. [#pep373_eol]_." +#: ../../starting/which-python.rst:24 +msgid "Python 3 is ready for the production deployment of applications today." +msgstr "" -#: ../../starting/which-python.rst:19 -msgid "Python 3 is continually evolving, like Python 2 did in years past." -msgstr "파이썬3는 파이썬2가 지난 몇 년간 그랬던 것처럼 계속 진화하고 있다." +#: ../../starting/which-python.rst:25 +msgid "Python 2 reached the end of its life on January 1, 2020 [#pep373_eol]_." +msgstr "" -#: ../../starting/which-python.rst:21 -msgid "So, you can now see why this is not such an easy decision." -msgstr "이제 왜 이 문제가 쉽지 않은지 알 수 있을 것입니다." +#: ../../starting/which-python.rst:26 +msgid "The brand name \"Python\" encapsulates both Python 3 and Python 2." +msgstr "" -#: ../../starting/which-python.rst:25 +#: ../../starting/which-python.rst:31 msgid "Recommendations" msgstr "추천" -#: ../../starting/which-python.rst:27 -msgid "I'll be blunt:" -msgstr "단도직입적으로 말하겠습니다." - -#: ../../starting/which-python.rst:30 -msgid "**Use Python 3 if...**" -msgstr "**이런 경우에는 파이썬3를...**" - -#: ../../starting/which-python.rst:32 -msgid "You don't care." -msgstr "아무렴 어때." - -#: ../../starting/which-python.rst:33 -msgid "You love Python 3." -msgstr "나는 파이썬3를 사랑해." - #: ../../starting/which-python.rst:34 -msgid "You are indifferent towards 2 vs 3." -msgstr "2건 3건 상관없다." - -#: ../../starting/which-python.rst:35 -msgid "You don't know which one to use." -msgstr "어떤 것을 써야할지 모르겠다." +msgid "" +"The use of **Python 3** is *highly* recommended over Python 2. Consider " +"upgrading your applications and infrastructure if you find yourself " +"*still* using Python 2 in production today. If you are using Python 3, " +"congratulations — you are indeed a person of excellent taste. —*Kenneth " +"Reitz*" +msgstr "" -#: ../../starting/which-python.rst:36 -msgid "You embrace change." -msgstr "변화를 받아들이겠다." +#: ../../starting/which-python.rst:37 +msgid "I'll be blunt:" +msgstr "단도직입적으로 말하겠습니다." -#: ../../starting/which-python.rst:38 -msgid "**Use Python 2 if...**" -msgstr "**이런 경우에는 파이썬2를...**" +#: ../../starting/which-python.rst:39 +msgid "Use Python 3 for new Python applications." +msgstr "" #: ../../starting/which-python.rst:40 -msgid "You love Python 2 and are saddened by the future being Python 3." -msgstr "파이썬2를 사랑하고 파이썬3의 미래에 대해 비관적일 때." - -#: ../../starting/which-python.rst:41 msgid "" -"The stability requirements of your software would be improved by a " -"language and runtime that never changes." -msgstr "절대 변하지 않는 언어와 런타임으로 소프트웨어의 안정성을 향상시키겠다." +"If you're learning Python for the first time, familiarizing yourself with" +" Python 2.7 will be very useful, but not more useful than learning Python" +" 3." +msgstr "" #: ../../starting/which-python.rst:42 -msgid "Software that you depend on requires it." -msgstr "사용하는 소프트웨어가 파이썬2를 사용한다면." +msgid "Learn both. They are both \"Python\"." +msgstr "" -#: ../../starting/which-python.rst:46 +#: ../../starting/which-python.rst:47 msgid "So.... 3?" msgstr "그러면.... 3?" -#: ../../starting/which-python.rst:48 +#: ../../starting/which-python.rst:49 +#, fuzzy msgid "" -"If you're choosing a Python interpreter to use, and aren't opinionated, " -"then I recommend you use the newest Python 3.x, since every version " -"brings new and improved standard library modules, security and bug fixes." -" Progress is progress." +"If you're choosing a Python interpreter to use, I recommend you use the " +"newest Python 3.x, since every version brings new and improved standard " +"library modules, security and bug fixes." msgstr "" "파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면, 최신 버젼의 파이썬3.x 사용을 추천합니다. 모든 버젼이" " 새롭고 향상된 표준 라이브러리 모듈과 보안, 그리고 버그 수정을 제공하고 있기 때문입니다. 개선도 진행 중입니다." -#: ../../starting/which-python.rst:52 +#: ../../starting/which-python.rst:53 msgid "" "Given such, only use Python 2 if you have a strong reason to, such as a " -"Python 2 exclusive library which has no adequate Python 3 ready " -"alternative, or you (like me) absolutely love and are inspired by Python " -"2." -msgstr "" -"하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고, 오로지 파이썬2에서만 돌아가는 라이브러리라든가 아니면 파이썬 2를 " -"너무나도 사랑한다면(나처럼), 파이썬2를 사용할 수밖에 없을 것입니다." - -#: ../../starting/which-python.rst:56 -msgid "" -"Check out `Can I Use Python 3? `_ to see if " -"any software you're depending on will block your adoption of Python 3." +"pre-existing code-base, a Python 2 exclusive library, " +"simplicity/familiarity, or, of course, you absolutely love and are " +"inspired by Python 2. No harm in that." msgstr "" -"`Can I Use Python 3? `_ 에서 확인해보시면, 당신이 사용 중인" -" 소프트웨어가 파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 알 수 있습니다. " -#: ../../starting/which-python.rst:59 +#: ../../starting/which-python.rst:58 msgid "`Further Reading `_" msgstr "`더 읽을 거리 `_" -#: ../../starting/which-python.rst:61 +#: ../../starting/which-python.rst:60 msgid "" "It is possible to `write code that works on Python 2.6, 2.7, and Python 3" " `_. This ranges from " @@ -155,11 +131,11 @@ msgstr "" "사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있습니다. 초보자라면 반드시 " "신경써야할 대단히 중요한 사항들도 있습니다." -#: ../../starting/which-python.rst:68 +#: ../../starting/which-python.rst:69 msgid "Implementations" msgstr "구현" -#: ../../starting/which-python.rst:70 +#: ../../starting/which-python.rst:71 msgid "" "When people speak of *Python* they often mean not just the language but " "also the CPython implementation. *Python* is actually a specification for" @@ -168,11 +144,11 @@ msgstr "" "사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을 의미할 때가 많습니다. *파이썬* 은 실제로 다양한 " "방법으로 구현될 수 있는 언어를 위한 명세서입니다." -#: ../../starting/which-python.rst:75 +#: ../../starting/which-python.rst:76 msgid "CPython" msgstr "CPython" -#: ../../starting/which-python.rst:77 +#: ../../starting/which-python.rst:78 msgid "" "`CPython `_ is the reference implementation of " "Python, written in C. It compiles Python code to intermediate bytecode " @@ -184,26 +160,27 @@ msgstr "" "머신에 의해 해석되는 중간 바이트코드로 컴파일합니다. CPython은 파이썬 패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 " "제공합니다. " -#: ../../starting/which-python.rst:82 +#: ../../starting/which-python.rst:83 +#, fuzzy msgid "" -"If you are writing open-source Python code and want to reach the widest " +"If you are writing open source Python code and want to reach the widest " "possible audience, targeting CPython is best. To use packages which rely " "on C extensions to function, CPython is your only implementation option." msgstr "" "오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고입니다. C언어 확장 기능을 쓰는 " "패키지를 사용하려면 CPython이 유일한 구현 방법입니다." -#: ../../starting/which-python.rst:86 +#: ../../starting/which-python.rst:87 msgid "" "All versions of the Python language are implemented in C because CPython " "is the reference implementation." msgstr "파이선 언어의 모든 버전은 C언어로 구현됩니다. CPython이 파이썬 구현의 리퍼런스이기 때문입니다." -#: ../../starting/which-python.rst:90 +#: ../../starting/which-python.rst:91 msgid "PyPy" msgstr "PyPy" -#: ../../starting/which-python.rst:92 +#: ../../starting/which-python.rst:93 msgid "" "`PyPy `_ is a Python interpreter implemented in a " "restricted statically-typed subset of the Python language called RPython." @@ -214,13 +191,13 @@ msgstr "" "RPython이라 불립니다. 이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 " "지원한다는 것입니다." -#: ../../starting/which-python.rst:96 +#: ../../starting/which-python.rst:97 msgid "" "PyPy aims for maximum compatibility with the reference CPython " "implementation while improving performance." msgstr "PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 유지하는 동시에 그 성능을 향상시키는 것입니다. " -#: ../../starting/which-python.rst:99 +#: ../../starting/which-python.rst:100 msgid "" "If you are looking to increase performance of your Python code, it's " "worth giving PyPy a try. On a suite of benchmarks, it's currently `over 5" @@ -229,17 +206,17 @@ msgstr "" "만약 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 가치가 있습니다. 벤치마크에서 PyPy는 " "CPython보다 `5배나 빨랐습니다 `_." -#: ../../starting/which-python.rst:103 +#: ../../starting/which-python.rst:104 msgid "" "PyPy supports Python 2.7. PyPy3 [#pypy_ver]_, released in beta, targets " "Python 3." msgstr "PyPy는 파이썬2.7을 지원합니다. 베타로 나온 PyPy3 [#pypy_ver]_,는 파이썬3를 지원합니다." -#: ../../starting/which-python.rst:106 +#: ../../starting/which-python.rst:107 msgid "Jython" msgstr "Jython" -#: ../../starting/which-python.rst:108 +#: ../../starting/which-python.rst:109 msgid "" "`Jython `_ is a Python implementation that " "compiles Python code to Java bytecode which is then executed by the JVM " @@ -249,22 +226,22 @@ msgstr "" "`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 JVM(자바 가상 " "머신)에서 실행시키는 파이썬 구현입니다. 뿐만 아니라 Jython은 자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있습니다." -#: ../../starting/which-python.rst:113 +#: ../../starting/which-python.rst:114 msgid "" "If you need to interface with an existing Java codebase or have other " "reasons to need to write Python code for the JVM, Jython is the best " "choice." msgstr "자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면, Jython은 최고의 선택이 될 것입니다." -#: ../../starting/which-python.rst:116 +#: ../../starting/which-python.rst:117 msgid "Jython currently supports up to Python 2.7. [#jython_ver]_" msgstr "Jython은 현재 파이썬 2.7까지 지원합니다. [#jython_ver]_" -#: ../../starting/which-python.rst:119 +#: ../../starting/which-python.rst:120 msgid "IronPython" msgstr "IronPython" -#: ../../starting/which-python.rst:121 +#: ../../starting/which-python.rst:122 msgid "" "`IronPython `_ is an implementation of Python " "for the .NET framework. It can use both Python and .NET framework " @@ -274,7 +251,7 @@ msgstr "" "`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현입니다. 파이썬과 닷넷" " 프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있습니다. " -#: ../../starting/which-python.rst:125 +#: ../../starting/which-python.rst:126 msgid "" "`Python Tools for Visual Studio `_ " "integrates IronPython directly into the Visual Studio development " @@ -283,15 +260,17 @@ msgstr "" "`Python Tools for Visual Studio `_ 는 " "IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있습니다. 이는 Windows 개발자들에게 좋은 선택입니다." -#: ../../starting/which-python.rst:129 -msgid "IronPython supports Python 2.7. [#iron_ver]_" -msgstr "IronPython은 파이썬 2.7을 지원합니다. [#iron_ver]_" +#: ../../starting/which-python.rst:130 +msgid "" +"IronPython supports Python 2.7. [#iron_ver]_ IronPython 3 [#iron_ver3]_ " +"is being developed, but is not ready for use as of September 2020." +msgstr "" -#: ../../starting/which-python.rst:132 +#: ../../starting/which-python.rst:134 msgid "PythonNet" msgstr "PythonNet" -#: ../../starting/which-python.rst:134 +#: ../../starting/which-python.rst:136 msgid "" "`Python for .NET `_ is a package which " "provides near seamless integration of a natively installed Python " @@ -303,7 +282,7 @@ msgstr "" "언어 런타임(CLR)을 말끔하게 통합시켜주는 패키지입니다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다" " 상호 보완적입니다." -#: ../../starting/which-python.rst:140 +#: ../../starting/which-python.rst:142 msgid "" "In conjunction with Mono, pythonnet enables native Python installations " "on non-Windows operating systems, such as OS X and Linux, to operate " @@ -313,34 +292,126 @@ msgstr "" "Mono와 함께 사용하면 pythonnet OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 " "프레임워크 안에서 수행될 수 있도록 해줍니다. IronPython과 같이 사용해도 충돌하지 않습니다." -#: ../../starting/which-python.rst:145 -msgid "" -"Pythonnet supports from Python 2.6 up to Python 3.5. [#pythonnet_ver1]_ " -"[#pythonnet_ver2]_" -msgstr "Pythonnet은 파이썬 2.3부터 2.7버젼까지 지원합니다. [#pythonnet_ver]_" - #: ../../starting/which-python.rst:147 -msgid "http://pypy.org/compat.html" -msgstr "http://pypy.org/compat.html" +msgid "Pythonnet is compatible with Python 2.7 and 3.5-3.8. [#pythonnet_ver1]_" +msgstr "" #: ../../starting/which-python.rst:149 -msgid "https://hg.python.org/jython/file/412a8f9445f7/NEWS" -msgstr "https://hg.python.org/jython/file/412a8f9445f7/NEWS" +#, fuzzy +msgid "https://pypy.org/compat.html" +msgstr "http://pypy.org/compat.html" #: ../../starting/which-python.rst:151 -msgid "http://ironpython.codeplex.com/releases/view/81726" -msgstr "http://ironpython.codeplex.com/releases/view/81726" +msgid "https://hg.python.org/jython/file/412a8f9445f7/NEWS" +msgstr "https://hg.python.org/jython/file/412a8f9445f7/NEWS" #: ../../starting/which-python.rst:153 -msgid "https://travis-ci.org/pythonnet/pythonnet" +#, fuzzy +msgid "https://ironpython.net/download/" msgstr "https://travis-ci.org/pythonnet/pythonnet" #: ../../starting/which-python.rst:155 -msgid "https://ci.appveyor.com/project/TonyRoberts/pythonnet-480xs" -msgstr "https://ci.appveyor.com/project/TonyRoberts/pythonnet-480xs" +msgid "https://github.com/IronLanguages/ironpython3" +msgstr "" #: ../../starting/which-python.rst:157 +msgid "https://pythonnet.github.io/" +msgstr "" + +#: ../../starting/which-python.rst:159 msgid "https://www.python.org/dev/peps/pep-0373/#id2" msgstr "https://www.python.org/dev/peps/pep-0373/#id2" +#~ msgid "Python 2.7 has been the standard for a *long* time." +#~ msgstr "파이썬2.7이 *오랫동안* 표준이었다." + +#~ msgid "" +#~ "Python 3 introduced major changes to " +#~ "the language, which many developers are" +#~ " unhappy with." +#~ msgstr "파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." + +#~ msgid "" +#~ "Python 2.7 will receive necessary " +#~ "security updates until 2020 [#pep373_eol]_." +#~ msgstr "파이썬2.7은 2020년까지는 필수 보안 업데이트를 받을 것이다. [#pep373_eol]_." + +#~ msgid "Python 3 is continually evolving, like Python 2 did in years past." +#~ msgstr "파이썬3는 파이썬2가 지난 몇 년간 그랬던 것처럼 계속 진화하고 있다." + +#~ msgid "So, you can now see why this is not such an easy decision." +#~ msgstr "이제 왜 이 문제가 쉽지 않은지 알 수 있을 것입니다." + +#~ msgid "**Use Python 3 if...**" +#~ msgstr "**이런 경우에는 파이썬3를...**" + +#~ msgid "You don't care." +#~ msgstr "아무렴 어때." + +#~ msgid "You love Python 3." +#~ msgstr "나는 파이썬3를 사랑해." + +#~ msgid "You are indifferent towards 2 vs 3." +#~ msgstr "2건 3건 상관없다." + +#~ msgid "You don't know which one to use." +#~ msgstr "어떤 것을 써야할지 모르겠다." + +#~ msgid "You embrace change." +#~ msgstr "변화를 받아들이겠다." + +#~ msgid "**Use Python 2 if...**" +#~ msgstr "**이런 경우에는 파이썬2를...**" + +#~ msgid "You love Python 2 and are saddened by the future being Python 3." +#~ msgstr "파이썬2를 사랑하고 파이썬3의 미래에 대해 비관적일 때." + +#~ msgid "" +#~ "The stability requirements of your " +#~ "software would be improved by a " +#~ "language and runtime that never changes." +#~ msgstr "절대 변하지 않는 언어와 런타임으로 소프트웨어의 안정성을 향상시키겠다." + +#~ msgid "Software that you depend on requires it." +#~ msgstr "사용하는 소프트웨어가 파이썬2를 사용한다면." + +#~ msgid "" +#~ "Given such, only use Python 2 if" +#~ " you have a strong reason to, " +#~ "such as a Python 2 exclusive " +#~ "library which has no adequate Python " +#~ "3 ready alternative, or you (like " +#~ "me) absolutely love and are inspired " +#~ "by Python 2." +#~ msgstr "" +#~ "하지만 파이썬3에서는 적절히 쓸 수 있는 다른 " +#~ "대안이 없고, 오로지 파이썬2에서만 돌아가는 라이브러리라든가 " +#~ "아니면 파이썬 2를 너무나도 사랑한다면(나처럼), 파이썬2를 " +#~ "사용할 수밖에 없을 것입니다." + +#~ msgid "" +#~ "Check out `Can I Use Python 3? " +#~ "`_ to see if any" +#~ " software you're depending on will " +#~ "block your adoption of Python 3." +#~ msgstr "" +#~ "`Can I Use Python 3? " +#~ "`_ 에서 확인해보시면, 당신이 " +#~ "사용 중인 소프트웨어가 파이썬3를 사용할 수 없게 " +#~ "만드는 장애물이 있지 않은가 알 수 있습니다. " + +#~ msgid "IronPython supports Python 2.7. [#iron_ver]_" +#~ msgstr "IronPython은 파이썬 2.7을 지원합니다. [#iron_ver]_" + +#~ msgid "" +#~ "Pythonnet supports from Python 2.6 up" +#~ " to Python 3.5. [#pythonnet_ver1]_ " +#~ "[#pythonnet_ver2]_" +#~ msgstr "Pythonnet은 파이썬 2.3부터 2.7버젼까지 지원합니다. [#pythonnet_ver]_" + +#~ msgid "http://ironpython.codeplex.com/releases/view/81726" +#~ msgstr "http://ironpython.codeplex.com/releases/view/81726" + +#~ msgid "https://ci.appveyor.com/project/TonyRoberts/pythonnet-480xs" +#~ msgstr "https://ci.appveyor.com/project/TonyRoberts/pythonnet-480xs" diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.mo b/docs/locale/ko/LC_MESSAGES/writing/documentation.mo index e63fbc28b2e21575c254b8cd22f1b049a3dceae1..0e4addfff9eafb5436cbfcf5c0c029a9b43bd2d0 100644 GIT binary patch delta 901 zcmYMyOGs2v9LMqB^_GvunQ}_a${N&aDjzeNIb=Z=W(y5BLiQL6i&hgFm^}oAf+C}Z zHw#2@Q5sm9bhCv-5oSciwCT0TP@^cwRkd(c-^(q!%)OuU|KD@woclkgx7(O%YWwJ) z*CnnZ?iJiu3@7@3rJB-ZLNB)SuIF!@J>SjW#2Kvp4AJarJ_=LUNRM$nw!NqEoyG;6SWEeE zcaWFZglwC7a3>C+Q~Ftq;V(Rh4eRK~L{BgY;|zAr%-aoa|0DVC7RE4x{28QJ>ddG9 zaT)_860x~JTEHK);v3@gg>LB&IH!|*13G8pa7cQAr|>schNWwc#nL;R#6J3umPlz> zS1SD=f0P6C6ZcVWil^EL^^VeLjJTzL6|pax!9;6^XT-YX-D8wnpS_(%zTM*UoA!`@ ze}a83{ZNWEnltPz4i|(<3c{sgXA{naP`0LS=>?EnA( delta 6235 zcmai2Yiu0V6}}-5ngj|-d4k^7gGXJ;Ay+=|~T@cYgpTGjsaEoSTmEc;=*@a&4S z)q3O{WdlnX+lA++VHcmp*j?u`7Qyd!@dvu%6W`!Sj1e` zdp={U@Wt=G&e&?$PhpS1o^^qG;U(B0)-4w@b`k6wupIV1SiH)>LC2&6Lg;#oU(Z!5C3%e8+L9!$)epniRVK1A2 zJqG(TSR~7yzJ#%#!s@W}-bI%(22j{O*lE}-EbV*XGRDSXAA$V>_Mfm_u%998LpYzs zE@$ijB3+L3KfwAW)Zt}V_nSBjw&`1p{TRU;zfw z#`}1_0`^lZ=dNMwW2}!|%h;c>-g6yeMc7aS&Y%odH8M7g+Pww)9M*b3z3?&YM_B)| znX!MtPTYV4;OOX$-~;UR8paS4+i(+Oh?TX#{sQ(Vuh)~WYa-_F=^ z?7JG4IPrT}RE50{OQri9_HEcDcc_xQ3%d+{KDYz;zl#TdyHnNf%z7;F;0;*Ng1vbc zW50#{6YRfX$2TxGNOmJ*e}ujBZjcrGFTMwG!=Bv4*x&K}ukU5-AF!v9-5>CM;eK=p zZ1;nJA9l%i8T&S#_pf*eM8by?uvEMAHqR_u+_1zAg$&2AqMB)T2KXi`=;*f7!aEGp z4dE) z4_c9k77dw3RObz`xZZB;fR_%#3G=JguU~&vBX{wb#}iR{D-z(rupZn7|J<>-t;21* zbY~?Ta&M`X@0CY12m2`$ojdvtJeO{GyJebI2YI1`oB5WoVN)Jfhs{I!cHOjMdK|A= zoa-*7MwueZ9abYU?FiMgu}wR5$Cp*hzE7#7}5js9SwW9 z+@QC&>p>^L4F_-87T2S8A}%8ZXzFcxjT`m~L~c6>fe!7k;@j-Z4NGU-C~q>NPTUG5 zfe91+b510OMQ6O{svKMFGUbb?vdmo%cEJPC09Supzo=8OW zsG}lA6=Y>K9)vNBAd@u z-Pg>Y3`;~+xg8B1n23QG?I3~-kC?A&hPK;oSP8qrZ=aR28z_QmM-ZGwG-xJ3ObxB= zC{IQd6-KL3J+y1v(295((b3Uv!sj(6)qO zI!K|JJ%TMW8!mimsry7!I%zYl;5JDVRLTz23mMU>@+J@<=e~NGT6AlIWWaE2-E8+; zA);##12A588Z`>Vgu1J@5O&P!(Bth16QQ79mK{S^5PCr^rnMO+^p;9vaV@g8qC5P_0;M7ClCq)NMM^G7Qx!$2e^u<-b&cp@lcdVw zM7pH~Nng$CfdQYFvXvzpU8vgDsCt!1rQTJV>^q;z8gR7!!<^c^u%GcXfK;G58X z5MaruirS!|LKb3|ZAb|bZjkbzYZEgu5j1nFg_a9r#@6zahe^3WQaZSxbjd%Cu)yJ< z4LAaxV`Rctt!51%3$+0PTMMa(I$^LH)NSNVm{JsGOnV~k7(pq66;f2@lT<;HTncxq z9@XO*!LdXTH_v?k^7|JpzNz`< znU_{Ke9aZJ1M`J0@91#tM&tDi@N!?D7%7VWJQt_OyvZpqGwhAbiII{ROpD|&7u{#X z=x#4P%;%?f@%h3*G1A4om#4&m{SETIg73Px$c|z^_h#|9uThK)(H1Y0atEDm<@a&}6jhUEV4 zyf}0mPv}$yQs&XMmwZpbEOJP;#LI`K5H2vMvnV&^UgEx+&I2&qOAm>`lo+1#ju*HX z1$6uRL^e5JNE2S=gIRcj>q|4gx%#he6XHY$4fQvn#wPft*oM4r`r+RGH1^0Svq^Cb zs1%Z3?^HR9REBe6A|>X!sOUXoDtO8SZv#acWO*QokVS3;(NS@|d{GQOFN67JHpc+~ z!c6(llk3rwRLJSR%nR3C;leShM9F%+r$ld#!l?Hsj~q@?FgM*OiYa8+@68m6WPZum zmv2gvqu?ZRtguzFQv!(;Q4#{Y2rjr1>THkbIa%>1l4D>C7`fZaodWr2$A7sF!3P2O zzpg~G1&Tl$V1k}Rol4`-5w3p*`pnxo;&l)6^5JBFS8jig-Mewq=6hRJB6E^ssxQ;T zWzhGGI8>0JPrgu>0`n$QNY0zwOFSXp{gblUfOW2JpXhe;Xe~}z9)JPEcA?bjl}amC zI&pNrNWLnYDDCa4wgV_n9W}OJ92y`}&|(3c)s~ii2-o8hee6T?xX=&kh>#X-Lv;hyAqUQmzSF&)goy)0$!6SoFKftzAjn2To$bJCLuE5a_^XTya*kF z^pFsYqOMZq&`ETHcPvlRQy0XHxVB@l>#Kzdn9}z8k>9SJB3UYrrr_B}7%@TdX343l zFpes8iP3R5FClQ%PPKB;Ms?Ax?;OQ>sfN%NgynkUC9eQ7FT4~lC{V4fNTZX817enw z;;>*Ji4*-+7*m()!tbe0{Zmp&8|tN0Nn?O}#|Ho*L^Qz5JB!}v5L{*koA?r?jHF~U z!N%o_-M%i;>{;1D)xP$NPc-<-4VV-06{cRgD)3+4CK>dy96stq4uHL$aj9SXzyjzX zQKwNBp6E82D(}qG#5q)?;o_Z2ik{c%M#zjA_++_T8t{&e5Jg3DL~iTNdlUKEfRo)& zr%>p@lALs-X)z4}1@l1p14ZIB>RsQo6MMNh3Blc2K8SF7F*9iF5yal9Igu-Q(@D>r z$Wvz3^JSWT2uBLk<)bJJx^^&)hN=@v2-JKb>*dCY^LX>uW_6Lt|d4PfZZYyu$B2{ZJeljJ5l=_j+13 zVHOiAg_}oR;lY7_niARBXEAF72W zuU@(pfRzd54`yoN*%Smr3{}Sm-4Q18)WWp{6^@j9ja*eIT^ghnOw@$|SBGj})Y<}? zFihTiQ(}5ZM!7R7Cijzg@2XD2uK@Ia#%hsYs*;hE8z_0XF(3ZSGYywvJSQtDA}G3U z%%9AQqXke87ZE8`kZ!4^U`Dahk2G>{={s5=&WqDU2?eN8ZA0dvL5`g82`VK6W2Ybo zvl>}4Dpx8G6dPF}4%Pof-b8ndo+-M>V9tZSm8%_15RvUeTsT-v$g3BoECg0EAUTGG z+U)g1|8Y@-S`$MHLsHQfP#UW0*3k1&qFY_hDH-7 zl?{4FT9cCZfNH{Ecx5UQg6jHIq5=K`Vi=le90IOxkdOyC2OG*mr%3nL($(!SF6M`& jGWzkVQ3)idoX6&5f#?zi#g;<`f|z-F?UkAEZ9D!0Wa=GZ diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.po b/docs/locale/ko/LC_MESSAGES/writing/documentation.po index f4045a25d..8c96488de 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/writing/documentation.po @@ -1,37 +1,44 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn LoveMeWithoutAll@Gmail.com\n" -"Language-Team: \n" +"Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../writing/documentation.rst:2 +#: ../../writing/documentation.rst:5 msgid "Documentation" msgstr "문서화" -#: ../../writing/documentation.rst:4 +#: ../../writing/documentation.rst:9 msgid "" "Readability is a primary focus for Python developers, in both project and" " code documentation. Following some simple best practices can save both " "you and others a lot of time." msgstr "" -"가독성은 파이썬 개발자의 기본적인 관심사입니다. " -"이는 프로젝트와 코드 문서화 모두 해당됩니다. " -"몇 가지 간단한 우수 사례를 따라해봅시다. " -"당신 뿐 아니라 다른 모두의 시간을 절약해줄 것입니다. " +"가독성은 파이썬 개발자의 기본적인 관심사입니다. 이는 프로젝트와 코드 문서화 모두 해당됩니다. 몇 가지 간단한 우수 사례를 " +"따라해봅시다. 당신 뿐 아니라 다른 모두의 시간을 절약해줄 것입니다. " -#: ../../writing/documentation.rst:9 +#: ../../writing/documentation.rst:16 msgid "Project Documentation" msgstr "프로젝트 문서화" -#: ../../writing/documentation.rst:11 +#: ../../writing/documentation.rst:18 msgid "" "A :file:`README` file at the root directory should give general " "information to both users and maintainers of a project. It should be raw " @@ -42,205 +49,190 @@ msgid "" "the software, and some basic credit information. This file is the main " "entry point for readers of the code." msgstr "" -"최상위 디렉토리의 :file:`README` 파일에는 해당 프로젝트의 사용자와 " -"유지보수 담당자 모두에게 도움이 되는 일반적인 정보가 있어야 합니다. " -"순수한 텍스트로 작성하시거나, " -"읽기 아주 쉬운 마크업 문서로 작성하세요. " -":ref:`reStructuredText-ref` 나 마크다운 같은 것이면 됩니다. " -"여기에는 반드시 프로젝트나 라이브러리" -"(사용자가 이 프로젝트의 모든 것을 알고 있을거라고 생각하면 안됩니다)의 " -"목적을 설명하는 몇 줄의 글, 소프트웨어를 위한 주요 소스의 URL, " -"몇 가지 기본적인 신용 정보를 포함해야 합니다. " +"최상위 디렉토리의 :file:`README` 파일에는 해당 프로젝트의 사용자와 유지보수 담당자 모두에게 도움이 되는 일반적인 정보가" +" 있어야 합니다. 순수한 텍스트로 작성하시거나, 읽기 아주 쉬운 마크업 문서로 작성하세요. :ref" +":`reStructuredText-ref` 나 마크다운 같은 것이면 됩니다. 여기에는 반드시 프로젝트나 라이브러리(사용자가 이 " +"프로젝트의 모든 것을 알고 있을거라고 생각하면 안됩니다)의 목적을 설명하는 몇 줄의 글, 소프트웨어를 위한 주요 소스의 URL, 몇" +" 가지 기본적인 신용 정보를 포함해야 합니다. " -#: ../../writing/documentation.rst:19 +#: ../../writing/documentation.rst:26 +#, fuzzy msgid "" "An :file:`INSTALL` file is less necessary with Python. The installation " "instructions are often reduced to one command, such as ``pip install " -"module`` or ``python setup.py install`` and added to the :file:`README` " +"module`` or ``python setup.py install``, and added to the :file:`README` " "file." msgstr "" -":file:`INSTALL` 파일은 파이썬에서는 필수적이지는 않습니다. " -"설치 명령어는 ``pip install module`` 이나 ``python setup.py install`` 같이 " -"한 줄의 커맨드 명령어로 끝난 후, :file:`README` 파일에 추가되는 경우가 많습니다. " +":file:`INSTALL` 파일은 파이썬에서는 필수적이지는 않습니다. 설치 명령어는 ``pip install module`` 이나" +" ``python setup.py install`` 같이 한 줄의 커맨드 명령어로 끝난 후, :file:`README` 파일에 " +"추가되는 경우가 많습니다. " -#: ../../writing/documentation.rst:24 +#: ../../writing/documentation.rst:31 msgid "" "A :file:`LICENSE` file should *always* be present and specify the license" " under which the software is made available to the public." msgstr "" -":file:`LICENSE` 파일은 *반드시* 있어야만 합니다. " -"그리고 소프트웨어가 공개 가능한지 여부를 명시하는 라이선스를 명시해야 합니다. " +":file:`LICENSE` 파일은 *반드시* 있어야만 합니다. 그리고 소프트웨어가 공개 가능한지 여부를 명시하는 라이선스를 " +"명시해야 합니다. " -#: ../../writing/documentation.rst:27 +#: ../../writing/documentation.rst:34 msgid "" "A :file:`TODO` file or a ``TODO`` section in :file:`README` should list " "the planned development for the code." -msgstr "" -":file:`README` 안의 :file:`TODO` 파일이나 ``TODO`` 섹션에는 " -"개발할 코드의 목록을 나열해야 합니다. " +msgstr ":file:`README` 안의 :file:`TODO` 파일이나 ``TODO`` 섹션에는 개발할 코드의 목록을 나열해야 합니다. " -#: ../../writing/documentation.rst:30 +#: ../../writing/documentation.rst:37 msgid "" "A :file:`CHANGELOG` file or section in :file:`README` should compile a " "short overview of the changes in the code base for the latest versions." msgstr "" -":file:`CHANGELOG` 파일이나 :file:`README` 안의 섹션에는 " -"반드시 최신 버전의 코드에서 일어난 변화에 대하여 개략적인 소개가 있어야 합니다. " +":file:`CHANGELOG` 파일이나 :file:`README` 안의 섹션에는 반드시 최신 버전의 코드에서 일어난 변화에 대하여" +" 개략적인 소개가 있어야 합니다. " -#: ../../writing/documentation.rst:34 +#: ../../writing/documentation.rst:43 msgid "Project Publication" msgstr "프로젝트 발표" -#: ../../writing/documentation.rst:36 +#: ../../writing/documentation.rst:45 msgid "" "Depending on the project, your documentation might include some or all of" " the following components:" -msgstr "" -"프로젝트에 따라서 당신의 문서는 아래의 것들 중 몇 개를 포함하거나, " -"혹은 전부를 포함할 것입니다. " +msgstr "프로젝트에 따라서 당신의 문서는 아래의 것들 중 몇 개를 포함하거나, 혹은 전부를 포함할 것입니다. " -#: ../../writing/documentation.rst:39 +#: ../../writing/documentation.rst:48 +#, fuzzy msgid "" -"An *introduction* should show a very short overview of what can be done " +"An *introduction* should give a very short overview of what can be done " "with the product, using one or two extremely simplified use cases. This " "is the thirty-second pitch for your project." msgstr "" -"*소개(introduction)* 은 하나나 두개의 아주 간단한 유즈케이스를 사용하여 " -"이 프로젝트가 무엇을 할 수 있는지 간략하게 보여주어야 합니다. " -"이것이 당신의 프로젝트를 위한 30초 홍보입니다. " +"*소개(introduction)* 은 하나나 두개의 아주 간단한 유즈케이스를 사용하여 이 프로젝트가 무엇을 할 수 있는지 간략하게 " +"보여주어야 합니다. 이것이 당신의 프로젝트를 위한 30초 홍보입니다. " -#: ../../writing/documentation.rst:43 +#: ../../writing/documentation.rst:52 msgid "" "A *tutorial* should show some primary use cases in more detail. The " "reader will follow a step-by-step procedure to set-up a working " "prototype." msgstr "" -"*튜토리얼(tutorial)* 은 몇 가지 기본적인 유즈케이스를 좀 더 자세히 보여주어야 합니다. " -"읽는 이는 하나 하나씩 따라가며 실제 동작하는 프로토타입을 만들 것입니다. " +"*튜토리얼(tutorial)* 은 몇 가지 기본적인 유즈케이스를 좀 더 자세히 보여주어야 합니다. 읽는 이는 하나 하나씩 따라가며 " +"실제 동작하는 프로토타입을 만들 것입니다. " -#: ../../writing/documentation.rst:46 +#: ../../writing/documentation.rst:55 msgid "" "An *API reference* is typically generated from the code (see " ":ref:`docstrings `). It will list all publicly available " "interfaces, parameters, and return values." msgstr "" -"*API 레퍼런스(reference)* 는 보통 코드에서 생성됩니다" -"(:ref:`docstrings ` 를 보세요). " -"공개적으로 가능한 모든 인터페이스, 파라미터, 리턴값을 보여주어야 합니다. " +"*API 레퍼런스(reference)* 는 보통 코드에서 생성됩니다(:ref:`docstrings ` 를" +" 보세요). 공개적으로 가능한 모든 인터페이스, 파라미터, 리턴값을 보여주어야 합니다. " -#: ../../writing/documentation.rst:50 +#: ../../writing/documentation.rst:59 msgid "" "*Developer documentation* is intended for potential contributors. This " "can include code convention and general design strategy of the project." msgstr "" -"*개발자 문서(Developer documentation)* 는 잠재적인 기여자(contributors)를 위한 것입니다. " -"여기에는 코딩 규약(code convention)과 프로젝트의 일반적인 디자인 전략을 " -"담을 수 있습니다. " +"*개발자 문서(Developer documentation)* 는 잠재적인 기여자(contributors)를 위한 것입니다. 여기에는" +" 코딩 규약(code convention)과 프로젝트의 일반적인 디자인 전략을 담을 수 있습니다. " -#: ../../writing/documentation.rst:56 +#: ../../writing/documentation.rst:65 msgid "Sphinx" msgstr "스핑크스(Sphinx)" -#: ../../writing/documentation.rst:58 +#: ../../writing/documentation.rst:67 msgid "" "Sphinx_ is far and away the most popular Python documentation tool. **Use" " it.** It converts :ref:`restructuredtext-ref` markup language into a " "range of output formats including HTML, LaTeX (for printable PDF " "versions), manual pages, and plain text." msgstr "" -"Sphinx_ 는 단연코 가장 유명한 파이썬 문서화 도구입니다. " -"**쓰세요.**" -":ref:`restructuredtext-ref` 마크업 언어를 HTML, LaTeX(인쇄 가능한 PDF 버전), " -"매뉴얼 페이지, 일반 텍스트 등의 포맷으로 바꿔줍니다. " +"Sphinx_ 는 단연코 가장 유명한 파이썬 문서화 도구입니다. **쓰세요.**:ref:`restructuredtext-ref` " +"마크업 언어를 HTML, LaTeX(인쇄 가능한 PDF 버전), 매뉴얼 페이지, 일반 텍스트 등의 포맷으로 바꿔줍니다. " -#: ../../writing/documentation.rst:63 +#: ../../writing/documentation.rst:72 msgid "" "There is also **great**, **free** hosting for your Sphinx_ docs: `Read " "The Docs`_. Use it. You can configure it with commit hooks to your source" " repository so that rebuilding your documentation will happen " "automatically." msgstr "" -"뿐만 아니라 Sphinx_ 문서를 위한 **훌륭하면서도**, **무료인** 호스팅 서비스가 있습니다: " -"`Read The Docs`_ 입니다. " -"쓰세요. " -"소스 저장소에 커밋 후크를 걸어두면 문서를 자동으로 빌드하도록 설정할 수 있습니다. " +"뿐만 아니라 Sphinx_ 문서를 위한 **훌륭하면서도**, **무료인** 호스팅 서비스가 있습니다: `Read The Docs`_" +" 입니다. 쓰세요. 소스 저장소에 커밋 후크를 걸어두면 문서를 자동으로 빌드하도록 설정할 수 있습니다. " -#: ../../writing/documentation.rst:68 +#: ../../writing/documentation.rst:77 +#, fuzzy msgid "" "When run, Sphinx_ will import your code and using Python's introspection " -"features it will extract all function, method and class signatures. It " +"features it will extract all function, method, and class signatures. It " "will also extract the accompanying docstrings, and compile it all into " "well structured and easily readable documentation for your project." msgstr "" -"Read The Docs를 돌리면 Sphinx_ 는 당신의 코드를 불러옵니다. " -"그리고 파이썬 내부의 기능을 사용하여 모든 함수와 메소드 클래스 시그니처를 끄집어냅니다. " -"뿐만 아니라 당신의 프로젝트를 위해 코드에 딸려있는 독스트링(Docstrings)을 불러와 " +"Read The Docs를 돌리면 Sphinx_ 는 당신의 코드를 불러옵니다. 그리고 파이썬 내부의 기능을 사용하여 모든 함수와 " +"메소드 클래스 시그니처를 끄집어냅니다. 뿐만 아니라 당신의 프로젝트를 위해 코드에 딸려있는 독스트링(Docstrings)을 불러와 " "잘 구조화되고 읽기 쉬운 문서로 모조리 컴파일합니다. " - -#: ../../writing/documentation.rst:75 +#: ../../writing/documentation.rst:84 msgid "" "Sphinx is famous for its API generation, but it also works well for " "general project documentation. This Guide is built with Sphinx_ and is " "hosted on `Read The Docs`_" msgstr "" -"Sphinx는 API 생성기로도 유명하지만, 일반적인 프로젝트 문서화로도 잘 작동합니다. " -"이 안내서는 Sphinx_ 로 빌드되었고, `Read The Docs`_ 로 호스팅되었습니다. " +"Sphinx는 API 생성기로도 유명하지만, 일반적인 프로젝트 문서화로도 잘 작동합니다. 이 안내서는 Sphinx_ 로 빌드되었고," +" `Read The Docs`_ 로 호스팅되었습니다. " -#: ../../writing/documentation.rst:85 +#: ../../writing/documentation.rst:94 msgid "reStructuredText" msgstr "" -#: ../../writing/documentation.rst:87 +#: ../../writing/documentation.rst:96 +#, fuzzy msgid "" "Most Python documentation is written with reStructuredText_. It's like " -"Markdown with all the optional extensions built in." +"Markdown, but with all the optional extensions built in." msgstr "" -"대부분의 파이썬 문서는 reStructuredText_ 로 작성됩니다. " -"reStructuredText는 모든 추가 기능을 포함하고 있는 마크다운과 비슷합니다. " +"대부분의 파이썬 문서는 reStructuredText_ 로 작성됩니다. reStructuredText는 모든 추가 기능을 포함하고 " +"있는 마크다운과 비슷합니다. " -#: ../../writing/documentation.rst:90 +#: ../../writing/documentation.rst:99 msgid "" "The `reStructuredText Primer`_ and the `reStructuredText Quick " "Reference`_ should help you familiarize yourself with its syntax." msgstr "" -"`reStructuredText Primer`_ 와 `reStructuredText Quick Reference`_ 가" -"reStructuredText의 문법에 익숙해지는데 큰 도움을 줄 것입니다. " +"`reStructuredText Primer`_ 와 `reStructuredText Quick Reference`_ " +"가reStructuredText의 문법에 익숙해지는데 큰 도움을 줄 것입니다. " -#: ../../writing/documentation.rst:99 +#: ../../writing/documentation.rst:109 msgid "Code Documentation Advice" msgstr "코드 문서에 대한 조언" -#: ../../writing/documentation.rst:101 +#: ../../writing/documentation.rst:111 msgid "" "Comments clarify the code and they are added with purpose of making the " "code easier to understand. In Python, comments begin with a hash (number " "sign) (``#``)." msgstr "" -"주석은 코드를 명확하게 합니다. 그리고 코드를 이해하기 쉽도록 하고자 덧붙여집니다. " -"파이썬에서는 주석이 해시 (숫자 표시) (#)로 시작됩니다. " +"주석은 코드를 명확하게 합니다. 그리고 코드를 이해하기 쉽도록 하고자 덧붙여집니다. 파이썬에서는 주석이 해시 (숫자 표시) (#)로" +" 시작됩니다. " -#: ../../writing/documentation.rst:107 +#: ../../writing/documentation.rst:117 msgid "In Python, *docstrings* describe modules, classes, and functions:" -msgstr "" -"파이썬에서는 *독스트링(docstrings)* 이 모듈, 클래스, 함수를 설명합니다. " +msgstr "파이썬에서는 *독스트링(docstrings)* 이 모듈, 클래스, 함수를 설명합니다. " -#: ../../writing/documentation.rst:115 +#: ../../writing/documentation.rst:125 msgid "" "In general, follow the comment section of :pep:`8#comments` (the \"Python" " Style Guide\"). More information about docstrings can be found at " ":pep:`0257#specification` (The Docstring Conventions Guide)." msgstr "" -"보통 :pep:`8#comments` (the \"파이썬 스타일 안내서(Python Style Guide)\")의 " -"주석 섹션대로 따라하시면 됩니다. " -":pep:`0257#specification` (The Docstring Conventions Guide)에서 " +"보통 :pep:`8#comments` (the \"파이썬 스타일 안내서(Python Style Guide)\")의 주석 섹션대로 " +"따라하시면 됩니다. :pep:`0257#specification` (The Docstring Conventions Guide)에서 " "독스트링에 대한 더 많은 정보를 볼 수 있습니다. " -#: ../../writing/documentation.rst:119 +#: ../../writing/documentation.rst:129 msgid "Commenting Sections of Code" msgstr "코드를 주석 처리하기" -#: ../../writing/documentation.rst:121 +#: ../../writing/documentation.rst:131 msgid "" "*Do not use triple-quote strings to comment code*. This is not a good " "practice, because line-oriented command-line tools such as grep will not " @@ -249,109 +241,100 @@ msgid "" "probably has the ability to do this easily, and it is worth learning the " "comment/uncomment toggle." msgstr "" -"*세따옴표를 코드의 주석 처리에 쓰지 마세요*. 좋은 습관이 아닙니다. " -"grep처럼 라인 기반 커맨드 라인 도구는 주석 처리된 코드가 비활성화되었는지를 " -"인식하지 못합니다. " -"주석 처리할 모든 줄의 적당히 들여쓴 위치에다 해시를 붙이는 편이 좋습니다. " -"에디터에 이런 작업을 쉽게 해주는 기능이 있을 것입니다. " -"주석 처리/해제하는 단축키를 배울 필요가 있습니다. " +"*세따옴표를 코드의 주석 처리에 쓰지 마세요*. 좋은 습관이 아닙니다. grep처럼 라인 기반 커맨드 라인 도구는 주석 처리된 " +"코드가 비활성화되었는지를 인식하지 못합니다. 주석 처리할 모든 줄의 적당히 들여쓴 위치에다 해시를 붙이는 편이 좋습니다. 에디터에 " +"이런 작업을 쉽게 해주는 기능이 있을 것입니다. 주석 처리/해제하는 단축키를 배울 필요가 있습니다. " -#: ../../writing/documentation.rst:129 +#: ../../writing/documentation.rst:139 msgid "Docstrings and Magic" msgstr "독스트링(Docstrings)과 마법" -#: ../../writing/documentation.rst:131 +#: ../../writing/documentation.rst:141 msgid "" "Some tools use docstrings to embed more-than-documentation behavior, such" " as unit test logic. Those can be nice, but you won't ever go wrong with " "vanilla \"here's what this does.\"" msgstr "" -"어떤 도구는 단위 테스트 로직처럼 문서 이상의 동작을 시키기 위해 독스트링을 이용합니다. " -"이런 도구들은 멋지지만, 절대 고장나지 않습니다. " -"\"이렇게 동작할거야.\" 같은 역할을 할 뿐입니다. " +"어떤 도구는 단위 테스트 로직처럼 문서 이상의 동작을 시키기 위해 독스트링을 이용합니다. 이런 도구들은 멋지지만, 절대 고장나지 " +"않습니다. \"이렇게 동작할거야.\" 같은 역할을 할 뿐입니다. " -#: ../../writing/documentation.rst:135 +#: ../../writing/documentation.rst:145 msgid "" "Tools like Sphinx_ will parse your docstrings as reStructuredText and " "render it correctly as HTML. This makes it very easy to embed snippets of" " example code in a project's documentation." msgstr "" -"Sphinx_ 같은 툴은 당신의 독스트링을 reStructuredText로 파싱해서 " -"HTML로 정확히 만들어줍니다. " -"이 방법은 프로젝트 문서에 예제 코드의 스니펫을 아주 간단히 집어넣을 수 있도록 해줍니다. " +"Sphinx_ 같은 툴은 당신의 독스트링을 reStructuredText로 파싱해서 HTML로 정확히 만들어줍니다. 이 방법은 " +"프로젝트 문서에 예제 코드의 스니펫을 아주 간단히 집어넣을 수 있도록 해줍니다. " -#: ../../writing/documentation.rst:139 +#: ../../writing/documentation.rst:149 +#, fuzzy msgid "" "Additionally, Doctest_ will read all embedded docstrings that look like " "input from the Python commandline (prefixed with \">>>\") and run them, " "checking to see if the output of the command matches the text on the " -"following line. This allows developers to embed real examples and usage " -"of functions alongside their source code, and as a side effect, it also " +"following line. This allows developers to embed real examples and usage " +"of functions alongside their source code. As a side effect, it also " "ensures that their code is tested and works." msgstr "" -"추가로 Doctest_ 는 파이썬 커맨드라인에서 삽입된 것 같은 모양(\">>>\" 가 앞에 붙음)의 " -"모든 독스트링을 읽어 실행하고, 결과값이 그 다음 줄에 쓰여진 것과 일치하는지 여부를 " -"검사합니다. " -"이렇게해서 개발자는 그들의 소스 코드 옆에 실제 예시와 함수의 사용예를 삽입할 수 있습니다. " -"추가적인 효과로는 이 코드는 테스트 되었으며 잘 돌아감을 확인할 수 있습니다. " +"추가로 Doctest_ 는 파이썬 커맨드라인에서 삽입된 것 같은 모양(\">>>\" 가 앞에 붙음)의 모든 독스트링을 읽어 " +"실행하고, 결과값이 그 다음 줄에 쓰여진 것과 일치하는지 여부를 검사합니다. 이렇게해서 개발자는 그들의 소스 코드 옆에 실제 예시와" +" 함수의 사용예를 삽입할 수 있습니다. 추가적인 효과로는 이 코드는 테스트 되었으며 잘 돌아감을 확인할 수 있습니다. " -#: ../../writing/documentation.rst:160 +#: ../../writing/documentation.rst:170 msgid "Docstrings versus Block comments" msgstr "독스트링(Docstrings) 대 블록 주석" -#: ../../writing/documentation.rst:162 +#: ../../writing/documentation.rst:172 msgid "" "These aren't interchangeable. For a function or class, the leading " "comment block is a programmer's note. The docstring describes the " "*operation* of the function or class:" msgstr "" -"독스트링(Docstrings)과 블록 주석은 서로 바꿔쓸 수 없습니다. " -"함수나 클래스에서 맨 앞줄의 주석 블록은 개발자의 메모로 쓰입니다. " -"독스트링은 함수나 클래스의 *동작* 을 나타냅니다. " +"독스트링(Docstrings)과 블록 주석은 서로 바꿔쓸 수 없습니다. 함수나 클래스에서 맨 앞줄의 주석 블록은 개발자의 메모로 " +"쓰입니다. 독스트링은 함수나 클래스의 *동작* 을 나타냅니다. " -#: ../../writing/documentation.rst:173 +#: ../../writing/documentation.rst:183 +#, fuzzy msgid "" "Unlike block comments, docstrings are built into the Python language " "itself. This means you can use all of Python's powerful introspection " "capabilities to access docstrings at runtime, compared with comments " -"which are optimised out. Docstrings are accessible from both the " +"which are optimized out. Docstrings are accessible from both the " "`__doc__` dunder attribute for almost every Python object, as well as " "with the built in `help()` function." msgstr "" -"블록 주석과 달리 독스트링은 파이썬 언어 자체에 들어가 있습니다. " -"즉 최적화 단계에서 빼져버리는 주석과는 달리 " -"런타임 중에도 파이썬의 강력한 내부 기능을 사용하여 독스트링에 접근할 수 있다는 뜻입니다. " -"독스트링은 거의 모든 파이썬 오브젝트에 있는 속성인 `__doc__` 뿐만 아니라 " -"파이썬에 내장된 `help()` 함수를 사용하여 접근할 수 있습니다. " +"블록 주석과 달리 독스트링은 파이썬 언어 자체에 들어가 있습니다. 즉 최적화 단계에서 빼져버리는 주석과는 달리 런타임 중에도 " +"파이썬의 강력한 내부 기능을 사용하여 독스트링에 접근할 수 있다는 뜻입니다. 독스트링은 거의 모든 파이썬 오브젝트에 있는 속성인 " +"`__doc__` 뿐만 아니라 파이썬에 내장된 `help()` 함수를 사용하여 접근할 수 있습니다. " -#: ../../writing/documentation.rst:179 +#: ../../writing/documentation.rst:189 +#, fuzzy msgid "" "While block comments are usually used to explain *what* a section of code" " is doing, or the specifics of an algorithm, docstrings are more intended" -" for explaining to other users of your code (or you in 6 months time) " +" towards explaining other users of your code (or you in 6 months time) " "*how* a particular function can be used and the general purpose of a " "function, class, or module." msgstr "" -"블럭 주석이 일반적으로 코드의 해당 부분이 *무슨* 일을 하는지나 알고리즘의 명세를 " -"설명하는데 쓰이는 반면, 독스트링은 당신의 코드와 특정한 함수가 *어떻게* " -"쓰이며 함수, 클래스, 모듈의 일반적인 목적이 무엇인지를 다른 사용자에게(혹은 6개월 후의 당신에게 " -"알려주기 위해 작성됩니다. " +"블럭 주석이 일반적으로 코드의 해당 부분이 *무슨* 일을 하는지나 알고리즘의 명세를 설명하는데 쓰이는 반면, 독스트링은 당신의 " +"코드와 특정한 함수가 *어떻게* 쓰이며 함수, 클래스, 모듈의 일반적인 목적이 무엇인지를 다른 사용자에게(혹은 6개월 후의 당신에게" +" 알려주기 위해 작성됩니다. " -#: ../../writing/documentation.rst:186 +#: ../../writing/documentation.rst:196 msgid "Writing Docstrings" msgstr "독스트링(Docstrings) 작성" -#: ../../writing/documentation.rst:188 +#: ../../writing/documentation.rst:198 msgid "" "Depending on the complexity of the function, method, or class being " "written, a one-line docstring may be perfectly appropriate. These are " "generally used for really obvious cases, such as::" msgstr "" -"작성한 함수, 메서드, 클래스가 얼마나 복잡한지에 따라 다르겠지만 " -"단 1줄의 독스트링이 가장 적절할 것입니다. " -"다음은 흔히 쓰이면서도 아주 분명한 예시입니다:" +"작성한 함수, 메서드, 클래스가 얼마나 복잡한지에 따라 다르겠지만 단 1줄의 독스트링이 가장 적절할 것입니다. 다음은 흔히 " +"쓰이면서도 아주 분명한 예시입니다:" -#: ../../writing/documentation.rst:196 +#: ../../writing/documentation.rst:206 msgid "" "The docstring should describe the function in a way that is easy to " "understand. For simple cases like trivial functions and classes, simply " @@ -360,112 +343,121 @@ msgid "" " it is already quite easy to find this information if needed, and it is " "also readily available by reading the source code." msgstr "" -"독스트링은 이해하기 쉬운 방법으로 함수를 설명해야 합니다. " -"별 것도 아닌 함수나 클래스나 간단한 함수 구문(예를 들면 `add(a, b) -> result`) " -"에서는 독스트링이 필요하지 않습니다. " -"파이썬의 `inspect` 모듈이 이미 있기에 필요시 아주 빠르게 원하는 정보를 찾을 수 있고 " -"소스 코드도 손쉽게 읽을 수 있기 때문입니다. " +"독스트링은 이해하기 쉬운 방법으로 함수를 설명해야 합니다. 별 것도 아닌 함수나 클래스나 간단한 함수 구문(예를 들면 `add(a," +" b) -> result`) 에서는 독스트링이 필요하지 않습니다. 파이썬의 `inspect` 모듈이 이미 있기에 필요시 아주 빠르게" +" 원하는 정보를 찾을 수 있고 소스 코드도 손쉽게 읽을 수 있기 때문입니다. " -#: ../../writing/documentation.rst:203 +#: ../../writing/documentation.rst:213 msgid "" "In larger or more complex projects however, it is often a good idea to " "give more information about a function, what it does, any exceptions it " "may raise, what it returns, or relevant details about the parameters." msgstr "" -"하지만 더 크고 복잡한 프로젝트라면 " -"함수 정보, 이게 뭘 하는지, 어떤 예외를 발생시키는지, " -"무엇을 반환하는지, 파라미터에 관한 연관 정보에 대하여 " -"더 많이 설명하는 편이 좋은 경우도 많습니다. " +"하지만 더 크고 복잡한 프로젝트라면 함수 정보, 이게 뭘 하는지, 어떤 예외를 발생시키는지, 무엇을 반환하는지, 파라미터에 관한 " +"연관 정보에 대하여 더 많이 설명하는 편이 좋은 경우도 많습니다. " -#: ../../writing/documentation.rst:207 +#: ../../writing/documentation.rst:217 +#, fuzzy msgid "" -"For more detailed documentation of code a popular style is the one used " -"for the Numpy project, often called `Numpy style`_ docstrings. While it " -"can take up a few more lines the previous example, it allows the " +"For more detailed documentation of code a popular style used, is the one " +"used by the NumPy project, often called `NumPy style`_ docstrings. While " +"it can take up more lines than the previous example, it allows the " "developer to include a lot more information about a method, function, or " "class. ::" msgstr "" -"코드 문서를 더 상세히 작성하고 싶은 경우, 가장 인기있는 스타일은 Numpy 프로젝트에서 " -"쓰인 이른바 `Numpy style`_ 독스트링입니다. " -"앞선 예제의 독스트링이 이 스타일입니다. " -"이 스타일을 써서 개발자는 함수, 메소드, 클래스에 대한 더 많은 정보를 추가할 수 있습니다. " +"코드 문서를 더 상세히 작성하고 싶은 경우, 가장 인기있는 스타일은 Numpy 프로젝트에서 쓰인 이른바 `Numpy style`_ " +"독스트링입니다. 앞선 예제의 독스트링이 이 스타일입니다. 이 스타일을 써서 개발자는 함수, 메소드, 클래스에 대한 더 많은 정보를 " +"추가할 수 있습니다. " -#: ../../writing/documentation.rst:233 +#: ../../writing/documentation.rst:243 msgid "" "The `sphinx.ext.napoleon`_ plugin allows Sphinx to parse this style of " "docstrings, making it easy to incorporate NumPy style docstrings into " "your project." msgstr "" -"스핑크스에 `sphinx.ext.napoleon`_ 플러그인을 추가하면 이러한 스타일의 독스트링을 파싱하여 " -"NumPy 스타일의 독스트링을 당신의 프로젝트에 집어넣기 쉽게 해줍니다. " +"스핑크스에 `sphinx.ext.napoleon`_ 플러그인을 추가하면 이러한 스타일의 독스트링을 파싱하여 NumPy 스타일의 " +"독스트링을 당신의 프로젝트에 집어넣기 쉽게 해줍니다. " -#: ../../writing/documentation.rst:237 +#: ../../writing/documentation.rst:247 msgid "" "At the end of the day, it doesn't really matter what style is used for " -"writing docstrings, their purpose is to serve as documentation for anyone" +"writing docstrings; their purpose is to serve as documentation for anyone" " who may need to read or make changes to your code. As long as it is " -"correct, understandable and gets the relevant points across then it has " +"correct, understandable, and gets the relevant points across then it has " "done the job it was designed to do." msgstr "" -"마지막으로 덧붙이겠습니다. 사실 어떤 스타일로 독스트링을 작성하느냐는 그다지 중요하지 않습니다. " -"독스트링의 목적은 코드를 읽거나 바꿔야 하는 사람들에게 도움을 주는 문서가 되는 것입니다. " -"정확하고, 이해하기 쉽고, 관련된 여러 사항에 대한 정보만 있다면, " -"그 소임은 모두 이룬 것입니다. " -#: ../../writing/documentation.rst:244 +#: ../../writing/documentation.rst:254 msgid "For further reading on docstrings, feel free to consult :pep:`257`" msgstr "독스트링에 대하여 더 많이 읽고 싶다면 가벼운 마음으로 :pep:`257` 와 상의하세요. " -#: ../../writing/documentation.rst:251 +#: ../../writing/documentation.rst:263 msgid "Other Tools" msgstr "다른 도구" -#: ../../writing/documentation.rst:253 +#: ../../writing/documentation.rst:265 msgid "You might see these in the wild. Use :ref:`sphinx-ref`." msgstr "황야에 외롭게 서 있는 도구들도 있습니다. 그냥 :ref:`sphinx-ref` 쓰세요. " -#: ../../writing/documentation.rst:258 +#: ../../writing/documentation.rst:270 msgid "Pycco_" msgstr "" -#: ../../writing/documentation.rst:256 +#: ../../writing/documentation.rst:268 msgid "" "Pycco is a \"literate-programming-style documentation generator\" and is " "a port of the node.js Docco_. It makes code into a side-by-side HTML code" " and documentation." msgstr "" -"Pycco는 \"문학적 프로그래밍 스타일의 문서 생성기\" 이자, node.js Docco_ 의 파이썬 포팅입니다. " -"코드를 HTML 코드와 문서가 나란히 있는 모습으로 만들어줍니다. " +"Pycco는 \"문학적 프로그래밍 스타일의 문서 생성기\" 이자, node.js Docco_ 의 파이썬 포팅입니다. 코드를 HTML" +" 코드와 문서가 나란히 있는 모습으로 만들어줍니다. " -#: ../../writing/documentation.rst:265 +#: ../../writing/documentation.rst:277 msgid "Ronn_" msgstr "" -#: ../../writing/documentation.rst:264 +#: ../../writing/documentation.rst:276 msgid "" "Ronn builds Unix manuals. It converts human readable textfiles to roff " "for terminal display, and also to HTML for the web." msgstr "" -"Ronn은 유닉스 매뉴얼을 빌드합니다. " -"사람이 읽을 수 있는 텍스트 파일을 roff로 변환하여 터미널에서 보여줄 수 있을 뿐만 아니라 " -"웹을 위해 HTML로도 바꿔줍니다. " +"Ronn은 유닉스 매뉴얼을 빌드합니다. 사람이 읽을 수 있는 텍스트 파일을 roff로 변환하여 터미널에서 보여줄 수 있을 뿐만 " +"아니라 웹을 위해 HTML로도 바꿔줍니다. " -#: ../../writing/documentation.rst:270 +#: ../../writing/documentation.rst:282 msgid "Epydoc_" msgstr "" -#: ../../writing/documentation.rst:270 +#: ../../writing/documentation.rst:282 msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." msgstr "Epydoc은 끝장났습니다. 대신 :ref:`sphinx-ref` 를 쓰세요. " -#: ../../writing/documentation.rst:276 +#: ../../writing/documentation.rst:288 msgid "MkDocs_" msgstr "" -#: ../../writing/documentation.rst:275 +#: ../../writing/documentation.rst:287 msgid "" "MkDocs is a fast and simple static site generator that's geared towards " "building project documentation with Markdown." -msgstr "" -"MkDocs은 마크다운으로 프로젝트 문서를 빌드하기 위하여 설계된 " -"빠르고 단순한 정적 사이트 생성기입니다. " +msgstr "MkDocs은 마크다운으로 프로젝트 문서를 빌드하기 위하여 설계된 빠르고 단순한 정적 사이트 생성기입니다. " + +#~ msgid "" +#~ "At the end of the day, it " +#~ "doesn't really matter what style is " +#~ "used for writing docstrings, their " +#~ "purpose is to serve as documentation " +#~ "for anyone who may need to read" +#~ " or make changes to your code. " +#~ "As long as it is correct, " +#~ "understandable and gets the relevant " +#~ "points across then it has done the" +#~ " job it was designed to do." +#~ msgstr "" +#~ "마지막으로 덧붙이겠습니다. 사실 어떤 스타일로 독스트링을 " +#~ "작성하느냐는 그다지 중요하지 않습니다. 독스트링의 목적은 " +#~ "코드를 읽거나 바꿔야 하는 사람들에게 도움을 주는 " +#~ "문서가 되는 것입니다. 정확하고, 이해하기 쉽고, 관련된" +#~ " 여러 사항에 대한 정보만 있다면, 그 소임은 " +#~ "모두 이룬 것입니다. " + diff --git a/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo b/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo index 04b9a3aa0e51937c0a1d05c65c4aa722b45bceaf..b2d4cd7fe5595df122b48d62bd665b0e9cbc2eb9 100644 GIT binary patch delta 2382 zcmeH{-)|IE6vxlDRjF7Cw6s*z-hx7{?WP5b4e^0S1?o>8&}u~6+nKvN*Urq{%)LWh zsaX^8N3<_yQxX$_g1%^i#_W?so+O&6G4a7SG=hehnE2ugMj!m1nN|sje}QbW`SecD zz2}_IxwBtA^wDJPhxILsgwG(px8OTp;MKpM^G!rAVfj56fzLJ*S@3Ic7r48Hhz~dn zz5uSfj_4k60bBylfqkI5o@fpD8h9K$3icA!X!Hi6J$UdqI03!`o&Ya_4}!0*BKijW z7JL9)Y9;!U{|{~eFWyM>26!3l0bgE?!@*-&>}JOgs4-+}ky zoS#81pbx>P!QJ57;BVmJ8UkML$`!Y4%oV=^S_J$Kvf?t@S_DsltauDrSaAbf0)GYj zz=chD;txSqd=`XaI*7Tl;dzh^e+IJQwp-z!6`#f*toSm>ioZa)thf!kQ6#mBTyZam z8t4O%6`uoH@zco89Uj@7D}EPb#qC>IG0{no4gYj|Zg}yI-0)*tNoImSvlba%9~Zb(6KXFWTGm@YG;yaQS8-jN~Bg< zF+E)@YnLaPo)&Wf=XpdWUYckbPIdkh6_i(kiuGF8{LXQg=hv~0(nwTInp|0{6*e$w z=!?*pSrKZ~>;i2Ye{|Igd+s+PHcpgGf=UN@uaM}cBCX|Cq!>TUZQLNB8>p^>!s)xqdpXH3Aq7opIv8P0$ zq&2b4OYmeYWH=|QR!BeF9*JdlR}8@llVwW8A(dEdVu7k$QZpe=TQ;nfEsFi7l7{lC zFhtp^bt0#MORvl^SW{YJNt3-wzq++XQLN(Z^^j>PJPj22>A71Mpo#2;S(*%_ z6XTvsv(5XE2>Tmm%fY7FQg#_IsSXM+g5(%>6l+tlqZW&fGuOuR< zF)AVn?Owv2F7hTSqKl%Si@KRacoD(=0|V*%a4z}}I_&Io-uH#Q@A>Y<(5Jz|kBIM~ zaP8*a#(m1r(ZB1qDKf)w8pm-RbLeak>BFCR6We?u^Y{om@oME|Byxs@8)1AiS ziHI!XE4;=0Q=AVCEh}deMK$SAN7jO;5_@wA09e!uF2crHEOcYsL7mWFWEiR z`R}O3u9HKHy+JK@pHphFZ>YtpsKqARykZYfi*@lo>%q^)=#JQT5lnrxiaCB}>F zuE|C$FIfwxEHmD--7B_&TC8V>S8N2eSQgn^9-|g3qZWIMy7Br>uUKrCxE1rcQEI4} za;vRHqcrEQnE8ym5OWN7H8|^Q9Lrf(?6f_Ra-1nEXQy*x7aiLzgnpUEzEYy2xilSV z4_Mg=o3(uDY2;&gXf&0#j%VzgHIT|??XKenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../writing/gotchas.rst:2 +#: ../../writing/gotchas.rst:5 msgid "Common Gotchas" msgstr "" -#: ../../writing/gotchas.rst:4 +#: ../../writing/gotchas.rst:9 msgid "" "For the most part, Python aims to be a clean and consistent language that" " avoids surprises. However, there are a few cases that can be confusing " -"to newcomers." +"for newcomers." msgstr "" -#: ../../writing/gotchas.rst:8 +#: ../../writing/gotchas.rst:13 msgid "" "Some of these cases are intentional but can be potentially surprising. " "Some could arguably be considered language warts. In general, what " "follows is a collection of potentially tricky behavior that might seem " -"strange at first glance, but is generally sensible once you're aware of " -"the underlying cause for the surprise." +"strange at first glance, but are generally sensible, once you're aware of" +" the underlying cause for the surprise." msgstr "" -#: ../../writing/gotchas.rst:18 +#: ../../writing/gotchas.rst:25 msgid "Mutable Default Arguments" msgstr "" -#: ../../writing/gotchas.rst:20 +#: ../../writing/gotchas.rst:27 msgid "" "Seemingly the *most* common surprise new Python programmers encounter is " "Python's treatment of mutable default arguments in function definitions." msgstr "" -#: ../../writing/gotchas.rst:24 ../../writing/gotchas.rst:95 +#: ../../writing/gotchas.rst:31 ../../writing/gotchas.rst:105 msgid "What You Wrote" msgstr "" -#: ../../writing/gotchas.rst:33 ../../writing/gotchas.rst:103 +#: ../../writing/gotchas.rst:40 ../../writing/gotchas.rst:113 msgid "What You Might Have Expected to Happen" msgstr "" -#: ../../writing/gotchas.rst:43 +#: ../../writing/gotchas.rst:50 msgid "" "A new list is created each time the function is called if a second " "argument isn't provided, so that the output is::" msgstr "" -#: ../../writing/gotchas.rst:50 ../../writing/gotchas.rst:120 -msgid "What Does Happen" +#: ../../writing/gotchas.rst:57 ../../writing/gotchas.rst:130 +msgid "What Actually Happens" msgstr "" -#: ../../writing/gotchas.rst:57 +#: ../../writing/gotchas.rst:64 msgid "" "A new list is created *once* when the function is defined, and the same " "list is used in each successive call." msgstr "" -#: ../../writing/gotchas.rst:60 +#: ../../writing/gotchas.rst:67 msgid "" "Python's default arguments are evaluated *once* when the function is " "defined, not each time the function is called (like it is in say, Ruby). " @@ -75,63 +84,67 @@ msgid "" "as well." msgstr "" -#: ../../writing/gotchas.rst:66 ../../writing/gotchas.rst:159 +#: ../../writing/gotchas.rst:73 ../../writing/gotchas.rst:169 msgid "What You Should Do Instead" msgstr "" -#: ../../writing/gotchas.rst:68 +#: ../../writing/gotchas.rst:75 msgid "" "Create a new object each time the function is called, by using a default " "arg to signal that no argument was provided (:py:data:`None` is often a " "good choice)." msgstr "" -#: ../../writing/gotchas.rst:81 ../../writing/gotchas.rst:182 +#: ../../writing/gotchas.rst:86 +msgid "Do not forget, you are passing a *list* object as the second argument." +msgstr "" + +#: ../../writing/gotchas.rst:89 ../../writing/gotchas.rst:192 msgid "When the Gotcha Isn't a Gotcha" msgstr "" -#: ../../writing/gotchas.rst:83 +#: ../../writing/gotchas.rst:91 msgid "" "Sometimes you can specifically \"exploit\" (read: use as intended) this " "behavior to maintain state between calls of a function. This is often " "done when writing a caching function." msgstr "" -#: ../../writing/gotchas.rst:89 +#: ../../writing/gotchas.rst:98 msgid "Late Binding Closures" msgstr "" -#: ../../writing/gotchas.rst:91 +#: ../../writing/gotchas.rst:100 msgid "" "Another common source of confusion is the way Python binds its variables " "in closures (or in the surrounding global scope)." msgstr "" -#: ../../writing/gotchas.rst:110 +#: ../../writing/gotchas.rst:120 msgid "" "A list containing five functions that each have their own closed-over " "``i`` variable that multiplies their argument, producing::" msgstr "" -#: ../../writing/gotchas.rst:130 +#: ../../writing/gotchas.rst:140 msgid "Five functions are created; instead all of them just multiply ``x`` by 4." msgstr "" -#: ../../writing/gotchas.rst:132 +#: ../../writing/gotchas.rst:142 msgid "" "Python's closures are *late binding*. This means that the values of " "variables used in closures are looked up at the time the inner function " "is called." msgstr "" -#: ../../writing/gotchas.rst:136 +#: ../../writing/gotchas.rst:146 msgid "" "Here, whenever *any* of the returned functions are called, the value of " "``i`` is looked up in the surrounding scope at call time. By then, the " "loop has completed and ``i`` is left with its final value of 4." msgstr "" -#: ../../writing/gotchas.rst:140 +#: ../../writing/gotchas.rst:150 msgid "" "What's particularly nasty about this gotcha is the seemingly prevalent " "misinformation that this has something to do with :ref:`lambdas " @@ -140,7 +153,7 @@ msgid "" "exhibited by just using an ordinary ``def``:" msgstr "" -#: ../../writing/gotchas.rst:161 +#: ../../writing/gotchas.rst:171 msgid "" "The most general solution is arguably a bit of a hack. Due to Python's " "aforementioned behavior concerning evaluating default arguments to " @@ -148,89 +161,141 @@ msgid "" "immediately to its arguments by using a default arg like so:" msgstr "" -#: ../../writing/gotchas.rst:171 +#: ../../writing/gotchas.rst:181 msgid "Alternatively, you can use the functools.partial function:" msgstr "" -#: ../../writing/gotchas.rst:184 +#: ../../writing/gotchas.rst:194 msgid "" "Sometimes you want your closures to behave this way. Late binding is good" " in lots of situations. Looping to create unique functions is " "unfortunately a case where they can cause hiccups." msgstr "" -#: ../../writing/gotchas.rst:191 +#: ../../writing/gotchas.rst:201 msgid "Bytecode (.pyc) Files Everywhere!" msgstr "" -#: ../../writing/gotchas.rst:193 +#: ../../writing/gotchas.rst:203 msgid "" "By default, when executing Python code from files, the Python interpreter" " will automatically write a bytecode version of that file to disk, e.g. " "``module.pyc``." msgstr "" -#: ../../writing/gotchas.rst:197 +#: ../../writing/gotchas.rst:207 msgid "" "These ``.pyc`` files should not be checked into your source code " "repositories." msgstr "" -#: ../../writing/gotchas.rst:199 +#: ../../writing/gotchas.rst:209 msgid "" -"Theoretically, this behavior is on by default, for performance reasons. " -"Without these bytecode files present, Python would re-generate the " -"bytecode every time the file is loaded." +"Theoretically, this behavior is on by default for performance reasons. " +"Without these bytecode files, Python would re-generate the bytecode every" +" time the file is loaded." msgstr "" -#: ../../writing/gotchas.rst:205 +#: ../../writing/gotchas.rst:215 msgid "Disabling Bytecode (.pyc) Files" msgstr "" -#: ../../writing/gotchas.rst:207 +#: ../../writing/gotchas.rst:217 msgid "" "Luckily, the process of generating the bytecode is extremely fast, and " "isn't something you need to worry about while developing your code." msgstr "" -#: ../../writing/gotchas.rst:210 +#: ../../writing/gotchas.rst:220 msgid "Those files are annoying, so let's get rid of them!" msgstr "" -#: ../../writing/gotchas.rst:216 +#: ../../writing/gotchas.rst:226 msgid "" "With the ``$PYTHONDONTWRITEBYTECODE`` environment variable set, Python " "will no longer write these files to disk, and your development " "environment will remain nice and clean." msgstr "" -#: ../../writing/gotchas.rst:220 +#: ../../writing/gotchas.rst:230 msgid "I recommend setting this environment variable in your ``~/.profile``." msgstr "" -#: ../../writing/gotchas.rst:223 +#: ../../writing/gotchas.rst:233 msgid "Removing Bytecode (.pyc) Files" msgstr "" -#: ../../writing/gotchas.rst:225 +#: ../../writing/gotchas.rst:235 msgid "Here's nice trick for removing all of these files, if they already exist::" msgstr "" -#: ../../writing/gotchas.rst:229 +#: ../../writing/gotchas.rst:239 msgid "" "Run that from the root directory of your project, and all ``.pyc`` files " "will suddenly vanish. Much better." msgstr "" +#: ../../writing/gotchas.rst:245 +msgid "Version Control Ignores" +msgstr "" + +#: ../../writing/gotchas.rst:247 +msgid "" +"If you still need the ``.pyc`` files for performance reasons, you can " +"always add them to the ignore files of your version control repositories." +" Popular version control systems have the ability to use wildcards " +"defined in a file to apply special rules." +msgstr "" + +#: ../../writing/gotchas.rst:252 +msgid "" +"An ignore file will make sure the matching files don't get checked into " +"the repository. Git_ uses ``.gitignore`` while Mercurial_ uses " +"``.hgignore``." +msgstr "" + +#: ../../writing/gotchas.rst:258 +msgid "At the minimum your ignore files should look like this." +msgstr "" + +#: ../../writing/gotchas.rst:266 +msgid "" +"You may wish to include more files and directories depending on your " +"needs. The next time you commit to the repository, these files will not " +"be included." +msgstr "" + +#~ msgid "" +#~ msgstr "" + +#~ msgid "" +#~ "For the most part, Python aims to" +#~ " be a clean and consistent language" +#~ " that avoids surprises. However, there " +#~ "are a few cases that can be " +#~ "confusing to newcomers." +#~ msgstr "" + #~ msgid "" #~ "Some of these cases are intentional " #~ "but can be potentially surprising. Some" #~ " could arguably be considered language " -#~ "warts. In general though, what follows" -#~ " is a collection of potentially " -#~ "tricky behavior that might seem strange" -#~ " at first glance, but is generally" -#~ " sensible once you're aware of the" -#~ " underlying cause for the surprise." +#~ "warts. In general, what follows is " +#~ "a collection of potentially tricky " +#~ "behavior that might seem strange at " +#~ "first glance, but is generally sensible" +#~ " once you're aware of the underlying" +#~ " cause for the surprise." +#~ msgstr "" + +#~ msgid "What Does Happen" +#~ msgstr "" + +#~ msgid "" +#~ "Theoretically, this behavior is on by" +#~ " default, for performance reasons. Without" +#~ " these bytecode files present, Python " +#~ "would re-generate the bytecode every " +#~ "time the file is loaded." #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/license.mo b/docs/locale/ko/LC_MESSAGES/writing/license.mo index b74cad606d0581b1bf7816fce320729edc701c17..2444e8605374bbfe2fd06a7fb4bcaf5ca0eaebc8 100644 GIT binary patch delta 424 zcma*hJxjw-6b9fE`e|CD)DBMJA}$UoX{At8D@w6b{lL09T-umQ(-wL5-$ z5E_Y*5WFR?GTiF0HHWvm`a*D-YDuM{qAn`MGE*yBxg30?_`1e=w%FvB;d4V*c6Hv5 z61LoIu9^o0+cj3iZPRzTsWfc2?`h0(epatmtg`V~Qv*MJ7%vr6F+35r{@*YAryqR- DQBqxK delta 352 zcmX>v*Dg0;F!&oj6uwd zI+M?^IJ0J^Ddgo(-p3QXS(dkzkx_5*Z?=V8Y6^}8iOCtMntGF$vj_7Tn&=uD>KYp; z7#Ud^Sxn~ONR-wMNlnbPQt)x~a}RZNcU7?Q@o~t>)XOhQx0}3Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.2.0\n" -#: ..\..\writing\license.rst:2 +#: ../../writing/license.rst:5 msgid "Choosing a License" msgstr "" -#: ..\..\writing\license.rst:4 +#: ../../writing/license.rst:9 msgid "" -"Your source publication *needs* a license. In the US, if no license is " -"specified, users have no legal right to download, modify, or distribute. " -"Furthermore, people can't contribute to your code unless you tell them what " -"rules to play by. Choosing a license is complicated, so here are some " -"pointers:" +"Your source publication *needs* a license. In the US, unless a license is" +" specified, users have no legal right to download, modify, or distribute " +"the product. Furthermore, people can't contribute to your code unless you" +" tell them what rules to play by. Choosing a license is complicated, so " +"here are some pointers:" msgstr "" -#: ..\..\writing\license.rst:10 +#: ../../writing/license.rst:14 msgid "" "Open source. There are plenty of `open source licenses " "`_ available to choose from." msgstr "" -#: ..\..\writing\license.rst:14 +#: ../../writing/license.rst:18 msgid "In general, these licenses tend to fall into one of two categories:" msgstr "" -#: ..\..\writing\license.rst:16 +#: ../../writing/license.rst:20 msgid "" -"licenses that focus more on the user's freedom to do with the software as " -"they please (these are the more permissive open source licenses such as the " -"MIT, BSD, & Apache)." +"licenses that focus more on the user's freedom to do with the software as" +" they please (these are the more permissive open source licenses such as " +"the MIT, BSD, and Apache)" msgstr "" -#: ..\..\writing\license.rst:20 +#: ../../writing/license.rst:24 msgid "" -"licenses that focus more on making sure that the code itself — including any" -" changes made to it and distributed along with it — always remains free " -"(these are the less permissive free software licenses such as the GPL and " -"LGPL)." +"licenses that focus more on making sure that the code itself — including " +"any changes made to it and distributed along with it — always remains " +"free (these are the less permissive free software licenses such as the " +"GPL and LGPL)" msgstr "" -#: ..\..\writing\license.rst:25 +#: ../../writing/license.rst:29 msgid "" -"The latter are less permissive in the sense that they don't permit someone " -"to add code to the software and distribute it without also including the " -"source code for their changes." +"The latter are less permissive in the sense that they don't permit " +"someone to add code to the software and distribute it without also " +"including the source code for their changes." msgstr "" -#: ..\..\writing\license.rst:29 +#: ../../writing/license.rst:33 msgid "" "To help you choose one for your project, there's a `license chooser " -"`_, **use it**." +"`_; **use it**." msgstr "" -#: ..\..\writing\license.rst:32 +#: ../../writing/license.rst:36 msgid "**More Permissive**" msgstr "" -#: ..\..\writing\license.rst:34 +#: ../../writing/license.rst:38 msgid "" "PSFL (Python Software Foundation License) -- for contributing to Python " "itself" msgstr "" -#: ..\..\writing\license.rst:35 +#: ../../writing/license.rst:39 msgid "MIT / BSD / ISC" msgstr "" -#: ..\..\writing\license.rst:37 +#: ../../writing/license.rst:41 msgid "MIT (X11)" msgstr "" -#: ..\..\writing\license.rst:38 +#: ../../writing/license.rst:42 msgid "New BSD" msgstr "" -#: ..\..\writing\license.rst:39 +#: ../../writing/license.rst:43 msgid "ISC" msgstr "" -#: ..\..\writing\license.rst:41 +#: ../../writing/license.rst:45 msgid "Apache" msgstr "" -#: ..\..\writing\license.rst:43 +#: ../../writing/license.rst:47 msgid "**Less Permissive:**" msgstr "" -#: ..\..\writing\license.rst:45 +#: ../../writing/license.rst:49 msgid "LGPL" msgstr "" -#: ..\..\writing\license.rst:46 +#: ../../writing/license.rst:50 msgid "GPL" msgstr "" -#: ..\..\writing\license.rst:48 +#: ../../writing/license.rst:52 msgid "GPLv2" msgstr "" -#: ..\..\writing\license.rst:49 +#: ../../writing/license.rst:53 msgid "GPLv3" msgstr "" -#: ..\..\writing\license.rst:51 +#: ../../writing/license.rst:55 msgid "" -"A good overview of licenses with explanations of what one can, cannot, and " -"must do using a particular software can be found at `tl;drLegal " +"A good overview of licenses with explanations of what one can, cannot, " +"and must do using a particular software can be found at `tl;drLegal " "`_." msgstr "" + +#~ msgid "" +#~ "Your source publication *needs* a " +#~ "license. In the US, if no license" +#~ " is specified, users have no legal" +#~ " right to download, modify, or " +#~ "distribute. Furthermore, people can't " +#~ "contribute to your code unless you " +#~ "tell them what rules to play by." +#~ " Choosing a license is complicated, " +#~ "so here are some pointers:" +#~ msgstr "" + +#~ msgid "" +#~ "licenses that focus more on the " +#~ "user's freedom to do with the " +#~ "software as they please (these are " +#~ "the more permissive open source licenses" +#~ " such as the MIT, BSD, & " +#~ "Apache)." +#~ msgstr "" + +#~ msgid "" +#~ "licenses that focus more on making " +#~ "sure that the code itself — " +#~ "including any changes made to it " +#~ "and distributed along with it — " +#~ "always remains free (these are the " +#~ "less permissive free software licenses " +#~ "such as the GPL and LGPL)." +#~ msgstr "" + +#~ msgid "" +#~ "To help you choose one for your" +#~ " project, there's a `license chooser " +#~ "`_, **use it**." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.mo b/docs/locale/ko/LC_MESSAGES/writing/logging.mo index 5aac167d6aeb78b10c184330b397cb433c23b9ac..e62da70ec37c8b069198a9f3b3d9651b78fec734 100644 GIT binary patch delta 901 zcmd7O&1=(e7zglg+D@&yy3Xp<7W_$_=xEayElPczD7YQ0r+E-DamF^#rm;!K1V_b# z2Vn@V;@icGs33?$F9T7JA_@v#rdCi9nR<}vt%Bb)9{dvwNj|^l`MvNwzc<5Y@{Lw+ z;3D|M{(fyY_~&^m0e2a{quc4E54cI6(G0cxz*TyKcGFz};0oPOZ__Vyj$Y^jn)K{E zU>%Ll@7Ta@4*HqUDPNrD&)s;5M(E%IU?m-)ZjmN^PA6%L9tr|aXnrB^n6~L=`fw4j ziTZ-o8FNcz-bN&>@FDs%AA;30{o=2bSr(|1N@-Tu-9RCuh(Ie&NBai z?&bdLOM%~vKeOt!^wTmRPJ_#VH8e@tJPPy$9ibZzbI{-CRal_z6`!J69ym?o^!o}R zOv9^yN1TsGfg$>l4$~yB#VvH4Ch2{;ntq5)<$X`5#{C1%jNg(PvMh^gO&qA{hP@Mm zmQW3$mTj$OsJ1?)C4^G07VEXT*jBP_)5@n(McppdkIJLfN@|Z*E~-Y#Td_kqBFtKK zOh2Z1r$&EC-QDHBYkucj>~+AIh_|FaQ*qG} delta 2799 zcmai!ZERcB8OKl3ZfpaR7HGSUjXjJPwI;c3TK1y!B_Ae4L8Ai+#0RG3-qx_D!$?u7H09N5GlQjGY4;U>bbnGmPB~UItge_rNRQ$VSf3SWVGVTWd@Fm9X z0z2TH;MUt2n+NxUv*24`6?_m`qMA&C?|@gp-Qb&F357`T5Y{{IU~C`aJPFrBTJ%UL710#_{SZ9(ZxaU*SH4rR{s4mK+ z!s|*QK6zbP`Zx^_Q_?c9$)AE3)23+%CS4yNH*M1&AJ>x8y3QW*RSeH}9XoDKlMy>+ zs(SlVX~S0*6m!USe0+!@lW9WvVph-zgmtkG=^ag3){*eN5*Wm>%n8?Ur^m+R$wseb z8v73SQ8V(4=^$%#HIQf<3B=TUMH^Q|OPg^GiR!vWk2t7AjQfUZc{GVK1qD~OSR|0A zp(bqs+}a0E7z zNjf;?`^nKgdq(z!FEyL{hxPFx)hHw7Pr;jyS%HzuC(%P&^$E6d$BAup4(Y;~)tykN zJH{<1nc%iRq*8}gjIEL0NZY2X(mpu@*UM)Q)OkosBlMRil2b@1YFJ@|9h?f@Eu_ow z1tX08gcNKHkP(iYT2LB;!HtB{hBF8e9=BuR$fN9mftnp`2~L!cZH5~oC*>zozIrvm zyAu#f#KApA*Z!fFD9dWwsO)wYer=sG%U@ z#ag>jk#oNi+0!ZxA(!^cEfU#RWwxRmfBI@s0Z1&&%QRfABJugvo-Nz366JMxLW{&t zYKWn1uDwq1O`dHj_XsMM5ie*SiP?+oRvi+dyQMl0Yc&IzpUIUO^nRY&jUUQ#hT8Q) zT2z)vzOpDArA}cZhfXf1%KY<_vOM#tyQg>csAveVs*0gBhbGiHQxhwf0(rTapk7Ou zmR9hTsrEc}GwsYBD0NO%l(y&BRoS6M?|uu%D|ne9fl~iZrJ6^#|7G)-Sk1~6%tGO1 zB`KKfD&&(aWmM3SeX5DjeZ8vyw?O{m!5wK-q9p1i<)CXOf0|X&(bM+YOyD?QRb6e> zl{8szwVRbrp@ML#2EE>Oa}TP0wF#oWDjJ3B#_wK5(O}>Rk-{>)Do+-J`NjaxEs7u2 zhcGWS6&nW@ZS7SEv(cz_=32p#=`E0R@b1NRSz1>;l9wBx-@5u(a3A4n_xuz1_%l2dKH@cG34=EMakf diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.po b/docs/locale/ko/LC_MESSAGES/writing/logging.po index c59e89d42..cc1272b56 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/logging.po +++ b/docs/locale/ko/LC_MESSAGES/writing/logging.po @@ -1,100 +1,102 @@ # SOME DESCRIPTIVE TITLE. -# Copyright (C) 2016. A Kenneth Reitz -# Project. CC -# BY-NC-SA 3.0 +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 # This file is distributed under the same license as the pythonguide # package. -# FIRST AUTHOR , 2016. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: AHN YOUNG SEON \n" "Language-Team: KOREAN \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../writing/logging.rst:2 +#: ../../writing/logging.rst:5 msgid "Logging" msgstr "로그" -#: ../../writing/logging.rst:4 +#: ../../writing/logging.rst:9 msgid "" "The :mod:`logging` module has been a part of Python's Standard Library " "since version 2.3. It is succinctly described in :pep:`282`. The " "documentation is notoriously hard to read, except for the `basic logging " "tutorial`_." msgstr "" -":mod:`logging` 모듈은 2.3 버전 이래로 파이썬의 표준 라이브러리였습니다. " -"이에 관해서는 :pep:`282` 을 보시면 간략히 써져 있습니다. " -"그 문서는 읽기 어렵기로 악명이 높지만, 그래도 `basic logging " -"tutorial`_ 은 그나마 낫습니다. " +":mod:`logging` 모듈은 2.3 버전 이래로 파이썬의 표준 라이브러리였습니다. 이에 관해서는 :pep:`282` 을 보시면" +" 간략히 써져 있습니다. 그 문서는 읽기 어렵기로 악명이 높지만, 그래도 `basic logging tutorial`_ 은 그나마" +" 낫습니다. " -#: ../../writing/logging.rst:8 +#: ../../writing/logging.rst:13 +msgid "" +"As an alternative, `loguru `_ provides " +"an approach for logging, nearly as simple as using a simple ``print`` " +"statement." +msgstr "" + +#: ../../writing/logging.rst:15 msgid "Logging serves two purposes:" msgstr "로그를 남기는데에는 2가지 목적이 있습니다: " -#: ../../writing/logging.rst:10 +#: ../../writing/logging.rst:17 msgid "" "**Diagnostic logging** records events related to the application's " "operation. If a user calls in to report an error, for example, the logs " "can be searched for context." msgstr "" -"**진단용 로그** 는 어플리케이션의 동작과 관련된 이벤트를 기록합니다. " -"예를 들어 사용자가 오류 보고서를 남기면, " -"그 로그를 해당 에러와 관련된 상황을 확인하는데 쓸 수 있습니다. " +"**진단용 로그** 는 어플리케이션의 동작과 관련된 이벤트를 기록합니다. 예를 들어 사용자가 오류 보고서를 남기면, 그 로그를 해당" +" 에러와 관련된 상황을 확인하는데 쓸 수 있습니다. " -#: ../../writing/logging.rst:13 +#: ../../writing/logging.rst:20 msgid "" "**Audit logging** records events for business analysis. A user's " "transactions can be extracted and combined with other user details for " "reports or to optimize a business goal." msgstr "" -"**감사용 로그** 는 비지니스 분석에 필요한 이벤트를 기록합니다. " -"사용자가 무슨 동작을 했는지 알아낼 수 있으며, 다른 사용자와는 무슨 동작을 했는지도 " -"상세하게 알 수 있습니다. " -"이를 통해 보고서를 작성하거나 업무적으로 최적화를 할 수 있습니다. " +"**감사용 로그** 는 비지니스 분석에 필요한 이벤트를 기록합니다. 사용자가 무슨 동작을 했는지 알아낼 수 있으며, 다른 사용자와는" +" 무슨 동작을 했는지도 상세하게 알 수 있습니다. 이를 통해 보고서를 작성하거나 업무적으로 최적화를 할 수 있습니다. " -#: ../../writing/logging.rst:19 +#: ../../writing/logging.rst:27 msgid "... or Print?" msgstr "... Print는?" -#: ../../writing/logging.rst:21 +#: ../../writing/logging.rst:29 msgid "" "The only time that ``print`` is a better option than logging is when the " "goal is to display a help statement for a command line application. Other" " reasons why logging is better than ``print``:" msgstr "" -"``print`` 가 logging보다 좋은 경우는 커맨드라인 어플리케이션에서 help 구문을 화면에 " -"보여줄 때 뿐입니다. logging이 ``print`` 보다 좋은 이유입니다: " +"``print`` 가 logging보다 좋은 경우는 커맨드라인 어플리케이션에서 help 구문을 화면에 보여줄 때 뿐입니다. " +"logging이 ``print`` 보다 좋은 이유입니다: " -#: ../../writing/logging.rst:25 +#: ../../writing/logging.rst:33 msgid "" "The `log record`_, which is created with every logging event, contains " "readily available diagnostic information such as the file name, full " "path, function, and line number of the logging event." msgstr "" -"`log record`_ 는 로그 남기는 이벤트가 발생할 때마다 만들어지는데, 여기에는 " -"로그 남기는 이벤트의 파일명과 경로, 함수, 몇 행에서 문제가 발생했는지 등의 " -"정보가 들어있어 문제를 확인하기에 편리합니다. " +"`log record`_ 는 로그 남기는 이벤트가 발생할 때마다 만들어지는데, 여기에는 로그 남기는 이벤트의 파일명과 경로, 함수," +" 몇 행에서 문제가 발생했는지 등의 정보가 들어있어 문제를 확인하기에 편리합니다. " -#: ../../writing/logging.rst:28 +#: ../../writing/logging.rst:36 msgid "" "Events logged in included modules are automatically accessible via the " "root logger to your application's logging stream, unless you filter them " "out." msgstr "" -"내장된 모듈에서 발생한 이벤트들도 로그가 남는데, 이 로그들은 루트 로그 기록기를 통하여 " -"어플리케이션의 로그 스트림으로 보낼 수 있습니다. " -"필터링해서 걸러내지만 않는다면 말입니다. " +"내장된 모듈에서 발생한 이벤트들도 로그가 남는데, 이 로그들은 루트 로그 기록기를 통하여 어플리케이션의 로그 스트림으로 보낼 수 " +"있습니다. 필터링해서 걸러내지만 않는다면 말입니다. " -#: ../../writing/logging.rst:30 +#: ../../writing/logging.rst:38 msgid "" "Logging can be selectively silenced by using the method " ":meth:`logging.Logger.setLevel` or disabled by setting the attribute " @@ -103,150 +105,152 @@ msgstr "" ":meth:`logging.Logger.setLevel` 메소드를 쓰면 로그를 선택적으로 남길 수 있습니다. " ":attr:`logging.Logger.disabled` 속성을 ``True`` 로 설정하면 로그를 끌 수도 있습니다. " -#: ../../writing/logging.rst:36 +#: ../../writing/logging.rst:45 msgid "Logging in a Library" msgstr "라이브러리에서의 로그 남기기" -#: ../../writing/logging.rst:38 +#: ../../writing/logging.rst:47 msgid "" "Notes for `configuring logging for a library`_ are in the `logging " "tutorial`_. Because the *user*, not the library, should dictate what " "happens when a logging event occurs, one admonition bears repeating:" msgstr "" -"`라이브러리에 로그 설정`_ 하려면 `로그 남기기 튜토리얼`_ 을 보시면 됩니다. " -"로그를 남기는 이벤트가 발생하면 그게 무슨 일인지 알아내야 하는 건 " -"라이브러리가 아니라 *사용자* 입니다. 따라서 반복적으로 경보를 보내야합니다. " +"`라이브러리에 로그 설정`_ 하려면 `로그 남기기 튜토리얼`_ 을 보시면 됩니다. 로그를 남기는 이벤트가 발생하면 그게 무슨 일인지" +" 알아내야 하는 건 라이브러리가 아니라 *사용자* 입니다. 따라서 반복적으로 경보를 보내야합니다. " -#: ../../writing/logging.rst:44 +#: ../../writing/logging.rst:53 +#, fuzzy msgid "" "It is strongly advised that you do not add any handlers other than " -"NullHandler to your library??셲 loggers." -msgstr "" -"당신의 라이브러리에 NullHandler 이외의 다른 로그 남기는 핸들러를 넣지 말 것을 강력 추천합니다. " +"NullHandler to your library’s loggers." +msgstr "당신의 라이브러리에 NullHandler 이외의 다른 로그 남기는 핸들러를 넣지 말 것을 강력 추천합니다. " -#: ../../writing/logging.rst:48 +#: ../../writing/logging.rst:57 msgid "" "Best practice when instantiating loggers in a library is to only create " "them using the ``__name__`` global variable: the :mod:`logging` module " "creates a hierarchy of loggers using dot notation, so using ``__name__`` " "ensures no name collisions." msgstr "" -"라이브러리에서 로그 기록기를 인스턴스화 하는 유일한 방법은 ``__name__`` 전역 변수를 사용해서 " -"만드는 방법 뿐입니다. " -":mod:`logging` 모듈은 . 을 사용해서 로그 기록기의 계층 구조를 만들기 때문에 " -"``__name__`` 을 사용해야 충돌을 막을 수 있습니다. " +"라이브러리에서 로그 기록기를 인스턴스화 하는 유일한 방법은 ``__name__`` 전역 변수를 사용해서 만드는 방법 뿐입니다. " +":mod:`logging` 모듈은 . 을 사용해서 로그 기록기의 계층 구조를 만들기 때문에 ``__name__`` 을 사용해야 " +"충돌을 막을 수 있습니다. " -#: ../../writing/logging.rst:53 +#: ../../writing/logging.rst:62 +#, fuzzy msgid "" -"Here is an example of best practice from the `requests source`_ -- place " -"this in your ``__init__.py``" +"Here is an example of the best practice from the `requests source`_ -- " +"place this in your ``__init__.py``:" msgstr "" -"`requests의 소스`_ 에서 가져온 훌륭한 예시를 보여드리겠습니다. 이걸 당신의 " -" ``__init__.py`` 에 두시면 됩니다. " +"`requests의 소스`_ 에서 가져온 훌륭한 예시를 보여드리겠습니다. 이걸 당신의 ``__init__.py`` 에 두시면 " +"됩니다. " -#: ../../writing/logging.rst:72 +#: ../../writing/logging.rst:73 msgid "Logging in an Application" msgstr "어플리케이션에서의 로그 남기기" -#: ../../writing/logging.rst:74 +#: ../../writing/logging.rst:75 +#, fuzzy msgid "" -"The `twelve factor app `_, an authoritative " +"The `twelve factor app `_, an authoritative " "reference for good practice in application development, contains a " -"section on `logging best practice `_. It " +"section on `logging best practice `_. It " "emphatically advocates for treating log events as an event stream, and " "for sending that event stream to standard output to be handled by the " "application environment." msgstr "" -"`멋진 앱을 만들기 위한 12가지 `_ 는 어플리케이션 개발을 위한 좋은 " -"습관을 들이기에 참고할만 합니다. `로그를 남기는 방법 `_ " -"에 관한 섹션도 있는데, 여기서는 로그 이벤트를 이벤트 스트림으로 취급하여 " -"어플리케이션 환경에서 조작할 수 있는 표준적인 산출물로 만들 것을 강력하게 추천합니다. " +"`멋진 앱을 만들기 위한 12가지 `_ 는 어플리케이션 개발을 위한 좋은 습관을 들이기에 " +"참고할만 합니다. `로그를 남기는 방법 `_ 에 관한 섹션도 있는데, 여기서는 로그 " +"이벤트를 이벤트 스트림으로 취급하여 어플리케이션 환경에서 조작할 수 있는 표준적인 산출물로 만들 것을 강력하게 추천합니다. " -#: ../../writing/logging.rst:82 +#: ../../writing/logging.rst:83 msgid "There are at least three ways to configure a logger:" msgstr "로그를 설정하는데에는 적어도 3가지 방식이 있습니다: " -#: ../../writing/logging.rst:87 +#: ../../writing/logging.rst:88 msgid "Using an INI-formatted file:" msgstr "INI 포맷의 파일을 사용하는 방법: " -#: ../../writing/logging.rst:85 +#: ../../writing/logging.rst:86 +#, fuzzy msgid "" -"**Pro**: possible to update configuration while running using the " +"**Pro**: possible to update configuration while running, using the " "function :func:`logging.config.listen` to listen on a socket." msgstr "" -"**이렇게 하자**: 소켓에 함수 :func:`logging.config.listen` 를 사용해서 " -"어플리케이션이 실행 중일때도 설정 변경이 반영될 수 있도록 한다." +"**이렇게 하자**: 소켓에 함수 :func:`logging.config.listen` 를 사용해서 어플리케이션이 실행 중일때도 " +"설정 변경이 반영될 수 있도록 한다." -#: ../../writing/logging.rst:87 +#: ../../writing/logging.rst:88 +#, fuzzy msgid "" -"**Con**: less control (*e.g.* custom subclassed filters or loggers) than " +"**Con**: less control (e.g. custom subclassed filters or loggers) than " "possible when configuring a logger in code." msgstr "" -"**이렇게 하지 마세요**: 코드에 로그를 설정할 때 " -"(*예를 들면* 직접 만든 서브클래스나 로그에) 할 수 있는 설정도 하지 않는다." +"**이렇게 하지 마세요**: 코드에 로그를 설정할 때 (*예를 들면* 직접 만든 서브클래스나 로그에) 할 수 있는 설정도 하지 " +"않는다." -#: ../../writing/logging.rst:92 +#: ../../writing/logging.rst:93 msgid "Using a dictionary or a JSON-formatted file:" msgstr "딕셔너리나 JSON 포맷 파일을 사용하는 방법: " -#: ../../writing/logging.rst:90 +#: ../../writing/logging.rst:91 msgid "" "**Pro**: in addition to updating while running, it is possible to load " "from a file using the :mod:`json` module, in the standard library since " "Python 2.6." msgstr "" -"**이렇게 하자**: 어플리케이션 실행 중에도 업데이트를 할 수 있을 뿐만 아니라, " -"파이썬 2.6부터는 표준 라이브러리에서 :mod:`json` 모듈을 사용하여 " -"파일에서 설정을 불러올 수도 있다." +"**이렇게 하자**: 어플리케이션 실행 중에도 업데이트를 할 수 있을 뿐만 아니라, 파이썬 2.6부터는 표준 라이브러리에서 " +":mod:`json` 모듈을 사용하여 파일에서 설정을 불러올 수도 있다." -#: ../../writing/logging.rst:93 +#: ../../writing/logging.rst:94 msgid "**Con**: less control than when configuring a logger in code." msgstr "**이렇게 하지 마세요**: 코드에 로그를 설정할 때 할 수 있는 설정도 하지 않는다 " -#: ../../writing/logging.rst:97 +#: ../../writing/logging.rst:98 msgid "Using code:" msgstr "코드를 사용하는 방법: " -#: ../../writing/logging.rst:95 +#: ../../writing/logging.rst:96 msgid "**Pro**: complete control over the configuration." msgstr "**이렇게 하자**: 모든 설정을 완벽하게 한다." -#: ../../writing/logging.rst:96 -msgid "**Con**: modifications require a change to source code." +#: ../../writing/logging.rst:97 +#, fuzzy +msgid "**Con**: modifications require a change to the source code." msgstr "**이렇게 하지 마세요**: 소스코드에서 설정 수정이 필요하다." -#: ../../writing/logging.rst:100 +#: ../../writing/logging.rst:101 msgid "Example Configuration via an INI File" msgstr "INI 파일로 설정하는 예시" -#: ../../writing/logging.rst:102 +#: ../../writing/logging.rst:103 +#, fuzzy msgid "" -"Let us say the file is named ``logging_config.ini``. More details for the" -" file format are in the `logging configuration`_ section of the `logging " -"tutorial`_." +"Let us say that the file is named ``logging_config.ini``. More details " +"for the file format are in the `logging configuration`_ section of the " +"`logging tutorial`_." msgstr "" -"파일명은 ``logging_config.ini`` 로 합시다. 파일 포맷에 대한 자세한 설명은 " -"`로그 튜토리얼`_ 의 `로그 설정`_ 을 보시면 됩니다. " +"파일명은 ``logging_config.ini`` 로 합시다. 파일 포맷에 대한 자세한 설명은 `로그 튜토리얼`_ 의 `로그 " +"설정`_ 을 보시면 됩니다. " -#: ../../writing/logging.rst:131 +#: ../../writing/logging.rst:132 msgid "Then use :meth:`logging.config.fileConfig` in the code:" msgstr "그런 다음 코드에 :meth:`logging.config.fileConfig` 를 쓰세요. " -#: ../../writing/logging.rst:144 +#: ../../writing/logging.rst:145 msgid "Example Configuration via a Dictionary" msgstr "딕셔너리로 설정하는 예시" -#: ../../writing/logging.rst:146 +#: ../../writing/logging.rst:147 msgid "" "As of Python 2.7, you can use a dictionary with configuration details. " ":pep:`391` contains a list of the mandatory and optional elements in the " "configuration dictionary." msgstr "" -"파이썬 2.7부터는 딕셔너리를 사용해서 상세한 설정을 할 수 있습니다. " -":pep:`391` 을 보시면 설정 딕셔너리에 반드시 넣어야 하는 요소와 그렇지 않은 요소를 확인할 수 있습니다. " +"파이썬 2.7부터는 딕셔너리를 사용해서 상세한 설정을 할 수 있습니다. :pep:`391` 을 보시면 설정 딕셔너리에 반드시 넣어야" +" 하는 요소와 그렇지 않은 요소를 확인할 수 있습니다. " -#: ../../writing/logging.rst:179 +#: ../../writing/logging.rst:180 msgid "Example Configuration Directly in Code" msgstr "코드에 바로 설정하는 예시" diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.mo b/docs/locale/ko/LC_MESSAGES/writing/reading.mo index 510b131b981076dd78e5eb75106822433e7edb19..cfc24c2c550d93aed673c6923ef910ed83063fbe 100644 GIT binary patch delta 275 zcmeyPGe@%io)F7a1|Z-DVi_PV0dbJP86X>^;4Ba~0&y}U14A83C?LeA&La=rO`=v2il9;vP$KaWK~RJcBIB7^d%81o&3q(v zL3q=8ky(42UD>)s|H+j8`P5@;0-q1y_euO3{Bq=TdP)d(coH@b`%BoHu&1Ym_%ZCO zumj#dCWM6j1ME|<7akJ=UvUY4-$BgRVc)^~_HiM;2m9jVLi|*SlK2}QUc$n)6GHq6 zj{kt&h21(S#9y&~^^_1lgw330ZzO=-g#FBuLi`){kFe{ogEK;W9QGUNgbTj_yMjCt zb_!N}P>3STG|(Nu{s{J80?96XNQm#E3;OWtpI^&;>BWL;I6g(TnfIL^#CAxLq`)XR zmRlspvi-=JE0SeI28B@&n^7FtVTKGhCj%$Sdm$OVMV1}ef#>)(-N+jeMR}V{Y1!n2 zWJ$-*?HN;Nrb?y^Y*g~?D5R{NcM!;)mK{1dpX3}}E=GCjbCem_Mub3uwT!Gg$~Q|_ z;P1)ExsF|UKFY#{MrrUAI$puGFQ(3Z>}BnMB%sYiD49b^ARJdJ1Tq&Go@WOPlnZmc z6ni~8T|Mzd$MB?Y)u&ET$Y4H0&RLluSE8MCLQXh8sXt54S(d{D8m@~FC!#sf&69;MJ$LyM%>hHo zqQ?s08qdaIB)v&l3BuSXXE0E9nDjOmz{_ww8AeD}q)^6zY0vJd>1U=-Ub|`s^Do(P zE@jknqA<=o^YZMC@iMbHae>~9AhH2}GSNwKo;(=1ZUl~uLy9BEMK=J?h^~I?`AcLJ z3a(?O8X2*jN0O{Dg!M?>zqZ(sEz7_mgs;h7WrBc3;1?Kzgk<-0P@2J$8rCSC5ToyBCW zL&N*82(GZVbK(hdn>*Q>gXHd1_~?$%Vj%NRBnRkfn3-C5#dtqw=2>b9<&Y9(v; zMtc|Qe|h55pGPjexrNYI;hENet8O3io9Z{z?bal_Zokc`+xz$@wN_KTLH*!~-@m^r zh=EM55p)AkU9~kprCq(j95Vx;G+Aw_twYk4roOv6<~vzFR0D9+)74$(0-27Gx!hMf zz0#4!(>q7qYp9)V#AHa7yUEf(|Gbvm#9MmzpgGmJhb>HEsf+dhQyRmsG)Zq(^wNVz zoIY$YZJnFCb;tw_cR>rB)=T?p3HX0fLppS#%PrMDRJWjp|80r!>$kdGco7p!I|Z}c zHuRY^%iK1Y)-61>_|9YfB})ewm+q__=~P_%vTNY-{9Jx-@#II3y{|irQKYwuUf)j| zHD>p4fi<(3o`-SqVZRLZFbrrZsSe*J9~H7UsIheMus7(`(=y*^8~zwCNsM< zDDg4pw(xeVkAKq5t{T*Ir_FM}*jONS98++=w8ckv*k9KV8{7lNdk^^_O|;7$C$F@I zZw^vv;sV)(G&`dk^C&Or#qygKuz>-Wwoyji?ozVRRm+WcUy=HEo#bU8N^@mKa)#uNP%>uJ~Z_OJoeJbt#$Z( gHMd6%S7`X#f%-*Hy)j62bqh}0Oz!&rd(Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn LoveMeWithoutAll@Gmail.com\n" "Language-Team: Korean \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../writing/reading.rst:2 +#: ../../writing/reading.rst:5 msgid "Reading Great Code" msgstr "훌륭한 코드를 읽기" -#: ../../writing/reading.rst:4 -msgid "" -"One of the core tenets behind the design of Python is creating readable " -"code. The motivation behind this design is simple: The number one thing " -"that Python programmers do is read code." -msgstr "" -"파이썬 디자인의 기저에 깔린 핵심 교리 중 하나는 가독성 좋은 코드 만들기입니다. " -"이유는 단순합니다: 파이썬 프로그래머가 가장 많이 하는 일이 바로 코드 읽기이기 때문입니다. " - -#: ../../writing/reading.rst:8 +#: ../../writing/reading.rst:9 msgid "" "One of the secrets of becoming a great Python programmer is to read, " "understand, and comprehend excellent code." -msgstr "" -"위대한 파이썬 프로그래머가 되기 위한 비밀 중 하나는 바로 " -"탁월한 코드를 읽고, 알아듣고, 이해하는 것입니다. " +msgstr "위대한 파이썬 프로그래머가 되기 위한 비밀 중 하나는 바로 탁월한 코드를 읽고, 알아듣고, 이해하는 것입니다. " -#: ../../writing/reading.rst:19 +#: ../../writing/reading.rst:12 msgid "" "Excellent code typically follows the guidelines outlined in " ":ref:`code_style`, and does its best to express a clear and concise " "intent to the reader." msgstr "" -"탁월한 코드란 문자 그대로 :ref:`code_style` 의 가이드라인을 따르는 것이며, " -"명쾌하고 간결하게 코드의 의도를 독자에게 표현하기 위해 최선을 다하는 것입니다. " +"탁월한 코드란 문자 그대로 :ref:`code_style` 의 가이드라인을 따르는 것이며, 명쾌하고 간결하게 코드의 의도를 독자에게" +" 표현하기 위해 최선을 다하는 것입니다. " -#: ../../writing/reading.rst:23 +#: ../../writing/reading.rst:16 msgid "" "Included below is a list of recommended Python projects for reading. Each" " one of these projects is a paragon of Python coding." -msgstr "" -"아래에 삽입한 목록은 읽어보시길 추천하는 파이썬 프로젝트들입니다. " -"각각의 프로젝트는 파이썬 코딩의 모범입니다. " +msgstr "아래에 삽입한 목록은 읽어보시길 추천하는 파이썬 프로젝트들입니다. 각각의 프로젝트는 파이썬 코딩의 모범입니다. " -#: ../../writing/reading.rst:26 +#: ../../writing/reading.rst:19 msgid "" "`Howdoi `_ Howdoi is a code search " "tool, written in Python." msgstr "" -"`Howdoi `_ Howdoi는 " -"파이썬으로 쓰여진 코드를 검색하는 도구입니다. " +"`Howdoi `_ Howdoi는 파이썬으로 쓰여진 코드를 검색하는 " +"도구입니다. " -#: ../../writing/reading.rst:29 +#: ../../writing/reading.rst:22 msgid "" "`Flask `_ Flask is a microframework " "for Python based on Werkzeug and Jinja2. It's intended for getting " "started very quickly and was developed with best intentions in mind." msgstr "" -"`Flask `_ Flask는 " -"Werkzeug와 Jinja2를 기반으로 하는 파이썬 마이크로 프레임워크입니다. " -"아주 빠르게 시작할 수 있도록 만들어졌으며, " -"이러한 취지에 따라 개발되었습니다. " +"`Flask `_ Flask는 Werkzeug와 Jinja2를 " +"기반으로 하는 파이썬 마이크로 프레임워크입니다. 아주 빠르게 시작할 수 있도록 만들어졌으며, 이러한 취지에 따라 개발되었습니다. " -#: ../../writing/reading.rst:34 +#: ../../writing/reading.rst:27 +#, fuzzy msgid "" "`Diamond `_ Diamond is a " -"python daemon that collects metrics and publishes them to Graphite or " -"other backends. It is capable of collecting cpu, memory, network, i/o, " -"load and disk metrics. Additionally, it features an API for implementing " -"custom collectors for gathering metrics from almost any source." +"Python daemon that collects metrics and publishes them to Graphite or " +"other backends. It is capable of collecting CPU, memory, network, I/O, " +"load, and disk metrics. Additionally, it features an API for implementing" +" custom collectors for gathering metrics from almost any source." msgstr "" -"`Diamond `_ Diamond는 " -"Graphite나 다른 백엔드에 지표를 수집하고 퍼블리싱하는 파이썬 데몬입니다. " -"cpu, 메모리, 네트워크, i/o, 로딩, 디스크 지표를 수집할 수 있습니다. " -"추가적으로 거의 어느 소스에서라도 지표를 수집하는 " -"커스텀 수집기를 구현하기 위한 API가 특장점입니다. " +"`Diamond `_ Diamond는 Graphite나" +" 다른 백엔드에 지표를 수집하고 퍼블리싱하는 파이썬 데몬입니다. cpu, 메모리, 네트워크, i/o, 로딩, 디스크 지표를 수집할 " +"수 있습니다. 추가적으로 거의 어느 소스에서라도 지표를 수집하는 커스텀 수집기를 구현하기 위한 API가 특장점입니다. " -#: ../../writing/reading.rst:41 +#: ../../writing/reading.rst:34 +#, fuzzy msgid "" -"`Werkzeug `_ Werkzeug started as " -"simple collection of various utilities for WSGI applications and has " +"`Werkzeug `_ Werkzeug started as a" +" simple collection of various utilities for WSGI applications and has " "become one of the most advanced WSGI utility modules. It includes a " "powerful debugger, full-featured request and response objects, HTTP " "utilities to handle entity tags, cache control headers, HTTP dates, " -"cookie handling, file uploads, a powerful URL routing system and a bunch " -"of community-contributed addon modules." +"cookie handling, file uploads, a powerful URL routing system, and a bunch" +" of community-contributed addon modules." msgstr "" -"`Werkzeug `_ Werkzeug는 " -"WSGI 어플리케이션을 위한 간단한 유틸리티 모음집으로 시작되었습니다. " -"하지만 이제는 가장 발전한 WSGI 유틸리티 모듈 중 하나가 되었습니다. -"강력한 디버거, 리퀘스트와 리스폰스 오브젝트의 모든 기능을 갖추었으며, " -"엔티티 태그를 조작할 HTTP 유틸리티와 캐시 컨트롤 헤더, HTTP dates, " -"쿠키 조작, 파일 업로드, 강력한 URL 라우팅 시스템, 그리고 " -"커뮤니티에서 기여한 애드온 모듈 꾸러미가 포함되어 있습니다. " +"`Werkzeug `_ Werkzeug는 WSGI " +"어플리케이션을 위한 간단한 유틸리티 모음집으로 시작되었습니다. 하지만 이제는 가장 발전한 WSGI 유틸리티 모듈 중 하나가 " +"되었습니다강력한 디버거, 리퀘스트와 리스폰스 오브젝트의 모든 기능을 갖추었으며, 엔티티 태그를 조작할 HTTP 유틸리티와 캐시 " +"컨트롤 헤더, HTTP dates, 쿠키 조작, 파일 업로드, 강력한 URL 라우팅 시스템, 그리고 커뮤니티에서 기여한 애드온 모듈" +" 꾸러미가 포함되어 있습니다. " -#: ../../writing/reading.rst:49 +#: ../../writing/reading.rst:42 msgid "" "`Requests `_ Requests is an " "Apache2 Licensed HTTP library, written in Python, for human beings." msgstr "" -"`Requests `_ Requests는 " -"파이썬으로 작성된 Apache2 라이선스의 HTTP 라이브러리입니다. 인류를 위해 만들었습니다. " +"`Requests `_ Requests는 파이썬으로 " +"작성된 Apache2 라이선스의 HTTP 라이브러리입니다. 인류를 위해 만들었습니다. " -#: ../../writing/reading.rst:53 +#: ../../writing/reading.rst:46 msgid "" "`Tablib `_ Tablib is a format-" "agnostic tabular dataset library, written in Python." msgstr "" -"`Tablib `_ Tablib은 " -"포맷에 구속받지 않는 tabular 데이터셋 라이브러리입니다. 파이썬으로 작성했습니다. " -"(역주: Requests, Tablib은 저자 본인의 프로젝트)" +"`Tablib `_ Tablib은 포맷에 구속받지 않는 " +"tabular 데이터셋 라이브러리입니다. 파이썬으로 작성했습니다. (역주: Requests, Tablib은 저자 본인의 프로젝트)" #: ../../writing/reading.rst msgid "Todo" msgstr "" -#: ../../writing/reading.rst:57 +#: ../../writing/reading.rst:50 msgid "" "Include code examples of exemplary code from each of the projects listed." " Explain why it is excellent code. Use complex examples." -msgstr "" -"리스트에 올라간 프로젝트의 코드 샘플 추가 필요" -"왜 좋은 코드인지 복잡한 예를 들어 설명할 것" +msgstr "리스트에 올라간 프로젝트의 코드 샘플 추가 필요왜 좋은 코드인지 복잡한 예를 들어 설명할 것" -#: ../../writing/reading.rst:59 +#: ../../writing/reading.rst:52 +#, fuzzy msgid "" -"Explain techniques to rapidly identify data structures, algorithms and " -"determine what the code is doing." -msgstr "" -"데이터 구조와 알고리즘을 빠르게 분석하고 코드가 뭘 하고 있는지 밝히는 기술을 설명할 것" +"Explain techniques to rapidly identify data structures and algorithms and" +" determine what the code is doing." +msgstr "데이터 구조와 알고리즘을 빠르게 분석하고 코드가 뭘 하고 있는지 밝히는 기술을 설명할 것" + +#~ msgid "" +#~ "One of the core tenets behind the" +#~ " design of Python is creating " +#~ "readable code. The motivation behind " +#~ "this design is simple: The number " +#~ "one thing that Python programmers do " +#~ "is read code." +#~ msgstr "" +#~ "파이썬 디자인의 기저에 깔린 핵심 교리 중 하나는" +#~ " 가독성 좋은 코드 만들기입니다. 이유는 단순합니다: " +#~ "파이썬 프로그래머가 가장 많이 하는 일이 바로 코드" +#~ " 읽기이기 때문입니다. " + diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index eaa9fc52acf7d070f5dbf91d1b551dcacaa082f9..4b10d8ea17ccb207f9a2350cb1895ff41b5cfa32 100644 GIT binary patch delta 3898 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 diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 540ea4ec1..75ec31a99 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -1,22 +1,31 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-17 01:45+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../writing/structure.rst:2 +#: ../../writing/structure.rst:5 msgid "Structuring Your Project" msgstr "프로젝트 구성하기" -#: ../../writing/structure.rst:4 +#: ../../writing/structure.rst:9 msgid "" "By \"structure\" we mean the decisions you make concerning how your " "project best meets its objective. We need to consider how to best " @@ -29,7 +38,7 @@ msgstr "" "효율적인 코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있습니다. 일반적으로 \"구성\"이란 로직과 의존성이 " "깔끔한 코드를 만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제입니다." -#: ../../writing/structure.rst:11 +#: ../../writing/structure.rst:16 msgid "" "Which functions should go into which modules? How does data flow through " "the project? What features and functions can be grouped together and " @@ -39,9 +48,10 @@ msgstr "" "어느 모듈에 어느 기능이 들어가야 할까요? 프로젝트에서 데이터는 어덯게 흘러가야 할까요? 어떤 특징과 기능이 통합되거나 분리되어야 " "할까요? 이러한 질문에 답함으로써 프로젝트의 계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있습니다." -#: ../../writing/structure.rst:16 +#: ../../writing/structure.rst:21 +#, fuzzy msgid "" -"In this section we take a closer look at Python's module and import " +"In this section, we take a closer look at Python's modules and import " "systems as they are the central elements to enforcing structure in your " "project. We then discuss various perspectives on how to build code which " "can be extended and tested reliably." @@ -50,18 +60,19 @@ msgstr "" " 핵심적인 요소이기 때문입니다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 " "관점에서 검토할 것입니다." -#: ../../writing/structure.rst:24 +#: ../../writing/structure.rst:29 msgid "Structure of the Repository" msgstr "저장소의 구조" -#: ../../writing/structure.rst:27 +#: ../../writing/structure.rst:32 msgid "It's Important." msgstr "중요합니다." -#: ../../writing/structure.rst:29 +#: ../../writing/structure.rst:34 +#, fuzzy msgid "" "Just as Code Style, API Design, and Automation are essential for a " -"healthy development cycle, Repository structure is a crucial part of your" +"healthy development cycle. Repository structure is a crucial part of your" " project's `architecture " "`__." msgstr "" @@ -69,31 +80,31 @@ msgstr "" "`__" " 에 결정적인 요소입니다. " -#: ../../writing/structure.rst:34 +#: ../../writing/structure.rst:39 msgid "" "When a potential user or contributor lands on your repository's page, " "they see a few things:" msgstr "당신이 만든 프로젝트의 저장소 웹페이지에 처음으로 상륙한 잠재적 사용자나 공헌자는 이런 것들을 보게 될 것입니다. " -#: ../../writing/structure.rst:37 +#: ../../writing/structure.rst:42 msgid "Project Name" msgstr "프로젝트 이름" -#: ../../writing/structure.rst:38 +#: ../../writing/structure.rst:43 msgid "Project Description" msgstr "프로젝트 설명" -#: ../../writing/structure.rst:39 +#: ../../writing/structure.rst:44 msgid "Bunch O' Files" msgstr "파일들 한무더기" -#: ../../writing/structure.rst:41 +#: ../../writing/structure.rst:46 msgid "" "Only when they scroll below the fold will the user see your project's " "README." msgstr "스크롤을 내리고 내리고 나서야 프로젝트의 README 파일을 발견할 수 있을 것입니다. " -#: ../../writing/structure.rst:44 +#: ../../writing/structure.rst:49 msgid "" "If your repo is a massive dump of files or a nested mess of directories, " "they might look elsewhere before even reading your beautiful " @@ -102,41 +113,43 @@ msgstr "" "당신의 저장소가 엄청나게 많은 파일들과 디렉토리로 꼬여있다면, 방문자들은 금방 떠나버리고 말 것입니다. 아무리 아름다운 문서가 " "있다고 해도 말입니다. " -#: ../../writing/structure.rst:48 +#: ../../writing/structure.rst:53 msgid "Dress for the job you want, not the job you have." msgstr "원하는 바가 있다면 바로 그 원하는 바인 것처럼 행동하라." -#: ../../writing/structure.rst:50 +#: ../../writing/structure.rst:55 +#, fuzzy msgid "" "Of course, first impressions aren't everything. You and your colleagues " "will spend countless hours working with this repository, eventually " -"becoming intimately familiar with every nook and cranny. The layout of it" -" is important." +"becoming intimately familiar with every nook and cranny. The layout is " +"important." msgstr "" "물론 첫인상이 전부라는 말은 아닙니다. 당신과 동료들은 저장소에 올려진 프로젝트를 위해 수없이 많은 날들을 지세웠을 것입니다. " "그러다보니 어느새 저장소의 구석구석에 이미 친숙해져있을 것입니다. 그래도 모양새는 중요합니다. " -#: ../../writing/structure.rst:56 +#: ../../writing/structure.rst:60 msgid "Sample Repository" msgstr "샘플 저장소" -#: ../../writing/structure.rst:58 +#: ../../writing/structure.rst:62 msgid "" -"**tl;dr**: This is what `Kenneth Reitz `_ " -"recommends." -msgstr "3줄 요약 필수(tl;dr): `Kenneth Reitz `_ 의 말입니다. " +"**tl;dr**: This is what `Kenneth Reitz recommended in 2013 " +"`__." +msgstr "" -#: ../../writing/structure.rst:60 +#: ../../writing/structure.rst:64 msgid "" "This repository is `available on GitHub " "`__." msgstr "이 저장소는 `깃허브에서 볼 수 있습니다 `__." -#: ../../writing/structure.rst:77 +#: ../../writing/structure.rst:81 msgid "Let's get into some specifics." msgstr "좀 더 자세히 봅시다. " -#: ../../writing/structure.rst:80 +#: ../../writing/structure.rst:84 msgid "The Actual Module" msgstr "실제 모듈" @@ -156,23 +169,23 @@ msgstr "목적" msgid "The code of interest" msgstr "관심있는 코드" -#: ../../writing/structure.rst:89 +#: ../../writing/structure.rst:93 msgid "" "Your module package is the core focus of the repository. It should not be" " tucked away:" msgstr "모듈 패키지는 저장소의 핵심입니다. 숨겨놓으면 안됩니다: " -#: ../../writing/structure.rst:96 +#: ../../writing/structure.rst:100 msgid "" "If your module consists of only a single file, you can place it directly " "in the root of your repository:" msgstr "모듈 안에 단 하나의 파일밖에 없다면, 저장소의 최상위 폴더에 바로 두어도 좋습니다. " -#: ../../writing/structure.rst:103 +#: ../../writing/structure.rst:107 msgid "Your library does not belong in an ambiguous src or python subdirectory." msgstr "라이브러리를 애매한 소스나 파이썬 하위 디렉토리에 두면 안됩니다. " -#: ../../writing/structure.rst:106 +#: ../../writing/structure.rst:110 msgid "License" msgstr "라이선스" @@ -184,14 +197,14 @@ msgstr "``./LICENSE``" msgid "Lawyering up." msgstr "법적 공방" -#: ../../writing/structure.rst:116 +#: ../../writing/structure.rst:120 msgid "" "This is arguably the most important part of your repository, aside from " "the source code itself. The full license text and copyright claims should" " exist in this file." msgstr "소스 코드를 외에 프로젝트 저장소의 가장 중요한 부분입니다. 라이선스 문서 전문과 저작권이 반드시 파일에 들어가야 합니다. " -#: ../../writing/structure.rst:120 +#: ../../writing/structure.rst:124 msgid "" "If you aren't sure which license you should use for your project, check " "out `choosealicense.com `_." @@ -199,13 +212,15 @@ msgstr "" "어떤 라이선스를 써야할지 모르겠다면 `choosealicense.com `_ 를 " "확인하세요." -#: ../../writing/structure.rst:123 +#: ../../writing/structure.rst:127 +#, fuzzy msgid "" "Of course, you are also free to publish code without a license, but this " -"would prevent many people from potentially using your code." +"would prevent many people from potentially using or contributing to your " +"code." msgstr "라이선스 없이 코드가 배포되어도 상관없을 수도 있습니다. 하지만 그랬다가는 사람들이 당신의 코드를 사용하기를 꺼릴 것입니다. " -#: ../../writing/structure.rst:127 +#: ../../writing/structure.rst:131 msgid "Setup.py" msgstr "Setup.py" @@ -217,13 +232,13 @@ msgstr "``./setup.py``" msgid "Package and distribution management." msgstr "패키지와 배포 관리" -#: ../../writing/structure.rst:136 +#: ../../writing/structure.rst:140 msgid "" "If your module package is at the root of your repository, this should " "obviously be at the root as well." msgstr "모듈 패키지가 저장소의 최상위 폴더에 있다면, Setup.py도 최상위 폴더에 두어야 합니다." -#: ../../writing/structure.rst:140 +#: ../../writing/structure.rst:144 msgid "Requirements File" msgstr "필요한 파일" @@ -235,7 +250,7 @@ msgstr "``./requirements.txt``" msgid "Development dependencies." msgstr "개발 의존성" -#: ../../writing/structure.rst:149 +#: ../../writing/structure.rst:153 msgid "" "A `pip requirements file `__ should be placed at the root of the repository. " @@ -246,16 +261,17 @@ msgstr "" "files>`__ 은 반드시 저장소의 최상위 폴더에 두어야 합니다. 이 파일은 프로젝트에 기여하기 위한 작업들, 즉 테스트, 빌드," " 문서 생성을 위해 필요한 의존성에 대하여 명시해야 합니다. " -#: ../../writing/structure.rst:155 +#: ../../writing/structure.rst:159 +#, fuzzy msgid "" -"If your project has no development dependencies, or you prefer " -"development environment setup via ``setup.py``, this file may be " +"If your project has no development dependencies, or if you prefer setting" +" up a development environment via ``setup.py``, this file may be " "unnecessary." msgstr "" "프로젝트에 개발 의존성이 없거나, 아니면 ``setup.py`` 를 통해 개발 환경을 설치하는 편을 좋아한다면 이 파일은 " "불필요합니다. " -#: ../../writing/structure.rst:160 +#: ../../writing/structure.rst:164 msgid "Documentation" msgstr "문서" @@ -267,14 +283,18 @@ msgstr "``./docs/``" msgid "Package reference documentation." msgstr "패키지 참조 문서" -#: ../../writing/structure.rst:169 +#: ../../writing/structure.rst:173 msgid "There is little reason for this to exist elsewhere." msgstr "다른 경로에 문서 파일을 둘 이유가 없습니다." -#: ../../writing/structure.rst:172 +#: ../../writing/structure.rst:176 msgid "Test Suite" msgstr "테스트 도구" +#: ../../writing/structure.rst:179 +msgid "*For advice on writing your tests, see* :doc:`/writing/tests`." +msgstr "" + #: ../../writing/structure.rst:1 msgid "``./test_sample.py`` or ``./tests``" msgstr "``./test_sample.py`` or ``./tests``" @@ -283,15 +303,15 @@ msgstr "``./test_sample.py`` or ``./tests``" msgid "Package integration and unit tests." msgstr "패키지 통합 테스트와 단위 테스트" -#: ../../writing/structure.rst:181 +#: ../../writing/structure.rst:187 msgid "Starting out, a small test suite will often exist in a single file:" msgstr "프로젝트를 시작할 때, 보통 하나의 파일에 간단한 테스트 도구를 만들 것입니다." -#: ../../writing/structure.rst:187 +#: ../../writing/structure.rst:193 msgid "Once a test suite grows, you can move your tests to a directory, like so:" msgstr "테스트 도구가 커지면 이런 폴더를 만들어서 테스트 파일을 옮기면 됩니다. " -#: ../../writing/structure.rst:195 +#: ../../writing/structure.rst:201 msgid "" "Obviously, these test modules must import your packaged module to test " "it. You can do this a few ways:" @@ -299,41 +319,39 @@ msgstr "" "물론 이런 테스트 모듈들은 프로젝트의 패키징된 모듈들을 임포트해서 테스트를 수행합니다. 테스트를 수행하는데에는 몇 가지 방법이 " "있습니다. " -#: ../../writing/structure.rst:198 +#: ../../writing/structure.rst:204 msgid "Expect the package to be installed in site-packages." msgstr "site-packages에 패키지를 설치하게 한다. " -#: ../../writing/structure.rst:199 +#: ../../writing/structure.rst:205 msgid "" "Use a simple (but *explicit*) path modification to resolve the package " "properly." msgstr "패키지 경로를 잘 찾기 위해 간단한(하지만 명확한) 경로를 사용한다. " -#: ../../writing/structure.rst:202 +#: ../../writing/structure.rst:208 msgid "" -"I highly recommend the latter. Requiring a developer to run `setup.py " -"`__ develop to test an actively changing codebase also " -"requires them to have an isolated environment setup for each instance of " -"the codebase." +"I highly recommend the latter. Requiring a developer to run ``setup.py " +"develop`` to test an actively changing codebase also requires them to " +"have an isolated environment setup for each instance of the codebase." msgstr "" -"후자를 강력 추천합니다. 계속 변경되고 있는 코드를 테스트하기 위해 `setup.py `__ 를 " -"실행해야만 한다면, 변경 중인 코드의 각 시점마다 독립된 환경 설정을 해야만 합니다. " -#: ../../writing/structure.rst:207 +#: ../../writing/structure.rst:213 +#, fuzzy msgid "" -"To give the individual tests import context, create a tests/context.py " -"file:" +"To give the individual tests import context, create a " +"``tests/context.py`` file:" msgstr "각각의 테스트마다 별도의 임포트 설정을 주고 싶다면 tests/context.py 파일을 이렇게 작성하세요. " -#: ../../writing/structure.rst:218 +#: ../../writing/structure.rst:224 msgid "Then, within the individual test modules, import the module like so:" msgstr "그 다음, 각각의 테스트 모듈마다 이렇게 모듈을 임포트 합니다. " -#: ../../writing/structure.rst:224 +#: ../../writing/structure.rst:230 msgid "This will always work as expected, regardless of installation method." msgstr "이렇게 하면 설치 방법과 상관없이 항상 생각한 대로 동작할 것입니다. " -#: ../../writing/structure.rst:226 +#: ../../writing/structure.rst:232 msgid "" "Some people will assert that you should distribute your tests within your" " module itself -- I disagree. It often increases complexity for your " @@ -344,7 +362,7 @@ msgstr "" "않습니다. 그렇게 하면 사용자 입장에서 볼 때 프로젝트의 모듈이 복잡해집니다. 그리고 추가적인 의존성 관계와 실행 환경이 필요한 " "테스트 도구가 많기 때문입니다. " -#: ../../writing/structure.rst:232 +#: ../../writing/structure.rst:238 msgid "Makefile" msgstr "Makefile" @@ -356,21 +374,22 @@ msgstr "``./Makefile``" msgid "Generic management tasks." msgstr "전반적인 관리 작업" -#: ../../writing/structure.rst:242 +#: ../../writing/structure.rst:248 +#, fuzzy msgid "" "If you look at most of my projects or any Pocoo project, you'll notice a " -"Makefile laying around. Why? These projects aren't written in C... In " -"short, make is a incredibly useful tool for defining generic tasks for " +"Makefile lying around. Why? These projects aren't written in C... In " +"short, make is an incredibly useful tool for defining generic tasks for " "your project." msgstr "" "Makefile은 지금 이 프로젝트와 다른 Pocoo 프로젝트에도 항상 있습니다. 왜 그럴까요? 이 프로젝트들은 C로 작성되지 " "않았기 때문입니다... 즉 make는 당신의 프로젝트를 관리하는 작업들을 알려주는 엄청나게 유용한 도구입니다. " -#: ../../writing/structure.rst:247 +#: ../../writing/structure.rst:253 msgid "**Sample Makefile:**" msgstr "**Sample Makefile:**" -#: ../../writing/structure.rst:259 +#: ../../writing/structure.rst:265 msgid "" "Other generic management scripts (e.g. ``manage.py`` or ``fabfile.py``) " "belong at the root of the repository as well." @@ -378,11 +397,11 @@ msgstr "" "다른 관리 작업 스크립트(``manage.py`` 또는 ``fabfile.py``) 들도 Makefile과 마찬가지로 저장소의 " "최상위 디렉토리에 두세요. " -#: ../../writing/structure.rst:263 +#: ../../writing/structure.rst:269 msgid "Regarding Django Applications" msgstr "장고 어플리케이션에 대하여" -#: ../../writing/structure.rst:265 +#: ../../writing/structure.rst:271 msgid "" "I've noticed a new trend in Django applications since the release of " "Django 1.4. Many developers are structuring their repositories poorly due" @@ -391,21 +410,21 @@ msgstr "" "장고 1.4 버전의 릴리즈 이후로 장고 어플리케이션에 새로운 유행이 불고 있습니다. 많은 개발자들이 자신들의 저장소를 지저분하게 " "구성하고 있습니다. 1.4 버전에 포함된 어플리케이션 템플릿 때문입니다. " -#: ../../writing/structure.rst:269 +#: ../../writing/structure.rst:275 msgid "" "How? Well, they go to their bare and fresh repository and run the " "following, as they always have:" msgstr "어떻게 지저분하게 하길래? 음, 이런 개발자들은 자신의 정리 안 된 저장소에서 대체로 이런 명령을 실행합니다. " -#: ../../writing/structure.rst:276 +#: ../../writing/structure.rst:282 msgid "The resulting repository structure looks like this:" msgstr "그 결과로 뽑히는 저장소의 구조는 이렇습니다: " -#: ../../writing/structure.rst:286 +#: ../../writing/structure.rst:292 msgid "Don't do this." msgstr "이렇게 하지 마세요. " -#: ../../writing/structure.rst:288 +#: ../../writing/structure.rst:294 msgid "" "Repetitive paths are confusing for both your tools and your developers. " "Unnecessary nesting doesn't help anybody (unless they're nostalgic for " @@ -414,23 +433,23 @@ msgstr "" "상위 폴더와 하위 폴더의 이름이 같으니 개발 도구도 혼란스러워하고 개발자들도 혼란스러워하게 됩니다. 불필요한 폴더 감싸기는 (SVN" " 저장소를 그리워하는게 아니라면)도움이 안됩니다. " -#: ../../writing/structure.rst:292 +#: ../../writing/structure.rst:298 msgid "Let's do it properly:" msgstr "대신 이렇게 하면 좋습니다. " -#: ../../writing/structure.rst:298 +#: ../../writing/structure.rst:304 msgid "Note the \"``.``\"." msgstr "여기에 주목하세요 \"``.``\"." -#: ../../writing/structure.rst:300 +#: ../../writing/structure.rst:306 msgid "The resulting structure:" msgstr "결과물은 이렇습니다: " -#: ../../writing/structure.rst:314 +#: ../../writing/structure.rst:320 msgid "Structure of Code is Key" msgstr "코드 구성이 핵심" -#: ../../writing/structure.rst:316 +#: ../../writing/structure.rst:322 msgid "" "Thanks to the way imports and modules are handled in Python, it is " "relatively easy to structure a Python project. Easy, here, means that you" @@ -442,7 +461,7 @@ msgstr "" "모듈을 불러오는 방식이 이해하기 쉽다는 뜻입니다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을" " 하면 됩니다." -#: ../../writing/structure.rst:323 +#: ../../writing/structure.rst:329 msgid "" "Easy structuring of a project means it is also easy to do it poorly. Some" " signs of a poorly structured project include:" @@ -450,76 +469,82 @@ msgstr "" "프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻입니다. 프로젝트가 엉망으로 구성되었음을 알 수 있는 신호를 몇 가지 " "찾아보았습니다. " -#: ../../writing/structure.rst:327 +#: ../../writing/structure.rst:333 +#, fuzzy msgid "" -"Multiple and messy circular dependencies: if your classes Table and Chair" -" in :file:`furn.py` need to import Carpenter from :file:`workers.py` to " +"Multiple and messy circular dependencies: If the classes Table and Chair " +"in :file:`furn.py` need to import Carpenter from :file:`workers.py` to " "answer a question such as ``table.isdoneby()``, and if conversely the " -"class Carpenter needs to import Table and Chair, to answer the question " +"class Carpenter needs to import Table and Chair to answer the question " "``carpenter.whatdo()``, then you have a circular dependency. In this case" " you will have to resort to fragile hacks such as using import statements" -" inside methods or functions." +" inside your methods or functions." msgstr "" "복잡한 순환 참조: ``책상.누가 만들었나()`` 같은 질문에 답하려면 :file:`가구.py` 의 탁자와 의자가 " ":file:`작업자.py` 에서 목수를 불러와야 하는데, 반대로 ``목수.뭐하니()`` 같은 질문에 답하려면 목수가 책상과 의자를 " "불러와야만 하는 경우가 있습니다. 이것이 순환 참조입니다. 이런 경우에는 메소드나 펑션 안에 있는 임포트 구문을 사용하는 것 같은 " "난도질스러운 방법에 의존하는 수 밖에 없습니다." -#: ../../writing/structure.rst:336 +#: ../../writing/structure.rst:342 +#, fuzzy msgid "" -"Hidden coupling: each and every change in Table's implementation breaks " +"Hidden coupling: Each and every change in Table's implementation breaks " "20 tests in unrelated test cases because it breaks Carpenter's code, " -"which requires very careful surgery to adapt the change. This means you " -"have too many assumptions about Table in Carpenter's code or the reverse." +"which requires very careful surgery to adapt to the change. This means " +"you have too many assumptions about Table in Carpenter's code or the " +"reverse." msgstr "" "숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 합니다. 책상의 코드 변경이 목수의" " 코드를 무너뜨리기 때문입니다. 이럴 때 코드 변경을 하려면 아주 신중하게 수술을 해야합니다. 이 말인즉, 목수의 코드 안에 있는 " "책상의 코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻입니다." -#: ../../writing/structure.rst:342 +#: ../../writing/structure.rst:348 +#, fuzzy msgid "" -"Heavy usage of global state or context: instead of explicitly passing " +"Heavy usage of global state or context: Instead of explicitly passing " "``(height, width, type, wood)`` to each other, Table and Carpenter rely " "on global variables that can be modified and are modified on the fly by " "different agents. You need to scrutinize all access to these global " -"variables to understand why a rectangular table became a square, and " -"discover that remote template code is also modifying this context, " -"messing with table dimensions." +"variables in order to understand why a rectangular table became a square," +" and discover that remote template code is also modifying this context, " +"messing with the table dimensions." msgstr "" "전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우입니다. 목수가 언제든" " 아무나 바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생깁니다. 어쩌다가 이런 일이 " "벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 샘플 코드가 변수를 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 " "것입니다." -#: ../../writing/structure.rst:351 +#: ../../writing/structure.rst:357 +#, fuzzy msgid "" "Spaghetti code: multiple pages of nested if clauses and for loops with a " "lot of copy-pasted procedural code and no proper segmentation are known " "as spaghetti code. Python's meaningful indentation (one of its most " -"controversial features) make it very hard to maintain this kind of code. " -"So the good news is that you might not see too much of it." +"controversial features) makes it very hard to maintain this kind of code." +" The good news is that you might not see too much of it." msgstr "" "스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 " "나눠지지도 않은 코드를 스파게티 코드라고 합니다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 " "복잡하고 어지러운 코드는 유지 보수하기가 어렵습니다. 다행히 이런 난장판을 많이 볼 일은 없을 것입니다." -#: ../../writing/structure.rst:358 +#: ../../writing/structure.rst:364 +#, fuzzy msgid "" "Ravioli code is more likely in Python: it consists of hundreds of similar" " little pieces of logic, often classes or objects, without proper " -"structure. If you never can remember if you have to use FurnitureTable, " -"AssetTable or Table, or even TableNew for your task at hand, you might be" -" swimming in ravioli code." +"structure. If you never can remember, if you have to use FurnitureTable, " +"AssetTable or Table, or even TableNew for your task at hand, then you " +"might be swimming in ravioli code." msgstr "" "라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있습니다. 구조화도 되어있지 않으면서 수 백개의 " "비슷한 로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 합니다. 식탁을 써야하는지, 탁자를 " "써야하는지, 그도 아니면 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것입니다." -#: ../../writing/structure.rst:366 +#: ../../writing/structure.rst:373 msgid "Modules" msgstr "모듈" -#: ../../writing/structure.rst:368 +#: ../../writing/structure.rst:375 msgid "" "Python modules are one of the main abstraction layers available and " "probably the most natural one. Abstraction layers allow separating code " @@ -528,7 +553,7 @@ msgstr "" "파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운 모습입니다. 추상 레이어는 코드를 기능 " "파트와 데이터 저장 파트로 나눌 수 있도록 해줍니다." -#: ../../writing/structure.rst:372 +#: ../../writing/structure.rst:379 msgid "" "For example, a layer of a project can handle interfacing with user " "actions, while another would handle low-level manipulation of data. The " @@ -543,26 +568,29 @@ msgstr "" " 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 합니다. 이는 ``import`` 와 ``from ... " "import`` 구문으로 가능합니다." -#: ../../writing/structure.rst:379 +#: ../../writing/structure.rst:386 +#, fuzzy msgid "" -"As soon as you use `import` statements you use modules. These can be " +"As soon as you use `import` statements, you use modules. These can be " "either built-in modules such as `os` and `sys`, third-party modules you " "have installed in your environment, or your project's internal modules." msgstr "" "`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있습니다. 이는 내장 모듈인`os`, `sys`, 프로젝트에 포함시킨 " "모듈과 따로 설치한 서드파티 모듈도 마찬가지입니다." -#: ../../writing/structure.rst:383 +#: ../../writing/structure.rst:390 +#, fuzzy msgid "" "To keep in line with the style guide, keep module names short, lowercase," " and be sure to avoid using special symbols like the dot (.) or question " -"mark (?). So a file name like :file:`my.spam.py` is one you should avoid!" -" Naming this way will interfere with the way Python looks for modules." +"mark (?). A file name like :file:`my.spam.py` is the one you should " +"avoid! Naming this way will interfere with the way Python looks for " +"modules." msgstr "" "이 책의 스타일 안내서처럼 하려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나 물음표(?) 같은 특수 문자의 사용을 지양해야 " "합니다. 그러니까 :file:`my.spam.py` 같은 이름으로 만들면 안됩니다! 파이썬이 모듈을 찾는 걸 방해할겁니다. " -#: ../../writing/structure.rst:388 +#: ../../writing/structure.rst:395 msgid "" "In the case of `my.spam.py` Python expects to find a :file:`spam.py` file" " in a folder named :file:`my` which is not the case. There is an `example" @@ -573,39 +601,44 @@ msgstr "" "파일을 찾습니다. 이렇게 하면 안됩니다. 아래 글을 참조하세요. 파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한 `예시 " "`_ " -#: ../../writing/structure.rst:393 +#: ../../writing/structure.rst:400 msgid "" -"If you'd like you could name your module :file:`my_spam.py`, but even our" -" friend the underscore should not be seen often in module names." +"If you like, you could name your module :file:`my_spam.py`, but even our " +"trusty friend the underscore, should not be seen that often in module " +"names. However, using other characters (spaces or hyphens) in module " +"names will prevent importing (- is the subtract operator). Try to keep " +"module names short so there is no need to separate words. And, most of " +"all, don't namespace with underscores; use submodules instead." msgstr "" -":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능합니다. 하지만 우리의 친구 밑줄(_)은 모듈 이름으로는 자주 " -"쓰이지 않습니다." -#: ../../writing/structure.rst:396 +#: ../../writing/structure.rst:413 +#, fuzzy msgid "" "Aside from some naming restrictions, nothing special is required for a " -"Python file to be a module, but you need to understand the import " +"Python file to be a module. But you need to understand the import " "mechanism in order to use this concept properly and avoid some issues." msgstr "" "몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없습니다. 하지만 모듈이라는 개념을 잘 사용하고" " 문제를 발생시키지 않기 위해서는, 모듈을 불러오는 방법을 이해할 필요가 있습니다." -#: ../../writing/structure.rst:400 +#: ../../writing/structure.rst:417 +#, fuzzy msgid "" "Concretely, the ``import modu`` statement will look for the proper file, " -"which is :file:`modu.py` in the same directory as the caller if it " +"which is :file:`modu.py` in the same directory as the caller, if it " "exists. If it is not found, the Python interpreter will search for " ":file:`modu.py` in the \"path\" recursively and raise an ImportError " -"exception if it is not found." +"exception when it is not found." msgstr "" "구체적으로 살펴봅시다. ``import modu`` 구문이 있으면 이는 호출자로서 같은 디렉토리 안에서 적절한 파일, 즉 " ":file:`modu.py` 라는 파일을 찾습니다. 만약 해당 파일이 발견되지 않는다면 파이썬 인터프리터는 " ":file:`modu.py` 파일을 \"path\" 에서 재귀적으로 찾습니다. 그래도 발견되지 않으면 ImportError " "exception을 띄웁니다." -#: ../../writing/structure.rst:405 +#: ../../writing/structure.rst:422 +#, fuzzy msgid "" -"Once :file:`modu.py` is found, the Python interpreter will execute the " +"When :file:`modu.py` is found, the Python interpreter will execute the " "module in an isolated scope. Any top-level statement in :file:`modu.py` " "will be executed, including other imports if any. Function and class " "definitions are stored in the module's dictionary." @@ -614,7 +647,7 @@ msgstr "" "모듈 안의 모든 최상위 구문이 실행됩니다. 불러온 다른 모듈이 있다면 그것도 함께 실행됩니다. 함수와 클래스 정의는 모듈의 " "디렉토리에 저장됩니다." -#: ../../writing/structure.rst:410 +#: ../../writing/structure.rst:427 msgid "" "Then, the module's variables, functions, and classes will be available to" " the caller through the module's namespace, a central concept in " @@ -624,7 +657,7 @@ msgstr "" "네임스페이스(namespace)를 통해 이것들을 사용합니다. 모듈의 네임스페이스(namespace)는 아주 유용하고 강력하게 " "사용되는 파이썬 프로그래밍의 핵심 개념입니다. " -#: ../../writing/structure.rst:414 +#: ../../writing/structure.rst:431 msgid "" "In many languages, an ``include file`` directive is used by the " "preprocessor to take all code found in the file and 'copy' it into the " @@ -638,47 +671,50 @@ msgstr "" "네임스페이스(namespace)에서 독립적으로 실행됩니다. 이는 일반적으로 모듈에 포함된 코드가 오작동을 하는 경우가 없다는 " "뜻입니다. " -#: ../../writing/structure.rst:420 +#: ../../writing/structure.rst:437 +#, fuzzy msgid "" "It is possible to simulate the more standard behavior by using a special " "syntax of the import statement: ``from modu import *``. This is generally" -" considered bad practice. **Using** ``import *`` **makes code harder to " -"read and makes dependencies less compartmentalized**." +" considered bad practice. **Using** ``import *`` **makes the code harder " +"to read and makes dependencies less compartmentalized**." msgstr "" "모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 작동하는지 확인해봅시다. 일반적으로" " 이러한 구문은 잘못된 습관입니다. **Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, 코드의 독립성" " 여부를 판단하기 어렵게 합니다**." -#: ../../writing/structure.rst:425 +#: ../../writing/structure.rst:442 +#, fuzzy msgid "" "Using ``from modu import func`` is a way to pinpoint the function you " -"want to import and put it in the global namespace. While much less " -"harmful than ``import *`` because it shows explicitly what is imported in" -" the global namespace, its only advantage over a simpler ``import modu`` " -"is that it will save a little typing." +"want to import and put it in the local namespace. While much less harmful" +" than ``import *`` because it shows explicitly what is imported in the " +"local namespace, its only advantage over a simpler ``import modu`` is " +"that it will save a little typing." msgstr "" "``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 전역 네임스페이스(global " "namespace)에 넣어둘 수 있는 좋은 방법입니다. 뿐만 아니라 이 구문은 전역 네임스페이스(global namespace)에서" " 무엇을 불러올지를 명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭습다. 단순히 ``import *`` 구문을 " "사용하는 것은 단지 타이핑을 덜 한다는 이점 뿐입니다." -#: ../../writing/structure.rst:431 +#: ../../writing/structure.rst:448 msgid "**Very bad**" msgstr "**Very bad**" -#: ../../writing/structure.rst:440 +#: ../../writing/structure.rst:457 ../../writing/structure.rst:827 msgid "**Better**" msgstr "**Better**" -#: ../../writing/structure.rst:448 ../../writing/structure.rst:810 +#: ../../writing/structure.rst:465 ../../writing/structure.rst:837 msgid "**Best**" msgstr "**Best**" -#: ../../writing/structure.rst:456 +#: ../../writing/structure.rst:473 +#, fuzzy msgid "" "As mentioned in the :ref:`code_style` section, readability is one of the " "main features of Python. Readability means to avoid useless boilerplate " -"text and clutter, therefore some efforts are spent trying to achieve a " +"text and clutter; therefore some efforts are spent trying to achieve a " "certain level of brevity. But terseness and obscurity are the limits " "where brevity should stop. Being able to tell immediately where a class " "or function comes from, as in the ``modu.func`` idiom, greatly improves " @@ -690,17 +726,17 @@ msgstr "" "모호해서는 안됩니다. ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은 코드의 가독성과 " "이해용이성을 크게 높여줍니다. 단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇습니다." -#: ../../writing/structure.rst:466 +#: ../../writing/structure.rst:484 msgid "Packages" msgstr "패키지" -#: ../../writing/structure.rst:468 +#: ../../writing/structure.rst:486 msgid "" "Python provides a very straightforward packaging system, which is simply " "an extension of the module mechanism to a directory." msgstr "파이썬은 아주 간단한 패키지 만들기 시스템을 제공합니다. 이 시스템은 단순히 파이썬 모듈 구조를 디렉토리로 확장한 것입니다." -#: ../../writing/structure.rst:471 +#: ../../writing/structure.rst:489 msgid "" "Any directory with an :file:`__init__.py` file is considered a Python " "package. The different modules in the package are imported in a similar " @@ -712,24 +748,21 @@ msgstr "" "모듈과 비슷한 방법으로 불러와집니다. 그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 " "특별합니다.이 파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰입니다." -#: ../../writing/structure.rst:476 +#: ../../writing/structure.rst:494 msgid "" "A file :file:`modu.py` in the directory :file:`pack/` is imported with " -"the statement ``import pack.modu``. This statement will look for an " -":file:`__init__.py` file in :file:`pack`, execute all of its top-level " -"statements. Then it will look for a file named :file:`pack/modu.py` and " +"the statement ``import pack.modu``. This statement will look for " +":file:`__init__.py` file in :file:`pack` and execute all of its top-level" +" statements. Then it will look for a file named :file:`pack/modu.py` and " "execute all of its top-level statements. After these operations, any " "variable, function, or class defined in :file:`modu.py` is available in " "the pack.modu namespace." msgstr "" -":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로 " -"불러와집니다. 이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾습니다. 그리고 해당 패키지의 " -"모든 상위 구문을 실행합니다. 이 작업 후에 :file:`modu.py` 파일에 정의된 모든 변수나 함수, 클래스를 " -"pack.modu 네임스페이스(namespace)에서 쓸 수 있습니다." -#: ../../writing/structure.rst:484 +#: ../../writing/structure.rst:502 +#, fuzzy msgid "" -"A commonly seen issue is to add too much code to :file:`__init__.py` " +"A commonly seen issue is adding too much code to :file:`__init__.py` " "files. When the project complexity grows, there may be sub-packages and " "sub-sub-packages in a deep directory structure. In this case, importing a" " single item from a sub-sub-package will require executing all " @@ -739,16 +772,17 @@ msgstr "" "구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을 수 있습니다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 불러오려고" " 했더니 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 실행하게 될 때가 있습니다." -#: ../../writing/structure.rst:490 +#: ../../writing/structure.rst:508 +#, fuzzy msgid "" -"Leaving an :file:`__init__.py` file empty is considered normal and even a" -" good practice, if the package's modules and sub-packages do not need to " +"Leaving an :file:`__init__.py` file empty is considered normal and even " +"good practice, if the package's modules and sub-packages do not need to " "share any code." msgstr "" "따라서 패키지의 모듈과 서브-패키지에서 코드를 서로 공유할 필요가 없다면 :file:`__init__.py` 은 빈 파일로 " "남겨두는게 일반적일 뿐만 아니라 좋은 습관입니다." -#: ../../writing/structure.rst:494 +#: ../../writing/structure.rst:512 msgid "" "Lastly, a convenient syntax is available for importing deeply nested " "packages: ``import very.deep.module as mod``. This allows you to use " @@ -758,86 +792,93 @@ msgstr "" "mod`` 입니다. 이 구문은 ``very.deep.module``같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를" " 사용할 수 있게 해줍니다. " -#: ../../writing/structure.rst:499 +#: ../../writing/structure.rst:519 msgid "Object-oriented programming" msgstr "객체지향 프로그래밍" -#: ../../writing/structure.rst:501 +#: ../../writing/structure.rst:521 +#, fuzzy msgid "" "Python is sometimes described as an object-oriented programming language." -" This can be somewhat misleading and needs to be clarified." +" This can be somewhat misleading and requires further clarifications." msgstr "파이썬은 종종 객체지향 프로그래밍 언어로 묘사됩니다. 이는 다소 오해의 여지가 있기에 명확히 할 필요가 있습니다." -#: ../../writing/structure.rst:504 +#: ../../writing/structure.rst:524 +#, fuzzy msgid "" "In Python, everything is an object, and can be handled as such. This is " "what is meant when we say, for example, that functions are first-class " "objects. Functions, classes, strings, and even types are objects in " "Python: like any object, they have a type, they can be passed as function" " arguments, and they may have methods and properties. In this " -"understanding, Python is an object-oriented language." +"understanding, Python can be considered as an object-oriented language." msgstr "" "파이썬에서 모든 것은 객체입니다. 그리고 객체처럼 다룰 수 있습니다. 이 말인즉 함수는 일급 객체라고 말하는 것과 같은 의미입니다." " 클래스, 문자열, 심지어 타입도 파이썬에서는 객체입니다. 다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 " "있습니다. 메소드와 속성을 가질 수도 있습니다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것입니다. " -#: ../../writing/structure.rst:511 +#: ../../writing/structure.rst:531 +#, fuzzy msgid "" "However, unlike Java, Python does not impose object-oriented programming " "as the main programming paradigm. It is perfectly viable for a Python " "project to not be object-oriented, i.e. to use no or very few class " "definitions, class inheritance, or any other mechanisms that are specific" -" to object-oriented programming." +" to object-oriented programming languages." msgstr "" "하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 있지 않습니다. 객체지향으로 만들지 않은 파이썬" " 프로젝트도 완벽하게 실행 가능합니다. 즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있습니다. 클래스 상속이나 " "객체지향 프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지입니다." -#: ../../writing/structure.rst:517 +#: ../../writing/structure.rst:537 +#, fuzzy msgid "" "Moreover, as seen in the modules_ section, the way Python handles modules" " and namespaces gives the developer a natural way to ensure the " "encapsulation and separation of abstraction layers, both being the most " "common reasons to use object-orientation. Therefore, Python programmers " -"have more latitude to not use object-orientation, when it is not required" -" by the business model." +"have more latitude as to not use object-orientation, when it is not " +"required by the business model." msgstr "" "게다가 modules_ 섹션에서 볼 수 있듯이 파이썬이 모듈과 네임스페이스(namespace)를 다루는 방식은 개발자로 하여금 " "자연스럽게 캡슐화와 추상 레이어의 분리를 가능하게 해줍니다. 캡슐화와 추상 레이어의 분리는 둘 다 객체지향을 사용하는 가장 일반적인" " 이유입니다. 그러므로 파이썬 프로그래머는 비지니스 모델이 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 됩니다." -#: ../../writing/structure.rst:524 +#: ../../writing/structure.rst:544 +#, fuzzy msgid "" "There are some reasons to avoid unnecessary object-orientation. Defining " -"custom classes is useful when we want to glue together some state and " -"some functionality. The problem, as pointed out by the discussions about " -"functional programming, comes from the \"state\" part of the equation." +"custom classes is useful when we want to glue some state and some " +"functionality together. The problem, as pointed out by the discussions " +"about functional programming, comes from the \"state\" part of the " +"equation." msgstr "" "불필요한 객체지향을 피해야 할 이유는 많습니다. 어떤 상태와 기능은 한데 모아두는 편이 더 유용할 때가 있습니다. 이럴 때는 사용자" " 정의 클래스를 정의해서 쓰면 편리합니다. 문제는 함수형 프로그래밍의 문제점으로 지적되는 것처럼 \"상태\" 를 대입할 때 " "발생합니다." -#: ../../writing/structure.rst:529 +#: ../../writing/structure.rst:549 +#, fuzzy msgid "" "In some architectures, typically web applications, multiple instances of " -"Python processes are spawned to respond to external requests that can " -"happen at the same time. In this case, holding some state into " -"instantiated objects, which means keeping some static information about " -"the world, is prone to concurrency problems or race-conditions. " -"Sometimes, between the initialization of the state of an object (usually " -"done with the ``__init__()`` method) and the actual use of the object " -"state through one of its methods, the world may have changed, and the " -"retained state may be outdated. For example, a request may load an item " -"in memory and mark it as read by a user. If another request requires the " -"deletion of this item at the same time, it may happen that the deletion " -"actually occurs after the first process loaded the item, and then we have" -" to mark as read a deleted object." +"Python processes are spawned as a response to external requests that " +"happen simultaneously. In this case, holding some state in instantiated " +"objects, which means keeping some static information about the world, is " +"prone to concurrency problems or race conditions. Sometimes, between the " +"initialization of the state of an object (usually done with the " +"``__init__()`` method) and the actual use of the object state through one" +" of its methods, the world may have changed, and the retained state may " +"be outdated. For example, a request may load an item in memory and mark " +"it as read by a user. If another request requires the deletion of this " +"item at the same time, the deletion may actually occur after the first " +"process loaded the item, and then we have to mark a deleted object as " +"read." msgstr "" "어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생합니다. 동시에 발생하는 외부의 요청에 응답하기 " "위해서입니다. 이런 경우에는 구문의 실행이 멈춰져 예정된 오브젝트가 됩니다. 즉 어떤 고정된 정보를 계속 잡고 있는 것입니다. " "이때문에 동시성의 문제나 경합 상황이 발생하기 쉽습니다." -#: ../../writing/structure.rst:542 +#: ../../writing/structure.rst:561 msgid "" "This and other issues led to the idea that using stateless functions is a" " better programming paradigm." @@ -845,7 +886,7 @@ msgstr "" "이 문제 뿐만 아니라 다른 설명하지 않은 문제들이 발생하기도 합니다. 이 때문에 상태없는 함수가 더 나은 프로그래밍 패러다임으로 " "생각되기도 한다." -#: ../../writing/structure.rst:545 +#: ../../writing/structure.rst:564 msgid "" "Another way to say the same thing is to suggest using functions and " "procedures with as few implicit contexts and side-effects as possible. A " @@ -860,36 +901,38 @@ msgstr "" " 함수를 둘러싼 맥락을 바꿔버리는 변화를 의미합니다. 만약 함수가 퍼시스턴스 레이어에 있는 데이터나 전역 변수에 있는 데이터를 " "날려버리거나 저장해 버린다면, 이런 것을 부작용이라 부릅니다. " -#: ../../writing/structure.rst:553 +#: ../../writing/structure.rst:572 +#, fuzzy msgid "" "Carefully isolating functions with context and side-effects from " -"functions with logic (called pure functions) allow the following " +"functions with logic (called pure functions) allows the following " "benefits:" msgstr "함수가 잘 분리되어 있고 부작용도 없는 순수 함수라면 다음과 같은 장점이 있습니다." -#: ../../writing/structure.rst:556 +#: ../../writing/structure.rst:575 msgid "" "Pure functions are deterministic: given a fixed input, the output will " "always be the same." msgstr "순수 함수는 결정성이 있습니다. 즉, 같은 입력값이 있으면 언제나 같은 출력값을 냅니다. " -#: ../../writing/structure.rst:559 +#: ../../writing/structure.rst:578 msgid "" "Pure functions are much easier to change or replace if they need to be " "refactored or optimized." msgstr "순수 함수는 수정하거나 최적화 작업이 필요할 때 쉽게 수정 및 변경할 수 있습니다." -#: ../../writing/structure.rst:562 +#: ../../writing/structure.rst:581 +#, fuzzy msgid "" -"Pure functions are easier to test with unit-tests: There is less need for" +"Pure functions are easier to test with unit tests: There is less need for" " complex context setup and data cleaning afterwards." msgstr "순수 함수는 단위 테스트를 하기 쉽습니다. 즉, 복잡한 테스트 셋업 작업과 데이터 삭제 작업에 손이 덜 갑니다." -#: ../../writing/structure.rst:565 +#: ../../writing/structure.rst:584 msgid "Pure functions are easier to manipulate, decorate, and pass around." msgstr "순수 함수는 다루기 쉽고, 기능을 더하기도 쉽고, 없애기도 쉽습니다." -#: ../../writing/structure.rst:567 +#: ../../writing/structure.rst:586 msgid "" "In summary, pure functions are more efficient building blocks than " "classes and objects for some architectures because they have no context " @@ -898,7 +941,7 @@ msgstr "" "한마디로, 많은 아키텍처에서 순수한 함수는 가장 효율적인 건축 자재입니다. 클래스나 오브젝트보다 낫습니다. 순수한함수는 어떤 " "컨텍스트나 부작용도 없기 때문입니다. " -#: ../../writing/structure.rst:570 +#: ../../writing/structure.rst:589 msgid "" "Obviously, object-orientation is useful and even necessary in many cases," " for example when developing graphical desktop applications or games, " @@ -909,11 +952,11 @@ msgstr "" "분명히 객체지향은 유용합니다. 그리고 꼭 필요한 경우가 많습니다. 예를 들면 데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼," " 아바타, 탈것이 있는 게임같은 경우에 그렇습니다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문입니다." -#: ../../writing/structure.rst:577 +#: ../../writing/structure.rst:597 msgid "Decorators" msgstr "데코레이터" -#: ../../writing/structure.rst:579 +#: ../../writing/structure.rst:599 msgid "" "The Python language provides a simple yet powerful syntax called " "'decorators'. A decorator is a function or a class that wraps (or " @@ -927,10 +970,11 @@ msgstr "" "파이썬에서 일급 객체이기 때문입니다. 이 작업은 '수작업'으로도 가능하지만 @decorator 문법을 쓰면 깔끔하게 쓸 수 " "있습니다. 그래서 많이들 씁니다." -#: ../../writing/structure.rst:602 +#: ../../writing/structure.rst:622 +#, fuzzy msgid "" "This mechanism is useful for separating concerns and avoiding external " -"un-related logic 'polluting' the core logic of the function or method. A " +"unrelated logic 'polluting' the core logic of the function or method. A " "good example of a piece of functionality that is better handled with " "decoration is `memoization " "`__ or caching: you " @@ -944,11 +988,11 @@ msgstr "" "있습니다. 무거운 함수의 결과값을 테이블에 저장한 다음, 이미 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 " "것입니다. 물론 이런 것은 함수 자체의 로직과는 별개입니다. " -#: ../../writing/structure.rst:611 +#: ../../writing/structure.rst:633 msgid "Context Managers" msgstr "컨텍스트 관리자" -#: ../../writing/structure.rst:613 +#: ../../writing/structure.rst:635 msgid "" "A context manager is a Python object that provides extra contextual " "information to an action. This extra information takes the form of " @@ -961,7 +1005,7 @@ msgstr "" "컨텍스트를 새로 열면서 함수를 실행하는 형태로 만들어집니다. 마찬가지로 ``with`` 블럭 안의 모든 코드를 종료시킬 때도 함수를" " 실행합니다. 컨텍스트 관리자를 사용하는 가장 유명한 예시는 이렇습니다. 파일을 열고: " -#: ../../writing/structure.rst:624 +#: ../../writing/structure.rst:646 msgid "" "Anyone familiar with this pattern knows that invoking ``open`` in this " "fashion ensures that ``f``'s ``close`` method will be called at some " @@ -971,7 +1015,7 @@ msgstr "" "이런 식의 패턴에 익숙한 사람은 이런 방식으로 ``open`` 을 실행하면 ``f`` 의 ``close`` 메소드가 언젠가는 반드시" " 실행됨을 잘 알 것입니다. " -#: ../../writing/structure.rst:628 +#: ../../writing/structure.rst:650 msgid "" "There are two easy ways to implement this functionality yourself: using a" " class or using a generator. Let's implement the above functionality " @@ -980,7 +1024,7 @@ msgstr "" "이런 기능을 직접 구현하는 2가지 쉬운 방법이 있습니다: 클래스를 사용하거나, 생성자를 사용하는 것입니다. 먼저 클래스를 사용하는 " "방법으로 위의 기능을 직접 구현해 봅시다. " -#: ../../writing/structure.rst:647 +#: ../../writing/structure.rst:669 msgid "" "This is just a regular Python object with two extra methods that are used" " by the ``with`` statement. CustomOpen is first instantiated and then its" @@ -994,16 +1038,17 @@ msgstr "" " f`` 구문 안의 모든 결과값들이 ``f`` 에 할당됩니다. ``with`` 블럭 안의 구문들이 모두 수행된 후에는 " "``__exit__`` 메소드가 호출됩니다. " -#: ../../writing/structure.rst:653 +#: ../../writing/structure.rst:675 +#, fuzzy msgid "" "And now the generator approach using Python's own `contextlib " -"`_:" +"`_:" msgstr "" "그러면 이번에는 파이썬의 `contextlib " "`_ 를 써서 생성자로 위의 기능을 " "구현해봅시다:" -#: ../../writing/structure.rst:671 +#: ../../writing/structure.rst:693 msgid "" "This works in exactly the same way as the class example above, albeit " "it's more terse. The ``custom_open`` function executes until it reaches " @@ -1017,7 +1062,7 @@ msgstr "" " ``yield`` 가 `f` 에 할당되든 상관없습니다. ``finally`` 명령은 ``with`` 안에서 예외현상이 발생하든 " "말든 반드시 ``close()`` 를 실행합니다. " -#: ../../writing/structure.rst:678 +#: ../../writing/structure.rst:700 msgid "" "Since the two approaches appear the same, we should follow the Zen of " "Python to decide when to use which. The class approach might be better if" @@ -1029,11 +1074,12 @@ msgstr "" "클래스를 쓰는 방법은 캡슐화해야하는 대량의 로직이 있을 때 좋습니다. 생성자를 쓰는 방법은 간단한 동작을 다룰 때 좋은 방법입니다." " " -#: ../../writing/structure.rst:684 +#: ../../writing/structure.rst:708 msgid "Dynamic typing" msgstr "동적 타이핑" -#: ../../writing/structure.rst:686 +#: ../../writing/structure.rst:710 +#, fuzzy msgid "" "Python is dynamically typed, which means that variables do not have a " "fixed type. In fact, in Python, variables are very different from what " @@ -1041,14 +1087,14 @@ msgid "" "languages. Variables are not a segment of the computer's memory where " "some value is written, they are 'tags' or 'names' pointing to objects. It" " is therefore possible for the variable 'a' to be set to the value 1, " -"then to the value 'a string', then to a function." +"then the value 'a string', to a function." msgstr "" "파이썬은 동적 타이핑이 되는 언어라고 불립니다. 이 말은 변수가 고정된 타입을 가지고 있지 않다는 뜻입니다. 사실 파이썬의 변수는 " "다른 수많은 언어, 특히 정적 타입 언어의 변수와는 아주 다릅니다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 " "객체를 가리키는 컴퓨터 메모리의 한 조각이 아닙니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, 값 'a string'을 " "가지고, 또 함수가 될 수도 있는 것입니다. " -#: ../../writing/structure.rst:693 +#: ../../writing/structure.rst:717 msgid "" "The dynamic typing of Python is often considered to be a weakness, and " "indeed it can lead to complexities and hard-to-debug code. Something " @@ -1060,36 +1106,37 @@ msgstr "" "'a'라는 이름이 너무나 많은 것이 될 수 있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 무관한 " "객체인지를 확인하기 위해 코드 전체를 뒤져야 합니다." -#: ../../writing/structure.rst:699 +#: ../../writing/structure.rst:723 msgid "Some guidelines help to avoid this issue:" msgstr "이러한 문제를 피하기 위한 가이드라인을 소개합니다." -#: ../../writing/structure.rst:701 +#: ../../writing/structure.rst:725 msgid "Avoid using the same variable name for different things." msgstr "다른 것에 같은 변수명을 붙이지 마라." -#: ../../writing/structure.rst:703 ../../writing/structure.rst:727 -#: ../../writing/structure.rst:790 +#: ../../writing/structure.rst:727 ../../writing/structure.rst:751 +#: ../../writing/structure.rst:817 msgid "**Bad**" msgstr "**나쁜 예**" -#: ../../writing/structure.rst:712 ../../writing/structure.rst:800 +#: ../../writing/structure.rst:736 msgid "**Good**" msgstr "**좋은 예**" -#: ../../writing/structure.rst:721 +#: ../../writing/structure.rst:745 +#, fuzzy msgid "" -"Using short functions or methods helps reduce the risk of using the same " -"name for two unrelated things." +"Using short functions or methods helps to reduce the risk of using the " +"same name for two unrelated things." msgstr "메소드나 함수를 짧게 쓰는 방법은 같은 이름을 상관없는 것들에게 붙이는 위험을 줄일 수 있습니다." -#: ../../writing/structure.rst:724 +#: ../../writing/structure.rst:748 msgid "" "It is better to use different names even for things that are related, " "when they have a different type:" msgstr "관련된 것이라고 해도 다른 타입을 가진다면 다른 이름을 붙이는 편이 좋습니다. " -#: ../../writing/structure.rst:735 +#: ../../writing/structure.rst:759 msgid "" "There is no efficiency gain when reusing names: the assignments will have" " to create new objects anyway. However, when the complexity grows and " @@ -1100,7 +1147,7 @@ msgstr "" "한 번 쓴 이름을 재활용 하는 것은 비효율적입니다. 대입문은 반드시 새로운 객체를 만들어야 합니다. 하지만 너무 복잡해지고, " "'if' 분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 변수가 어떤 타입인지 확인하기 어려워집니다. " -#: ../../writing/structure.rst:741 +#: ../../writing/structure.rst:765 msgid "" "Some coding practices, like functional programming, recommend never " "reassigning a variable. In Java this is done with the `final` keyword. " @@ -1113,15 +1160,15 @@ msgstr "" "파이썬은 `final` 키워드가 없고, 이러한 방법은 파이썬의 철학에 반하는 일입니다. 하지만 변수를 한 번 이상 재할당하지 않는 " "것은 좋은 습관이며, 가변 타입과 불변 타입을 이해하는데 도움이 될 것입니다." -#: ../../writing/structure.rst:748 +#: ../../writing/structure.rst:774 msgid "Mutable and immutable types" msgstr "가변 타입과 불변 타입" -#: ../../writing/structure.rst:750 +#: ../../writing/structure.rst:776 msgid "Python has two kinds of built-in or user-defined types." msgstr "파이썬에는 내장 타입과 사용자 정의 타입이 있습니다." -#: ../../writing/structure.rst:752 +#: ../../writing/structure.rst:778 msgid "" "Mutable types are those that allow in-place modification of the content. " "Typical mutables are lists and dictionaries: All lists have mutating " @@ -1132,7 +1179,7 @@ msgstr "" ":py:meth:`list.append` 나 :py:meth:`list.pop` 처럼 자체적으로 조작 가능한 메소드가 있습니다. " "딕셔너리도 마찬가지입니다. " -#: ../../writing/structure.rst:757 +#: ../../writing/structure.rst:783 msgid "" "Immutable types provide no method for changing their content. For " "instance, the variable x set to the integer 6 has no \"increment\" " @@ -1142,13 +1189,13 @@ msgstr "" "불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않습니다. 예를 들면 integer 6으로 설정된 변수 x에는 " "\"increment\" 가 없습니다. 만약 x에 1을 더하고 싶다면 다른 integer 변수를 만들어서 이름을 부여해야 합니다. " -#: ../../writing/structure.rst:770 +#: ../../writing/structure.rst:796 msgid "" "One consequence of this difference in behavior is that mutable types are " "not \"stable\", and therefore cannot be used as dictionary keys." msgstr "이러한 차이 때문에 가변 타입은 \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없습니다." -#: ../../writing/structure.rst:774 +#: ../../writing/structure.rst:800 msgid "" "Using properly mutable types for things that are mutable in nature and " "immutable types for things that are fixed in nature helps to clarify the " @@ -1157,7 +1204,7 @@ msgstr "" "원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, 원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 코드의 " "목적을 명확히 하는데 도움이 됩니다. " -#: ../../writing/structure.rst:778 +#: ../../writing/structure.rst:804 msgid "" "For example, the immutable equivalent of a list is the tuple, created " "with ``(1, 2)``. This tuple is a pair that cannot be changed in-place, " @@ -1166,63 +1213,139 @@ msgstr "" "예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능합니다. 튜를은 ``(1, 2)`` 로 만들 수 있습니다. 튜플은 내부적으로 " "변경이 불가능하기 때문에 딕셔너리의 키로 사용할 수 있습니다. " -#: ../../writing/structure.rst:782 +#: ../../writing/structure.rst:808 msgid "" "One peculiarity of Python that can surprise beginners is that strings are" -" immutable. This means that when constructing a string from its parts, it" -" is much more efficient to accumulate the parts in a list, which is " -"mutable, and then glue ('join') the parts together when the full string " -"is needed. One thing to notice, however, is that list comprehensions are " -"better and faster than constructing a list in a loop with calls to " -"``append()``." -msgstr "" -"초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점입니다. 이는 문자열의 일부를 다시 만들고 싶을 때, " -"애시당초 리스트로 만들어서 그 일부를 변경하는 편이 효율적이라는 뜻입니다. 리스트는 변경 가능하고, 전체 문자열이 필요하면 " -"('join')을 사용하여 한데 이어 붙일 수 있기 때문입니다. 하지만 한가지 알아둬야 할 점은 반복문에서 ``append()`` " -"메소드를 호출해 리스트를 만드는 것보다 리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 " -"것입니다." +" immutable. This means that when constructing a string from its parts, " +"appending each part to the string is inefficient because the entirety of " +"the string is copied on each append. Instead, it is much more efficient " +"to accumulate the parts in a list, which is mutable, and then glue " +"(``join``) the parts together when the full string is needed. List " +"comprehensions are usually the fastest and most idiomatic way to do this." +msgstr "" -#: ../../writing/structure.rst:818 +#: ../../writing/structure.rst:845 +#, fuzzy msgid "" "One final thing to mention about strings is that using ``join()`` is not " "always best. In the instances where you are creating a new string from a " "pre-determined number of strings, using the addition operator is actually" -" faster, but in cases like above or in cases where you are adding to an " +" faster. But in cases like above or in cases where you are adding to an " "existing string, using ``join()`` should be your preferred method." msgstr "" "문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것입니다. 문자열이 몇 개 있을지 미리 " "정해져 있는 상태에서 새로운 문자열을 만들 때는 더하기 연산자를 쓰는 편이 실제로 더 빠릅니다. 하지만 문자열이 몇 개 있을지 " "정해져 있지 않거나, 이미 만들어진 문자열에 추가로 문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것입니다. " -#: ../../writing/structure.rst:834 +#: ../../writing/structure.rst:861 +#, fuzzy msgid "" "You can also use the :ref:`% ` formatting " "operator to concatenate a pre-determined number of strings besides " -":py:meth:`str.join` and ``+``. However, :pep:`3101`, discourages the " -"usage of the ``%`` operator in favor of the :py:meth:`str.format` method." +":py:meth:`str.join` and ``+``. However, :pep:`3101` discourages the usage" +" of the ``%`` operator in favor of the :py:meth:`str.format` method." msgstr "" ":py:meth:`str.join` 과 ``+`` 외에도 포맷 연산자 :ref:`% ` 를 써서 미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있습니다. 하지만 :pep:`3101` 에 " "따르면 ``%`` 연산자는 사용하지 말 것을 권장하고 있으며 :py:meth:`str.format` 를 대신 쓸 것을 권장하고 " "있습니다. " -#: ../../writing/structure.rst:850 +#: ../../writing/structure.rst:878 msgid "Vendorizing Dependencies" msgstr "Vendorizing Dependencies" -#: ../../writing/structure.rst:854 +#: ../../writing/structure.rst:884 msgid "Runners" msgstr "Runners" -#: ../../writing/structure.rst:858 +#: ../../writing/structure.rst:889 msgid "Further Reading" msgstr "더 알아보기" -#: ../../writing/structure.rst:860 -msgid "http://docs.python.org/2/library/" +#: ../../writing/structure.rst:891 +#, fuzzy +msgid "http://docs.python.org/3/library/" msgstr "http://docs.python.org/2/library/" -#: ../../writing/structure.rst:861 -msgid "http://www.diveintopython.net/toc/index.html" +#: ../../writing/structure.rst:892 +#, fuzzy +msgid "https://diveintopython3.net/" msgstr "http://www.diveintopython.net/toc/index.html" +#~ msgid "" +#~ "**tl;dr**: This is what `Kenneth Reitz" +#~ " `_ recommends." +#~ msgstr "3줄 요약 필수(tl;dr): `Kenneth Reitz `_ 의 말입니다. " + +#~ msgid "" +#~ "I highly recommend the latter. Requiring" +#~ " a developer to run `setup.py " +#~ "`__ develop to test an " +#~ "actively changing codebase also requires " +#~ "them to have an isolated environment " +#~ "setup for each instance of the " +#~ "codebase." +#~ msgstr "" +#~ "후자를 강력 추천합니다. 계속 변경되고 있는 코드를 " +#~ "테스트하기 위해 `setup.py `__ 를 " +#~ "실행해야만 한다면, 변경 중인 코드의 각 시점마다 " +#~ "독립된 환경 설정을 해야만 합니다. " + +#~ msgid "" +#~ "If you'd like you could name your" +#~ " module :file:`my_spam.py`, but even our" +#~ " friend the underscore should not be" +#~ " seen often in module names." +#~ msgstr "" +#~ ":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 " +#~ "가능합니다. 하지만 우리의 친구 밑줄(_)은 모듈 이름으로는" +#~ " 자주 쓰이지 않습니다." + +#~ msgid "" +#~ "A file :file:`modu.py` in the directory" +#~ " :file:`pack/` is imported with the " +#~ "statement ``import pack.modu``. This statement" +#~ " will look for an :file:`__init__.py` " +#~ "file in :file:`pack`, execute all of " +#~ "its top-level statements. Then it " +#~ "will look for a file named " +#~ ":file:`pack/modu.py` and execute all of " +#~ "its top-level statements. After these" +#~ " operations, any variable, function, or " +#~ "class defined in :file:`modu.py` is " +#~ "available in the pack.modu namespace." +#~ msgstr "" +#~ ":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 " +#~ "``import pack.modu`` 구문으로 불러와집니다. 이 구문은" +#~ " :file:`pack` 에서 :file:`__init__.py` 파일을 " +#~ "찾습니다. 그리고 해당 패키지의 모든 상위 구문을 " +#~ "실행합니다. 이 작업 후에 :file:`modu.py` 파일에 " +#~ "정의된 모든 변수나 함수, 클래스를 pack.modu " +#~ "네임스페이스(namespace)에서 쓸 수 있습니다." + +#~ msgid "" +#~ "One peculiarity of Python that can " +#~ "surprise beginners is that strings are" +#~ " immutable. This means that when " +#~ "constructing a string from its parts," +#~ " it is much more efficient to " +#~ "accumulate the parts in a list, " +#~ "which is mutable, and then glue " +#~ "('join') the parts together when the " +#~ "full string is needed. One thing " +#~ "to notice, however, is that list " +#~ "comprehensions are better and faster " +#~ "than constructing a list in a loop" +#~ " with calls to ``append()``." +#~ msgstr "" +#~ "초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 " +#~ "변경 불가능하다는 점입니다. 이는 문자열의 일부를 다시 " +#~ "만들고 싶을 때, 애시당초 리스트로 만들어서 그 " +#~ "일부를 변경하는 편이 효율적이라는 뜻입니다. 리스트는 변경" +#~ " 가능하고, 전체 문자열이 필요하면 ('join')을 사용하여" +#~ " 한데 이어 붙일 수 있기 때문입니다. 하지만 " +#~ "한가지 알아둬야 할 점은 반복문에서 ``append()`` " +#~ "메소드를 호출해 리스트를 만드는 것보다 리스트 " +#~ "컴프리헨션(list comprehension)을 쓰는 편이 더 좋고" +#~ " 빠르다는 것입니다." + diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.mo b/docs/locale/ko/LC_MESSAGES/writing/style.mo index 6a3eabeb5a2b5573ac92430c6e1c4d3c29df2093..14b3a360d9cfd9b379c5d4e896688577799c634d 100644 GIT binary patch delta 6895 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 U{hWHh$^UK-m<+GD`Q*eu07YO>l>h($ delta 12994 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 ZgrgQ0?#ZN7NLd9^Vm8-k2ilgX{{n4=7N`IK diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po index d3cea2943..5fad46d99 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/style.po +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -1,122 +1,118 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../writing/style.rst:4 +#: ../../writing/style.rst:6 msgid "Code Style" msgstr "코드 스타일" -#: ../../writing/style.rst:6 +#: ../../writing/style.rst:10 +#, fuzzy msgid "" "If you ask Python programmers what they like most about Python, they will" -" often cite its high readability. Indeed, a high level of readability is" -" at the heart of the design of the Python language, following the " +" often cite its high readability. Indeed, a high level of readability is " +"at the heart of the design of the Python language, following the " "recognized fact that code is read much more often than it is written." msgstr "" -"파이썬 프로그래머에게 파이썬의 어떤 점을 가장 좋아하냐고 묻는다면, " -"뛰어난 가독성이 좋다고들 할 것입니다. " -"실제로 높은 수준의 가독성은 파이썬 언어 디자인의 핵심입니다. " -"코드 작성은 한 번이겠지만, 코드를 읽을 일은 훨씬 더 많기 때문입니다. " +"파이썬 프로그래머에게 파이썬의 어떤 점을 가장 좋아하냐고 묻는다면, 뛰어난 가독성이 좋다고들 할 것입니다. 실제로 높은 수준의 " +"가독성은 파이썬 언어 디자인의 핵심입니다. 코드 작성은 한 번이겠지만, 코드를 읽을 일은 훨씬 더 많기 때문입니다. " -#: ../../writing/style.rst:11 +#: ../../writing/style.rst:15 msgid "" "One reason for the high readability of Python code is its relatively " "complete set of Code Style guidelines and \"Pythonic\" idioms." -msgstr "" -"파이썬 코드가 쉽게 읽히고 잘 이해되는 이유는 " -"비교적 완벽한 코드 스타일 가이드라인과 \"파이썬스러운\" 이디엄 때문입니다. " +msgstr "파이썬 코드가 쉽게 읽히고 잘 이해되는 이유는 비교적 완벽한 코드 스타일 가이드라인과 \"파이썬스러운\" 이디엄 때문입니다. " -#: ../../writing/style.rst:14 +#: ../../writing/style.rst:18 msgid "" "When a veteran Python developer (a Pythonista) calls portions of code not" " \"Pythonic\", they usually mean that these lines of code do not follow " "the common guidelines and fail to express its intent in what is " "considered the best (hear: most readable) way." msgstr "" -"뿐만 아니라 베테랑 파이썬 개발자(파이써니스타)들이 코드의 어느 부분을 지적하며 " -"이건 \"파이썬스럽지\" 않아, 라고 한다면 이는 " -"보통 파이썬의 일반적인 가이드라인을 따르지 않았다는 뜻이며, " -"가장 좋은 방법(명심하세요: 최고의 가독성)을 따르지 않아 코드의 의도를 표현하는데 " -"실패했다는 뜻입니다. " +"뿐만 아니라 베테랑 파이썬 개발자(파이써니스타)들이 코드의 어느 부분을 지적하며 이건 \"파이썬스럽지\" 않아, 라고 한다면 이는 " +"보통 파이썬의 일반적인 가이드라인을 따르지 않았다는 뜻이며, 가장 좋은 방법(명심하세요: 최고의 가독성)을 따르지 않아 코드의 " +"의도를 표현하는데 실패했다는 뜻입니다. " -#: ../../writing/style.rst:19 +#: ../../writing/style.rst:23 msgid "" "On some border cases, no best way has been agreed upon on how to express " "an intent in Python code, but these cases are rare." -msgstr "" -"어떤 경우에는 파이썬 코드의 의도를 표현하기 위한 최선의 방법을 합의하기 어려울 때도 있습니다. " -"하지만 이런 경우는 거의 없습니다. " +msgstr "어떤 경우에는 파이썬 코드의 의도를 표현하기 위한 최선의 방법을 합의하기 어려울 때도 있습니다. 하지만 이런 경우는 거의 없습니다. " -#: ../../writing/style.rst:23 +#: ../../writing/style.rst:29 msgid "General concepts" msgstr "일반적인 개념" -#: ../../writing/style.rst:26 +#: ../../writing/style.rst:32 msgid "Explicit code" msgstr "명쾌한 코드" -#: ../../writing/style.rst:28 +#: ../../writing/style.rst:34 msgid "" "While any kind of black magic is possible with Python, the most explicit " "and straightforward manner is preferred." -msgstr "" -"파이썬으로 어둡의 마법을 부릴 수 있다면, " -"가장 명쾌하고 간단한 방법을 추천합니다. " +msgstr "파이썬으로 어둡의 마법을 부릴 수 있다면, 가장 명쾌하고 간단한 방법을 추천합니다. " -#: ../../writing/style.rst:31 ../../writing/style.rst:58 +#: ../../writing/style.rst:37 ../../writing/style.rst:64 msgid "**Bad**" msgstr "**나쁜 예**" -#: ../../writing/style.rst:39 ../../writing/style.rst:69 +#: ../../writing/style.rst:45 ../../writing/style.rst:75 msgid "**Good**" msgstr "**좋은 예**" -#: ../../writing/style.rst:46 +#: ../../writing/style.rst:52 msgid "" "In the good code above, x and y are explicitly received from the caller, " "and an explicit dictionary is returned. The developer using this function" " knows exactly what to do by reading the first and last lines, which is " "not the case with the bad example." msgstr "" -"위의 좋은 코드 예시에서 " -"x와 y는 호출자로부터 직접 값을 받아와 곧바로 딕셔너리로 반환합니다. " -"이 함수를 쓰는 개발자들은 첫 줄과 마지막 " -"줄을 읽는 것만으로 무엇을 하는 함수인지 정확히 알 수 있습니다. " -"하지만 나쁜 예에서는 그렇지 않습니다. " +"위의 좋은 코드 예시에서 x와 y는 호출자로부터 직접 값을 받아와 곧바로 딕셔너리로 반환합니다. 이 함수를 쓰는 개발자들은 첫 줄과" +" 마지막 줄을 읽는 것만으로 무엇을 하는 함수인지 정확히 알 수 있습니다. 하지만 나쁜 예에서는 그렇지 않습니다. " -#: ../../writing/style.rst:52 +#: ../../writing/style.rst:58 msgid "One statement per line" msgstr "한 줄에 한 구문" -#: ../../writing/style.rst:54 +#: ../../writing/style.rst:60 msgid "" "While some compound statements such as list comprehensions are allowed " "and appreciated for their brevity and their expressiveness, it is bad " "practice to have two disjointed statements on the same line of code." msgstr "" -"간결성과 표현성을 위해 리스트 컴프리헨션(list comprehension) 같은 " -"복잡한 구문을 만드는 경우가 있습니다. 이렇게 한 " -"줄의 코드에 두 개의 분리 가능한 코드를 넣는 것은 잘못된 습관입니다. " +"간결성과 표현성을 위해 리스트 컴프리헨션(list comprehension) 같은 복잡한 구문을 만드는 경우가 있습니다. 이렇게 한" +" 줄의 코드에 두 개의 분리 가능한 코드를 넣는 것은 잘못된 습관입니다. " -#: ../../writing/style.rst:85 +#: ../../writing/style.rst:91 msgid "Function arguments" msgstr "함수 인자" -#: ../../writing/style.rst:87 +#: ../../writing/style.rst:93 msgid "Arguments can be passed to functions in four different ways." msgstr "인자는 4가지 경로를 통해 함수로 전달될 수 있습니다." -#: ../../writing/style.rst:89 +#: ../../writing/style.rst:95 msgid "" "**Positional arguments** are mandatory and have no default values. They " "are the simplest form of arguments and they can be used for the few " @@ -125,17 +121,12 @@ msgid "" "``point(x, y)`` the user of the function has no difficulty remembering " "that those two functions require two arguments, and in which order." msgstr "" -"**위치 인자** 는 필수입니다. " -"그리고 디폴트 값을 가지면 안됩니다. " -"위치 인자는 인자의 가장 간단한 형태이자, " -"함수의 의미를 완전히 담고있는 함수 자체를 전달하기도 합니다. " -"인자의 순서는 넣은대로 들어갑니다. " -"예를 들어 " -"``send(message, recipient)`` 혹은 ``point(x, y)`` 에서 " -"함수를 사용하는 사람은 이 함수들이 인자를 몇 개 필요로 하는지, " +"**위치 인자** 는 필수입니다. 그리고 디폴트 값을 가지면 안됩니다. 위치 인자는 인자의 가장 간단한 형태이자, 함수의 의미를 " +"완전히 담고있는 함수 자체를 전달하기도 합니다. 인자의 순서는 넣은대로 들어갑니다. 예를 들어 ``send(message, " +"recipient)`` 혹은 ``point(x, y)`` 에서 함수를 사용하는 사람은 이 함수들이 인자를 몇 개 필요로 하는지, " "어느 순서로 들어가야 하는지 기억하려고 고민할 필요가 없습니다. " -#: ../../writing/style.rst:96 +#: ../../writing/style.rst:102 msgid "" "In those two cases, it is possible to use argument names when calling the" " functions and, doing so, it is possible to switch the order of " @@ -145,12 +136,11 @@ msgid "" "to ``send('Hello', 'World')`` and ``point(1, 2)``." msgstr "" "위의 예시에서 함수를 호출할 때 인자명을 명시하는 것도 가능합니다. " -"``send(recipient='World',message='Hello')`` , ``point(y=2, x=1)`` " -"이렇게 하면 인자의 순서를 바꿔도 상관없습니다. " -"하지만 위 방법은 ``send('Hello', 'World')`` , ``point(1, 2)`` " -"에 비하여 가독성이 떨어지고, 코드가 쓸데없이 장황해집니다. " +"``send(recipient='World',message='Hello')`` , ``point(y=2, x=1)`` 이렇게 하면 " +"인자의 순서를 바꿔도 상관없습니다. 하지만 위 방법은 ``send('Hello', 'World')`` , ``point(1, " +"2)`` 에 비하여 가독성이 떨어지고, 코드가 쓸데없이 장황해집니다. " -#: ../../writing/style.rst:103 +#: ../../writing/style.rst:109 msgid "" "**Keyword arguments** are not mandatory and have default values. They are" " often used for optional parameters sent to the function. When a function" @@ -161,20 +151,17 @@ msgid "" " optional, and evaluate to ``None`` when they are not passed another " "value." msgstr "" -"**키워드 인자** 는 필수값은 아니지만 디폴트값을 가집니다. " -"키워드 인자는 선택적인 파라미터로서 함수에 전달됩니다. " -"함수가 2개 혹은 3개 이상의 위치 인자를 가지면 " -"여기에 무슨 값을 넣어야할지 기억하기 어렵습니다. " -"이 때 디폴트값을 가진 키워드 인자가 도움이 됩니다. " -"예를 들어 이렇게 하면 ``send`` 함수를 더 명확하게 정의할 수 있습니다. " -"``send(message, to, cc=None, bcc=None)`` ." -"여기서 ``cc`` 와 ``bcc`` 는 선택적인 값입니다. " -"그리고 다른 값을 넣지 않으면 ``None`` 으로 해석됩니다. " +"**키워드 인자** 는 필수값은 아니지만 디폴트값을 가집니다. 키워드 인자는 선택적인 파라미터로서 함수에 전달됩니다. 함수가 2개 " +"혹은 3개 이상의 위치 인자를 가지면 여기에 무슨 값을 넣어야할지 기억하기 어렵습니다. 이 때 디폴트값을 가진 키워드 인자가 도움이" +" 됩니다. 예를 들어 이렇게 하면 ``send`` 함수를 더 명확하게 정의할 수 있습니다. ``send(message, to, " +"cc=None, bcc=None)`` .여기서 ``cc`` 와 ``bcc`` 는 선택적인 값입니다. 그리고 다른 값을 넣지 않으면 " +"``None`` 으로 해석됩니다. " -#: ../../writing/style.rst:111 +#: ../../writing/style.rst:117 +#, fuzzy msgid "" "Calling a function with keyword arguments can be done in multiple ways in" -" Python, for example it is possible to follow the order of arguments in " +" Python; for example, it is possible to follow the order of arguments in " "the definition without explicitly naming the arguments, like in " "``send('Hello', 'World', 'Cthulhu', 'God')``, sending a blind carbon copy" " to God. It would also be possible to name arguments in another order, " @@ -183,53 +170,45 @@ msgid "" "follow the syntax that is the closest to the function definition: " "``send('Hello', 'World', cc='Cthulhu', bcc='God')``." msgstr "" -"파이썬에서는 키워드 인자가 있는 함수를 다양한 방식으로 호출할 수 있습니다. " -"예를 들면 ``send('Hello', 'World', 'Cthulhu', 'God')`` 처럼 " -"인자명을 명시하지 않고 함수를 정의할 때의 순서에 따라 인자들을 보낼 수 있습니다. " -"이렇게 하면 God에게 blind carbon copy를 보내게 됩니다. " -"다른 방법도 가능합니다. " -"``send('Hello again', 'World', bcc='God', cc='Cthulhu')`` 처럼 " -"순서를 다르게해도 인자명을 명시적으로 넣어주면 됩니다. " -"그래도 위 두 방식처럼 함수 정의시의 인자 순서를 어그러뜨리는 방식은 " -"가급적 피하는 편이 좋습니다. " -"즉 이렇게 하는게 제일 좋습니다: " -"``send('Hello', 'World', cc='Cthulhu', bcc='God')``." +"파이썬에서는 키워드 인자가 있는 함수를 다양한 방식으로 호출할 수 있습니다. 예를 들면 ``send('Hello', 'World'," +" 'Cthulhu', 'God')`` 처럼 인자명을 명시하지 않고 함수를 정의할 때의 순서에 따라 인자들을 보낼 수 있습니다. " +"이렇게 하면 God에게 blind carbon copy를 보내게 됩니다. 다른 방법도 가능합니다. ``send('Hello " +"again', 'World', bcc='God', cc='Cthulhu')`` 처럼 순서를 다르게해도 인자명을 명시적으로 넣어주면 " +"됩니다. 그래도 위 두 방식처럼 함수 정의시의 인자 순서를 어그러뜨리는 방식은 가급적 피하는 편이 좋습니다. 즉 이렇게 하는게 제일" +" 좋습니다: ``send('Hello', 'World', cc='Cthulhu', bcc='God')``." -#: ../../writing/style.rst:121 +#: ../../writing/style.rst:127 +#, fuzzy msgid "" -"As a side note, following `YAGNI " +"As a side note, following the `YAGNI " "`_ principle, it is" " often harder to remove an optional argument (and its logic inside the " "function) that was added \"just in case\" and is seemingly never used, " "than to add a new optional argument and its logic when needed." msgstr "" -"첨언 하나. " -"`YAGNI `_ 원칙에 따르면, " -"\"만약을 위해서\" 추가했고 두 번 다시 사용하지 않은 " -"선택적인 인자(그리고 함수 안에 포함된 관련 로직)을 " -"삭제하기란, 필요할 때 새로운 선택적인 인자와 관련 로직을 추가하기보다 " -"훨씬 어렵습니다. " +"첨언 하나. `YAGNI `_ " +"원칙에 따르면, \"만약을 위해서\" 추가했고 두 번 다시 사용하지 않은 선택적인 인자(그리고 함수 안에 포함된 관련 로직)을 " +"삭제하기란, 필요할 때 새로운 선택적인 인자와 관련 로직을 추가하기보다 훨씬 어렵습니다. " -#: ../../writing/style.rst:126 +#: ../../writing/style.rst:132 +#, fuzzy msgid "" "The **arbitrary argument list** is the third way to pass arguments to a " "function. If the function intention is better expressed by a signature " "with an extensible number of positional arguments, it can be defined with" " the ``*args`` constructs. In the function body, ``args`` will be a tuple" " of all the remaining positional arguments. For example, ``send(message, " -"*args)`` can be called with each recipient as an argument:``send('Hello'," -" 'God', 'Mom', 'Cthulhu')``, and in the function body ``args`` will be " -"equal to ``('God', 'Mom', 'Cthulhu')``." +"*args)`` can be called with each recipient as an argument: " +"``send('Hello', 'God', 'Mom', 'Cthulhu')``, and in the function body " +"``args`` will be equal to ``('God', 'Mom', 'Cthulhu')``." msgstr "" -"**임의 인자 리스트** 는 함수에 인자를 보내는 세번째 방법입니다. " -"위치 인자에 추가적인 번호를 달아야 함수의 의도가 보다 잘 설명되는 경우에는 " -"``*args`` 생성자를 쓰면 됩니다. " -"함수 본문에서 ``args`` 는 나머지 모든 위치 인자의 튜플이 됩니다. " -"예를 들어 ``send(message, *args)`` 는 이런 식으로 인자가 호출됩니다: " -"``send('Hello', 'God', 'Mom', 'Cthulhu')`` 를 호출하면, " -"함수 본문에서 ``args`` 는 ``('God', 'Mom', 'Cthulhu')`` 와 같습니다. " +"**임의 인자 리스트** 는 함수에 인자를 보내는 세번째 방법입니다. 위치 인자에 추가적인 번호를 달아야 함수의 의도가 보다 잘 " +"설명되는 경우에는 ``*args`` 생성자를 쓰면 됩니다. 함수 본문에서 ``args`` 는 나머지 모든 위치 인자의 튜플이 " +"됩니다. 예를 들어 ``send(message, *args)`` 는 이런 식으로 인자가 호출됩니다: ``send('Hello', " +"'God', 'Mom', 'Cthulhu')`` 를 호출하면, 함수 본문에서 ``args`` 는 ``('God', 'Mom', " +"'Cthulhu')`` 와 같습니다. " -#: ../../writing/style.rst:135 +#: ../../writing/style.rst:141 msgid "" "However, this construct has some drawbacks and should be used with " "caution. If a function receives a list of arguments of the same nature, " @@ -242,18 +221,14 @@ msgid "" " any sequence, including iterators, that cannot be unpacked as other " "sequences." msgstr "" -"하지만 이 생성자에는 문제점이 있으니 주의하셔야 합니다. " -"만약 함수가 같은 속성을 가진 인자의 리스트를 받는다면 ," -"이 리스트는 리스트나 시퀀스의 형태를 가진 하나의 " -"인자로 정의하는 편이 보다 명확할 때가 많습니다. " -"예를 들어 ``send`` 가 복수의 수신자를 가진다면 " -"이런 식으로 명확하게 정의하는 편이 좋습니다: " -"``send(message, recipients)`` 로 정의하고, " -"``send('Hello', ['God', 'Mom', 'Cthulhu'])`` 로 호출합니다. " -"이 방식에서는 함수를 사용하는 사람들이 미리 수신자 명단을 리스트로 가공할 수 있고, " -"어느 시퀀스를 넘겨받든 이터레이터만 있으면 원하는 방식으로 풀 수 있습니다. " +"하지만 이 생성자에는 문제점이 있으니 주의하셔야 합니다. 만약 함수가 같은 속성을 가진 인자의 리스트를 받는다면 ,이 리스트는 " +"리스트나 시퀀스의 형태를 가진 하나의 인자로 정의하는 편이 보다 명확할 때가 많습니다. 예를 들어 ``send`` 가 복수의 " +"수신자를 가진다면 이런 식으로 명확하게 정의하는 편이 좋습니다: ``send(message, recipients)`` 로 정의하고," +" ``send('Hello', ['God', 'Mom', 'Cthulhu'])`` 로 호출합니다. 이 방식에서는 함수를 사용하는 " +"사람들이 미리 수신자 명단을 리스트로 가공할 수 있고, 어느 시퀀스를 넘겨받든 이터레이터만 있으면 원하는 방식으로 풀 수 있습니다." +" " -#: ../../writing/style.rst:144 +#: ../../writing/style.rst:150 msgid "" "The **arbitrary keyword argument dictionary** is the last way to pass " "arguments to functions. If the function requires an undetermined series " @@ -262,13 +237,11 @@ msgid "" "named arguments that have not been caught by other keyword arguments in " "the function signature." msgstr "" -"**임의 키워드 인자 딕셔너리** 는 함수에 인자를 넘기는 마지막 방식입니다. " -"만약 함수가 필요로 하는 인자가 몇 개가 들어올지 알 수 없으되 이름이 붙어있다면, " -"``kwargs`` 생성자를 사용할 수 있습니다. " -"함수 본문에서 ``kwargs`` 는 이름붙은 모든 인자의 딕셔너리가 되는데 " -"이러한 인자들은 오로지 ``kwargs`` 로만 받을 수 있습니다. " +"**임의 키워드 인자 딕셔너리** 는 함수에 인자를 넘기는 마지막 방식입니다. 만약 함수가 필요로 하는 인자가 몇 개가 들어올지 알" +" 수 없으되 이름이 붙어있다면, ``kwargs`` 생성자를 사용할 수 있습니다. 함수 본문에서 ``kwargs`` 는 이름붙은 " +"모든 인자의 딕셔너리가 되는데 이러한 인자들은 오로지 ``kwargs`` 로만 받을 수 있습니다. " -#: ../../writing/style.rst:151 +#: ../../writing/style.rst:157 msgid "" "The same caution as in the case of *arbitrary argument list* is " "necessary, for similar reasons: these powerful techniques are to be used " @@ -276,12 +249,10 @@ msgid "" " if the simpler and clearer construct is sufficient to express the " "function's intention." msgstr "" -"비슷한 이유로 *임의 인자 리스트* 를 쓸 때도 조심해야합니다: " -"이런 강력한 테크닉은 꼭 필요한 경우에만 써야합니다. " -"그리고 다른 간단하고 명쾌한 생성자로도 함수의 의도를 표현하기에 충분하다면 " -"절대 쓰면 안됩니다. " +"비슷한 이유로 *임의 인자 리스트* 를 쓸 때도 조심해야합니다: 이런 강력한 테크닉은 꼭 필요한 경우에만 써야합니다. 그리고 다른 " +"간단하고 명쾌한 생성자로도 함수의 의도를 표현하기에 충분하다면 절대 쓰면 안됩니다. " -#: ../../writing/style.rst:156 +#: ../../writing/style.rst:162 msgid "" "It is up to the programmer writing the function to determine which " "arguments are positional arguments and which are optional keyword " @@ -289,50 +260,49 @@ msgid "" "arbitrary argument passing. If the advice above is followed wisely, it is" " possible and enjoyable to write Python functions that are:" msgstr "" -"어느 인자를 위치 인자로 쓸지, 어느 인자를 선택적 키워드 인자로 쓸지, " -"임의 인자를 넘기는 고급 기술을 쓸지 말지를 결정하는 것은 " -"전적으로 함수를 작성하는 프로그래머에게 달렸습니다. " -"지금까지의 조언이 현명하게 쓰인다면, 파이썬 함수를 이렇게 즐겁게 작성할 수 있습니다: " +"어느 인자를 위치 인자로 쓸지, 어느 인자를 선택적 키워드 인자로 쓸지, 임의 인자를 넘기는 고급 기술을 쓸지 말지를 결정하는 것은" +" 전적으로 함수를 작성하는 프로그래머에게 달렸습니다. 지금까지의 조언이 현명하게 쓰인다면, 파이썬 함수를 이렇게 즐겁게 작성할 수 " +"있습니다: " -#: ../../writing/style.rst:162 +#: ../../writing/style.rst:168 msgid "easy to read (the name and arguments need no explanations)" msgstr "읽기 쉽다(이름과 인자를 설명할 필요가 없다)" -#: ../../writing/style.rst:164 +#: ../../writing/style.rst:170 msgid "" "easy to change (adding a new keyword argument does not break other parts " "of the code)" msgstr "변경하기 쉽다(새 키워드 인자를 추가해도 코드의 다른 부분을 망가뜨리지 않는다)" -#: ../../writing/style.rst:168 +#: ../../writing/style.rst:174 msgid "Avoid the magical wand" msgstr "마법의 지팡이를 피하기" -#: ../../writing/style.rst:170 +#: ../../writing/style.rst:176 msgid "" "A powerful tool for hackers, Python comes with a very rich set of hooks " "and tools allowing you to do almost any kind of tricky tricks. For " "instance, it is possible to do each of the following:" msgstr "" -"파이썬은 해커를 위한 막강한 도구입니다. " -"파이썬에는 어떠한 종류의 교묘한 트릭이라도 가능하게 해주는 다양한 도구들이 있습니다. " -"예를 들자면 이런 것들입니다: " +"파이썬은 해커를 위한 막강한 도구입니다. 파이썬에는 어떠한 종류의 교묘한 트릭이라도 가능하게 해주는 다양한 도구들이 있습니다. 예를" +" 들자면 이런 것들입니다: " -#: ../../writing/style.rst:174 +#: ../../writing/style.rst:180 msgid "change how objects are created and instantiated" msgstr "객체들이 어떻게 생성되고 초기화되었는지를 변경" -#: ../../writing/style.rst:176 +#: ../../writing/style.rst:182 msgid "change how the Python interpreter imports modules" msgstr "파이썬 인터프리터가 모듈을 임포트 하는 방법을 변경" -#: ../../writing/style.rst:178 +#: ../../writing/style.rst:184 +#, fuzzy msgid "" -"it is even possible (and recommended if needed) to embed C routines in " +"It is even possible (and recommended if needed) to embed C routines in " "Python." msgstr "파이썬에 C 루틴을 넣는 것도 가능(필요하면 추천하기도)" -#: ../../writing/style.rst:180 +#: ../../writing/style.rst:186 msgid "" "However, all these options have many drawbacks and it is always better to" " use the most straightforward way to achieve your goal. The main drawback" @@ -340,35 +310,31 @@ msgid "" "code analysis tools, such as pylint or pyflakes, will be unable to parse " "this \"magic\" code." msgstr "" -"하지만 이 모든 방법은 결점이 있습니다. " -"그리고 목표를 향해 곧바로 나아가는 방법이 늘 더 좋습니다. " -"가장 중요한 문제점은 이러한 생성자를 쓰면 가독성이 엄청나게 훼손된다는 점입니다. " -"파이린트나 파이플레이크 같은 많은 코드 분석 툴이 이런 \"마법\" 코드를 파싱하지 못합니다. " +"하지만 이 모든 방법은 결점이 있습니다. 그리고 목표를 향해 곧바로 나아가는 방법이 늘 더 좋습니다. 가장 중요한 문제점은 이러한 " +"생성자를 쓰면 가독성이 엄청나게 훼손된다는 점입니다. 파이린트나 파이플레이크 같은 많은 코드 분석 툴이 이런 \"마법\" 코드를 " +"파싱하지 못합니다. " -#: ../../writing/style.rst:185 +#: ../../writing/style.rst:191 msgid "" "We consider that a Python developer should know about these nearly " "infinite possibilities, because it instills confidence that no impassable" " problem will be on the way. However, knowing how and particularly when " "**not** to use them is very important." msgstr "" -"우리는 파이썬 개발자들이 이러한 무한한 가능성을 알았으면 좋겠습니다. " -"해결불가능한 문제는 없다는 자신감을 심어주기 때문입니다. " +"우리는 파이썬 개발자들이 이러한 무한한 가능성을 알았으면 좋겠습니다. 해결불가능한 문제는 없다는 자신감을 심어주기 때문입니다. " "하지만 어떻게, 특히 어느 시점에 이런 마법의 지팡이를 **사용하지 말아야 하는지** 를 아는 것은 대단히 중요합니다. " -#: ../../writing/style.rst:190 +#: ../../writing/style.rst:196 msgid "" "Like a kung fu master, a Pythonista knows how to kill with a single " "finger, and never to actually do it." -msgstr "" -"쿵푸의 달인처럼, 파이써니스타는 한 손가락으로 사람을 죽일 수 있지만 " -"절대 실전에서 그것을 사용하지 않습니다. " +msgstr "쿵푸의 달인처럼, 파이써니스타는 한 손가락으로 사람을 죽일 수 있지만 절대 실전에서 그것을 사용하지 않습니다. " -#: ../../writing/style.rst:194 +#: ../../writing/style.rst:200 msgid "We are all responsible users" msgstr "우리는 모두 책임감 있는 사용자다" -#: ../../writing/style.rst:196 +#: ../../writing/style.rst:202 msgid "" "As seen above, Python allows many tricks, and some of them are " "potentially dangerous. A good example is that any client code can " @@ -377,28 +343,26 @@ msgid "" "languages like Java, which give a lot of mechanisms to prevent any " "misuse, is expressed by the saying: \"We are all responsible users\"." msgstr "" -"위에서 본대로 파이썬에서는 많은 트릭이 가능하지만 이런 것들은 위험할 수 있습니다. " -"어느 클라이언트 코드가 객체의 속성과 메소드를 오버라이드 할 수 있다는 것은 " -"이 위험성에 대한 좋은 예시입니다. 파이썬에는 \"private\" 키워드가 없습니다. " -"이는 자바처럼 오류를 막기 위한 많은 메커니즘을 가지고 있는 방어적인 언어와는 아주 다릅니다. " -"이러한 철학은 다음과 같이 표현할 수 있습니다: \"우리는 모두 책임감 있는 사용자다\"." +"위에서 본대로 파이썬에서는 많은 트릭이 가능하지만 이런 것들은 위험할 수 있습니다. 어느 클라이언트 코드가 객체의 속성과 메소드를 " +"오버라이드 할 수 있다는 것은 이 위험성에 대한 좋은 예시입니다. 파이썬에는 \"private\" 키워드가 없습니다. 이는 자바처럼" +" 오류를 막기 위한 많은 메커니즘을 가지고 있는 방어적인 언어와는 아주 다릅니다. 이러한 철학은 다음과 같이 표현할 수 있습니다: " +"\"우리는 모두 책임감 있는 사용자다\"." -#: ../../writing/style.rst:203 +#: ../../writing/style.rst:209 +#, fuzzy msgid "" "This doesn't mean that, for example, no properties are considered " "private, and that no proper encapsulation is possible in Python. Rather, " "instead of relying on concrete walls erected by the developers between " -"their code and other's, the Python community prefers to rely on a set of " +"their code and others', the Python community prefers to rely on a set of " "conventions indicating that these elements should not be accessed " "directly." msgstr "" -"이 말의 의미인즉 이런 경우를 말하는 것입니다. " -"파이썬에는 private로 인식되는 속성이 없습니다. 캡슐화도 불가능합니다. " -"파이썬에서는 개발자가 자신이 만든 코드와 다른 코드들 사이에 콘트리트 장벽을 세우고 " -"거기에 의지하지 않습니다. 대신에 파이썬 커뮤니티에는 코딩 컨벤션이 있습니다. " -"코딩 컨벤션을 통해서 직접 접근해서는 안 될 엘리먼트들을 알려줍니다. " +"이 말의 의미인즉 이런 경우를 말하는 것입니다. 파이썬에는 private로 인식되는 속성이 없습니다. 캡슐화도 불가능합니다. " +"파이썬에서는 개발자가 자신이 만든 코드와 다른 코드들 사이에 콘트리트 장벽을 세우고 거기에 의지하지 않습니다. 대신에 파이썬 " +"커뮤니티에는 코딩 컨벤션이 있습니다. 코딩 컨벤션을 통해서 직접 접근해서는 안 될 엘리먼트들을 알려줍니다. " -#: ../../writing/style.rst:209 +#: ../../writing/style.rst:215 msgid "" "The main convention for private properties and implementation details is " "to prefix all \"internals\" with an underscore. If the client code breaks" @@ -406,12 +370,11 @@ msgid "" "problems encountered if the code is modified is the responsibility of the" " client code." msgstr "" -"private 속성과 그 상세한 구현을 위한 코딩 컨벤션은 " -"\"내부적으로 사용하는\" 모든 변수 앞에 언더스코어(_)를 붙이는 것입니다. " -"만약 클라이언트 코드가 이 룰을 무시하고 어떤 엘리먼트에 접근하려고 한다면 " -"그 코드가 겪을지도 모를 모든 문제와 오용은 전적으로 클라이언트 코드의 책임입니다. " +"private 속성과 그 상세한 구현을 위한 코딩 컨벤션은 \"내부적으로 사용하는\" 모든 변수 앞에 언더스코어(_)를 붙이는 " +"것입니다. 만약 클라이언트 코드가 이 룰을 무시하고 어떤 엘리먼트에 접근하려고 한다면 그 코드가 겪을지도 모를 모든 문제와 오용은 " +"전적으로 클라이언트 코드의 책임입니다. " -#: ../../writing/style.rst:214 +#: ../../writing/style.rst:220 msgid "" "Using this convention generously is encouraged: any method or property " "that is not intended to be used by client code should be prefixed with an" @@ -420,43 +383,36 @@ msgid "" " private property, but making a public property private might be a much " "harder operation." msgstr "" -"이 컨벤션을 따를 것을 추천드립니다: " -"클라이언트 코드에서 가져다 쓰라고 만든 메소드나 속성이 아니라면 " -"반드시 앞에 언더스코어(_)를 붙이세요. " -"이렇게 하면 각 코드의 역할을 더 명확히 분리시켜줄 뿐만 아니라, " -"기존 코드의 수정도 쉬워집니다. " -"그리고 private 속성으로 표시하는 것은 언제든지 가능하지만, " -"public 속성을 private로 바꾸기란 훨씬 더 어려운 작업이 될겁니다. " +"이 컨벤션을 따를 것을 추천드립니다: 클라이언트 코드에서 가져다 쓰라고 만든 메소드나 속성이 아니라면 반드시 앞에 언더스코어(_)를" +" 붙이세요. 이렇게 하면 각 코드의 역할을 더 명확히 분리시켜줄 뿐만 아니라, 기존 코드의 수정도 쉬워집니다. 그리고 private" +" 속성으로 표시하는 것은 언제든지 가능하지만, public 속성을 private로 바꾸기란 훨씬 더 어려운 작업이 될겁니다. " -#: ../../writing/style.rst:221 +#: ../../writing/style.rst:227 msgid "Returning values" msgstr "반환값" -#: ../../writing/style.rst:223 +#: ../../writing/style.rst:229 +#, fuzzy msgid "" -"When a function grows in complexity it is not uncommon to use multiple " +"When a function grows in complexity, it is not uncommon to use multiple " "return statements inside the function's body. However, in order to keep a" " clear intent and a sustainable readability level, it is preferable to " "avoid returning meaningful values from many output points in the body." msgstr "" -"함수가 점점 더 복잡해지는 경우, 함수 본문에 여러 개의 리턴 구문이 들어가는 것이 보통입니다. " -"하지만 코드의 의도를 명확히 하면서 가독성의 수준을 유지하기 위하여, " -"함수 본문 안에 여러 개의 리턴문을 넣는 것은 피할 것을 추천합니다. " +"함수가 점점 더 복잡해지는 경우, 함수 본문에 여러 개의 리턴 구문이 들어가는 것이 보통입니다. 하지만 코드의 의도를 명확히 하면서" +" 가독성의 수준을 유지하기 위하여, 함수 본문 안에 여러 개의 리턴문을 넣는 것은 피할 것을 추천합니다. " -#: ../../writing/style.rst:228 +#: ../../writing/style.rst:234 msgid "" "There are two main cases for returning values in a function: the result " "of the function return when it has been processed normally, and the error" " cases that indicate a wrong input parameter or any other reason for the " "function to not be able to complete its computation or task." msgstr "" -"다음은 함수가 값을 리턴하는 주요 케이스입니다: " -"함수가 정상적으로 실행되었을 때의 리턴값, " -"그리고 잘못된 입력 파라미터나 들어가거나 " -"다른 이유로 인하여 함수의 계산이나 작업을 완료할 수 없어 " -"에러가 발생하는 경우가 있습니다. " +"다음은 함수가 값을 리턴하는 주요 케이스입니다: 함수가 정상적으로 실행되었을 때의 리턴값, 그리고 잘못된 입력 파라미터나 들어가거나" +" 다른 이유로 인하여 함수의 계산이나 작업을 완료할 수 없어 에러가 발생하는 경우가 있습니다. " -#: ../../writing/style.rst:233 +#: ../../writing/style.rst:239 msgid "" "If you do not wish to raise exceptions for the second case, then " "returning a value, such as None or False, indicating that the function " @@ -467,15 +423,12 @@ msgid "" "further compute the function's main result. Having multiple such return " "statements is often necessary." msgstr "" -"두번째 경우에서 예외를 발생시키고 싶지 않다면, " -"None 이나 False 같이 함수를 정상적으로 수행할 수 없다는 의미의 리턴값이 필요할 것입니다. " -"이런 경우에는 가능한 한 일찍 부정확한 구문이 발견되었음을 알리는 편이 좋습니다. " -"이 방법이 함수의 구조를 매끈하게 하는데 도움이 될 것입니다: " -"에러 때문에 리턴하는 구문 아래의 모든 코드는 " -"해당 함수의 주요 결과물을 계산하기 위한 조건을 만족한다고 볼 수 있습니다. " -"이런 경우에는 여러 개의 리턴 구문이 필요합니다. " +"두번째 경우에서 예외를 발생시키고 싶지 않다면, None 이나 False 같이 함수를 정상적으로 수행할 수 없다는 의미의 리턴값이 " +"필요할 것입니다. 이런 경우에는 가능한 한 일찍 부정확한 구문이 발견되었음을 알리는 편이 좋습니다. 이 방법이 함수의 구조를 " +"매끈하게 하는데 도움이 될 것입니다: 에러 때문에 리턴하는 구문 아래의 모든 코드는 해당 함수의 주요 결과물을 계산하기 위한 조건을" +" 만족한다고 볼 수 있습니다. 이런 경우에는 여러 개의 리턴 구문이 필요합니다. " -#: ../../writing/style.rst:241 +#: ../../writing/style.rst:247 msgid "" "However, when a function has multiple main exit points for its normal " "course, it becomes difficult to debug the returned result, so it may be " @@ -483,89 +436,85 @@ msgid "" " some code paths, and the multiple exit points are a probable indication " "that such a refactoring is needed." msgstr "" -"하지만 정상적으로 코드가 돌아가는 부분에도 함수에 여러 개의 종료 지점이 있는 경우, " -"리턴하는 결과물을 디버깅하기 어렵습니다. " -"따라서 함수에 하나의 종료점만 두는 편을 추천합니다. " -"이렇게 하면 코드의 경로를 뽑아내기에 좋습니다. " -"그러니 여러 개의 종료점이 있으면 이는 곧 리팩토링이 필요한 지점일지도 모릅니다. " +"하지만 정상적으로 코드가 돌아가는 부분에도 함수에 여러 개의 종료 지점이 있는 경우, 리턴하는 결과물을 디버깅하기 어렵습니다. " +"따라서 함수에 하나의 종료점만 두는 편을 추천합니다. 이렇게 하면 코드의 경로를 뽑아내기에 좋습니다. 그러니 여러 개의 종료점이 " +"있으면 이는 곧 리팩토링이 필요한 지점일지도 모릅니다. " -#: ../../writing/style.rst:262 +#: ../../writing/style.rst:270 msgid "Idioms" msgstr "이디엄" -#: ../../writing/style.rst:264 +#: ../../writing/style.rst:272 +#, fuzzy msgid "" "A programming idiom, put simply, is a *way* to write code. The notion of " "programming idioms is discussed amply at `c2 " "`_ and at `Stack Overflow " -"`_." msgstr "" -"프로그래밍 이디엄이란 간단히 말하자면 코드를 작성하는 *방법* 입니다. " -"이 개념은 `c2 `_ 와 " -"`Stack Overflow `_ 에서 " -"광범위하게 논의된 바 있습니다. " +"프로그래밍 이디엄이란 간단히 말하자면 코드를 작성하는 *방법* 입니다. 이 개념은 `c2 " +"`_ 와 `Stack Overflow " +"`_ 에서 광범위하게 논의된 바 있습니다. " -#: ../../writing/style.rst:268 +#: ../../writing/style.rst:276 msgid "Idiomatic Python code is often referred to as being *Pythonic*." msgstr "자연스러운 파이썬 코드를 흔히들 *파이써닉* 스럽다고 말합니다. " -#: ../../writing/style.rst:270 +#: ../../writing/style.rst:278 msgid "" "Although there usually is one --- and preferably only one --- obvious way" " to do it; *the* way to write idiomatic Python code can be non-obvious to" " Python beginners. So, good idioms must be consciously acquired." msgstr "" -"이를 위한 명백한 방법(그리고 유일한 방법이라고 말하고 싶습니다)이 있지만, " -"파이썬 초보자에게는 이상적인 파이썬 코드 작성법이 와닿지 않을 수도 있습니다. " -"그러니 좋은 이디엄들을 의식적으로 숙지해야 합니다. " +"이를 위한 명백한 방법(그리고 유일한 방법이라고 말하고 싶습니다)이 있지만, 파이썬 초보자에게는 이상적인 파이썬 코드 작성법이 " +"와닿지 않을 수도 있습니다. 그러니 좋은 이디엄들을 의식적으로 숙지해야 합니다. " -#: ../../writing/style.rst:274 +#: ../../writing/style.rst:282 msgid "Some common Python idioms follow:" msgstr "다음은 몇 가지 일반적인 파이썬 이디엄들입니다: " -#: ../../writing/style.rst:279 +#: ../../writing/style.rst:287 msgid "Unpacking" msgstr "언패킹" -#: ../../writing/style.rst:281 +#: ../../writing/style.rst:289 msgid "" "If you know the length of a list or tuple, you can assign names to its " "elements with unpacking. For example, since ``enumerate()`` will provide " "a tuple of two elements for each item in list:" msgstr "" -"리스트나 튜플의 길이를 알고 있다면, 언패킹을 하면서 각 엘리먼트마다 이름을 붙여줄 수 있습니다. " -"예를 들면 ``enumerate()`` 는 리스트 내부에 있는 각각의 아이템에 " -"2개의 엘리먼트가 있는 튜플을 만들어줍니다: " +"리스트나 튜플의 길이를 알고 있다면, 언패킹을 하면서 각 엘리먼트마다 이름을 붙여줄 수 있습니다. 예를 들면 " +"``enumerate()`` 는 리스트 내부에 있는 각각의 아이템에 2개의 엘리먼트가 있는 튜플을 만들어줍니다: " -#: ../../writing/style.rst:290 +#: ../../writing/style.rst:298 msgid "You can use this to swap variables as well:" msgstr "이런 식으로 변수들을 스왑할 수도 있습니다. " -#: ../../writing/style.rst:296 +#: ../../writing/style.rst:304 msgid "Nested unpacking works too:" msgstr "중첩 언패킹도 됩니다: " -#: ../../writing/style.rst:302 +#: ../../writing/style.rst:310 msgid "" "In Python 3, a new method of extended unpacking was introduced by " ":pep:`3132`:" -msgstr "" -"파이썬3에서는 :pep:`3132` 에서 언패킹을 하는 새로운 방법이 소개되었습니다: " +msgstr "파이썬3에서는 :pep:`3132` 에서 언패킹을 하는 새로운 방법이 소개되었습니다: " -#: ../../writing/style.rst:313 +#: ../../writing/style.rst:321 msgid "Create an ignored variable" msgstr "사용하지 않을 변수 만들기" -#: ../../writing/style.rst:315 +#: ../../writing/style.rst:323 msgid "" "If you need to assign something (for instance, in :ref:`unpacking-ref`) " "but will not need that variable, use ``__``:" msgstr "" -"사용하지 않을 변수를 가져다가 어딘가에 할당하는 경우 (예를 들면 :ref:`unpacking-ref` 할 경우) " -"``__`` 를 사용하세요: " +"사용하지 않을 변수를 가져다가 어딘가에 할당하는 경우 (예를 들면 :ref:`unpacking-ref` 할 경우) ``__`` 를 " +"사용하세요: " -#: ../../writing/style.rst:325 +#: ../../writing/style.rst:333 msgid "" "Many Python style guides recommend the use of a single underscore " "\"``_``\" for throwaway variables rather than the double underscore " @@ -576,80 +525,67 @@ msgid "" "and eliminates the risk of accidentally interfering with either of these " "other use cases." msgstr "" -"이 안내서에서는 쓸모없는 변수를 치워버리는데 언더스코어 두 줄 \"``__``\" 을 사용할 것을 추천하지만, " -"다른 많은 파이썬 스타일 안내서에서는 언더스코어 한 줄 \"``_``\" 을 사용하라고 합니다. " -"하지만 \"``_``\" 에는 문제가 있습니다. " -"\"``_``\" 이 일반적으로 :func:`~gettext.gettext` 함수의 별칭(alias)로 쓰일 뿐 아니라, " -"대화형 프롬프트상에서 이전 명령어의 결과값을 가지고 있는 변수로 쓰이기 때문입니다. " -"그 대신 언더스코어 두 줄을 사용하면 아주 깔끔하고 편리할 뿐만 아니라, " -"위에서 이야기한 경우가 돌발적으로 나타나 코드를 간섭하는 리스크를 제거할 수 있습니다. " +"이 안내서에서는 쓸모없는 변수를 치워버리는데 언더스코어 두 줄 \"``__``\" 을 사용할 것을 추천하지만, 다른 많은 파이썬 " +"스타일 안내서에서는 언더스코어 한 줄 \"``_``\" 을 사용하라고 합니다. 하지만 \"``_``\" 에는 문제가 있습니다. " +"\"``_``\" 이 일반적으로 :func:`~gettext.gettext` 함수의 별칭(alias)로 쓰일 뿐 아니라, 대화형 " +"프롬프트상에서 이전 명령어의 결과값을 가지고 있는 변수로 쓰이기 때문입니다. 그 대신 언더스코어 두 줄을 사용하면 아주 깔끔하고 " +"편리할 뿐만 아니라, 위에서 이야기한 경우가 돌발적으로 나타나 코드를 간섭하는 리스크를 제거할 수 있습니다. " -#: ../../writing/style.rst:335 +#: ../../writing/style.rst:343 msgid "Create a length-N list of the same thing" msgstr "동일한 내용물을 가진 길이 N의 리스트 만들기" -#: ../../writing/style.rst:337 +#: ../../writing/style.rst:345 msgid "Use the Python list ``*`` operator:" msgstr "파이썬 리스트의 ``*`` 연산자를 사용하세요. " -#: ../../writing/style.rst:344 +#: ../../writing/style.rst:352 msgid "Create a length-N list of lists" msgstr "길이가 N인 리스트가 들어있는 리스트 만들기" -#: ../../writing/style.rst:346 +#: ../../writing/style.rst:354 msgid "" "Because lists are mutable, the ``*`` operator (as above) will create a " "list of N references to the `same` list, which is not likely what you " "want. Instead, use a list comprehension:" msgstr "" -"리스트는 변경 가능하기 때문에, ``*`` 연산자는 (위에서처럼) " -"N개의 리퍼런스가 있는 `같은` 리스트를 만들 것입니다. " -"하지만 아마 이렇게 만들고 싶지는 않았을 것입니다. " -"대신에 리스트 컴프리헨션(list comprehension)을 사용하세요: " -"(역주: 번역이 마땅치 않아 영문 그대로 사용하였습니다. " -"타 번역서에서는 리스트 축약, 리스트 해석, 리스트 내장, 리스트 내포 등으로 번역되어 있습니다. )" - -#: ../../writing/style.rst:354 -msgid "Note: Use range() instead of xrange() in Python 3" -msgstr "주석: 파이썬3에서는 xrange() 대신에 range()를 쓰세요. " +"리스트는 변경 가능하기 때문에, ``*`` 연산자는 (위에서처럼) N개의 리퍼런스가 있는 `같은` 리스트를 만들 것입니다. 하지만 " +"아마 이렇게 만들고 싶지는 않았을 것입니다. 대신에 리스트 컴프리헨션(list comprehension)을 사용하세요: (역주: " +"번역이 마땅치 않아 영문 그대로 사용하였습니다. 타 번역서에서는 리스트 축약, 리스트 해석, 리스트 내장, 리스트 내포 등으로 " +"번역되어 있습니다. )" -#: ../../writing/style.rst:357 +#: ../../writing/style.rst:363 msgid "Create a string from a list" msgstr "리스트로 문자열 만들기" -#: ../../writing/style.rst:359 +#: ../../writing/style.rst:365 msgid "" "A common idiom for creating strings is to use :py:meth:`str.join` on an " "empty string." -msgstr "" -"문자열을 만드는 일반적인 이디엄은 빈 문자열 변수에 :py:meth:`str.join` " -"을 사용하는 것입니다. " +msgstr "문자열을 만드는 일반적인 이디엄은 빈 문자열 변수에 :py:meth:`str.join` 을 사용하는 것입니다. " -#: ../../writing/style.rst:367 +#: ../../writing/style.rst:373 msgid "" "This will set the value of the variable *word* to 'spam'. This idiom can " "be applied to lists and tuples." -msgstr "" -"이것은 변수의 *글자* 의 값을 붙여줍니다. " -"이 이디엄은 리스트와 튜플에도 적용 가능합니다. " +msgstr "이것은 변수의 *글자* 의 값을 붙여줍니다. 이 이디엄은 리스트와 튜플에도 적용 가능합니다. " -#: ../../writing/style.rst:371 +#: ../../writing/style.rst:377 msgid "Searching for an item in a collection" msgstr "컬렉션에서 아이템 찾기" -#: ../../writing/style.rst:373 +#: ../../writing/style.rst:379 msgid "" "Sometimes we need to search through a collection of things. Let's look at" " two options: lists and sets." -msgstr "" -"컬렉션에서 무언가를 찾아야 할 때가 있습니다. " -"두 가지 옵션을 살펴봅시다. 리스트와 셋(set)입니다: " +msgstr "컬렉션에서 무언가를 찾아야 할 때가 있습니다. 두 가지 옵션을 살펴봅시다. 리스트와 셋(set)입니다: " -#: ../../writing/style.rst:376 +#: ../../writing/style.rst:382 msgid "Take the following code for example:" msgstr "예시 삼아 다음의 코드를 작성해봅시다: " -#: ../../writing/style.rst:389 +#: ../../writing/style.rst:395 +#, fuzzy msgid "" "Even though both functions look identical, because *lookup_set* is " "utilizing the fact that sets in Python are hashtables, the lookup " @@ -660,90 +596,83 @@ msgid "" " in the set to look for a matching item. As a result, the search can be " "done quickly, even if the set is large. Searching in dictionaries works " "the same way. For more information see this `StackOverflow " -"`_ page. For detailed information on the amount of time various " "common operations take on each of these data structures, see `this page " "`_." msgstr "" -"두 함수는 똑같아 보입니다. 하지만 검색 성능은 확연히 다릅니다. " -"*lookup_set* 함수가 파이썬에서 셋(set)은 해시테이블이라는 사실을 이용하기 때문입니다. " -"리스트 안에 어떤 아이템이 존재하는지 확인하려면 " -"파이썬은 그 아이템과 매칭되는 것을 찾을 때까지 각각의 아이템을 모두 검사해야만 합니다. " -"이 작업에는 시간이 걸립니다. 리스트가 긴 경우에는 더욱 그렇습니다. " -"반면에 셋(set)에서는 각 아이템의 해시가 " -"셋 안에의 어느 곳에 매칭되는 아이템이 위치하는지 알려줍니다. " -"결과적으로 셋(set)이 크더라도 검색이 빠르게 완료됩니다. " -"딕셔너리(dictionary)에서의 검색도 마찬가지로 수행됩니다. " -"더 많은 정보를 윈하시면 " -" `StackOverflow `_ " -"를 참조하세요. " -"데이터 구조에 따라 각 연산자들이 어느 정도의 시간을 소모하는지에 대한 자세한 정보는 " -" `이 페이지 `_ 를 참고하세요. " - -#: ../../writing/style.rst:403 +"두 함수는 똑같아 보입니다. 하지만 검색 성능은 확연히 다릅니다. *lookup_set* 함수가 파이썬에서 셋(set)은 " +"해시테이블이라는 사실을 이용하기 때문입니다. 리스트 안에 어떤 아이템이 존재하는지 확인하려면 파이썬은 그 아이템과 매칭되는 것을 " +"찾을 때까지 각각의 아이템을 모두 검사해야만 합니다. 이 작업에는 시간이 걸립니다. 리스트가 긴 경우에는 더욱 그렇습니다. 반면에 " +"셋(set)에서는 각 아이템의 해시가 셋 안에의 어느 곳에 매칭되는 아이템이 위치하는지 알려줍니다. 결과적으로 셋(set)이 " +"크더라도 검색이 빠르게 완료됩니다. 딕셔너리(dictionary)에서의 검색도 마찬가지로 수행됩니다. 더 많은 정보를 윈하시면 " +"`StackOverflow `_ 를 참조하세요. 데이터 구조에 따라 각 연산자들이 어느 정도의 시간을 소모하는지에 " +"대한 자세한 정보는 `이 페이지 `_ 를 " +"참고하세요. " + +#: ../../writing/style.rst:409 msgid "" "Because of these differences in performance, it is often a good idea to " "use sets or dictionaries instead of lists in cases where:" msgstr "" -"이러한 성능의 차이 때문에 다음과 같은 경우에는 " -"리스트 대신 셋(set)이나 딕셔너리(dictionary)를 사용하는 편이 좋습니다: " +"이러한 성능의 차이 때문에 다음과 같은 경우에는 리스트 대신 셋(set)이나 딕셔너리(dictionary)를 사용하는 편이 " +"좋습니다: " -#: ../../writing/style.rst:406 +#: ../../writing/style.rst:412 msgid "The collection will contain a large number of items" msgstr "컬렉션이 아이템을 많이 가질 경우" -#: ../../writing/style.rst:408 +#: ../../writing/style.rst:414 msgid "You will be repeatedly searching for items in the collection" msgstr "컬렉션 안의 아이템을 반복적으로 검색할 경우" -#: ../../writing/style.rst:410 +#: ../../writing/style.rst:416 msgid "You do not have duplicate items." msgstr "중복 아이템이 없는 경우" -#: ../../writing/style.rst:412 +#: ../../writing/style.rst:418 msgid "" "For small collections, or collections which you will not frequently be " "searching through, the additional time and memory required to set up the " "hashtable will often be greater than the time saved by the improved " "search speed." msgstr "" -"크기가 작거나 검색을 자주 하지 않는 컬렉션의 경우에는 " -"오히려 해시테이블을 만드는데 필요한 추가적인 시간과 메모리가 " -"검색할 때 절약되는 시간에 비해 더 큰 경우도 많습니다. " +"크기가 작거나 검색을 자주 하지 않는 컬렉션의 경우에는 오히려 해시테이블을 만드는데 필요한 추가적인 시간과 메모리가 검색할 때 " +"절약되는 시간에 비해 더 큰 경우도 많습니다. " -#: ../../writing/style.rst:419 +#: ../../writing/style.rst:426 msgid "Zen of Python" msgstr "파이썬의 선(禪)" -#: ../../writing/style.rst:421 +#: ../../writing/style.rst:428 msgid "Also known as :pep:`20`, the guiding principles for Python's design." msgstr ":pep:`20` 으로도 알려진 파이썬 디자인의 기본 원칙" -#: ../../writing/style.rst:448 +#: ../../writing/style.rst:455 +#, fuzzy msgid "" "For some examples of good Python style, see `these slides from a Python " -"user group " -"`_." +"user group `_." msgstr "" -"좋은 파이썬 스타일의 예시를 보고 싶다면, " -"`파이썬 유저 그룹의 이 슬라이드 `_ " -"를 읽어보세요. " +"좋은 파이썬 스타일의 예시를 보고 싶다면, `파이썬 유저 그룹의 이 슬라이드 " +"`_ 를 읽어보세요. " -#: ../../writing/style.rst:452 +#: ../../writing/style.rst:461 msgid "PEP 8" msgstr "PEP 8" -#: ../../writing/style.rst:454 +#: ../../writing/style.rst:463 +#, fuzzy msgid "" -":pep:`8` is the de-facto code style guide for Python. A high quality, " +":pep:`8` is the de facto code style guide for Python. A high quality, " "easy-to-read version of PEP 8 is also available at `pep8.org " "`_." msgstr "" -":pep:`8` 은 사실상 파이썬을 위한 코드 스타일 안내서입니다. " -"질 좋고 읽기 쉬운 버전의 PEP 8도 있습니다: " +":pep:`8` 은 사실상 파이썬을 위한 코드 스타일 안내서입니다. 질 좋고 읽기 쉬운 버전의 PEP 8도 있습니다: " "`pep8.org `_ " -#: ../../writing/style.rst:457 +#: ../../writing/style.rst:466 msgid "" "This is highly recommended reading. The entire Python community does " "their best to adhere to the guidelines laid out within this document. " @@ -751,163 +680,295 @@ msgid "" "its recommendations `_." msgstr "" -"읽어볼 것을 강력 추천합니다. 모든 파이썬 커뮤니티가 이 문서의 가이드라인을 " -"준수하려고 노력합니다. " -"시간이 흐름에 따라 여기서 멀어지는 프로젝트도 있을겁니다. " -"그렇지 않은 분들은 " -"`이 추천사항을 수정해주세요 `_." +"읽어볼 것을 강력 추천합니다. 모든 파이썬 커뮤니티가 이 문서의 가이드라인을 준수하려고 노력합니다. 시간이 흐름에 따라 여기서 " +"멀어지는 프로젝트도 있을겁니다. 그렇지 않은 분들은 `이 추천사항을 수정해주세요 `_." -#: ../../writing/style.rst:462 +#: ../../writing/style.rst:471 +#, fuzzy msgid "" "That being said, conforming your Python code to PEP 8 is generally a good" " idea and helps make code more consistent when working on projects with " -"other developers. There is a command-line program, `pep8 " -"`_, that can check your code for " -"conformance. Install it by running the following command in your " -"terminal:" +"other developers. There is a command-line program, `pycodestyle " +"`_ (previously known as ``pep8``), " +"that can check your code for conformance. Install it by running the " +"following command in your terminal:" msgstr "" -"이 말인즉, PEP 8에 파이썬 코드를 맞추는 편이 대체로 좋은 생각이며, " -"프로젝트에서 다른 개발자와 함께 일할 경우 코드의 일관성을 유지하는데 도움이 된다는 뜻입니다. " -"이를 위해 여러분의 코드가 PEP 8을 지키는지를 체크하는 " -"`pep8 `_ 라는 커맨드라인 프로그램이 있습니다. " -"터미널에서 아래의 명령어를 돌려 설치해보세요. " +"이 말인즉, PEP 8에 파이썬 코드를 맞추는 편이 대체로 좋은 생각이며, 프로젝트에서 다른 개발자와 함께 일할 경우 코드의 " +"일관성을 유지하는데 도움이 된다는 뜻입니다. 이를 위해 여러분의 코드가 PEP 8을 지키는지를 체크하는 `pep8 " +"`_ 라는 커맨드라인 프로그램이 있습니다. 터미널에서 아래의 명령어를" +" 돌려 설치해보세요. " -#: ../../writing/style.rst:474 +#: ../../writing/style.rst:483 msgid "" "Then run it on a file or series of files to get a report of any " "violations." -msgstr "그런 다음 파일 하나 혹은 여러 개의 파일에다 " -"돌리면 PEP 8 위반 여부 보고서를 얻을 수 있습니다. " +msgstr "그런 다음 파일 하나 혹은 여러 개의 파일에다 돌리면 PEP 8 위반 여부 보고서를 얻을 수 있습니다. " + +#: ../../writing/style.rst:498 +msgid "Auto-Formatting" +msgstr "" -#: ../../writing/style.rst:488 +#: ../../writing/style.rst:500 msgid "" -"The program `autopep8 `_ can be " -"used to automatically reformat code in the PEP 8 style. Install the " -"program with:" +"There are several auto-formatting tools that can reformat your code, in " +"order to comply with PEP 8." msgstr "" -"`autopep8 `_ 프로그램도 " -"코드를 PEP 8 스타일로 자동 재포맷하는데 쓰일 수 있습니다. " -"이렇게 설치하시면 됩니다: " -#: ../../writing/style.rst:495 +#: ../../writing/style.rst:503 +msgid "**autopep8**" +msgstr "" + +#: ../../writing/style.rst:505 +#, fuzzy +msgid "" +"The program `autopep8 `_ can be used " +"to automatically reformat code in the PEP 8 style. Install the program " +"with:" +msgstr "" +"`autopep8 `_ 프로그램도 코드를 PEP 8 스타일로" +" 자동 재포맷하는데 쓰일 수 있습니다. 이렇게 설치하시면 됩니다: " + +#: ../../writing/style.rst:512 msgid "Use it to format a file in-place with:" msgstr "포맷할 파일에다가 이렇게 사용하시며 됩니다: " -#: ../../writing/style.rst:501 +#: ../../writing/style.rst:518 msgid "" "Excluding the ``--in-place`` flag will cause the program to output the " "modified code directly to the console for review. The ``--aggressive`` " "flag will perform more substantial changes and can be applied multiple " "times for greater effect." msgstr "" -"``--in-place`` 플래그를 빼면 프로그램이 콘솔에 바로 뽑아준 " -"변경된 코드로 리뷰를 할 수 있습니다. " -"``--aggressive`` 플래그는 더 많은 변화를 수행하고, " -"여러 번 수행해서 더 많은 효과를 볼 수도 있습니다. " +"``--in-place`` 플래그를 빼면 프로그램이 콘솔에 바로 뽑아준 변경된 코드로 리뷰를 할 수 있습니다. " +"``--aggressive`` 플래그는 더 많은 변화를 수행하고, 여러 번 수행해서 더 많은 효과를 볼 수도 있습니다. " + +#: ../../writing/style.rst:522 +#, fuzzy +msgid "**yapf**" +msgstr "**나쁜 예**" + +#: ../../writing/style.rst:524 +msgid "" +"While autopep8 focuses on solving the PEP 8 violations, `yapf " +"`_ tries to improve the format of your " +"code aside from complying with PEP 8. This formatter aims at providing as" +" good looking code as a programmer who writes PEP 8 compliant code. It " +"gets installed with:" +msgstr "" + +#: ../../writing/style.rst:534 +msgid "Run the auto-formatting of a file with:" +msgstr "" + +#: ../../writing/style.rst:540 +msgid "" +"Similar to autopep8, running the command without the ``--in-place`` flag " +"will output the diff for review before applying the changes." +msgstr "" + +#: ../../writing/style.rst:543 +#, fuzzy +msgid "**black**" +msgstr "**나쁜 예**" + +#: ../../writing/style.rst:545 +msgid "" +"The auto-formatter `black `_ offers an " +"opinionated and deterministic reformatting of your code base. Its main " +"focus lies in providing a uniform code style without the need of " +"configuration throughout its users. Hence, users of black are able to " +"forget about formatting altogether. Also, due to the deterministic " +"approach minimal git diffs with only the relevant changes are guaranteed." +" You can install the tool as follows:" +msgstr "" -#: ../../writing/style.rst:506 +#: ../../writing/style.rst:557 +msgid "A python file can be formatted with:" +msgstr "" + +#: ../../writing/style.rst:563 +msgid "" +"Adding the ``--diff`` flag provides the code modification for review " +"without direct application." +msgstr "" + +#: ../../writing/style.rst:568 msgid "Conventions" msgstr "컨벤션(convention)" -#: ../../writing/style.rst:508 +#: ../../writing/style.rst:570 msgid "" "Here are some conventions you should follow to make your code easier to " "read." msgstr "읽기 쉬운 코드 작성을 위한 코딩 컨벤션을 소개합니다. " -#: ../../writing/style.rst:511 -msgid "Check if variable equals a constant" +#: ../../writing/style.rst:573 +#, fuzzy +msgid "Check if a variable equals a constant" msgstr "변수와 상수가 같은지 여부를 체크하기" -#: ../../writing/style.rst:513 +#: ../../writing/style.rst:575 +#, fuzzy msgid "" -"You don't need to explicitly compare a value to True, or None, or 0 - you" -" can just add it to the if statement. See `Truth Value Testing " +"You don't need to explicitly compare a value to True, or None, or 0 -- " +"you can just add it to the if statement. See `Truth Value Testing " "`_ for " "a list of what is considered false." msgstr "" -"값이 True인지, None인지, 0인지를 확실하게 비교할 필요는 없습니다 - " -"그냥 if문만 붙이면 됩니다. " -"`Truth Value Testing `_ 을 " -"보시면 어느 것이 false인지 알 수 있습니다. " +"값이 True인지, None인지, 0인지를 확실하게 비교할 필요는 없습니다 - 그냥 if문만 붙이면 됩니다. `Truth Value" +" Testing `_ 을 보시면 어느 것이 false인지 알 수 있습니다. " -#: ../../writing/style.rst:518 ../../writing/style.rst:550 -#: ../../writing/style.rst:582 ../../writing/style.rst:602 -#: ../../writing/style.rst:641 ../../writing/style.rst:676 +#: ../../writing/style.rst:580 ../../writing/style.rst:612 +#: ../../writing/style.rst:650 ../../writing/style.rst:691 +#: ../../writing/style.rst:708 ../../writing/style.rst:753 +#: ../../writing/style.rst:799 ../../writing/style.rst:834 msgid "**Bad**:" msgstr "" -#: ../../writing/style.rst:528 ../../writing/style.rst:560 -#: ../../writing/style.rst:593 ../../writing/style.rst:611 -#: ../../writing/style.rst:650 ../../writing/style.rst:687 +#: ../../writing/style.rst:590 ../../writing/style.rst:622 +#: ../../writing/style.rst:657 ../../writing/style.rst:671 +#: ../../writing/style.rst:697 ../../writing/style.rst:727 +#: ../../writing/style.rst:766 ../../writing/style.rst:808 +#: ../../writing/style.rst:845 msgid "**Good**:" msgstr "" -#: ../../writing/style.rst:545 +#: ../../writing/style.rst:607 msgid "Access a Dictionary Element" msgstr "딕셔너리의 엘리먼트에 접근하기" -#: ../../writing/style.rst:547 +#: ../../writing/style.rst:609 msgid "" "Don't use the :py:meth:`dict.has_key` method. Instead, use ``x in d`` " "syntax, or pass a default argument to :py:meth:`dict.get`." msgstr "" -":py:meth:`dict.has_key` 메소드를 쓰지 마세요. " -"대신에 ``x in d`` 문법을 쓰거나, :py:meth:`dict.get` 에 디폴트값을 넣어 쓰세요. " +":py:meth:`dict.has_key` 메소드를 쓰지 마세요. 대신에 ``x in d`` 문법을 쓰거나, " +":py:meth:`dict.get` 에 디폴트값을 넣어 쓰세요. " -#: ../../writing/style.rst:574 +#: ../../writing/style.rst:636 msgid "Short Ways to Manipulate Lists" msgstr "리스트를 조작하는 지름길" -#: ../../writing/style.rst:576 +#: ../../writing/style.rst:638 +#, fuzzy msgid "" "`List comprehensions `_ provide a powerful, concise way to work with " -"lists. Also, the :py:func:`map` and :py:func:`filter` functions can " -"perform operations on lists using a different, more concise syntax." +"#list-comprehensions>`_ provides a powerful, concise way to work with " +"lists." +msgstr "" +"`리스트 컴프리헨션(list comprehension) " +"`_ 은 리스트로 작업하는 강력하고도 간결한 방법입니다. :py:func:`map` 과 " +":py:func:`filter` 함수 또한 리스트에 명령을 수행하는 또다른 간결한 문법입니다. " + +#: ../../writing/style.rst:642 +msgid "" +"`Generator expressions `_ follows almost the same syntax as list " +"comprehensions but return a generator instead of a list." +msgstr "" + +#: ../../writing/style.rst:647 +msgid "" +"Creating a new list requires more work and uses more memory. If you are " +"just going to loop through the new list, prefer using an iterator " +"instead." +msgstr "" + +#: ../../writing/style.rst:664 +msgid "" +"Use list comprehensions when you really need to create a second list, for" +" example if you need to use the result multiple times." +msgstr "" + +#: ../../writing/style.rst:668 +msgid "" +"If your logic is too complicated for a short list comprehension or " +"generator expression, consider using a generator function instead of " +"returning a list." +msgstr "" + +#: ../../writing/style.rst:689 +msgid "Never use a list comprehension just for its side effects." +msgstr "" + +#: ../../writing/style.rst:706 +#, fuzzy +msgid "Filtering a list" +msgstr "리스트로 문자열 만들기" + +#: ../../writing/style.rst:710 +msgid "Never remove items from a list while you are iterating through it." +msgstr "" + +#: ../../writing/style.rst:720 +msgid "Don't make multiple passes through the list." msgstr "" -"`리스트 컴프리헨션(list comprehension) `_ 은 " -"리스트로 작업하는 강력하고도 간결한 방법입니다. " -":py:func:`map` 과 :py:func:`filter` 함수 또한 " -"리스트에 명령을 수행하는 또다른 간결한 문법입니다. " -#: ../../writing/style.rst:620 +#: ../../writing/style.rst:729 +msgid "Use a list comprehension or generator expression." +msgstr "" + +#: ../../writing/style.rst:741 +msgid "Possible side effects of modifying the original list" +msgstr "" + +#: ../../writing/style.rst:743 +msgid "" +"Modifying the original list can be risky if there are other variables " +"referencing it. But you can use *slice assignment* if you really want to " +"do that." +msgstr "" + +#: ../../writing/style.rst:752 +msgid "Modifying the values in a list" +msgstr "" + +#: ../../writing/style.rst:755 +msgid "" +"Remember that assignment never creates a new object. If two or more " +"variables refer to the same list, changing one of them changes them all." +msgstr "" + +#: ../../writing/style.rst:768 +msgid "It's safer to create a new list object and leave the original alone." +msgstr "" + +#: ../../writing/style.rst:778 msgid "Use :py:func:`enumerate` keep a count of your place in the list." msgstr ":py:func:`enumerate` 를 사용하면 리스트 안의 순서를 세어 기억시켜둘 수 있습니다. " -#: ../../writing/style.rst:632 +#: ../../writing/style.rst:790 msgid "" "The :py:func:`enumerate` function has better readability than handling a " "counter manually. Moreover, it is better optimized for iterators." -msgstr "" -":py:func:`enumerate` 함수는 직접 번호를 매기는 코드를 다루는 방법보다 " -"가독성이 좋습니다. " +msgstr ":py:func:`enumerate` 함수는 직접 번호를 매기는 코드를 다루는 방법보다 가독성이 좋습니다. " -#: ../../writing/style.rst:636 +#: ../../writing/style.rst:794 msgid "Read From a File" msgstr "파일에서 읽기" -#: ../../writing/style.rst:638 +#: ../../writing/style.rst:796 msgid "" "Use the ``with open`` syntax to read from files. This will automatically " "close files for you." -msgstr "" -"``with open`` 문법으로 파일을 읽으세요. " -"파일을 자동으로 닫아줍니다. " +msgstr "``with open`` 문법으로 파일을 읽으세요. 파일을 자동으로 닫아줍니다. " -#: ../../writing/style.rst:658 +#: ../../writing/style.rst:816 msgid "" "The ``with`` statement is better because it will ensure you always close " "the file, even if an exception is raised inside the ``with`` block." msgstr "" -"``with`` 문은 파일을 반드시 닫아주기 때문에 더 좋습니다. " -"심지어 ``with`` 블럭 안에서 예외(exception)이 발생해도 그렇습니다. " +"``with`` 문은 파일을 반드시 닫아주기 때문에 더 좋습니다. 심지어 ``with`` 블럭 안에서 예외(exception)이 " +"발생해도 그렇습니다. " -#: ../../writing/style.rst:662 +#: ../../writing/style.rst:820 msgid "Line Continuations" msgstr "줄 잇기" -#: ../../writing/style.rst:664 +#: ../../writing/style.rst:822 msgid "" "When a logical line of code is longer than the accepted limit, you need " "to split it over multiple physical lines. The Python interpreter will " @@ -916,30 +977,28 @@ msgid "" "its fragility: a white space added to the end of the line, after the " "backslash, will break the code and may have unexpected results." msgstr "" -"코드의 논리적 줄이 어느 정도를 넘어서면 몇 개의 물리적 줄로 쪼갤 필요가 있습니다. " -"파이썬 인터프리터는 줄의 마지막 문자가 역슬래시(\)일 경우 " -"자동으로 줄을 이어줍니다. " -"이는 많은 경우에 도움이 되지만 망가지기 쉬운 경우가 있기에 일반적으로 피해야합니다: " -"역슬래시 뒤에 빈 칸(white space)가 있는 경우, 코드가 망가지고 예상치 못한 결과가 나옵니다. " +"코드의 논리적 줄이 어느 정도를 넘어서면 몇 개의 물리적 줄로 쪼갤 필요가 있습니다. 파이썬 인터프리터는 줄의 마지막 문자가 " +"역슬래시(\\)일 경우 자동으로 줄을 이어줍니다. 이는 많은 경우에 도움이 되지만 망가지기 쉬운 경우가 있기에 일반적으로 " +"피해야합니다: 역슬래시 뒤에 빈 칸(white space)가 있는 경우, 코드가 망가지고 예상치 못한 결과가 나옵니다. " -#: ../../writing/style.rst:671 +#: ../../writing/style.rst:829 +#, fuzzy msgid "" "A better solution is to use parentheses around your elements. Left with " -"an unclosed parenthesis on an end-of-line the Python interpreter will " +"an unclosed parenthesis on an end-of-line, the Python interpreter will " "join the next line until the parentheses are closed. The same behavior " "holds for curly and square braces." msgstr "" -"더 나은 해결책은 괄호()를 두르는 것입니다. " -"파이썬 인터프리터는 왼쪽의 열린 괄호에서부터 오른쪽의 닫힌 괄호까지의 줄을 " -"자동으로 연결합니다. " -"중괄호{}와 대괄호[]에서도 동일하게 동작합니다. " +"더 나은 해결책은 괄호()를 두르는 것입니다. 파이썬 인터프리터는 왼쪽의 열린 괄호에서부터 오른쪽의 닫힌 괄호까지의 줄을 자동으로 " +"연결합니다. 중괄호{}와 대괄호[]에서도 동일하게 동작합니다. " -#: ../../writing/style.rst:700 +#: ../../writing/style.rst:858 msgid "" "However, more often than not, having to split a long logical line is a " "sign that you are trying to do too many things at the same time, which " "may hinder readability." -msgstr "" -"그러나 대부분의 경우 긴 논리적 줄을 나누는 짓은 동시에 너무 많은 일을 " -"하려고 한다는 신호입니다. " -"이는 가독성을 해칩니다. " +msgstr "그러나 대부분의 경우 긴 논리적 줄을 나누는 짓은 동시에 너무 많은 일을 하려고 한다는 신호입니다. 이는 가독성을 해칩니다. " + +#~ msgid "Note: Use range() instead of xrange() in Python 3" +#~ msgstr "주석: 파이썬3에서는 xrange() 대신에 range()를 쓰세요. " + diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.mo b/docs/locale/ko/LC_MESSAGES/writing/tests.mo index 0b4b75aabaaca4a2ab1f6764714b47e79d173512..bc0383352a6cc336b88083612ff60b78e4205f20 100644 GIT binary patch delta 2048 zcmeH_U2GIp6vxl*R@+)yun2x&+bcz-?RNV``KZ#G5*4Hx(-#wwguBzbyEn|to!psW zT_agPB9TN*$Os80KuC&4tR`kOAwhhp!Dx6e`hZWMK@&7F_#~0|;Q!9FqCOjaak87= zoO{olbN>H(pWB~#C9Gd)Z#YPJdhx##e>-EM>(577qLT>EfFFXD98nk8*+4W6j)U)j z2f%CicJmEHk09RINc0%^A~*|v3F1f9CZdOtR|iWOs?(>N296!8vdZ_%V1IyabxM$FO-G z{ploLzQe)`?L-)!%FD5V1`c=`d~gNP+gLB$noLYzgTsg?ZYSCWYOn}?1;PYce@CkH zKJZb*TR@mb2f#VhI|zP)coKGhi~iIIxg+2Y;A>z9#=i>Afk$EcEc`YNwyY+47JL(I zN1^WSw9$IVJC1l9{2u(~?$pt<_u@E^zhf=YUEpERC_fDvN6&(FW9f+=qR+vXdWlYf zkK-I-usKgOfP!bhdl3KBPqY%erH~#~ANV8UC%_xQ$pNDKk-rV>1@{f6>+cT{eE}h- zz!Tv9bwuZoKd^x&Xf+al+mKq?wF%Q=V;WT8d!Vtjb1YTb4L*gq4>Xp(JQlx^d%me2 z2tSZ+nc310e5OjQWGjxhsM&8-DkcuI+Nin<#<|DgzL*9mKH5Y+cG=Y6)fFAl#SShHpyIGtzeS2=aVKCw1#7WR=5`>Wre8X zve4&6Y0IF-q|1tE@n^62%pUGqXzyFXUHNM+ z`gwd^G_q<}bY)c~Dt0^>ZSIKL7v# delta 4514 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 jTy}>Pw;ypQe$6Y6(&J+ diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.po b/docs/locale/ko/LC_MESSAGES/writing/tests.po index a550f49b0..1d2316b57 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/tests.po +++ b/docs/locale/ko/LC_MESSAGES/writing/tests.po @@ -1,49 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2011-2021 Kenneth Reitz & Real Python. CC BY-NC-SA +# 3.0 +# This file is distributed under the same license as the pythonguide +# package. +# FIRST AUTHOR , 2021. # msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-10-11 08:03+0000\n" +"POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: AHN YOUNG SEON \n" "Language-Team: KOREAN \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.3.4\n" +"Generated-By: Babel 2.2.0\n" -#: ../../writing/tests.rst:2 +#: ../../writing/tests.rst:5 msgid "Testing Your Code" msgstr "코드 테스트하기" -#: ../../writing/tests.rst:4 +#: ../../writing/tests.rst:9 msgid "Testing your code is very important." msgstr "코드 테스트는 아주 중요합니다." -#: ../../writing/tests.rst:6 +#: ../../writing/tests.rst:11 +#, fuzzy msgid "" "Getting used to writing testing code and running this code in parallel is" -" now considered a good habit. Used wisely, this method helps you define " -"more precisely your code's intent and have a more decoupled architecture." +" now considered a good habit. Used wisely, this method helps to define " +"your code's intent more precisely and have a more decoupled architecture." msgstr "" -"테스트 코드를 능숙하게 작성하고 이 코드를 패러랠하게 돌리는 것은 " -"이제 좋은 습관으로 인정받고 있습니다. " -"이 방법을 현명하게 사용하면 코드의 의도를 보다 명확히하는데 좋을 뿐 아니라, " -"아키텍처의 결합도를 낮출 수 있습니다. " +"테스트 코드를 능숙하게 작성하고 이 코드를 패러랠하게 돌리는 것은 이제 좋은 습관으로 인정받고 있습니다. 이 방법을 현명하게 " +"사용하면 코드의 의도를 보다 명확히하는데 좋을 뿐 아니라, 아키텍처의 결합도를 낮출 수 있습니다. " -#: ../../writing/tests.rst:10 +#: ../../writing/tests.rst:15 msgid "Some general rules of testing:" msgstr "테스트의 일반 원칙 몇 가지:" -#: ../../writing/tests.rst:12 +#: ../../writing/tests.rst:17 msgid "" "A testing unit should focus on one tiny bit of functionality and prove it" " correct." -msgstr "" -"테스트 유닛은 각 기능의 가장 작은 단위에 집중하여, " -"해당 기능이 정확히 동작하는지를 증명해야 합니다. " +msgstr "테스트 유닛은 각 기능의 가장 작은 단위에 집중하여, 해당 기능이 정확히 동작하는지를 증명해야 합니다. " -#: ../../writing/tests.rst:15 +#: ../../writing/tests.rst:20 msgid "" "Each test unit must be fully independent. Each test must be able to run " "alone, and also within the test suite, regardless of the order that they " @@ -51,14 +57,12 @@ msgid "" " with a fresh dataset and may have to do some cleanup afterwards. This is" " usually handled by :meth:`setUp()` and :meth:`tearDown()` methods." msgstr "" -"각 테스트 유닛은 반드시 독립적이어야 합니다. " -"각 테스트는 혼자서도 실행 가능해야하고, " -"테스트 슈트로도 실행 가능해야 합니다. 이 때, 호출되는 순서와 무관하게 잘 동작해야 합니다. " -"이 규칙이 뜻하는 바, 새로운 데이터셋으로 각각의 테스트를 로딩해야 하고, " -"그 실행 결과는 꼭 삭제해야합니다. " -"보통 :meth:`setUp()` 과 :meth:`tearDown()` 메소드로 이런 작업을 합니다. " - -#: ../../writing/tests.rst:21 +"각 테스트 유닛은 반드시 독립적이어야 합니다. 각 테스트는 혼자서도 실행 가능해야하고, 테스트 슈트로도 실행 가능해야 합니다. 이 " +"때, 호출되는 순서와 무관하게 잘 동작해야 합니다. 이 규칙이 뜻하는 바, 새로운 데이터셋으로 각각의 테스트를 로딩해야 하고, 그 " +"실행 결과는 꼭 삭제해야합니다. 보통 :meth:`setUp()` 과 :meth:`tearDown()` 메소드로 이런 작업을 " +"합니다. " + +#: ../../writing/tests.rst:26 msgid "" "Try hard to make tests that run fast. If one single test needs more than " "a few milliseconds to run, development will be slowed down or the tests " @@ -68,63 +72,57 @@ msgid "" "tests in a separate test suite that is run by some scheduled task, and " "run all other tests as often as needed." msgstr "" -"테스트가 빠르게 돌 수 있도록 만들기 위해 노력해야 합니다. " -"테스트 하나가 실행하는데 몇 밀리세컨드 이상의 시간이 걸린다면, " -"개발 속도가 느려지거나 테스트가 충분히 자주 수행되지 못할 것입니다. " -"테스트에 필요한 데이터 구조가 너무 복잡하고, 테스트를 하려면 " -"매번 이 복잡한 데이터를 불러와야 해서 테스트를 빠르게 만들 수 없는 경우도 있습니다. " -"이럴 때는 무거운 테스트는 따로 분리하여 별도의 테스트 슈트를 만들어 두고 스케쥴 작업을 걸어두면 됩니다. " -"그리고 그 외의 다른 모든 테스트는 필요한 만큼 자주 수행하면 됩니다. " - -#: ../../writing/tests.rst:29 +"테스트가 빠르게 돌 수 있도록 만들기 위해 노력해야 합니다. 테스트 하나가 실행하는데 몇 밀리세컨드 이상의 시간이 걸린다면, 개발" +" 속도가 느려지거나 테스트가 충분히 자주 수행되지 못할 것입니다. 테스트에 필요한 데이터 구조가 너무 복잡하고, 테스트를 하려면 " +"매번 이 복잡한 데이터를 불러와야 해서 테스트를 빠르게 만들 수 없는 경우도 있습니다. 이럴 때는 무거운 테스트는 따로 분리하여 " +"별도의 테스트 슈트를 만들어 두고 스케쥴 작업을 걸어두면 됩니다. 그리고 그 외의 다른 모든 테스트는 필요한 만큼 자주 수행하면 " +"됩니다. " + +#: ../../writing/tests.rst:34 msgid "" "Learn your tools and learn how to run a single test or a test case. Then," " when developing a function inside a module, run this function's tests " "frequently, ideally automatically when you save the code." msgstr "" -"지금 사용하고 있는 툴이 개별 테스트나 테스트 케이스를 어떻게 수행하는지 배우셔야 합니다. " -"모듈 안에 들어있는 함수를 개발하고 있다면, 그 함수의 테스트를 자주, 가능하다면 " -"코드를 저장할 때마다 자동으로 돌려야 합니다. " +"지금 사용하고 있는 툴이 개별 테스트나 테스트 케이스를 어떻게 수행하는지 배우셔야 합니다. 모듈 안에 들어있는 함수를 개발하고 " +"있다면, 그 함수의 테스트를 자주, 가능하다면 코드를 저장할 때마다 자동으로 돌려야 합니다. " -#: ../../writing/tests.rst:33 +#: ../../writing/tests.rst:38 msgid "" "Always run the full test suite before a coding session, and run it again " "after. This will give you more confidence that you did not break anything" " in the rest of the code." msgstr "" -"그날의 코딩을 시작하기 전에 항상 풀 테스트 슈트를 돌려야 합니다. 끝난 후에도 마찬가지입니다. " -"이 작업은 당신이 다른 코드를 망가뜨리지 않았다는 더 큰 자신감을 심어줄 것입니다. " +"그날의 코딩을 시작하기 전에 항상 풀 테스트 슈트를 돌려야 합니다. 끝난 후에도 마찬가지입니다. 이 작업은 당신이 다른 코드를 " +"망가뜨리지 않았다는 더 큰 자신감을 심어줄 것입니다. " -#: ../../writing/tests.rst:37 +#: ../../writing/tests.rst:42 msgid "" "It is a good idea to implement a hook that runs all tests before pushing " "code to a shared repository." -msgstr "" -"모두가 공유하는 저장소에다가 코드를 집어넣기 전에 자동으로 모든 테스트를 수행하도록 " -"하는 훅을 구현하는 것도 좋은 생각입니다. " +msgstr "모두가 공유하는 저장소에다가 코드를 집어넣기 전에 자동으로 모든 테스트를 수행하도록 하는 훅을 구현하는 것도 좋은 생각입니다. " -#: ../../writing/tests.rst:40 +#: ../../writing/tests.rst:45 msgid "" "If you are in the middle of a development session and have to interrupt " "your work, it is a good idea to write a broken unit test about what you " "want to develop next. When coming back to work, you will have a pointer " "to where you were and get back on track faster." msgstr "" -"지금 한창 개발 중인데 그만두고 잠시 다른 일을 해야한다면, 다음에 개발할 부분에다가 " -"일부러 고장난 유닛 테스트를 작성하는 것도 좋은 생각입니다. " +"지금 한창 개발 중인데 그만두고 잠시 다른 일을 해야한다면, 다음에 개발할 부분에다가 일부러 고장난 유닛 테스트를 작성하는 것도 " +"좋은 생각입니다. " -#: ../../writing/tests.rst:45 +#: ../../writing/tests.rst:50 msgid "" "The first step when you are debugging your code is to write a new test " "pinpointing the bug. While it is not always possible to do, those bug " "catching tests are among the most valuable pieces of code in your " "project." msgstr "" -"코드를 디버깅할 때 가장 먼저 시작할 일은 버그를 찝어내는 새로운 테스트를 작성하는 것입니다. " -"이런 일이 언제나 가능한 것은 아니지만, 이런 버그 잡이 테스트들이야말로 " -"당신의 프로젝트에서 가장 가치있는 코드 조각이 될 것입니다. " +"코드를 디버깅할 때 가장 먼저 시작할 일은 버그를 찝어내는 새로운 테스트를 작성하는 것입니다. 이런 일이 언제나 가능한 것은 " +"아니지만, 이런 버그 잡이 테스트들이야말로 당신의 프로젝트에서 가장 가치있는 코드 조각이 될 것입니다. " -#: ../../writing/tests.rst:49 +#: ../../writing/tests.rst:54 msgid "" "Use long and descriptive names for testing functions. The style guide " "here is slightly different than that of running code, where short names " @@ -134,15 +132,13 @@ msgid "" "``test_square_negative_number()``. These function names are displayed " "when a test fails, and should be as descriptive as possible." msgstr "" -"테스트 함수에는 길고 서술적인 이름을 사용하셔야 합니다. " -"테스트에서의 스타일 안내서는 짧은 이름을 보다 선호하는 다른 일반적인 코드와는 조금 다릅니다. " -"테스트 함수는 절대 직접 호출되지 않기 때문입니다. " -"실제로 돌아가는 코드에서는 ``square()`` 라든가 심지어 ``sqr()`` 조차도 " -"괜찮습니다. 하지만 테스트 코드에서는 ``test_square_of_number_2()``, ``test_square_negative_number()`` " -"같은 이름을 붙여야 합니다. 이런 함수명들은 테스트가 실패할 때나 보입니다. " -"그러니 반드시 가능한 한 서술적인 이름을 붙여야 합니다. " - -#: ../../writing/tests.rst:57 +"테스트 함수에는 길고 서술적인 이름을 사용하셔야 합니다. 테스트에서의 스타일 안내서는 짧은 이름을 보다 선호하는 다른 일반적인 " +"코드와는 조금 다릅니다. 테스트 함수는 절대 직접 호출되지 않기 때문입니다. 실제로 돌아가는 코드에서는 ``square()`` " +"라든가 심지어 ``sqr()`` 조차도 괜찮습니다. 하지만 테스트 코드에서는 ``test_square_of_number_2()``," +" ``test_square_negative_number()`` 같은 이름을 붙여야 합니다. 이런 함수명들은 테스트가 실패할 때나 " +"보입니다. 그러니 반드시 가능한 한 서술적인 이름을 붙여야 합니다. " + +#: ../../writing/tests.rst:62 msgid "" "When something goes wrong or has to be changed, and if your code has a " "good set of tests, you or other maintainers will rely largely on the " @@ -151,11 +147,10 @@ msgid "" "code. A unit test whose purpose is unclear is not very helpful in this " "case." msgstr "" -"무언가 잘못되었거나 뜯어고쳐야만 할 경우, 괜찮은 코드에 테스트 셋이 있다면 " -"당신이나 다른 유지보수 담당자들은 오류를 수정하거나 프로그램의 동작을 수정할 때 " -"필시 그 테스트 슈트에 전적으로 의지할 것입니다. " +"무언가 잘못되었거나 뜯어고쳐야만 할 경우, 괜찮은 코드에 테스트 셋이 있다면 당신이나 다른 유지보수 담당자들은 오류를 수정하거나 " +"프로그램의 동작을 수정할 때 필시 그 테스트 슈트에 전적으로 의지할 것입니다. " -#: ../../writing/tests.rst:64 +#: ../../writing/tests.rst:69 msgid "" "Another use of the testing code is as an introduction to new developers. " "When someone will have to work on the code base, running and reading the " @@ -166,66 +161,59 @@ msgid "" "is not already a working path that has not been plugged into the " "interface." msgstr "" -"테스트 코드의 또다른 사용 방법은 새로운 개발자들을 위한 안내서로 쓰는 방법입니다. " -"이미 만들어져 있는 코드에서 작업해야할 경우, 관련 테스트 코드를 돌려보고 읽어보는 것이야말로 " -"가장 좋은 시작점일 경우가 많습니다. " -"이렇게 테스트 코드를 돌려보면 어느 지점이 문제인지, 수정하기 어려운 곳은 어디일지, " -"막다른 골목은 어디일지를 발견하게 됩니다. " -"몇 가지 기능을 추가해야 한다면 가장 먼저 해야할 일은, 그 새로운 기능이 아직 " -"돌아가지 않음을 확인할 수 있는 테스트를 붙여넣는 것입니다. " - -#: ../../writing/tests.rst:73 +"테스트 코드의 또다른 사용 방법은 새로운 개발자들을 위한 안내서로 쓰는 방법입니다. 이미 만들어져 있는 코드에서 작업해야할 경우, " +"관련 테스트 코드를 돌려보고 읽어보는 것이야말로 가장 좋은 시작점일 경우가 많습니다. 이렇게 테스트 코드를 돌려보면 어느 지점이 " +"문제인지, 수정하기 어려운 곳은 어디일지, 막다른 골목은 어디일지를 발견하게 됩니다. 몇 가지 기능을 추가해야 한다면 가장 먼저 " +"해야할 일은, 그 새로운 기능이 아직 돌아가지 않음을 확인할 수 있는 테스트를 붙여넣는 것입니다. " + +#: ../../writing/tests.rst:81 msgid "The Basics" msgstr "기본" -#: ../../writing/tests.rst:77 -msgid "Unittest" +#: ../../writing/tests.rst:85 +#, fuzzy +msgid "unittest" msgstr "Unittest" -#: ../../writing/tests.rst:79 +#: ../../writing/tests.rst:87 msgid "" ":mod:`unittest` is the batteries-included test module in the Python " "standard library. Its API will be familiar to anyone who has used any of " "the JUnit/nUnit/CppUnit series of tools." msgstr "" -":mod:`unittest` 는 파이썬 표준 라이브러리 중 아주 유용한 테스트 모듈입니다. " -"JUnit/nUnit/CppUnit 시리즈와 같은 툴을 써본 사람이라면 " -":mod:`unittest` 의 API에도 익숙할 것입니다. " +":mod:`unittest` 는 파이썬 표준 라이브러리 중 아주 유용한 테스트 모듈입니다. JUnit/nUnit/CppUnit " +"시리즈와 같은 툴을 써본 사람이라면 :mod:`unittest` 의 API에도 익숙할 것입니다. " -#: ../../writing/tests.rst:83 +#: ../../writing/tests.rst:91 msgid "" "Creating test cases is accomplished by subclassing " ":class:`unittest.TestCase`." -msgstr "" -"테스트 케이스를 만드려면 :class:`unittest.TestCase` 를 상속받는 " -"하위 클래스를 만들어야 합니다. " +msgstr "테스트 케이스를 만드려면 :class:`unittest.TestCase` 를 상속받는 하위 클래스를 만들어야 합니다. " -#: ../../writing/tests.rst:96 +#: ../../writing/tests.rst:104 msgid "As of Python 2.7 unittest also includes its own test discovery mechanisms." msgstr "파이썬 2.7부터는 unittest도 자체적인 테스트 탐색 매커니즘이 생겼습니다. " -#: ../../writing/tests.rst:98 +#: ../../writing/tests.rst:106 msgid "" "`unittest in the standard library documentation " "`_" -msgstr "" -"`표준 라이브러리 문서의 unittest " -"`_" +msgstr "`표준 라이브러리 문서의 unittest `_" -#: ../../writing/tests.rst:102 +#: ../../writing/tests.rst:110 msgid "Doctest" msgstr "Doctest" -#: ../../writing/tests.rst:104 +#: ../../writing/tests.rst:112 msgid "" "The :mod:`doctest` module searches for pieces of text that look like " "interactive Python sessions in docstrings, and then executes those " "sessions to verify that they work exactly as shown." msgstr "" -":mod:`doctest` 모듈은 독스트링 안에 대화형 파이썬 세션처럼 보이는 텍스트가 있는지를 " -"검색한 후, 해당 세션들을 실행하여 텍스트에 써진대로 정확히 동작하는지를 확인합니다. " +":mod:`doctest` 모듈은 독스트링 안에 대화형 파이썬 세션처럼 보이는 텍스트가 있는지를 검색한 후, 해당 세션들을 실행하여" +" 텍스트에 써진대로 정확히 동작하는지를 확인합니다. " -#: ../../writing/tests.rst:108 +#: ../../writing/tests.rst:116 msgid "" "Doctests have a different use case than proper unit tests: they are " "usually less detailed and don't catch special cases or obscure regression" @@ -233,196 +221,226 @@ msgid "" "cases of a module and its components. However, doctests should run " "automatically each time the full test suite runs." msgstr "" -"doctest는 다른 단위 테스트와는 사용 방법이 다릅니다: doctest는 일반적으로 상세하지 않고 " -"특이한 케이스나 회귀 테스트에서의 버그를 잡아내지도 못합니다. " -"하지만 각 모듈과 그 컴포넌트의 주된 사용법을 알려주는 문서로써는 아주 유용합니다. " +"doctest는 다른 단위 테스트와는 사용 방법이 다릅니다: doctest는 일반적으로 상세하지 않고 특이한 케이스나 회귀 " +"테스트에서의 버그를 잡아내지도 못합니다. 하지만 각 모듈과 그 컴포넌트의 주된 사용법을 알려주는 문서로써는 아주 유용합니다. " "doctest는 전체 테스트 슈트를 실행할 때마다 자동으로 돌려야 합니다. " -#: ../../writing/tests.rst:114 +#: ../../writing/tests.rst:122 msgid "A simple doctest in a function:" msgstr "함수에서 doctest를 돌리는 간단한 예시:" -#: ../../writing/tests.rst:133 +#: ../../writing/tests.rst:141 msgid "" "When running this module from the command line as in ``python " "module.py``, the doctests will run and complain if anything is not " "behaving as described in the docstrings." msgstr "" -"커맨드 라인에서 ``python module.py`` 를 쳐서 해당 모듈을 실행하면 " -"doctest가 실행되고, 무언가 doctest에 기술한대로 동작하지 않는 경우에는 " -"경고를 해줍니다. " +"커맨드 라인에서 ``python module.py`` 를 쳐서 해당 모듈을 실행하면 doctest가 실행되고, 무언가 " +"doctest에 기술한대로 동작하지 않는 경우에는 경고를 해줍니다. " -#: ../../writing/tests.rst:138 +#: ../../writing/tests.rst:148 msgid "Tools" msgstr "도구" -#: ../../writing/tests.rst:142 +#: ../../writing/tests.rst:152 msgid "py.test" msgstr "py.test" -#: ../../writing/tests.rst:144 +#: ../../writing/tests.rst:154 msgid "" "py.test is a no-boilerplate alternative to Python's standard unittest " "module." msgstr "py.test는 보일러플레이트가 없는 파이썬 표준 unittest의 대체품입니다. " -#: ../../writing/tests.rst:150 +#: ../../writing/tests.rst:160 msgid "" "Despite being a fully-featured and extensible test tool, it boasts a " "simple syntax. Creating a test suite is as easy as writing a module with " "a couple of functions:" msgstr "" -"모든 기능을 갖추지는 않았습니다. 확장 가능한 테스트 도구도 아닙니다. 하지만 " -"단순한 신텍스를 자랑합니다. " -"테스트 슈트를 만드는 것은 함수 몇 개가 있는 모듈 하나를 작성하는 것 만큼이나 간단합니다. " +"모든 기능을 갖추지는 않았습니다. 확장 가능한 테스트 도구도 아닙니다. 하지만 단순한 신텍스를 자랑합니다. 테스트 슈트를 만드는 " +"것은 함수 몇 개가 있는 모듈 하나를 작성하는 것 만큼이나 간단합니다. " -#: ../../writing/tests.rst:163 -msgid "and then running the `py.test` command" +#: ../../writing/tests.rst:173 +#, fuzzy +msgid "and then running the `py.test` command:" msgstr "그리고 명령창에서 `py.test` 를 실행하면 됩니다. " -#: ../../writing/tests.rst:185 +#: ../../writing/tests.rst:195 msgid "" "is far less work than would be required for the equivalent functionality " "with the unittest module!" -msgstr "" -"unittest 모듈로 같은 기능을 구현하기 위해 필요한 것보다 훨씬 덜 작업해도 됩니다! " +msgstr "unittest 모듈로 같은 기능을 구현하기 위해 필요한 것보다 훨씬 덜 작업해도 됩니다! " -#: ../../writing/tests.rst:188 -msgid "`py.test `_" +#: ../../writing/tests.rst:198 +#, fuzzy +msgid "`py.test `_" msgstr "`py.test `_" -#: ../../writing/tests.rst:192 -msgid "Nose" -msgstr "Nose" - -#: ../../writing/tests.rst:194 -msgid "nose extends unittest to make testing easier." -msgstr "nose는 테스트를 쉽게 하도록 unittest를 확장한 것입니다. " - -#: ../../writing/tests.rst:201 -msgid "" -"nose provides automatic test discovery to save you the hassle of manually" -" creating test suites. It also provides numerous plugins for features " -"such as xUnit-compatible test output, coverage reporting, and test " -"selection." +#: ../../writing/tests.rst:202 +msgid "Hypothesis" msgstr "" -"nose는 자동으로 테스트를 발견합니다. 덕분에 수작업으로 테스트 슈트를 만드는 수고를 덜 수 있습니다. " -"또한 xUnit 호환 테스트 결과, 코드 커버리지 보고서, 선택 테스트와 같이 다양한 플러그인도 제공합니다. " - -#: ../../writing/tests.rst:205 -msgid "`nose `_" -msgstr "`nose `_" -#: ../../writing/tests.rst:209 -msgid "tox" -msgstr "tox" - -#: ../../writing/tests.rst:211 +#: ../../writing/tests.rst:204 msgid "" -"tox is a tool for automating test environment management and testing " -"against multiple interpreter configurations" +"Hypothesis is a library which lets you write tests that are parameterized" +" by a source of examples. It then generates simple and comprehensible " +"examples that make your tests fail, letting you find more bugs with less " +"work." msgstr "" -"tox는 자동화된 테스트 환경 관리와 " -"다양한 인터프리터 설정 하에서의 테스트를 위한 도구입니다. " -#: ../../writing/tests.rst:218 +#: ../../writing/tests.rst:212 msgid "" -"tox allows you to configure complicated multi-parameter test matrices via" -" a simple ini-style configuration file." +"For example, testing lists of floats will try many examples, but report " +"the minimal example of each bug (distinguished exception type and " +"location):" msgstr "" -"tox는 간단한 ini 스타일의 설정 파일을 통해 " -"복잡한 멀티 파라미터 테스트 메트릭을 설정할 수 있도록 해줍니다. " -#: ../../writing/tests.rst:221 -msgid "`tox `_" -msgstr "`tox `_" - -#: ../../writing/tests.rst:224 -msgid "Unittest2" -msgstr "Unittest2" - -#: ../../writing/tests.rst:226 +#: ../../writing/tests.rst:228 msgid "" -"unittest2 is a backport of Python 2.7's unittest module which has an " -"improved API and better assertions over the one available in previous " -"versions of Python." +"Hypothesis is practical as well as very powerful and will often find bugs" +" that escaped all other forms of testing. It integrates well with " +"py.test, and has a strong focus on usability in both simple and advanced " +"scenarios." msgstr "" -"unittest2는 향상된 API와 단정문을 가지고 있는 파이썬 2.7의 unittest의 백포트 버전입니다. " -"2.7 이전 버전의 파이썬에서 사용 가능합니다. " -#: ../../writing/tests.rst:229 -msgid "If you're using Python 2.6 or below, you can install it with pip" -msgstr "" -"파이썬 2.6이나 그 이전 버전을 사용하고 있다면 " -"pip로 설치할 수 있습니다. " +#: ../../writing/tests.rst:232 +#, fuzzy +msgid "`hypothesis `_" +msgstr "`nose `_" + +#: ../../writing/tests.rst:236 +msgid "tox" +msgstr "tox" -#: ../../writing/tests.rst:235 +#: ../../writing/tests.rst:238 +#, fuzzy msgid "" -"You may want to import the module under the name unittest to make porting" -" code to newer versions of the module easier in the future" -msgstr "" -"unittest라는 이름으로 모듈을 임포트하여 나중에 새로운 파이썬 버전의 " -"모듈로 포팅하기 쉽도록 만들고 싶을 수도 있습니다. " +"tox is a tool for automating test environment management and testing " +"against multiple interpreter configurations." +msgstr "tox는 자동화된 테스트 환경 관리와 다양한 인터프리터 설정 하에서의 테스트를 위한 도구입니다. " #: ../../writing/tests.rst:245 +#, fuzzy msgid "" -"This way if you ever switch to a newer Python version and no longer need " -"the unittest2 module, you can simply change the import in your test " -"module without the need to change any other code." -msgstr "" -"이 방법을 쓰면 나중에 새로운 버전의 파이썬으로 바꾸거나 unittest2 모듈이 더이상 " -"필요하지 않더라도, 코드 수정 없이 테스트 모듈의 임포트를 변경할 수 있습니다. " +"tox allows you to configure complicated multi-parameter test matrices via" +" a simple INI-style configuration file." +msgstr "tox는 간단한 ini 스타일의 설정 파일을 통해 복잡한 멀티 파라미터 테스트 메트릭을 설정할 수 있도록 해줍니다. " -#: ../../writing/tests.rst:249 -msgid "`unittest2 `_" -msgstr "`unittest2 `_" +#: ../../writing/tests.rst:248 +#, fuzzy +msgid "`tox `_" +msgstr "`nose `_" -#: ../../writing/tests.rst:253 +#: ../../writing/tests.rst:252 msgid "mock" msgstr "mock" -#: ../../writing/tests.rst:255 +#: ../../writing/tests.rst:254 msgid "" ":mod:`unittest.mock` is a library for testing in Python. As of Python " "3.3, it is available in the `standard library " "`_." msgstr "" -":mod:`unittest.mock` 은 파이썬의 테스트 라이브러리입니다. " -"파이썬 3.3부터는 `표준 라이브러리 " +":mod:`unittest.mock` 은 파이썬의 테스트 라이브러리입니다. 파이썬 3.3부터는 `표준 라이브러리 " "`_ 가 되었습니다. " -#: ../../writing/tests.rst:259 +#: ../../writing/tests.rst:258 msgid "For older versions of Python:" msgstr "예전 버전의 파이썬에서:" -#: ../../writing/tests.rst:265 +#: ../../writing/tests.rst:264 msgid "" "It allows you to replace parts of your system under test with mock " "objects and make assertions about how they have been used." msgstr "" -"를 하면 mock 오브젝트로 시스템의 테스트 파트를 변경할 수 있습니다. " -"그리고 테스트가 어떻게 쓰일지에 대한 단정문을 만들 수 있습니다. " +"를 하면 mock 오브젝트로 시스템의 테스트 파트를 변경할 수 있습니다. 그리고 테스트가 어떻게 쓰일지에 대한 단정문을 만들 수 " +"있습니다. " -#: ../../writing/tests.rst:268 +#: ../../writing/tests.rst:267 msgid "For example, you can monkey-patch a method:" msgstr "이렇게 메소드를 몽키 패치할 수도 있습니다: " -#: ../../writing/tests.rst:279 +#: ../../writing/tests.rst:278 msgid "" "To mock classes or objects in a module under test, use the ``patch`` " "decorator. In the example below, an external search system is replaced " "with a mock that always returns the same result (but only for the " "duration of the test)." msgstr "" -"테스트하는 모듈에서 모의 클래스나 모의 객체를 만들 경우에는 " -"``patch`` 데코레이터를 사용하세요. " -"아래의 예시에서는 언제나 같은 결과값을 내는(아무튼 테스트 중에는) " -"모의 객체가 외부 검색 시스템 하나 대신 쓰였습니다. " +"테스트하는 모듈에서 모의 클래스나 모의 객체를 만들 경우에는 ``patch`` 데코레이터를 사용하세요. 아래의 예시에서는 언제나 " +"같은 결과값을 내는(아무튼 테스트 중에는) 모의 객체가 외부 검색 시스템 하나 대신 쓰였습니다. " -#: ../../writing/tests.rst:298 -msgid "Mock has many other ways you can configure it and control its behavior." +#: ../../writing/tests.rst:297 +#, fuzzy +msgid "" +"Mock has many other ways with which you can configure and control its " +"behaviour." msgstr "mock은 다양하게 설정하여 동작 방법을 컨트롤 할 수 있습니다. " -#: ../../writing/tests.rst:300 +#: ../../writing/tests.rst:299 msgid "`mock `_" msgstr "`mock `_" + +#~ msgid "Nose" +#~ msgstr "Nose" + +#~ msgid "nose extends unittest to make testing easier." +#~ msgstr "nose는 테스트를 쉽게 하도록 unittest를 확장한 것입니다. " + +#~ msgid "" +#~ "nose provides automatic test discovery " +#~ "to save you the hassle of manually" +#~ " creating test suites. It also " +#~ "provides numerous plugins for features " +#~ "such as xUnit-compatible test output," +#~ " coverage reporting, and test selection." +#~ msgstr "" +#~ "nose는 자동으로 테스트를 발견합니다. 덕분에 수작업으로 " +#~ "테스트 슈트를 만드는 수고를 덜 수 있습니다. 또한" +#~ " xUnit 호환 테스트 결과, 코드 커버리지 보고서," +#~ " 선택 테스트와 같이 다양한 플러그인도 제공합니다. " + +#~ msgid "`tox `_" +#~ msgstr "`tox `_" + +#~ msgid "Unittest2" +#~ msgstr "Unittest2" + +#~ msgid "" +#~ "unittest2 is a backport of Python " +#~ "2.7's unittest module which has an " +#~ "improved API and better assertions over" +#~ " the one available in previous " +#~ "versions of Python." +#~ msgstr "" +#~ "unittest2는 향상된 API와 단정문을 가지고 있는 " +#~ "파이썬 2.7의 unittest의 백포트 버전입니다. 2.7 " +#~ "이전 버전의 파이썬에서 사용 가능합니다. " + +#~ msgid "If you're using Python 2.6 or below, you can install it with pip" +#~ msgstr "파이썬 2.6이나 그 이전 버전을 사용하고 있다면 pip로 설치할 수 있습니다. " + +#~ msgid "" +#~ "You may want to import the module" +#~ " under the name unittest to make " +#~ "porting code to newer versions of " +#~ "the module easier in the future" +#~ msgstr "unittest라는 이름으로 모듈을 임포트하여 나중에 새로운 파이썬 버전의 모듈로 포팅하기 쉽도록 만들고 싶을 수도 있습니다. " + +#~ msgid "" +#~ "This way if you ever switch to " +#~ "a newer Python version and no " +#~ "longer need the unittest2 module, you" +#~ " can simply change the import in " +#~ "your test module without the need " +#~ "to change any other code." +#~ msgstr "" +#~ "이 방법을 쓰면 나중에 새로운 버전의 파이썬으로 " +#~ "바꾸거나 unittest2 모듈이 더이상 필요하지 않더라도, " +#~ "코드 수정 없이 테스트 모듈의 임포트를 변경할 수" +#~ " 있습니다. " + +#~ msgid "`unittest2 `_" +#~ msgstr "`unittest2 `_" + From 460b009eb9efc53df99551e5f2ce2a0015f1167c Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Mon, 15 Mar 2021 09:39:41 +0000 Subject: [PATCH 046/117] fix trival fuzzy --- docs/locale/ko/LC_MESSAGES/index.mo | Bin 3665 -> 4380 bytes docs/locale/ko/LC_MESSAGES/index.po | 10 ++++------ 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index 5b6b846564531d2b040779d32c57e18c7610a226..7210bff0d8649f61529a94fcdb681062f7b20ba1 100644 GIT binary patch delta 1037 zcmb8r&rcIU6bJC(m&6}LBMC-Dd1#cRsr2T75MuP;?*tRXlabwa+ucyR&F++l9*U%D zr8U-I1DK^L3C3cYh_nz)_!GQff<_N|^UxU%#yj!5MU;yNH{E__XWzc}=B>6m$Kqf2 z*Jl~7X56i~%kIOr>q-q{kMMjI?t^Ra4Ezoc!;V_U&cbu>GJFUf_yM*-vyQQo@F_e5 zmtZ?wg&j34&VFK1=O$}lY!NTocAywsgZ=P$BV$M5U3d^q!BNDQpxgQBos2cX_wW+@ z0$bpTU5r_<8~WiJSb@#E89M+sU>EAMmOYFSHm<=QXhC$w-oktEGqQig{`I|#^+7Mj za1-8#Ze!oz5xC)w$K&bK4V&;&C~OQFk&u^EOH;UxC52)}KoK*{Z{GGHZ#X*4bu;4I z>^vTb*ZRd0tKw*Rzw=x2YxRtjLsuw_>jRfAehl$3QX~2M3X2%L$*1H@4$wJpbL$z;-sVR;6h6@ zhD(dk(Bx)9i>ssGyLI63d43!Y=b4vQma{%Kr=pUyMK8SYud0TWAlL93Z9GK>Z*YcP zT;m)seNq9Jc#c~O;Ah)5ZXMx`c}u!w!M@de99UHahh%z;fzx@R!pN*~|Q`$#G-<*4pDYKh$emzN~) diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index 8478a7487..d2daa4f34 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -30,23 +30,21 @@ msgid "Greetings, Earthling! Welcome to The Hitchhiker's Guide to Python." msgstr "안녕, 지구인! 파이썬을 여행하는 히치하이커를 위한 안내서에 오신 것을 환영합니다." #: ../../index.rst:16 -#, fuzzy msgid "" "**This is a living, breathing guide.** If you'd like to contribute, " "`fork us on GitHub `_!" msgstr "" -"**이 안내서는 현재 많은 변화가 진행 중입니다.** 도와주고 싶으시다면, `fork us on GitHub " -"`_!" +"**이 안내서는 살아 숨쉬고 있습니다.** 기여하고 싶으시다면, " +"`fork us on GitHub `_!" #: ../../index.rst:19 -#, fuzzy msgid "" "This handcrafted guide exists to provide both novice and expert Python " "developers a best practice handbook for the installation, configuration, " "and usage of Python on a daily basis." msgstr "" -"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용을 안내하는" -" 모범 사례 안내서입니다." +"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 " +"매일매일 단위로 파이썬의 설치, 설정, 사용법에 대한 모범 사례 안내서입니다." #: ../../index.rst:23 msgid "" From 16b3a64da516e2b9df2bd24a4c448d38fc96ed4a Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Tue, 16 Mar 2021 00:32:52 +0000 Subject: [PATCH 047/117] translate index page --- docs/locale/ko/LC_MESSAGES/index.mo | Bin 4380 -> 5468 bytes docs/locale/ko/LC_MESSAGES/index.po | 22 ++++++++++++---------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index 7210bff0d8649f61529a94fcdb681062f7b20ba1..9eb1c5a01171c9df08f9d9921ba8a6536e3e9fe5 100644 GIT binary patch delta 1650 zcmZ9LUrbw79LEo1j7>lq6x3~QM^rEsnz%(xNCcuLhE2^#+DC0Z~*MA zC&UIvz;5tg@GRJUl#nj)J@6zUL89Wz3z(P(yV2xZupa!ifsnhH|LqtdL*R`@ykZP~ z0LsS+xdP@v6MW(XA!oov@Hy~%a0YdL28F|mO@y?7e}NakJ+K4)NnbM|eoPF5Zty2? z2z&*rOQ0Vd1g}0x$TMIP>;t#J=fS_hez3KbkO&%n2!00sfw=Bt{^K@6UI$%I5wZY| zf**l<;8juJ-KPn;4t@o8f~VT6h5Os{7wYEg`sGP#X!O#Q;nCCq`o3&*>(uAhe6rs= zMRnN-_$Zz!E#QB&h|21O;@8x1SvC5sUyj`A+Fw1S>W1X??yu9->Nb5!H{|iYyjnkB ze^U2IenlOlk~&I9WuI4@5+hOGYHxgP*dy=n9+f9#ujUh7YCHB+b{beWBI`!4&o8+R z#Vx~w=GCd;kqj#NWhzZbidP!(%GQa-x2%7T%~&rsb_9Fqq(^aksG`$xO*dc=PIb8l zwZ;@xr<01|p}IDX;*$H5F~1goN=3b<`Nt(gfgfo^3mA_S9w<@iHO(E+Wu0P$DqlA! z{Q7hkxvUFsR}{Yyki1CE+HWOyP(c`nWq7#B;~5MPN7(1TxT z`F6aN+vN$9@?@NHGtIZ-#b`K>}Z8i88A6A~%T#!Gn!N)*dclO=XU01HKS=R2NX zs#IQ{E!``!)Ew4A4*j3ze2S&gB2z?R7Lk9@g<1vnL-A1I`Ntd!HKn|XV5)+8DBp^q zYOPn=%TqD7zC_t(n6Kmb?roHBtyV({@%2ioY|G@y*=jbuF52saA7-XoVSrZU@?y%_ zoBzG#@)4`gai)W1v*pE%&>|XtyTD$1cnll3hU4ub zaoom!tl}=`UGyfOF+{?6hfDa3eK^q}Qp9;I;1zzN84`(M3+E)u;ZBhe8aYg35t&S` zv4l_D{z!i{B9g~xzF{4A&>QR>hp`oPPqiaW74$PV<+pWZ2lw2vQPov3{G}{2rs`d} r;KhFP(D|-7Diq1Mm;RLIzC`mr^ Date: Wed, 17 Mar 2021 02:27:34 +0000 Subject: [PATCH 048/117] 404 --- docs/locale/ko/LC_MESSAGES/404.mo | Bin 1127 -> 1179 bytes docs/locale/ko/LC_MESSAGES/404.po | 16 ++++++++-------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/404.mo b/docs/locale/ko/LC_MESSAGES/404.mo index a4d8a2fbdddf0fbe35a036442ab2848a8abe1115..f5bb7078a8fcedfa649ba4e5aeeb02029a37daef 100644 GIT binary patch delta 378 zcmYL^!Ak;B5XRr8hdOlV(xEyGK~b0O*d@&9)-8f42vS56s$I}LM3>bz5e-q+%}rfW z)I>1Yat|J)li<0(BJj=o9~$@4VfZocecv}Tzw@<);zjUDVr)!x$QV2FF}6f35I2bp z;uJSKvlu|;B>xI)y3gMHtYWQ?V^^@ErK=W0^9f|IDKz}|gA4#$+Bn!LMF)oVGT z-Wm^clK{4K%ru2*VOQhbXTWM1zdmMtz5$|Oq3zCoIwL^m8*LphYXMd=_~MeZ^s~H+ zwIbR>v^5|tV7mn5=4o<{VEXA`rAR`Vp{etHmiOEc1x<&JvF3-v$7rWVI(umk(Ujhn_nmUbFw(H0v;RG|bm|qfLn*QZ9e@miFYvs()h}TO-WSJyu&h XY7EnTFLQP#pqb;jGVpFnr26a++l9K> delta 105 zcmbQu`J7`yjBPa|1H%y@HfLa9aA0O&5CqZ{Kw1Y#cL8ZzAiW((djaXMKw1b$JFqY? u2m|ThjWbU%O1Opk_$c@}`noFExcWMJ`ZzecxCFTd2TyKgI=*qfDkA`!q7<|M diff --git a/docs/locale/ko/LC_MESSAGES/404.po b/docs/locale/ko/LC_MESSAGES/404.po index e250b2bec..8bd23e29f 100644 --- a/docs/locale/ko/LC_MESSAGES/404.po +++ b/docs/locale/ko/LC_MESSAGES/404.po @@ -15,7 +15,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: Ahn Young Seon \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -24,29 +24,29 @@ msgstr "" #: ../../404.rst:5 msgid "404 — Not Found" -msgstr "" +msgstr "404 — Not Found" #: ../../404.rst:7 msgid "**Sorry, but we couldn't find the page you requested.**" -msgstr "" +msgstr "**죄송하지만 요청하신 페이지를 찾을 수 없어요.**" #: ../../404.rst:9 msgid "It looks like this was the result of either:" -msgstr "" +msgstr "원인은 이 중 하나일 거에요." #: ../../404.rst:11 msgid "a mistyped address" -msgstr "" +msgstr "주소 오타" #: ../../404.rst:12 msgid "an out-of-date link" -msgstr "" +msgstr "사용하지 않는 링크" #: ../../404.rst:14 msgid "`Click here to go back to the homepage. `_" -msgstr "" +msgstr "`홈페이지로 가시려면 클릭하세요. `_" #: ../../404.rst:16 msgid "Or, try `searching `_." -msgstr "" +msgstr "아니면`찾기 `_ 기능을 이용해보세요." From 8e2a266ac4b6f81c6b95016f4fab733575db6b4c Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 17 Mar 2021 02:42:58 +0000 Subject: [PATCH 049/117] which python --- .../ko/LC_MESSAGES/starting/which-python.mo | Bin 10685 -> 12849 bytes .../ko/LC_MESSAGES/starting/which-python.po | 44 ++++++++++-------- 2 files changed, 25 insertions(+), 19 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.mo b/docs/locale/ko/LC_MESSAGES/starting/which-python.mo index e958b5be34c2370a95c263c71d1a36f38d694383..706084d5852912bb73be6df8af76ed4e811c12df 100644 GIT binary patch delta 3947 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 diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.po b/docs/locale/ko/LC_MESSAGES/starting/which-python.po index 106597a7b..c2f07f6ae 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/which-python.po +++ b/docs/locale/ko/LC_MESSAGES/starting/which-python.po @@ -22,17 +22,14 @@ msgstr "" "Generated-By: Babel 2.2.0\n" #: ../../starting/which-python.rst:5 -#, fuzzy msgid "Picking a Python Interpreter (3 vs 2)" -msgstr "인터프리터 고르기" +msgstr "파이썬 인터프리터 고르기(3 vs 2)" #: ../../starting/which-python.rst:14 -#, fuzzy msgid "The State of Python (3 & 2)" -msgstr "파이썬 현황(2 vs 3)" +msgstr "파이썬 현황(3 & 2)" #: ../../starting/which-python.rst:16 -#, fuzzy msgid "" "When choosing a Python interpreter, one looming question is always " "present: \"Should I choose Python 2 or Python 3\"? The answer is a bit " @@ -47,19 +44,19 @@ msgstr "이 문제의 기본적인 요지는 다음과 같습니다." #: ../../starting/which-python.rst:23 msgid "Most production applications today use Python 3." -msgstr "" +msgstr "현재 대부분의 운영 어플리케이션들은 파이썬3을 씁니다." #: ../../starting/which-python.rst:24 msgid "Python 3 is ready for the production deployment of applications today." -msgstr "" +msgstr "파이썬3는 현재 어플리케이션 운영 배포를 위한 준비가 모두 되어 있습니다." #: ../../starting/which-python.rst:25 msgid "Python 2 reached the end of its life on January 1, 2020 [#pep373_eol]_." -msgstr "" +msgstr "파이썬2는 2020년 1월 1일부로 생을 마감했습니다 [#pep373_eol]_." #: ../../starting/which-python.rst:26 msgid "The brand name \"Python\" encapsulates both Python 3 and Python 2." -msgstr "" +msgstr "\"Python\" 이라는 브랜드명은 파이썬3와 2를 모두 포함합니다." #: ../../starting/which-python.rst:31 msgid "Recommendations" @@ -73,6 +70,10 @@ msgid "" "congratulations — you are indeed a person of excellent taste. —*Kenneth " "Reitz*" msgstr "" +"파이썬2 대신 **파이썬3** 의 사용을 *강력* 추천합니다. " +"*아직도* 파이썬2를 운영 환경에서 사용하고 있다면, " +"당신의 어플리케이션과 인프라스트럭쳐를 업그레이드 하는 것을 고려해보세요. " +"이미 파이썬3를 사용하고 있다면, 축하드립니다. 당신은 훌륭한 취향을 가진 사람이에요. —*케네스 레이츠*" #: ../../starting/which-python.rst:37 msgid "I'll be blunt:" @@ -80,7 +81,7 @@ msgstr "단도직입적으로 말하겠습니다." #: ../../starting/which-python.rst:39 msgid "Use Python 3 for new Python applications." -msgstr "" +msgstr "새 파이썬 어플리케이션에는 파이썬3를 쓰세요." #: ../../starting/which-python.rst:40 msgid "" @@ -88,24 +89,25 @@ msgid "" " Python 2.7 will be very useful, but not more useful than learning Python" " 3." msgstr "" +"파이썬을 처음 배우는 분이시라면, 파이썬2.7에 익숙해지는 것은 아주 유용합니다. " +"하지만 파이썬3를 배우는 데에는 더이상 유용하지 않습니다." #: ../../starting/which-python.rst:42 msgid "Learn both. They are both \"Python\"." -msgstr "" +msgstr "둘 다 배우세요. 둘 다 \"파이썬\" 입니다. " #: ../../starting/which-python.rst:47 msgid "So.... 3?" msgstr "그러면.... 3?" #: ../../starting/which-python.rst:49 -#, fuzzy msgid "" "If you're choosing a Python interpreter to use, I recommend you use the " "newest Python 3.x, since every version brings new and improved standard " "library modules, security and bug fixes." msgstr "" "파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면, 최신 버젼의 파이썬3.x 사용을 추천합니다. 모든 버젼이" -" 새롭고 향상된 표준 라이브러리 모듈과 보안, 그리고 버그 수정을 제공하고 있기 때문입니다. 개선도 진행 중입니다." +" 새롭고 향상된 표준 라이브러리 모듈과 보안, 그리고 버그 수정을 제공하고 있기 때문입니다. " #: ../../starting/which-python.rst:53 msgid "" @@ -114,6 +116,11 @@ msgid "" "simplicity/familiarity, or, of course, you absolutely love and are " "inspired by Python 2. No harm in that." msgstr "" +"그러하니 파이썬2를 써야만 하는 중요한 이유가 있는 게 아니라면, " +"그러니까 코드 베이스가 이미 있다거나, 파이썬2에서만 돌아가는 라이브러리가 있다거나, " +"단순성과 친숙함 때문이거나, 파이썬2를 절대적으로 사랑하거나 파이썬2에 감동받았다거나 " +"하는 이유 때문이라면 파이썬2를 쓰셔도 됩니다. " +"해롭지 않아요." #: ../../starting/which-python.rst:58 msgid "`Further Reading `_" @@ -161,7 +168,6 @@ msgstr "" "제공합니다. " #: ../../starting/which-python.rst:83 -#, fuzzy msgid "" "If you are writing open source Python code and want to reach the widest " "possible audience, targeting CPython is best. To use packages which rely " @@ -265,6 +271,8 @@ msgid "" "IronPython supports Python 2.7. [#iron_ver]_ IronPython 3 [#iron_ver3]_ " "is being developed, but is not ready for use as of September 2020." msgstr "" +"IronPython은 파이썬2.7을 지원합니다. [#iron_ver]_ IronPython 3 [#iron_ver3]_ 는" +"개발 중입니다. 하지만 2020년 9월까지는 사용 불가입니다." #: ../../starting/which-python.rst:134 msgid "PythonNet" @@ -294,21 +302,19 @@ msgstr "" #: ../../starting/which-python.rst:147 msgid "Pythonnet is compatible with Python 2.7 and 3.5-3.8. [#pythonnet_ver1]_" -msgstr "" +msgstr "Pythonnet은 파이썬2.7과 3.5-3.8 버전과 호환됩니다. [#pythonnet_ver1]_" #: ../../starting/which-python.rst:149 -#, fuzzy msgid "https://pypy.org/compat.html" -msgstr "http://pypy.org/compat.html" +msgstr "https://pypy.org/compat.html" #: ../../starting/which-python.rst:151 msgid "https://hg.python.org/jython/file/412a8f9445f7/NEWS" msgstr "https://hg.python.org/jython/file/412a8f9445f7/NEWS" #: ../../starting/which-python.rst:153 -#, fuzzy msgid "https://ironpython.net/download/" -msgstr "https://travis-ci.org/pythonnet/pythonnet" +msgstr "" #: ../../starting/which-python.rst:155 msgid "https://github.com/IronLanguages/ironpython3" From be229a589b930b6984c97941fe1d1f8f7f5062ca Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 18 Mar 2021 01:47:46 +0000 Subject: [PATCH 050/117] pip-virtualenv --- .../ko/LC_MESSAGES/dev/pip-virtualenv.mo | Bin 8987 -> 9519 bytes .../ko/LC_MESSAGES/dev/pip-virtualenv.po | 70 +++++++- .../ko/LC_MESSAGES/starting/pip-virtualenv.mo | Bin 8513 -> 0 bytes .../ko/LC_MESSAGES/starting/pip-virtualenv.po | 157 ------------------ 4 files changed, 62 insertions(+), 165 deletions(-) delete mode 100644 docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo delete mode 100644 docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po diff --git a/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo b/docs/locale/ko/LC_MESSAGES/dev/pip-virtualenv.mo index 3c1ac37484518cfa2256579cf2521db371f82670..9f83c8d4acdc04257a0c4dff9d55a201b7459a1f 100644 GIT binary patch literal 9519 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 delta 255 zcmZ4QHQQ~%mHKK%28L;Z3=G;pT1c3IAp}U3=|esRU3TkS>vAVCV8n7x1E|3VXzLabUx9&PACT@+WMH@mq&<~3 zcQM8Z@EIBE8W`&unkpDrSecqm{w8QI;TG!Squ}T0>#AVm>g(v~, 2021. # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: Ahn Young Seon \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.2.0\n" #: ../../dev/pip-virtualenv.rst:4 msgid "Further Configuration of pip and Virtualenv" -msgstr "" +msgstr "Pip와 Viertualenv 추가 설정" #: ../../dev/pip-virtualenv.rst:9 msgid "Requiring an active virtual environment for ``pip``" -msgstr "" +msgstr "``pip`` 를 위해 가상 환경의 활성화가 필요하다" #: ../../dev/pip-virtualenv.rst:11 msgid "" @@ -36,6 +35,8 @@ msgid "" "to keep your development environment clean and keeping different " "projects' requirements separate." msgstr "" +"개발 환경을 깔끔하게 유지하고 다른 프로젝트의 필요 라이브러리와 분리하려면 " +"가상 환경을 사용하는 방법이 최고라는 사실이 이제는 분명해졌습니다." #: ../../dev/pip-virtualenv.rst:15 msgid "" @@ -46,6 +47,12 @@ msgid "" "package for the virtual environment of the project. Over time this can " "result in a messy global package list." msgstr "" +"여러 다른 프로젝트에서 작업을 시작할 때 " +"특정 프로젝트로 돌아올 때마다 그 프로젝트의 가상 환경을 활성화 해야한다는 사실을 " +" 기억하기란 어렵습니다. " +"그러다보니 가상 환경에서 프로젝트의 패키지를 설치하는 것으로 착각하면서 " +"글로벌 환경에서 패키지를 설치하기 일쑤입니다. " +"결국 시간이 지남에 따라 글로벌 패키지 목록이 지저분해질 수 있습니다. " #: ../../dev/pip-virtualenv.rst:22 msgid "" @@ -53,6 +60,8 @@ msgid "" "environment when you use ``pip install``, consider adding the following " "line to your :file:`~/.bashrc` file:" msgstr "" +"``pip install`` 을 실행할 때 패키지를 확실하게 활성화 된 가상 환경에 설치하려면 " +":file:`~/.bashrc` 파일에 아래의 줄 1개를 추가해보세요. " #: ../../dev/pip-virtualenv.rst:30 msgid "" @@ -62,6 +71,10 @@ msgid "" "outside of a virtual environment pip will gently remind you that an " "activated virtual environment is needed to install packages." msgstr "" +"이 변경 사항을 저장하고 ``source ~/.bashrc`` 명령어로 :file:`~/.bashrc` 파일을 불러오면 " +"pip는 더이상 가상 환경이 아닌 곳에 패키지를 설치하도록 두지 않습니다. " +"가상 환경 밖에서 ``pip install`` 를 실행하려 하면 " +"pip는 패키지를 설치하려면 가상 환경 활성화가 필요하다고 친절하게 알려줄 것입니다. " #: ../../dev/pip-virtualenv.rst:41 msgid "" @@ -69,12 +82,15 @@ msgid "" ":file:`pip.ini` file. :file:`pip.conf` is used by Unix and Mac OS X " "operating systems and it can be found at:" msgstr "" +":file:`pip.conf` 파일 또는 :file:`pip.ini` 을 수정해도 이러한 환경 구성을 할 수 있습니다. " +":file:`pip.conf` 은 Unix와 Mac OS X 운영체제에서 사용됩니다. 위치는 아래와 같습니다: " #: ../../dev/pip-virtualenv.rst:49 msgid "" "Similarly, the :file:`pip.ini` file is used by Windows operating systems " "and it can be found at:" msgstr "" +"마찬가지로 :file:`pip.ini` 은 Windows 운영체제에서 사용합니다. 위치는 아래와 같습니다: " #: ../../dev/pip-virtualenv.rst:56 msgid "" @@ -82,18 +98,24 @@ msgid "" "locations, you can create a new file with the correct name for your " "operating system." msgstr "" +":file:`pip.conf` 이나 :file:`pip.ini` 가 저 위치에 없다면 " +"운영체제에다가 저 이름의 새 파일을 만들어도 됩니다. " #: ../../dev/pip-virtualenv.rst:59 msgid "" "If you already have a configuration file, just add the following line " "under the ``[global]`` settings to require an active virtual environment:" msgstr "" +"설정 파일이 이미 있다면 아래의 라인을 ``[global]`` 밑에다 설정해서 가상 환경 " +"활성화가 필요하다고 하면 됩니다." #: ../../dev/pip-virtualenv.rst:66 msgid "" "If you did not have a configuration file, you will need to create a new " "one and add the following lines to this new file:" msgstr "" +"설정 파일이 없다면 " +"새 파일을 만들고 그 새 파일에 아래의 라인을 추가하세요: " #: ../../dev/pip-virtualenv.rst:75 msgid "" @@ -101,6 +123,9 @@ msgid "" "that you use across different projects consistently) and this can be " "accomplished by adding the following to your :file:`~/.bashrc` file:" msgstr "" +"물론 어떤 (보통 여러 다른 프로젝트에서 공통적으로 사용하는)" +" 패키지들은 글로벌하게 설치해야 하기도 합니다. " +"이럴때면 :file:`~/.bashrc` 파일에 아래의 라인을 추가하면 됩니다: " #: ../../dev/pip-virtualenv.rst:85 msgid "" @@ -110,10 +135,15 @@ msgid "" "that you will have to use that name when trying to install packages " "globally with pip." msgstr "" +"변경 사항을 파일에 저장하고 :file:`~/.bashrc` 파일을 불러오고 나면 " +"``gpip install`` 로 패키지를 글로벌하게 설치할 수 있습니다. " +"함수명은 원하는대로 바꿔도 됩니다. " +"pip로 패키지를 글로벌하게 설치하려면 그 함수명을 사용해야 한다는 것만 " +"기억하면 됩니다." #: ../../dev/pip-virtualenv.rst:91 msgid "Caching packages for future use" -msgstr "" +msgstr "나중에 사용할 수 있도록 패키지 캐싱하기" #: ../../dev/pip-virtualenv.rst:93 msgid "" @@ -122,6 +152,9 @@ msgid "" "libraries that you use. For example, you may be using the ``requests`` " "library in a lot of different projects." msgstr "" +"개발자라면 모두 좋아하는 라이브러리가 있을 것이고, 여러 다양한 프로젝트에서 작업한다 할지라도 " +"사용이 겹치는 라이브러리가 있을 것입니다. " +"예를 들어 ``requests`` 라이브러리는 아마 여러 프로젝트에서 사용하고 있을 겁니다. " #: ../../dev/pip-virtualenv.rst:98 msgid "" @@ -132,18 +165,27 @@ msgid "" "`_ that " "doesn't need any configuration." msgstr "" +"새 프로젝트를 시작할 때마다 (그러니까 새 가상 환경 말입니다) 같은 패키지와 라이브러리를 " +"다시 다운로드 할 필요는 전혀 없습니다. " +"다행스럽게도 pip 6.0버전부터는 pip가 " +"`기본적으로 캐싱 매커니즘 " +"`_ 을 가지고 있어서 " +"추가 설정을 할 필요가 없습니다. " #: ../../dev/pip-virtualenv.rst:105 msgid "" "When using older versions, you can configure pip in such a way that it " "tries to reuse already installed packages, too." msgstr "" +"옛날 버전의 pip를 사용하고 있다면 다음과 같이 이미 설치된 패키지를 재사용 할 수 있습니다. " #: ../../dev/pip-virtualenv.rst:108 msgid "" "On Unix systems, you can add the following line to your :file:`.bashrc` " "or :file:`.bash_profile` file." msgstr "" +"UNIX 시스템에서라면 :file:`.bashrc` 나 :file:`.bash_profile` 파일에 " +"아래 라인을 추가할 수 있습니다." #: ../../dev/pip-virtualenv.rst:115 msgid "" @@ -151,6 +193,9 @@ msgid "" "access). After adding this line, ``source`` your :file:`.bashrc` (or " ":file:`.bash_profile`) file and you will be all set." msgstr "" +"경로는 (쓰기 권한이 있는 곳이라면) 아무 경로나 원하는대로 설정하실 수 있습니다. " +"이 라인을 추가한 후 ``source`` your :file:`.bashrc` " +"(혹은 :file:`.bash_profile`) 하면 됩니다." #: ../../dev/pip-virtualenv.rst:119 msgid "" @@ -159,12 +204,17 @@ msgid "" "Windows, you can add the following line to your :file:`pip.ini` file " "under ``[global]`` settings:" msgstr "" +"위 설정을 할 수 있는 다른 방법도 있습니다. " +"사용하는 시스템에 따라 :file:`pip.conf` 나 :file:`pip.ini` 파일일 수 있습니다. " +"Windows를 사용한다면 :file:`pip.ini` 파일의 ``[global]`` 아래 줄에 " +"다음과 같은 라인을 추가할 수 있습니다." #: ../../dev/pip-virtualenv.rst:127 msgid "" "Similarly, on Unix systems you should simply add the following line to " "your :file:`pip.conf` file under ``[global]`` settings:" msgstr "" +"비슷하게 UNIX에서도 :file:`pip.conf` 파일의 ``[global]`` 라인 아래에 다음과 같이 추가하면 됩니다:" #: ../../dev/pip-virtualenv.rst:134 msgid "" @@ -174,6 +224,10 @@ msgid "" "yourself with all of this path voodoo, just use the values provided here " "and you will be fine." msgstr "" +"캐시를 저장할 경로는 어디든 좋지만, :file:`pip.conf` 나 :file:`pip.ini` 파일이 있는 " +"폴더 *안에* 새 폴더를 만드시기를 추천드립니다. " +"새 경로를 만드는 본인의 술법이 못 미더우시다면 그냥 이 가이드에 나오는 경로를 사용하세요. " +"잘 될겁니다." #~ msgid "Further Configuration of Pip and Virtualenv" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.mo deleted file mode 100644 index 20f5719652a6132fbd4f98253bbbef2f26466bc0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8513 zcmeHM&u=706)s4C#6f@(!tWn-O7@4R*Y@sVHH2uryWYi;yOo+?){1~4Te17?HA^wK*|9VD{Ss}iO z@x4z7aS7*tgYn<^{+CbUK8%0DGU$x!73?WD?6 z>1N8#XPmdUY7P8H2E$ZQV>D%q=K zQRX>K7RQ6J88_F)aU>trQ-o(Tj9iVhw0-`&U*?H7HkaN4R^^8^B$=60y(u4;&dXD+ zX-YXV!0m_1Gp?xtn4y|zy0vr|=nT(29coNiRJ?B6pjm-@YWz?FaJ0ykaWz?IxgrwJ zp^B%9W2RNh8IkcOJwP(r+{(-%0)@j6nu#{_^;w(b2 zxD;@T6%4W1sj4X4spWWpLPr8fY~DA6vQQj;Of@lzB~cShVWDecXCXrK4w@38W8^bi|^PgF-{S#1yDx z!84FlPjqI-6!Q7-^VEnA@`0|Uxl_~c>w>Nu7xuAEyn7V^eY-S>Dvml}9V?KnBXLV5 zoMvq%_rY+#^d-nbB8j~Tr4N=d7`B8_f+0VVL&z9nk@AzUI&X0sgH13ma@Ih$4$n^P z2v25pG&!5lDlrjcGbQec&`T!2)Wm|mBYB$%=fdz*B>>DsyEf>l&0qD%fAS6j=5*Fa z0s=Vs7aI=%@=7Mwrq$7NTdDM*x4TbxqZAWj8S@SGq^Aq;}0>w6aRBfi=3oFxavvoke@ z()?6&#Pr+~Tc5Tn5AUVR^*Z8^OBZT%tBCl|ch(71p5^T!4yB9gK4_G$dgFydn{ap<4BLey}eD zblE_=4W87b?6l15YCLV&$?WI}XJl;Q8?@BbfE`_rszy!;$y1eWpUg6?pZi}+9WH^@ zBO5cDuyxM4+8JD2z*+UgR$`&Zq^^&Y?^skJ?O2olLWi|)iv1jROKAw$BZU-q^g)N zl?>g8PPB6>RL4ShVE=h$Rd9W-KaKlcnPsVlfk|(WTNHA%I|VFxK2a%#wY|y<6m+i7 zbaYu_5>}ufMptJ3B4?m4bGTnt&B_qD8r49}wHTAR5(reN17w=;QqKkgo(s(;T<1?6 z2?(-TNFIAxTB1%a&)`{txq!DZ+cV~iZs$f&Cxr}M$xcyj4^0w2T4(Y9cnshE+tu0W6 z0$?<$h+chrlgza|Sq;Sfa;9+cqf>QiMe+!ELL#zt5=|kILc)!Z+ExAj(a0Y*;d~?> zA#v$)l{t%!ldz(dKU1C%U!59uy?IBO$!R8kI@Ss#nwJet8B?FrNakT~o^TyFREaz~ zk#GGE;%Pvmo#b$HYeGTHD?}IEk{xlwbpfVAuMlJ|bdamZv@q0ECFFQ;n(*4!+9@!S zgKi=f!^;Wk`~14wtiLc@_t~_+7+wY!J0NPNfH-i@Z4nB8!u=M%7LW`ZDRINn7}e~} z@j~f>W>7?7@lBh^K9>~MxfO{MDh9gzJgY7;uhg#u5QVlo$k){%Uk%tg`HzPF*JRB-J`wT_Ye1G%i4~%Hg4G*Y~mT!7+}4A;;)P|W%6&) zJ21Lu|LxNEJJ)B|5f-$#oxMD{$ltq6Wq;$~^R6~TKb>#YcS#|bZvVJmsP6|wmL2(+8r*RHoB q7XMwa-ilanMbNg(dMkqeb-CV(IDa4OQN4e%-iiqSp#6VuMf?X8(xdPI diff --git a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po b/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po deleted file mode 100644 index 45efe3908..000000000 --- a/docs/locale/ko/LC_MESSAGES/starting/pip-virtualenv.po +++ /dev/null @@ -1,157 +0,0 @@ -# -msgid "" -msgstr "" -"Project-Id-Version: pythonguide 0.0.1\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-11-30 22:28\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: ../../starting/pip-virtualenv.rst:4 -msgid "Further Configuration of Pip and Virtualenv" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:7 -msgid "Requiring an active virtual environment for ``pip``" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:9 -msgid "" -"By now it should be clear that using virtual envirtonments is a great way to" -" keep your development environment clean and keeping different projects' " -"requirements separate." -msgstr "" - -#: ../../starting/pip-virtualenv.rst:13 -msgid "" -"When you start working on many different projects, it can be hard to " -"remember to activate the related virtual environment when you come back to a" -" specific project. As a result of this, it is very easy to install packages " -"globally while thinking that you are actually installing the package for the" -" virtual environment of the project. Over time this can result in a messy " -"global package list." -msgstr "" - -#: ../../starting/pip-virtualenv.rst:19 -msgid "" -"In order to make sure that you install packages to your active virtual " -"environment when you use ``pip install``, consider adding the following two " -"lines to your :file:`~/.bashrc` file:" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:27 -msgid "" -"After saving this change and sourcing the :file:`~/.bashrc` file with " -"``source ~/.bashrc``, pip will no longer let you install packages if you are" -" not in a virtual environment. If you try to use ``pip install`` outside of " -"a virtual environment pip will gently remind you that an activated virtual " -"environment is needed to install packages." -msgstr "" - -#: ../../starting/pip-virtualenv.rst:37 -msgid "" -"You can also do this configuration by editing your :file:`pip.conf` or " -":file:`pip.ini` file. :file:`pip.conf` is used by Unix and Mac OS X " -"operating systems and it can be found at:" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:45 -msgid "" -"Similarly, the :file:`pip.ini` file is used by Windows operating systems and" -" it can be found at:" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:52 -msgid "" -"If you don't have a :file:`pip.conf` or :file:`pip.ini` file at these " -"locations, you can create a new file with the correct name for your " -"operating system." -msgstr "" - -#: ../../starting/pip-virtualenv.rst:55 -msgid "" -"If you already have a configuration file, just add the following line under " -"the ``[global]`` settings to require an active virtual environment:" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:62 -msgid "" -"If you did not have a configuration file, you will need to create a new one " -"and add the following lines to this new file:" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:71 -msgid "" -"You will of course need to install some packages globally (usually ones that" -" you use across different projects consistenly) and this can be accomplished" -" by adding the following to your :file:`~/.bashrc` file:" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:81 -msgid "" -"After saving the changes and sourcing your :file:`~/.bashrc` file you can " -"now install packages globally by running ``gpip install``. You can change " -"the name of the function to anything you like, just keep in mind that you " -"will have to use that name when trying to install packages globally with " -"pip." -msgstr "" - -#: ../../starting/pip-virtualenv.rst:87 -msgid "Caching packages for future use" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:89 -msgid "" -"Every developer has preferred libraries and when you are working on a lot of" -" different projects, you are bound to have some overlap between the " -"libraries that you use. For example, you may be using the ``requests`` " -"library in a lot of different projects." -msgstr "" - -#: ../../starting/pip-virtualenv.rst:94 -msgid "" -"It is surely unnecessary to re-download the same packages/libraries each " -"time you start working on a new project (and in a new virtual environmen as " -"a result). Fortunately, you can configure pip in such a way that it tries to" -" reuse already installed packages." -msgstr "" - -#: ../../starting/pip-virtualenv.rst:99 -msgid "" -"On UNIX systems, you can add the following line to your :file:`.bashrc` or " -":file:`.bash_profile` file." -msgstr "" - -#: ../../starting/pip-virtualenv.rst:106 -msgid "" -"You can set the path to anywhere you like (as long as you have write " -"access). After adding this line, ``source`` your :file:`.bashrc` (or " -":file:`.bash_profile`) file and you will be all set." -msgstr "" - -#: ../../starting/pip-virtualenv.rst:110 -msgid "" -"Another way of doing the same configuration is via the :file:`pip.conf` or " -":file:`pip.ini` files, depending on your system. If you are on Windows, you " -"can add the following line to your :file:`pip.ini` file under ``[global]`` " -"settings:" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:118 -msgid "" -"Similarly, on UNIX systems you should simply add the following line to your " -":file:`pip.conf` file under ``[global]`` settings:" -msgstr "" - -#: ../../starting/pip-virtualenv.rst:125 -msgid "" -"Even though you can use any path you like to store your cache, it is " -"recommended that you create a new folder *in* the folder where your " -":file:`pip.conf` or :file:`pip.ini` file lives. If you don't trust yourself " -"with all of this path voodoo, just use the values provided here and you will" -" be fine." -msgstr "" From 615ab87813d23b66c9ad07738b4093dce43bbcef Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 18 Mar 2021 11:57:02 +0000 Subject: [PATCH 051/117] install on osx --- .../ko/LC_MESSAGES/starting/install3/osx.mo | Bin 7703 -> 8362 bytes .../ko/LC_MESSAGES/starting/install3/osx.po | 75 ++++++++++++++---- .../ko/LC_MESSAGES/starting/installation.mo | Bin 2270 -> 3541 bytes .../ko/LC_MESSAGES/starting/installation.po | 32 ++++---- 4 files changed, 73 insertions(+), 34 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.mo index 5511c5a803829092595d82200ae35d3813d6bbba..1044f8ee30586339367cc5e1238613a1cc7ed2dc 100644 GIT binary patch delta 3934 zcmb7HU2Ggz6~3XZ)IXp=N!!$gn;?*#IxE{L0$CBlDv(ra)uOa0nnJGtbSF94yl7=(0Qgfn>m#{nU5MWkO6;vQrcawonY{05xF z^Dn+B#IGUGK^}wrC*+%uKbQEmckdgMN9CJ`%_)qL^`fB)j{iIYkBZt8UM#Nk*f zDG!`G6`4Gl{9)?!Od^$fKXNoRm4D=!KN)JVAiZ2pms|Q$eavmlO1Irm&9-*tw7spa z*;1Poy=AE-ORu!FX-hS4X{)BPmB`+`;%D*n%<0L5{BiP3Je^8T#ga3F(B%~^30?a9 zob*;LcjFVePnT}%>)S)R3=8~4mo4cTq3Ph9E}K$Sb1GkfHJG-^1K3hG+R`hSc+yVU zTWssnlJttEzFP2#I8Z2fmu+>)(pg*G*p{kksw*ZL(6$NZ>9ks2qFC|X-K@h!3PA2L zdX>r}d}71YjwweYXXzT0=xY>@uFk@-J}2b6bpDmdS%NL}=BCPKpnH!hZ?m?7t(=Ui zX2>tE*m5@-Q06ur2_w2>+y?qJZ@vQc6ozsxdKVnEUZ>;kR!z;7==erXx~*Bf_KLWe zvE=8oS^Vg=4B}DO%Ft|6Kth-5$e+8FBYoaVhH`ilK$h_@3+$E<6DQHkFgylcE>^q+ zoAT1-LF9Xs2t8ldS8r0f)Zz`_>tU&jCPj0_l;i2x@$qQ)5-B{Cnu@)bj{Qn1AH@Ul zdb3K>oN`$bazY$dl?)LF%<-Ad{~@Ix#XaJ)MY2w+VI>8BchQ zir~AoA*n2%U)@UskNwo>B$sKKt>~*Qa9HJSxP)9uy>gG;L`o@{ltN`Kt44u%@4GFu zMdS%e;zz%nOrA)AoueZ`efBb#n9CjLDf)DshTW+$|v1{_+*!6y*63&X)Zh ztJDSr2MJHArmmvM!c(274~9L8f$C78{clw9rVE)g~J-cHl|H2akhC)&?1;K4^1wFX6Te!#* zIHJorB-ai`q_3!tS_ItvgE91zi@MJT62(Jj%hXhBeRJi3GNRr>s+}THY{TKQWrH-8=IY8={{+*X0QX(z z2r;wPmgz#br>o{HZ5be+SG-MU)vX1oZWd_hp-2e6Wg8D+n-4n|jI*=fWhWx^I^2fUOqMiQ6ii?-b8(pL!Oo2eQ=+ zxm&#$exeN|yvao$Gzvk5tXFC6sJZuWFvU(>_&bcP)kuqXQ=GSlKes0IH+9n4uJ}V*OgO zWz=nM;-e(&&@h6#1HCgus`VBMO|NHAfKZYD>r;_;WS>%IiFX-Is6~*0A#P)p*v6ou zaXO$7(?SuP^3oc-f64# z21O;JVZOU%m;c*~FENmS2I(4>TSYtw0@q45g%TkNpg3x{smO-KTbwaO=pmTBq_Ictb5>D$C)Qv6QNyg7& zHFmr#f~kAi29<$#1+`Q2_k0@oOvKzUrLXM26Ek|F=Q4*-6ks0_zn`SYGaP%Flxx5GxzL;YE7S!F3s}(HQ z+L^`Y{1ac225IDWxRpU!Ar!&|RquYfO&Ua}x9{iCgI%t);Fkb(QT4kz)O82I7~d{5 zddHOI-f5uSardDn<)BLFe;w?;QM$m60t7^mQS&Y8*1d~#IC)qzg1!!m)KP63+6&6z z!P}ux?|AHS3!t}=bK3KeEVD64$)UYIi6x-AGzE5k&reG`+sC8;FoBPH#U|1czPFH5K7F)otr zigb&I=;9Z?VLC1KaD;o<%t-gx$93GyN?YjS8eZZI-euMPFS-;>iUFSETyA>c0(Thj zjvLXCRp~i;&rd&o!E5p-j<8l>49;?;gL$<0gk}7Rt{02`S<4&*=EStF!iD&6GUpz9 do@rR$F%`$R`(D-7>qkxyJS0-z;e6alP5`+(EP?<4 diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po index 7386a9b36..1058fccb0 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po @@ -15,7 +15,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: Ahn YoungSeon \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -24,17 +24,19 @@ msgstr "" #: ../../starting/install3/osx.rst:8 msgid "Installing Python 3 on Mac OS X" -msgstr "" +msgstr "Mac OS X에 파이썬3 설치하기" #: ../../starting/install3/osx.rst:12 msgid "**Mac OS X comes with Python 2.7 out of the box.**" -msgstr "" +msgstr "**Mac OS X는 파이썬2가 기본적으로 설치되어서 나온다.**" #: ../../starting/install3/osx.rst:14 msgid "" "You do not need to install or configure anything else to use Python 2. " "These instructions document the installation of Python 3." msgstr "" +"그러니 파이썬2를 따로 설치하거나 설정할 필요는 없다. " +"이 안내문은 파이썬3 설치를 다룬다." #: ../../starting/install3/osx.rst:17 msgid "" @@ -44,14 +46,19 @@ msgid "" "`_, which is considered the " "stable production version." msgstr "" +"OS X와 함께 달려오는 파이썬 버전은 학습하기에는 아주 좋다. " +"하지만 개발에는 좋지 않다. " +"OS X에 딸려오는 버전은 이미 구식이다." +"`안정화 된 `공식 최신 버전의 파이썬 릴리즈보다 " +"`_ 구식이다." #: ../../starting/install3/osx.rst:25 msgid "Doing it Right" -msgstr "" +msgstr "똑바로 하기" #: ../../starting/install3/osx.rst:27 msgid "Let's install a real version of Python." -msgstr "" +msgstr "이제 진짜 파이썬 버전을 설치해보자." #: ../../starting/install3/osx.rst:29 msgid "" @@ -61,6 +68,11 @@ msgid "" "(must have an Apple account) or the even smaller `OSX-GCC-Installer " "`_ package." msgstr "" +"파이썬을 설치하기 전에 GCC를 설치해야 한다. " +"GCC는 `Xcode `_, " +"더 작은 `Command Line Tools `_ (Apple 계정이 있어야 함) " +"또는 더 작은 `OSX-GCC-Installer `_ " +"패키지를 다운로드하여 얻을 수 있다." #: ../../starting/install3/osx.rst:36 msgid "" @@ -68,12 +80,16 @@ msgid "" " combination, the software can cause issues that are difficult to " "diagnose." msgstr "" +"Xcode가 이미 설치되어 있다면 OSX-GCC-Installer를 설치하면 안된다. " +"둘 다 설치해서 GCC가 꼬여버리면 뭔지도 모를 문제가 발생할 수도 있다." #: ../../starting/install3/osx.rst:41 msgid "" "If you perform a fresh install of Xcode, you will also need to add the " "commandline tools by running ``xcode-select --install`` on the terminal." msgstr "" +"Xcode를 새로 설치한다면 터미널에서 " +"``xcode-select --install`` 을 실행하여 commandline tools을 추가해야 한다." #: ../../starting/install3/osx.rst:44 msgid "" @@ -81,12 +97,18 @@ msgid "" "with Linux systems will notice one key component missing: a package " "manager. `Homebrew `_ fills this void." msgstr "" +"OS X에는 다양한 Unix 유틸리티가 포함되어 있지만, 리눅스에 익숙한 사람이라면 한 가지 " +"중요한 구성요소가 빠졌다는 사실을 알아챌 것이다. " +"바로 패키지 매니저다. " +"`Homebrew `_ 가 그 빈자리를 메꾼다." #: ../../starting/install3/osx.rst:48 msgid "" "To `install Homebrew `_, open :file:`Terminal` " "or your favorite OS X terminal emulator and run" msgstr "" +"`Homebrew를 설치 `_ 하려면, " +":file:`Terminal` 이든 아니면 달리 좋아하는 OS X의 터미널 에뮬레이터를 아래 스크립트를 실행해라." #: ../../starting/install3/osx.rst:55 msgid "" @@ -96,30 +118,34 @@ msgid "" "variable. You can do this by adding the following line at the bottom of " "your :file:`~/.profile` file" msgstr "" +"이 스크립트는 설치를 시작하기 전에 변경 사항 설명 메시지를 표시한다. " +"Homebrew가 이미 설치되어 있다면 :envvar:`PATH` 환경 변수 최상단에 " +"Homebrew의 디렉토리를 추가하자. " +"하기 라인을 :file:`~/.profile` 의 마지막 라인에 추가하면 된다. " #: ../../starting/install3/osx.rst:65 msgid "If you have OS X 10.12 (Sierra) or older use this line instead" -msgstr "" +msgstr "OS X 10.12 (Sierra) 혹은 그 이전 버전을 사용하고 있다면 아래의 라인을 대신 사용해라." #: ../../starting/install3/osx.rst:71 msgid "Now, we can install Python 3:" -msgstr "" +msgstr "이제 우리는 파이썬3를 설치할 수 있다." #: ../../starting/install3/osx.rst:77 msgid "This will take a minute or two." -msgstr "" +msgstr "1~2분 정도 걸린다." #: ../../starting/install3/osx.rst:81 msgid "Pip" -msgstr "" +msgstr "Pip" #: ../../starting/install3/osx.rst:83 msgid "Homebrew installs ``pip`` pointing to the Homebrew'd Python 3 for you." -msgstr "" +msgstr "Homebrew는 Homebrew의 파이썬3를 바라보는 ``pip`` 를 설치한다." #: ../../starting/install3/osx.rst:88 msgid "Working with Python 3" -msgstr "" +msgstr "파이썬3로 작업하기" #: ../../starting/install3/osx.rst:90 msgid "" @@ -127,14 +153,17 @@ msgid "" ":ref:`Homebrew version of Python 2 ` installed, and the " "Homebrew version of Python 3 as well." msgstr "" +"여기까지 했으면 이 시점에서 너의 시스템은 파이썬2.7을 사용 가능하고, " +"아마도 :ref:`파이썬2의 Homebrew 버전 ` 도 설치되어 있을 것이고, " +"파이썬3의 Homebrew 버전도 설치되어 있을 것이다." #: ../../starting/install3/osx.rst:98 ../../starting/install3/osx.rst:110 msgid "will launch the Homebrew-installed Python 3 interpreter." -msgstr "" +msgstr "위 명령은 Homebrew로 설치한 파이썬3 인터프리터를 실행한다." #: ../../starting/install3/osx.rst:104 msgid "will launch the Homebrew-installed Python 2 interpreter (if any)." -msgstr "" +msgstr "위 명령은 Homebrew로 설치한 파이썬2 인터프리터(있으면 말이지)를 실행한다." #: ../../starting/install3/osx.rst:112 msgid "" @@ -142,20 +171,23 @@ msgid "" " to Python 2. If the Homebrew version of Python 3 is installed then " "``pip`` will point to Python 3." msgstr "" +"파이썬2의 Homebrew 버전이 설치되었다면 ``pip2`` 는 파이썬2를 가리킨다. " +"파이썬3의 Homebrew 버전이 설치되었다면 ``pip`` 는 파이썬3를 가리킨다." #: ../../starting/install3/osx.rst:115 msgid "The rest of the guide will assume that ``python`` references Python 3." -msgstr "" +msgstr "이 가이드의 나머지 부분에서 ``python`` 이라 함은 파이썬3를 가리킨다고 가정하겠다. " #: ../../starting/install3/osx.rst:126 msgid "Pipenv & Virtual Environments" -msgstr "" +msgstr "Pipenv & Virtual Environments(가상 환경)" #: ../../starting/install3/osx.rst:128 msgid "" "The next step is to install Pipenv, so you can install dependencies and " "manage virtual environments." msgstr "" +"그 다음 순서로 Pipenv를 설치하여 디펜던시를 설치하고 가상 환경을 관리할 수 있다." #: ../../starting/install3/osx.rst:130 msgid "" @@ -165,18 +197,28 @@ msgid "" "but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" +"Virtual Environment(이하 가상 환경 -역주)은 가상의 파이썬 환경을 만들어 " +"서로 다른 프로젝트에 필요한 디펜던시를 별도의 위치에 두는 도구이다. " +"\"프로젝트 X는 버전 1.x에 의존하지만 " +"프로젝트 Y는 4.x가 필요합니다\"라는 딜레마를 해결하고 " +"전역 패키지 디렉토리를 깨끗하게 관리할 수 ​​있도록 한다." #: ../../starting/install3/osx.rst:135 msgid "" "For example, you can work on a project which requires Django 1.10 while " "also maintaining a project which requires Django 1.8." msgstr "" +"예를들어 Django 1.10으로 프로젝트를 진행하는 한편 " +"Django 1.8로 만들어진 프로젝트를 유지보수 하고 있다면 " #: ../../starting/install3/osx.rst:138 msgid "" "So, onward! To the :ref:`Pipenv & Virtual Environments " "` docs!" msgstr "" +"전진! " +":ref:`Pipenv & 가상 환경(Virtual Environments) " +"` 문서를 향해!" #: ../../starting/install3/osx.rst:142 msgid "" @@ -184,4 +226,5 @@ msgid "" "`_, " "which is available under the same license." msgstr "" - +"이 페이지는 같은 라이선스를 사용하는 `다른 가이드 `_ " +"의 리믹스 버전이다." diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.mo b/docs/locale/ko/LC_MESSAGES/starting/installation.mo index f6afc943b31c787a7c019a922f4ed76c73b00c53..a0fbf657503064bfb03be354dbce36b6e2435b81 100644 GIT binary patch delta 1703 zcmaizUufG_6vnU9cI~#7wH<@4?cnSWTdT(27BLE?ls%M{v6Kxq*h^tCjuH!8OIUKU zz(7f-K!`o+5v%bsyA{l77RXoFHF6H`P^ z{E6NZ1B|^)f)mAl8UwN+3PQ*bt4k z4>I;Xu|xcbc=8ZqGVv<$17d|J1l=e8MRETUkI?wh3yi%<^oe5Qqc1Y{D)B5)S7K>o(KQ@ef?;fsxmGWMdeTSf5W-R8CIK+F7L-z#4 zYKsMhF_Ap);{*RBUg7RsXJZ{p^P&UTx8ptU3ix|*#gqCJwLW~5@Oxh(kei44H6>CI{^ cMU0!Z*m@Z^|Kj+}I9Y%jB&5nX`65pW0Cm?G;Q#;t diff --git a/docs/locale/ko/LC_MESSAGES/starting/installation.po b/docs/locale/ko/LC_MESSAGES/starting/installation.po index 65e7fe3e4..a538e1aea 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/installation.po +++ b/docs/locale/ko/LC_MESSAGES/starting/installation.po @@ -52,58 +52,54 @@ msgid "" "congratulations — you are indeed a person of excellent taste. —*Kenneth " "Reitz*" msgstr "" +"파이썬2 대신 **파이썬3** 를 사용하실 것을 강력하게 추천드립니다. *아직도* " +" 파이썬2를 운영환경에서 사용하고 있다면 어플리케이션과 인프라스트럭쳐를 " +"업그레이드 하실 것을 고려해보세요. " +"이미 파이썬3를 사용하고 계신다면, 축하드립니다 -정말 멋진 취향을 가지신 분입니다-. " +"-*케네스 레이츠*-" #: ../../starting/installation.rst:24 msgid "Installation Guides" msgstr "설치 안내" #: ../../starting/installation.rst:26 -#, fuzzy msgid "" "These guides go over the proper installation of :ref:`Python ` for development purposes, as well as setuptools, pip and " "virtualenv." msgstr "" -"이 안내서는 개발을 위한 :ref:`파이썬 2.7 ` 의 적절한 설치 뿐 아니라 setuptools, " +"이 안내서는 개발을 위한 :ref:`파이썬 ` 의 적절한 설치 뿐 아니라 setuptools, " "pip, and virtualenv의 설치도 다룹니다." #: ../../starting/installation.rst:30 -#, fuzzy msgid "Python 3 Installation Guides" -msgstr "설치 안내" +msgstr "파이썬3 설치 안내" #: ../../starting/installation.rst:32 -#, fuzzy msgid ":ref:`Python 3 on MacOS `." -msgstr ":ref:`Mac OS X `." +msgstr ":ref:`MacOS에 파이썬3 설치 `." #: ../../starting/installation.rst:33 -#, fuzzy msgid ":ref:`Python 3 on Windows `." -msgstr ":ref:`Microsoft Windows `." +msgstr ":ref:`Windows에 파이썬3 설치 `." #: ../../starting/installation.rst:34 -#, fuzzy msgid ":ref:`Python 3 on Linux `." -msgstr ":ref:`Linux `." +msgstr ":ref:`Linux에 파이썬3 설치 `." #: ../../starting/installation.rst:37 -#, fuzzy msgid "Legacy Python 2 Installation Guides" -msgstr "설치 안내" +msgstr "레거시 파이썬2 설치 안내" #: ../../starting/installation.rst:39 -#, fuzzy msgid ":ref:`Python 2 on MacOS `." -msgstr ":ref:`Mac OS X `." +msgstr ":ref:`MacOS에 파이썬2 설치 `." #: ../../starting/installation.rst:40 -#, fuzzy msgid ":ref:`Python 2 on Microsoft Windows `." -msgstr ":ref:`Microsoft Windows `." +msgstr ":ref:`Microsoft Windows에 파이썬2 설치 `." #: ../../starting/installation.rst:41 -#, fuzzy msgid ":ref:`Python 2 on Linux `." -msgstr ":ref:`Linux `." +msgstr ":ref:`Linux에 파이썬2 설치 `." From 560e7734615e07650e4d2427a5dcd3321d4cbd4e Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Sat, 20 Mar 2021 18:05:40 +0000 Subject: [PATCH 052/117] web 1/2 --- docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 31365 -> 33034 bytes docs/locale/ko/LC_MESSAGES/scenarios/web.po | 132 ++++++++++++++++---- 2 files changed, 109 insertions(+), 23 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo index 5bd4c90e68a2773545f9d5d86c3b8cdf30e27bea..3bf8db8558af33f78e27e517f420553feec5419a 100644 GIT binary patch delta 8807 zcmai3ZE#fAc|L%@VmGzZ+Hva-a;+pr$U@UVCvJ(y33ihJ<{LTAx1o5A96)kFYD4Pw zO0Y}U+7()5wbBZ9#R4lNT+uAr6|7>>)SYps6StjA+CR;-9Ww1qJA2NZ=123Vf7<7H z&%Jj)P^N$M>fXKgocHs2pZDC@FIEkoT3za1S`E$qzAtNtgamWG4 z_aXlT5|66i+kwR)&q8v;n~?ZP{RQMhSnvLwO8p0}AKzv7S+mP_5uV7F3mf_e*5 z;lX9dOZfNJ9;N;o^1xoDUc~)%```^+AK7mg`gFJ5Xzk1J4(@*v@-D~|kk3MXhu3(o z1WCmgzogVv$oCPM<8!OjzRtdBs~~8XhZT-$oufVtMLyP z{_o#c>Lld^Y^r zi+|{%pZ)FIU8 z(l^k1*x4WH>vf(xd7|rJPw(gY2KtZo^&ROt)OYOp`*$4dJv?ymaAdP{q%XYK&>cB= zY_s#y?)0V4&A4Ww;*BTum3gx~Xz~>k%bI-F(HC=OcF5$TPHl1C%SOFSRu7LmUNXsN zM&=!JYh0&udS=;-q09A> zP7ZpRod3Hi9+6))Hp?Q7f7M^yX6`Vp3 zM01^vIlplUw_2U#)Ji#B%E{8v6m$-k&Oz_=w_kYAHTh*-%9_HE$t`0wth6L*72;+( zYR)IQ<23w)+jp+tZnANDSEq~mYQ>>dQ{!GX!^dd^OdhVTZwgSYT5?Pdp{j^3ZeS<% zD9lMz^UHWqSCjezjGadaZkT+Mjq`geRF>&0Vjx&bXOP3La zOqB{^HQ0wtLBMs&kDc2Er4d$yR2E#pdMrfuz}cfwriHIetu)0*LnkkD4eQfNo#5ig zrqD{nI63D$kv_njyIMwMWpOI zb2=TDXQ#*NHBnnQP2KfU)C}LOr#u3nXAy@CDj`azoKKo_Tk#R<8{$I6NR~i z4Zs94-@IF7xS}OJ3l~<*Yz9%NpfvrQl@(kB#V#Qls4$%+>yhsgPE#0^a9&>KM!Iy~ zMlqwy6()`O!9_EiVwr{TqrBv}xs_F4IC%6>U#}$PWhBP9^V|4i&Lmm>W_HZDMffPd zEXSM~fi{4SL_uFFA>jBoS1^#g5 z9*CUi7gdf&PQ2OIdm`ePY!Sd<0aLsY&q9BCDJ-8Z_~AtVmOa}7DGA4taM3Yli^xt# zmj_WHbi1GYdrtQEpgjS)Od{`?Xo2vGvO$JQ{Ig~f*a>egTx(v#da7L2^YXlX)0P=> zcBF)4kd9FXGP>DzlgOd|&BQVS*hwtHdu%5rnumAm&m$7vxj9CnwlIi1k!?CUcE1_v zg=NmBjt-~2qhtI2-MgIqhk7E%4&sJ43XjeqG|UpeOmYq%r*cR|7xB@fQ`lONad^fD zhFTfn3S-lRK1~-AA}M9bsKSs=EWuP1DsW(!c^9Axe6>Qq_#Jj_ln~J$Ky1Mo9`n$H zX9vx6%x|X-c8%(W22{SjZE}r^Hmak5S>iA&#A~QQmI_*Vtu$0u$i^KhRsaqF@fu$D z{Uh4kKv01}p&0=Tcd2d8Ykf{{Uq4b2JSCm`wFlCLo$K5tbZ+o9(lC=;p-IXv=pGaA z))ta}{~;a-`cz@L__YwN_h9%HSq&%i1@shMDApTh^+XxaZB}qq6g0_(e8Ug1MQxcyK7rWGf{rv}zAC2_) zN78?}>&Z1{YA}6!*G3oB3@V1Wf=~#Xpj%Nms5m4JaQLu)-@? z1m;saz@Ev(t@8P*xsn%m+7$BQO?}m6V{PC5N;hNe4YBqF?y<`5Ed%{M8-o%7(p`!H z{~QCHoQ?qkb42eLh*X`z)C)(5fs{_8E1@D-U06vK$8)6sLu%3G<1%f=vbCEzv{?3X z7<1iBl9|GBa1J{LV&u zJ{w|USB~&ygH=G1%OlbeZC@q?NCP0+BPqZ+CS&qAAaWE4;R8~6{YQ7KahXBj5~lzl zq?D@VS}G`?H5akLb*z=rV>3Z;nU74jFc<2CdfV<7(Yfcm80Q5YjUz7#nc8AX^a3N9 z1tZF_E8ojvh*vt(x4S>)3ceO{O{lq|LX|j^7s}YF!NjM)a7oZ?WbupOD7K!dK+D=v z5`GfCGR9w6{J;cwB6J35OVllzrL4cCzYzO->na>TP#u89w{OWx;@}426xLgp#6d5_ z^(;0VnWNH(0a?u{aDT)FDY3*D3LN#M3bh45ztAW};yY1cTSl(1;rm^Zk@SX_;LpaU zAmf;0E`qQQiS5E!S$@mF=|s_+c)M6mR@GV3X#5PNm&72s6;VadM?wnxf|hi@f2;&>QnIW zY4FGT%(+76L*uh(22^FFIe1QH#v3>i? z`*t{%$9l;a@BqWkV3vq6T-|^R{x@2}-zFx9HWkZJtt&rl8WsTouB4fx_C;Qg9FO!K zikwhB4SO0nPtu8M%A=VncFZ#)EM31UNbqF@AoPq%>iEB$yXxqCj*BHq-2L`C7CYCzcVi499SeyEBq-t7f2EL zCqd-$97`B=xo4{#41x}ad5AR;7E$2CY|+H#{1Ho^g4<`uLjBHG!3)SxXyR~64?VaH z1gS%lliu<4d+Cp?d%|rOGHT-iy%9h1oAY=RE9R@<=iXU17Nq6+c2kUke=zmiUfKV} zZEfJwa52v_WC8jrRC7g^8zbyA(pMK%Qj*gJf7oc*v)-2NdcS0!=0(FbLFmytIg4TH zVoDQuWuliE5q)?g&vk(74(*{aK45G<9(jH90p7&iQ}w2Rq=A)b=g`C7LK-4w9AG%tKWzTUOd)&Z9G*3(lNTBkkI@Yhg_W-&`ZSh)q=i$fi0Tb4R#dPoC#~KR! z02-MED_a~ytV}fh&z(>_K27X%u{LDd}oJpS+_XBO2k`VMMzG8Wz68Xkn!Q5VEY^E2ELOq0~?Yda$hpu zV9;vO0vxtsrV<9=4|%y?#nDQBk-mwgaQd3wyXiO6@eL1tg*7C`+MVkFz_BGfZzN!l ziX?E72ZlrHSU=zs)J4N(M+=VSo^sMZ-|*aHUc=0$np#Wxvt2!#R(7xRbV~uwD|t}r zs{G@wM_1otqnGx6>*H(SqV%VpeFX7cF;=ZhH9C*XF=eW-t2oA9h!x011YX1_e@Z!@ z)HB!EnEY9{?*AZ7as@X$8MFu!fH&D|xmq6$gWit14$9h3cNR8^b^0QA3QrR16CqbB zNsX^Gqq;;<%NaSO`oIj+{2~u3wqlASLH6LJT&%Km3)yd(7;6^fkvmJ@7Z*-XVK!rt ztRk7e@-IH@X|v?$%6vPysX*(cpLOKLWl$uVfs zMi3w*@asfAY0s^&Gbe~nXa7$AZD1<)TMW05uPNphUaH45=vs0}0MKE;z%b?UJoy%s zaf77ArgmnAZ%z+kF0a>?PT-IbM?rJ4kTk}6)AwmnP_dbU@YVYFC=@r(x>3E1r){Vl zfc>v3F51mIv9RNHIeziLAdE5C5a?bq2^_-Oil<+3*a0P_hG=ZLd!(7QK zuxN(4l1nxI$N>9MvW^$dCFn%#^L>XC&GW!V{}|(A(A>R|fdYDI(eV<4I7!hL0GVl& zPXmz(=AhP5PR^f$L6-{2&?yDca2g(-GP24snPW}_EbGyX1f|=~QjMn2POL^;Wp(qD z2Haj}TVTi71O3`&;e~4kqXnKM^2upTHT~A+CmyzE&dnC5vzt34;ymYA06jpxM4$8b5amUAQcXm;L0x7L0SOl4bTkByE{Sd2vWs!P3AM zQ9?AR=)x$=?xa;0VK{>5D!Pb}G6>d1r5ANk-_wBupYy!ueV+GypZ8???dciYXrjdE zvq^<5Qm>?tPg;R_9KdPp$L_7tCY;4e=C9i(T_X#Z8UH_Q4oTk_@S~Yn6P7Ais1{3!!;MlBW9Y*B=)@=Z3dfO07q&|)v4G}+ zzicm}m!S^z!hq^^|A#CMoKV*N8iN9hJ})iLfFpW;RwIc^^GL-k{|\n" -"Language-Team: LANGUAGE \n" +"Last-Translator: Ahn Young Seon \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,21 +23,23 @@ msgstr "" #: ../../scenarios/web.rst:4 msgid "Web Applications & Frameworks" -msgstr "" +msgstr "웹 어플리케이션 & 프레임워크" #: ../../scenarios/web.rst:8 msgid "" "As a powerful scripting language adapted to both fast prototyping and " "bigger projects, Python is widely used in web application development." msgstr "" +"파이썬은 빠른 프로토타이핑과 거대한 프로젝트에 두루 사용되는 강력한 스크립트 언어로서, " +"웹 어플리케이션 개발에 널리 사용된다." #: ../../scenarios/web.rst:15 msgid "Context" -msgstr "" +msgstr "Context" #: ../../scenarios/web.rst:20 msgid "WSGI" -msgstr "" +msgstr "WSGI" #: ../../scenarios/web.rst:22 msgid "" @@ -48,10 +50,16 @@ msgid "" "that can be deployed in any :ref:`WSGI-compliant web server `. WSGI is documented in :pep:`3333`." msgstr "" +"Web Server Gateway Interface(웹 서버 게이트웨이 인터페이스)(줄여서 \"WSGI\") " +"는 웹서버와 파이썬 웹 어플리케이션 프레임워크 간의 표준 인터페이스입니다. " +"웹 서버와 파이썬 웹 프레임워크 간의 동작과 통신을 표준화함으로써 " +"WSGI는 모든 :ref:`WSGI 호환 웹서버 ` 에 복사해 넣어 배포할 수 있는 " +"파이썬 웹서버 코드를 작성할 수 있도록 합니다." #: ../../scenarios/web.rst:32 msgid "Frameworks" -msgstr "" +msgstr "프레임워크" #: ../../scenarios/web.rst:34 msgid "" @@ -60,48 +68,56 @@ msgid "" "application (i.e. an interactive web site). Most web frameworks include " "patterns and utilities to accomplish at least the following:" msgstr "" +"일반적으로 웹 프레임워크란 웹 어플리케이션(예를 들면 대화형 웹사이트)을 구현하기 위해 사용되는" +"일련의 라이브러리 묶음과 사용자 정의 코드를 빌드할 수 있는 기본 핸들러로 구성됩니다." +"대부분의 웹 프레임워크는 적어도 다음과 같은 사항들을 달성하기 위한 패턴과 유틸리티를 갖추고 있습니다:" #: ../../scenarios/web.rst:41 msgid "URL Routing" -msgstr "" +msgstr "URL 라우팅" #: ../../scenarios/web.rst:40 msgid "" "Matches an incoming HTTP request to a particular piece of Python code to " "be invoked" -msgstr "" +msgstr "들어오는 HTTP 요청을 특정 파이썬 코드 조각에 연결시켜 실행합니다." #: ../../scenarios/web.rst:44 msgid "Request and Response Objects" -msgstr "" +msgstr "요청 & 응답 객체" #: ../../scenarios/web.rst:44 msgid "Encapsulates the information received from or sent to a user's browser" -msgstr "" +msgstr "사용자의 브라우저가 주고 받는 정보를 캡슐화합니다." #: ../../scenarios/web.rst:48 msgid "Template Engine" -msgstr "" +msgstr "템플릿 엔진" #: ../../scenarios/web.rst:47 msgid "" "Allows for separating Python code implementing an application's logic " "from the HTML (or other) output that it produces" msgstr "" +"어플리케이션의 로직을 구현하는 파이썬 코드를 " +"그 파이썬 코드가 생성하는 HTML(또는 다른 무언가)로부터 분리합니다." #: ../../scenarios/web.rst:53 msgid "Development Web Server" -msgstr "" +msgstr "개발 웹서버" #: ../../scenarios/web.rst:51 msgid "" "Runs an HTTP server on development machines to enable rapid development; " "often automatically reloads server-side code when files are updated" msgstr "" +"신속한 개발이 가능하도록 개발용 머신에 " +"HTTP 서버를 실행합니다. " +"그리고 파일이 업데이트 될 때 자동으로 서버 측 코드를 다시 불러옵니다." #: ../../scenarios/web.rst:56 msgid "Django" -msgstr "" +msgstr "쟝고" #: ../../scenarios/web.rst:58 msgid "" @@ -112,6 +128,11 @@ msgid "" "web applications quickly, while encouraging best practices in code " "written using it." msgstr "" +"`쟝고 `_ 는 \"batteries included\" 웹 어플리케이션 프레임워크입니다. " +"컨텐츠 중심 웹사이트를 위한 훌륭한 선택입니다. " +"많은 유틸리티와 패턴을 기본적으로 제공함으로써 쟝고는 " +"복잡한 데이터베이스 기반 웹 어플리케이션을 빠르게 개발할 수 있도록 해줍니다. " +"또한 쟝고를 사용하면 베스트 프랙티스라 할 코드 작성이 쉽습니다. " #: ../../scenarios/web.rst:64 msgid "" @@ -119,6 +140,9 @@ msgid "" "modules `_ that can be incorporated into a " "new project as-is, or customized to fit your needs." msgstr "" +"쟝고는 크고 활발한 커뮤니티를 가지고 있고, 바로 사용할 수 있는 다양한 " +"`재사용 가능 모듈 `_ 이 있다. " +"이 것을 새 프로젝트에 바로 적용할 수도 있고 필요하다면 커스터마이징 해서 사용할 수도 있다. " #: ../../scenarios/web.rst:68 msgid "" @@ -126,14 +150,18 @@ msgid "" "`_, `Europe `_, and `Australia " "`_." msgstr "" +"`미국 " +"`_, `유렵 `_, 그리고 `오스트레일리아 " +"`_ " +"에서 매년 쟝고 컨퍼런스를 한다." #: ../../scenarios/web.rst:71 msgid "The majority of new Python web applications today are built with Django." -msgstr "" +msgstr "요즘 새로 개발하는 파이썬 웹 어플리케이션은 대부분 쟝고로 만든다." #: ../../scenarios/web.rst:74 msgid "Flask" -msgstr "" +msgstr "플라스크" #: ../../scenarios/web.rst:76 msgid "" @@ -141,6 +169,8 @@ msgid "" "and is an excellent choice for building smaller applications, APIs, and " "web services." msgstr "" +"`Flask `_ 는 파이썬의 \"마이크로프레임워크\" 입니다. " +"플라스크는 작은 어플리케이션, API, 웹 서비스를 만들기에 좋습니다." #: ../../scenarios/web.rst:79 msgid "" @@ -148,6 +178,9 @@ msgid "" " except some functions have routes attached to them. It's really " "beautiful." msgstr "" +"플라스크로 앱을 만드는 일은 " +"라우터가 연결된 함수라는 점을 제외하고는 파이썬 표준 모듈을 작성하는 것과 비슷합니다." +"정말 아름다워요." #: ../../scenarios/web.rst:82 msgid "" @@ -155,6 +188,8 @@ msgid "" "implements the most commonly-used core components of a web application " "framework, like URL routing, request and response objects, and templates." msgstr "" +"플라스크의 목표는 필요할지 어떨지도 모를 모든 것들을 제공하는 게 아닙니다. " +"플라스크는 웹 어플리케이션에서 가장 많이 쓰이는 핵심 구성요소들(URL 라우팅, 리퀘스트-리스폰스 오브젝트, 템플릿)을 구현합니다. " #: ../../scenarios/web.rst:86 msgid "" @@ -162,6 +197,8 @@ msgid "" "application, if any. For example, database access or form generation and " "validation are not built-in functions of Flask." msgstr "" +"플라스크를 사용할 때 어플리케이션을 어떻게 구성할 것인지는 전적으로 당신에게 달려있습니다. " +"예를 들어 데이터베이스 접근, 폼 생성 및 유효성 체크는 플라스크의 빌트인 함수가 아닙니다." #: ../../scenarios/web.rst:90 msgid "" @@ -170,22 +207,29 @@ msgid "" "`_ available that may suit your " "needs. Or, you can easily use any library you want yourself!" msgstr "" +"많은 웹 어플리케이션은 이런 기능을 필요로 하지 않습니다. 그러니 이런 기능이 내장되어 있지 않다는 것은 좋은 일입니다. " +"이런 기능이 필요하다면 " +"적당한 `익스텐션 `_ 이 많이 있습니다. " +"달리 사용하고 싶은 라이브러리를 써도 됩니다! " #: ../../scenarios/web.rst:95 msgid "" "Flask is default choice for any Python web application that isn't a good " "fit for Django." msgstr "" +"플라스크는 쟝고에 적당하지 않은 파이썬 웹 어플리케이션을 위한 기본 선택지입니다. " #: ../../scenarios/web.rst:99 msgid "Falcon" -msgstr "" +msgstr "팔콘" #: ../../scenarios/web.rst:101 msgid "" "`Falcon `_ is a good choice when your goal " "is to build RESTful API microservices that are fast and scalable." msgstr "" +"`Falcon `_ 은 " +"빠르고 확장 가능한 RESTful API 마이크로서비스 개발을 위한 좋은 선택입니다." #: ../../scenarios/web.rst:104 msgid "" @@ -194,6 +238,8 @@ msgid "" "architectural style of mapping URIs to resources, trying to do as little " "as possible while remaining highly effective." msgstr "" +"팔콘은 대규모 앱 백엔드와 마이크로서비스를 개발하기 위한 신뢰성 있고 성능 좋은 파이썬 웹 프레임워크입니다." +"Falcon은 URI를 리소스에 매핑하는 REST 아키텍처 스타일을 권장하며, 높은 효율성을 유지하면서 가능한 한 적은 작업을 시도합니다." #: ../../scenarios/web.rst:108 msgid "" @@ -202,10 +248,13 @@ msgid "" "``on_get()``, ``on_put()``, etc. These responders receive intuitive " "request and response objects." msgstr "" +"Falcon은 주요 4요소에 집중합니다. 속도, 신뢰성, 유연성 및 디버깅." +"on_get(), on_put() 등과 같은 \"응답자\"를 통해 HTTP를 구현합니다. " +"이러한 응답자는 직관적인 request 및 response 오브젝트를 수신 받습니다." #: ../../scenarios/web.rst:113 msgid "Tornado" -msgstr "" +msgstr "토네이도" #: ../../scenarios/web.rst:115 msgid "" @@ -214,14 +263,17 @@ msgid "" "support WebSockets, for example. Well-written Tornado applications are " "known to have excellent performance characteristics." msgstr "" +"`Tornado `_ 는 자체 이벤트 루프가 있는 파이썬을 위한 비동기 웹 프레임워크입니다. " +"이를 통해 웹소켓을 네이티브하게 지원합니다. " +"잘 작성된 토네이도 어플리케이션은 우서한 성능이 특징인 것으로 잘 알려져 있습니다.." #: ../../scenarios/web.rst:120 msgid "I do not recommend using Tornado unless you think you need it." -msgstr "" +msgstr "토네이도가 필요하다고 생각하지 않는 한 저는 토네이도 사용을 추천하지 않습니다." #: ../../scenarios/web.rst:123 msgid "Pyramid" -msgstr "" +msgstr "피라미드" #: ../../scenarios/web.rst:125 msgid "" @@ -232,6 +284,11 @@ msgid "" "project decisions for users. It powers one of the most important parts of" " python infrastructure `PyPI `_." msgstr "" +"`Pyramid `_ 는 모듈성에 크게 중점을 둔 유연한 프레임워크다. " +"빌트인 라이브러리 (\"배터리\") 가 많이 포함되어 있지 않기 때문에, " +"피라미드는 사용자가 피라미드의 기본 기능을 확장하도록 지원합니다. " +"붕어빵 틀처럼 쓸 수 있는 템플릿들을 제공하여 사용자가 새 프로젝트를 어떻게 만들지를 돕습니다. " +"피라미드는 가장 중요한 파이썬 인프라스트럭쳐 중 하나인 `PyPI `_ 를 지원합니다." #: ../../scenarios/web.rst:132 msgid "" @@ -239,16 +296,22 @@ msgid "" "capable framework, but not a very popular choice for new Python web " "applications today." msgstr "" +"비록 피라미드의 사용자 수는 쟝고나 플라스크만큼 많지 않습니다. " +"피라미드는 써봄직한 프레임워크지만 " +"오늘날 새 파이썬 웹 어플리케이션에는 인기가 없습니다." #: ../../scenarios/web.rst:137 msgid "Masonite" -msgstr "" +msgstr "매서나이트" #: ../../scenarios/web.rst:139 msgid "" "`Masonite `_ is a modern and developer " "centric, \"batteries included\", web framework." msgstr "" +"`Masonite `_ 는 " +"모던하고 개발자 중심적이며 " +"\"batteries included\" 인 웹 프레임워크입니다. " #: ../../scenarios/web.rst:141 msgid "" @@ -257,6 +320,10 @@ msgid "" "and Laravel, so if you are coming to Python from a Ruby or PHP background" " then you will feel right at home!" msgstr "" +"매서나이트 프레임워크는 MVC(Model-View-Controller) 아키텍쳐 패턴을 따릅니다. " +"그리고 레일즈와 라바렐 같은 프레임워크로부터 강하게 영감을 받았습니다. " +"그렇기 때문에 루비나 PHP를 개발하다가 파이썬으로 오셨다면 " +"내 집 같은 편안함을 느끼실겁니다. " #: ../../scenarios/web.rst:143 msgid "" @@ -264,6 +331,8 @@ msgid "" "powerful IOC container with auto resolving dependency injection, craft " "command line tools, and the Orator active record style ORM." msgstr "" +"매서나이트는 의존성 자둥 주입 기능이 있는 강력한 IOC 컨테이너, " +"정교한 커맨드라인 툴, Orator active record style ORM를 제공합니다." #: ../../scenarios/web.rst:145 msgid "" @@ -271,16 +340,21 @@ msgid "" "works hard to be fast and easy from install through to deployment. Try it" " once and you’ll fall in love." msgstr "" +"매서나이트는 초보자부터 숙련된 개발자에 이르기까지 모두에게 적합합니다. " +"설치부터 개발에 이르기까지 빠르고 쉽게 작업할 수 있습니다. " +"한 번만 써보시면 사랑에 빠지게 될겁니다." #: ../../scenarios/web.rst:148 msgid "FastAPI" -msgstr "" +msgstr "FastAPI" #: ../../scenarios/web.rst:150 msgid "" "`FastAPI `_ is a modern web framework for " "building APIs with Python 3.6+." msgstr "" +"`FastAPI `_ 는 파이썬 3.6 이상 버전으로 API 개발을 하기 위한" +" 모던 웹 프레임워크입니다. " #: ../../scenarios/web.rst:153 msgid "" @@ -288,6 +362,8 @@ msgid "" "`_ and `Pydantic `_." msgstr "" +"`Starlette`_ 와 " +"`Pydantic `_ 을 기반으로하여 매우 높은 성능을 가지고 있습니다" #: ../../scenarios/web.rst:156 msgid "" @@ -296,6 +372,9 @@ msgid "" "conversion (serialization, parsing), data validation, and automatic API " "documentation with **OpenAPI 3** (including **JSON Schema**)." msgstr "" +"FastAPI는 함수 매개 변수의 표준 Python 형식 선언을 활용하여 요청 매개 변수 및 본문을 선언하고, " +"데이터 변환(시리얼화, 구문 분석), 데이터 유효성 검사 및 " +"**OpenAPI 3** (**JSON Schema** 포함) 를 사용한 API 문서 자동화 기능을 제공합니다. " #: ../../scenarios/web.rst:161 msgid "" @@ -304,14 +383,16 @@ msgid "" "automatic generation of interactive API documentation, and other " "features." msgstr "" +"여기에는 보안 및 인증을 위한 툴과 유틸리티(JWT 토큰이 있는 OAuth2 포함), " +"종속 주입 시스템, 대화형 API 문서의 자동 생성 및 기타 기능이 포함됩니다." #: ../../scenarios/web.rst:168 msgid "Web Servers" -msgstr "" +msgstr "웹 서버" #: ../../scenarios/web.rst:173 msgid "Nginx" -msgstr "" +msgstr "Nginx" #: ../../scenarios/web.rst:175 msgid "" @@ -323,6 +404,11 @@ msgid "" "Designed to serve high-load websites, Nginx is gradually becoming quite " "popular." msgstr "" +"`Nginx `_ (\"엔진-엑스\" 라고 발음함) 는 " +"HTTP, SMTP, 그리고 다른 프로토콜을 위한 웹서버 및 리버스 프록시 입니다. " +"고성능, 상대적으로 단순함 및 WSGI 서버와 같은 많은 애플리케이션 서버와의 호환성으로 유명합니다. " +"또한 로드 밸런싱, 기본 인증, 스트리밍 등과 같은 편리한 기능도 포함합니다. " +"Nginx는 부하가 많은 웹 사이트를 제공하도록 설계되었으며, 점점 인기가 많아지고 있습니다." #: ../../scenarios/web.rst:188 msgid "WSGI Servers" From baa0f81e75f269c9f7ef5c70cbe096ba5e2f8095 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Tue, 23 Mar 2021 10:47:23 +0000 Subject: [PATCH 053/117] web --- docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 33034 -> 33229 bytes docs/locale/ko/LC_MESSAGES/scenarios/web.po | 14 ++++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo index 3bf8db8558af33f78e27e517f420553feec5419a..9e7490ab7a1e20598d09a19be4e56da98f132999 100644 GIT binary patch delta 1466 zcmZ9KU2Icj7{~uBFqxZJqi8}<&jcbw-Gv`9F@ga#L@VN)fW`pBIhC)W=$xYN)a{Jb zt^={_Qs!xMhTXcwCKgVo9d6MZCBgU+xKI;gyd&xR9Pq}N=!O2@({5C+e(&?V&-e30 zdjj9~2J#IH&FcYlh5#XB%k$r-3U2K;tvOBFeW@`78bIByS_H*$y;Nzjg=kGx_Ka zlhyHKY7S{l;klO!H8>dJ1ks<2; zA-|v;YG=2U>t86_|M()Xp8DU+mjD)pTXq9KkYVy1*}MnnAy@7NJ|?r|P6lY%2i!;5 z-CyqHB6$_%zezo@x(+5GmynCeWn_q4LF$zrAa$WhlEZ}g5g)S*{1^EhS>z%=;79+# za>vVFrH*orY~+7C4}`^|zZ2kj;1a0|yZ`mFz1_v+TtU+tz^&xkL%=%i_cl+0%)A2_ z3xM%%e?74P=@O6${H~Uc1;cYScD5x3z41 z#3<#><2pJ`)R>N8t5cSWXMA0*Kv_npb`t8SrM=|yj6^e@l~>t_qzaN{!UCg&Rdmct z*nXA));BUC_Qd66(vy>sNnJc^jSd+yTu{!GU)>#kdH-wIGQ6ZE>6{_G5uH|LV=8Xb zGyZ#fV|-nxzELd4>rGX9kxz%@l&vksXXpBLgTd~ATfh0-k_K;RMx|!dCq-Jg7q)jV zFm(^T4n-N}FdW05MWuON9kxxTiw$BKNmGrUqSrRUCTH4 zaq`Ce#jMerl87ylq~XP4dMAUq|MW9zGicRcym|d~rsc1C+R}qaB=t(vAfv|flJ1+E zVC5z*N1g9nj_Zrbu_0ZEIIJL5lDdFsh6kaW^V_Xn{ZTIVNYP8I@UOUhv6ZWs Z`6vpwVdqZLS}U>(*TltOqL^YJ-S(n~B|B^4f$mWj&_O9f~*NIh7DdvF-Vdr6$&F?B?GgONsQ zANh)-(p%!#F}W*^b{zMAsQiRPZ*9W>_To+)@L~>5;#%ToC#6T2#-G@IN;-ql(+p=x zuQ8AKU6b^Yb6Kp!r_I#Ke+WzO@k`j1Hd2^w@e7Ns(gq4Se1TR(T8}BbgY$R=qi5L! zE?|)JIrJL;Xp;uSEY?odUr#qw!@%5*!-ieBk6E+WG#%^LU|ROR@C4WYN8g+2!23NH3@28US3Zu(AK<&(gr zVQG^seY&=CMV12QX8yNY^Sk7}ZDI}ClEN+D? WHr-vn^2~Bg$c|_F+fDUAV)Z|&&W9=h diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.po b/docs/locale/ko/LC_MESSAGES/scenarios/web.po index a064ea411..e89ea4319 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/web.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/web.po @@ -412,17 +412,19 @@ msgstr "" #: ../../scenarios/web.rst:188 msgid "WSGI Servers" -msgstr "" +msgstr "WSGI 서버" #: ../../scenarios/web.rst:190 msgid "" "Stand-alone WSGI servers typically use less resources than traditional " "web servers and provide top performance [1]_." msgstr "" +"스탠드얼론 WSGI 서버는 일반적으로 전통적인 웹서버보다 리소스를 덜 잡아먹습니다. " +" 그리고 성능이 좋습니다 [1]_." #: ../../scenarios/web.rst:196 msgid "Gunicorn" -msgstr "" +msgstr "지유니콘(Gunicorn)" #: ../../scenarios/web.rst:198 msgid "" @@ -431,6 +433,10 @@ msgid "" "servers, it has a thoughtful user interface, and is extremely easy to use" " and configure." msgstr "" +"`지유니콘 `_ (그린 유니콘)은 순수 파이썬 WSGI 서버로서 " +"파이썬 어플리케이션을 서비스하는 데 쓰입니다. " +"다른 파이썬 웹서버와 달리 유저 인터페이스가 좋고 " +"사용하기도 편하고 설정하기도 편합니다. " #: ../../scenarios/web.rst:203 msgid "" @@ -438,10 +444,14 @@ msgid "" "some other servers, like uWSGI, are tremendously more customizable, and " "therefore, are much more difficult to effectively use." msgstr "" +"지유니콘은 건전하고 합리적인 기본 설정을 두고 있습니다. " +"대조적으로 uWSGI 같은 다른 서버들은 무서울 정도로 커스터마이징이 가능한 대신 " +"효율적으로 사용하기는 어렵습니다." #: ../../scenarios/web.rst:207 msgid "Gunicorn is the recommended choice for new Python web applications today." msgstr "" +"지유니콘을 현재 새로 만드는 파이썬 웹 어플리케이션을 위한 선택으로 추천드립니다. " #: ../../scenarios/web.rst:211 msgid "Waitress" From 59908dfd828b8ec58c22b7ec23cd6af46d550d6b Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 31 Mar 2021 08:43:17 +0000 Subject: [PATCH 054/117] Web(2/2) --- docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 33229 -> 34850 bytes docs/locale/ko/LC_MESSAGES/scenarios/web.po | 134 +++++++++++++++++--- 2 files changed, 117 insertions(+), 17 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo index 9e7490ab7a1e20598d09a19be4e56da98f132999..37feedc088ed74c5ad3e938314dbf95292feefb0 100644 GIT binary patch delta 8470 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 M6g(7d5o{;%e@cPwN&o-= delta 1002 zcmXBSSx6O89LMqBo$FF&bu~;f+iba#=0g@iYN1k@H#03;h+ML<(rnQz)9khoQiNCo zVG%_O*+xp|rGm(Z7ARWKpn`}XsF!GY5F#JyJI%{{=KnwQKj+NZ^hw9?9&yql=`_B<;aIm=I)zObjl-5m0SsUiPQg^_Q?Y=! zgom3yi;?6n7AX9`uzRVLNumd1`QUS*v>SioXtYDpSZu;?cmmz=ean~}zoR>GVv)p< zCSrj3YVj*^>vC^{)y2|I;yPT2ABw{~`7n8fbcxpqCDIe@!+i4XrF4V%`ATo1)2qCN z4wTUy@<%ZO2XG#~b7SfPtG$gUtdXvhpN@n03fJS~wNi{lhr;V<1&MUBA1R!TX&AS` z>qJhu^q%oToIrkB1%)9y zYx0|J0@}IUy>`5tGrPp{6`>~|fyED`3q?^RuSV8^DZPI*V zQ}6xAcN|GPgl@-%Z)XkG*C<|wkx0T2PDS@jcc8n|E~J~fj1QRj55B~^9He{s+8ew- zPHH4ad<&;AZgWA{yV{#1u7`f0yRqy&-uLJBN~5fFDWh2mauzu)(gL?|KUV^;v`Lfw z($xdr5j{O*jz`&9PDFI76Q5_Cd(jWg?fj5sCdXv^OzV=5ktQzCW;uN;b~zpK}XcB9i>J>Z;Ax#r~9H_Y>?9X|7D z^D>`PG^5Xn3nrT}wY@%bAvNT4vg^xD=FFgFa(2dA&aYWn&Y6aEr!=F?$!(l#`ZE$N XbGGSsgc+QZWSQ8u=qU3#Ysmi(x~;xu diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.po b/docs/locale/ko/LC_MESSAGES/scenarios/web.po index e89ea4319..cfbd03424 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/web.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/web.po @@ -362,7 +362,7 @@ msgid "" "`_ and `Pydantic `_." msgstr "" -"`Starlette`_ 와 " +"`Starlette `_ 와 " "`Pydantic `_ 을 기반으로하여 매우 높은 성능을 가지고 있습니다" #: ../../scenarios/web.rst:156 @@ -455,7 +455,7 @@ msgstr "" #: ../../scenarios/web.rst:211 msgid "Waitress" -msgstr "" +msgstr "웨이트리스(Waitress)" #: ../../scenarios/web.rst:213 msgid "" @@ -464,16 +464,20 @@ msgid "" "not very detailed, but it does offer some nice functionality that " "Gunicorn doesn't have (e.g. HTTP request buffering)." msgstr "" +"`Waitress `_ 는 순수 파이썬으로 만들어진 " +" WSGI 서버로서 \"납득하고도 남을 만한 성능\" 이 있다고 주장합니다. " +"문서는 상세하지 않습니다. 하지만 Gunicorn에 없는 멋진 기능(예를 들면 HTTP 리퀘스트 버퍼링)을 제공합니다." #: ../../scenarios/web.rst:218 msgid "" "Waitress is gaining popularity within the Python web development " "community." msgstr "" +"웨이트리스는 파이썬 웹 개발 커뮤니티 사이에서 인기를 얻고 있습니다. " #: ../../scenarios/web.rst:223 msgid "uWSGI" -msgstr "" +msgstr "uWSGI" #: ../../scenarios/web.rst:225 msgid "" @@ -490,14 +494,25 @@ msgid "" "variables, and further tuning. For full details, see `uWSGI magic " "variables `_." msgstr "" +"`uWSGI `_ 는 호스팅 서비스를 구축하는 용도로 쓰이는 " +"풀스택 서버입니다. 프로세스 관리 뿐 아니라 프로세스 모니터링, 그리고 다른 기능까지 " +"uWSGI는 다양한 프로그래밍 언어와 프로토콜(파이썬과 WSGI 포함)을 위한 어플리케이션 서버로서 동작합니다. " +"uWSGI는 스탠드얼론 웹 라우터로서도 사용할 수 있고, (엔진엑스나 아피치 같은) 완전한 웹서버 뒤에서 동작할 수도 있습니다. " +"후자의 경우 웹서버는 `uwsgi protocol `_ " +"를 통해 uWSGI와 어플리케이션을 설정할 수 있다. " +"uWSGI의 웹서버 지원 덕분에 파이썬의 설정을 동적으로 변경할 수 있고 " +"환경변수도 넘길 수 있으며 추가 튜닝도 가능합니다. " +"더이상의 자세한 설명은 생략한다. " +"`uWSGI magic variables `_ 을 참고하도록." #: ../../scenarios/web.rst:238 msgid "I do not recommend using uWSGI unless you know why you need it." -msgstr "" +msgstr "왜 uWSGI가 필요한지 이유를 알기 전까지는 이걸 사용하지 않기를 추천합니다." #: ../../scenarios/web.rst:245 msgid "Server Best Practices" -msgstr "" +msgstr "서버 베스트 프랙티스" #: ../../scenarios/web.rst:247 msgid "" @@ -505,6 +520,9 @@ msgid "" "WSGI server such as :ref:`Gunicorn `, either directly or " "behind a lightweight web server such as :ref:`nginx `." msgstr "" +"요즘은 자체 호스팅할 경우 대부분의 파이썬 어플리케이션을 :ref:`Gunicorn ` " +"같은 WSGI 서버에 바로 호스팅합니다. " +"그렇지 않으면 :ref:`nginx ` 처럼 가벼운 웹서버 뒤에서 호스팅합니다." #: ../../scenarios/web.rst:251 msgid "" @@ -512,10 +530,13 @@ msgid "" "handles tasks better suited for it such as static file serving, request " "routing, DDoS protection, and basic authentication." msgstr "" +"WSGI서버는 웹서버가 정적 파일 전송, 리퀘스트 라우팅, 디도스 보호, " +"기본적인 인증 같이 웹서버가 보다 잘하는 작업들을 수행하는 동안 " +"파이썬 어플리케이션을 서빙합니다. " #: ../../scenarios/web.rst:258 msgid "Hosting" -msgstr "" +msgstr "호스팅" #: ../../scenarios/web.rst:260 msgid "" @@ -525,16 +546,21 @@ msgid "" "writing application code rather than needing to be concerned with " "deployment details." msgstr "" +"Platform-as-a-Service (PaaS)는 인프라스트럭쳐와 라우팅, 웹 어플리케이션 확장을 " +"추상화하고 관리하는 유형의 클라우드 컴퓨팅 인프라스트럭쳐입니다. " +"PaaS를 사용하면 어플리케이션 개발자가 배포에 관해서 신경 쓸 필요없이 어플리케이션 코드 작성에 집중할 수 있습니다. " #: ../../scenarios/web.rst:267 msgid "Heroku" -msgstr "" +msgstr "헤로쿠" #: ../../scenarios/web.rst:269 msgid "" "`Heroku `_ offers first-class support for " "Python 2.7–3.5 applications." msgstr "" +"`Heroku `_ 는 파이썬 2.7부터 3.5까지의 모든 어플리케이션을 " +"확실하게 지원 보증합니다. " #: ../../scenarios/web.rst:272 msgid "" @@ -543,6 +569,10 @@ msgid "" "application is ready for production, you can upgrade to a Hobby or " "Professional application." msgstr "" +"헤로쿠는 모든 종류의 파이썬 웹 어플리케이션과 서버 그리고 프레임워크를 지원합니다. " +"어플리케이션을 헤로쿠에 공짜로 배포할 수 있습니다. " +"일단 어플리케이션 배포 준비가 다 끝났다면 취미용 어플리케이션으로든 프로페셔널한 어플리케이션으로든 " +"업그레이드 가능합니다." #: ../../scenarios/web.rst:276 msgid "" @@ -552,16 +582,21 @@ msgid "" "`_ on " "how to set up your first application." msgstr "" +"헤로쿠는 파이썬을 헤로쿠에서 돌리기 위한 `상세한 글 " +"`_ 을 제공합니다. " +"뿐만 아니라 첫 어플리케이션을 셋업하기 위한 `step-by-step 안내서 " +"`_ 도 제공합니다." #: ../../scenarios/web.rst:281 msgid "" "Heroku is the recommended PaaS for deploying Python web applications " "today." msgstr "" +"현대 파이썬 웹 어플리케이션 배포를 위한 PaaS로 헤로쿠를 추천합니다. " #: ../../scenarios/web.rst:286 msgid "Templating" -msgstr "" +msgstr "템플릿" #: ../../scenarios/web.rst:288 msgid "" @@ -574,18 +609,27 @@ msgid "" "static content of the templates with the dynamic content generated by the" " application." msgstr "" +"대부분의 WSGI 어플리케이션은 HTTP 요청에 대한 응답으로 HTML이나 다른 마크업 언어 형식의 컨텐츠를 제공합니다. " +"파이썬에서 직접 텍스트 컨텐츠를 들기보다는 " +"관심사의 분리 개념을 적용하여 템플릿을 사용해봅시다. " +"템플릿 엔진은 " +"불필요한 반복을 피하기 위해 계층 구조 및 포함 구조로서 여러 템플릿 파일들을 관리합니다. " +"그리고 템플릿의 정적 컨텐츠를 어플리케이션에서 만들어진 동적 컨텐츠로 채워서 실제 컨텐츠를 렌더링(생성)하는 역할을 합니다. " #: ../../scenarios/web.rst:296 msgid "" "As template files are sometimes written by designers or front-end " "developers, it can be difficult to handle increasing complexity." msgstr "" +"템플릿 파일은 종종 디자이너나 프론트엔드 개발자가 작성하는데, 이러면 복잡성이 올라가 다루기 힘들어질 수 있습니다. " #: ../../scenarios/web.rst:300 msgid "" "Some general good practices apply to the part of the application passing " "dynamic content to the template engine, and to the templates themselves." msgstr "" +"몇 가지 일반적인 good 프랙티스를 적용하여 템플릿 엔진에 동적 컨텐츠를 전달하거나, " +"아니면 템플릿 자체를 전달해봅시다." #: ../../scenarios/web.rst:303 msgid "" @@ -594,6 +638,9 @@ msgid "" "content \"just in case\": it is easier to add some missing variable when " "needed than to remove a likely unused variable later." msgstr "" +"템플릿에 동적 컨텐츠를 전달할 때는 템플릿 렌더링에 필요한 것들만 넘겨야 합니다. " +"\"만약의 경우\": 를 대비한 추가적인 컨텐츠를 템플릿에 전달하지 마세요. " +"사용하지 않는 변수를 제거하는 것보다 빼먹은 변수를 추가하는 게 더 쉽다. " #: ../../scenarios/web.rst:309 msgid "" @@ -602,6 +649,10 @@ msgid "" "templates. This convenience can lead to uncontrolled increase in " "complexity, and often make it harder to find bugs." msgstr "" +"많은 템플릿 엔진이 템플릿 자체 내에서 복잡한 구문과 할당을 합니다. " +"그리고 템플릿 안에서 파이썬 코드들이 평가되도록 합니다. " +"이 방법은 편리하지만 감당할 수 없는 복잡성을 증가시킵니다. " +"가끔은 버그를 찾기 힘들게 합니다. " #: ../../scenarios/web.rst:315 msgid "" @@ -609,16 +660,20 @@ msgid "" "sane approach to this design is to isolate the parts where the HTML " "template passes some variable content to the JavaScript code." msgstr "" +"자바스크립트 템플릿과 HTML 템플릿을 섞어 써야 할 때가 있습니다. " +"이러한 디자인에 대한 제정신 박힌 접근법은 " +"HTML 템플릿에서 자바스크립트로 값을 전달하는 부분을 분리하는 것입니다." #: ../../scenarios/web.rst:323 msgid "Jinja2" -msgstr "" +msgstr "Jinja2" #: ../../scenarios/web.rst:324 msgid "" "`Jinja2 `_ is a very well-regarded template " "engine." msgstr "" +"`Jinja2 `_ 는 아주 잘 다듬어진 템플릿 엔진입니다. " #: ../../scenarios/web.rst:326 msgid "" @@ -627,22 +682,30 @@ msgid "" "tags, tests, and globals. It features many improvements over Django's " "templating system." msgstr "" +"텍스트 기반 템플릿 언어를 사용하기 때문에 HTML뿐만 아니라 모든 유형의 " +"마크업을 생성하는 데 사용할 수 있으며 " +"필터 태그, 테스트 및 전역 변수의 사용자 지정을 허용합니다. " +"Django의 템플릿 시스템에 비해 많은 개선점을 가지고 있습니다." #: ../../scenarios/web.rst:330 msgid "Here some important HTML tags in Jinja2:" -msgstr "" +msgstr "Jinja2의 중요한 HTML 태그를 소개합니다: " #: ../../scenarios/web.rst:350 msgid "" "The next listings are an example of a web site in combination with the " "Tornado web server. Tornado is not very complicated to use." msgstr "" +"다음은 토네이도 웹서버와 함께 Jinja2를 사용하는 예시입니다. " +"토네이도는 사용하기에 복잡하지 않습니다. " #: ../../scenarios/web.rst:391 msgid "" "The :file:`base.html` file can be used as base for all site pages which " "are for example implemented in the content block." msgstr "" +"예를 들어 :file:`base.html` base.html 파일은 컨텐츠 블록에 구현된 " +"모든 사이트 페이지의 기준으로 사용할 수 있습니다." #: ../../scenarios/web.rst:416 msgid "" @@ -651,16 +714,22 @@ msgid "" "automatically set into the corresponding block in the :file:`base.html` " "page." msgstr "" +"다음 예시는 :file:`base.html` 파일을 확장해서 " +"python 앱에 사이트 페이지 (:file:`site.html`) 를 로드한 경우입니다. " +"base.html을 확장합니다. " +"컨텐츠 블록은 :file:`base.html` 페이지의 해당 " +"블록으로 자동 설정됩니다." #: ../../scenarios/web.rst:438 msgid "" "Jinja2 is the recommended templating library for new Python web " "applications." msgstr "" +"새 파이썬 웹 엎ㄹ리케이션을 위한 템플릿 라이브러리로 Jinja2를 추천합니다. " #: ../../scenarios/web.rst:441 msgid "Chameleon" -msgstr "" +msgstr "카멜레온(Chameleon)" #: ../../scenarios/web.rst:443 msgid "" @@ -674,6 +743,15 @@ msgid "" "`_ syntaxes." msgstr "" +"`Chameleon `_ Page Templates 은 " +"HTML/XML template engine 구현체로서, `Template Attribute " +"Language (TAL) " +"`_, `TAL " +"Expression Syntax (TALES) " +"`_, 그리고 `Macro Expansion TAL (Metal) " +"`_ 구문을 사용합니다." #: ../../scenarios/web.rst:448 msgid "" @@ -681,6 +759,9 @@ msgid "" "and is commonly used by the `Pyramid Framework " "`_." msgstr "" +"카멜레온은 파이썬 2.5와 그 이상 (3.x와 PyPy 포함)에서 사용 가능하며, " +"`Pyramid Framework " +"`_ 에서 일반적으로 사용합니다."" #: ../../scenarios/web.rst:451 msgid "" @@ -692,10 +773,16 @@ msgid "" "in WYSIWYG editors. This can make round-trip collaboration with designers" " and prototyping with static files in a browser easier." msgstr "" +"페이지 템플릿은 문서 구조에 특수 엘리먼트 어트리뷰트와 텍스트 마크업을 추가합니다. " +"간단한 언어 구문으로 문서의 흐름과 엘리먼트의 반복, 텍스트 교체, 다국어 처리가 가능합니다. " +"어트리뷰트에 기반한 구문 덕분에 렌더링 되지 않은 페이지도 HTML 포맷으로 유효하며 " +"브라우저에서 볼 수 있고 WYSIWYG 에디터로 수정도 가능합니다. " +"이를 통해 디자이너와 양방향 협업이 가능하고 " +"브라우저에서 정적 파일을 프로토타이핑 하기도 쉽습니다. " #: ../../scenarios/web.rst:459 msgid "The basic TAL language is simple enough to grasp from an example:" -msgstr "" +msgstr "기본 TAL 언어는 예제 하나만 봐도 이해할 수 있을 만큼 간단합니다: " #: ../../scenarios/web.rst:477 msgid "" @@ -704,6 +791,9 @@ msgid "" "unrendered templates, you can replace it with a more terse and readable " "syntax that uses the pattern `${expression}`, as follows:" msgstr "" +"`` 패턴을 텍스트 삽입에 사용하고 " +"렌더링 되기 전의 템플릿이 유효한 HTML 구문일 필요가 없다면 " +"다음과 같이 `${expression}` 패턴을 사용해서 보다 간결하고 가독성 높은 구문으로 바꿀 수 있다." #: ../../scenarios/web.rst:498 msgid "" @@ -711,14 +801,17 @@ msgid "" "Text` syntax also allows for default content in the unrendered " "template." msgstr "" +"하지만 `Default " +"Text` 구문이 렌더링 되지 않았을 때 Default Text가 기본 값으로 찍힌다는 것을 명심하세요." #: ../../scenarios/web.rst:501 msgid "Being from the Pyramid world, Chameleon is not widely used." msgstr "" +"Pyramid를 사용하는 사람들은 Chameleon은 잘 안 씁니다." #: ../../scenarios/web.rst:504 msgid "Mako" -msgstr "" +msgstr "마코(Mako)" #: ../../scenarios/web.rst:506 msgid "" @@ -728,28 +821,35 @@ msgid "" "and Jinja2 templates. It is the default template language included with " "the `Pylons and Pyramid `_ web frameworks." msgstr "" +"`Mako `_ 는 파이썬의 최대 성능을 내기 위해 " +"파이썬으로 컴파일 작업을 하는 템플릿 엔진입니다. " +"Django와 Jinja2 같이 다른 템플릿 언어로부터 멋진 부분을 가져와 구문과 API를 만들었습니다. " +"`Pylons 과 Pyramid `_ 웹 프레임워크의 " +"기본 템플릿 언어입니다. " #: ../../scenarios/web.rst:512 msgid "An example template in Mako looks like:" -msgstr "" +msgstr "마코 템플릿 예제입니다: " #: ../../scenarios/web.rst:534 msgid "To render a very basic template, you can do the following:" -msgstr "" +msgstr "다음과 같이 아주 간단한 템플릿을 렌더링 할 수 있습니다: " #: ../../scenarios/web.rst:541 msgid "Mako is well respected within the Python web community." -msgstr "" +msgstr "마코는 파이썬 웹 커뮤니티가 좋아하는 템플릿입니다." #: ../../scenarios/web.rst:544 msgid "References" -msgstr "" +msgstr "참고" #: ../../scenarios/web.rst:545 msgid "" "`Benchmark of Python WSGI Servers `_" msgstr "" +"`Python WSGI Servers 벤치마크 `_" #~ msgid "" #~ msgstr "" From 02294c7762ed834c30d421dab8ad81f303b42f30 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 1 Apr 2021 00:45:15 +0000 Subject: [PATCH 055/117] install python3 on win --- .../ko/LC_MESSAGES/starting/install3/win.mo | Bin 4185 -> 4346 bytes .../ko/LC_MESSAGES/starting/install3/win.po | 35 +++++++++++++++--- 2 files changed, 30 insertions(+), 5 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install3/win.mo index 92c6f90019a854cdbca36348183aa36cea6256d4..69a86c0401a67dd73a0f773d5ace9d717a604d87 100644 GIT binary patch delta 1865 zcmZ`)O>Y}j6nzDiKtjvMh7CnGRV5OoSWu`y6+$f^T|lK)Y6Y#>)Pg7pZS067rDZdA zI*HuaX`GJTOwt)Mfl2K~rnreiCn6CWHv9yZu$*`253u6A@i?Axs$aRr)A(ZDgZoU$*Q0Q^P5` zl%7lt(fPr2ir&33o=6U-PNpX(uBOvh5?`c8-|Ie;ObtyYhXzm3mGti7wF`sE(G&E^ zS>v~-S2e$p;hR|smP~(rhwThS8|Q9J45Ms&Unf~DNW4Pq*{I?Rg@3T7O6zpl>uTQ!+o z#8Dpy{ALE*LD?bBne}5@>Ny8x-PNt9v3I$xu zbM-edqe>YY84HJ)NAVhtg#=V`JiFOO%75(1@9J0)Z(5x1RP)-%ES1^z)Qq|ZY7!)P zxxuRbj`R#@z)}aRE;xy0eKwN%GX2dsy*;3&1!am;{>7CKU0fFA8w6f?)(xhu zI7(IZD?6DOmwji?)5UPQrJVE%a@FJ|;JKyq?Bk%^)X-GFU^8T-rLm**;aAXZ8f3o% zJYu4X%c9kngE7&ze9(k2+vkoYUjP4dfL5h)Wq}u`gR<5l4Rm!-718ucX&p`?kOVh# zyrX0kq7VY7NRnAwPJsy*z5Mr-Vw3SWet>iuy3E(ws?Z?!ctw@ixigfS*N_{Y-?+op zwt9NOf(PuC^t=YiazWO;7~DclF4v}|vlSAXcZ0jPS_l#Em^@Qz15nMfvp`zwt+#S5 zpwgD{9z>`w>hb=s$|hh8@C|mdv5UDT|lV$uoR$mZe(mQbuD5i)=+C- zA@*-C+Eu&1;j}HU<8^yqGk+Xc1_?CJl~rPQAu_sSY6lLXdNeFhr)06qAihNwf>w?0 zr;a}f^&1Zl_Tk-i{I10pgbx47MG(rh&>aHPLu-*`M83>31-t}hx%X z;4C+lj~Uj{2ojQwd1A-%AEB?vqquS*rgwOPdS9SHg{sj~Qb`w_`-*%nug`vRYD|Kb*`lGhJb%quH0Br9g(f|Me delta 179 zcmeyRcvE3QPkl8b1H)T(1_l!#oyp0-5X8X1FprCY;Q)~S2&8L(^d@cw200+D&%?lw z2&Dah^im+b0Z7XN=`daf1_2;l0;I!%bSscf0n&GYbTQCeCq4#-ML_;Gejwqf5SCd~ zQks~f;F?#KxtW`>kzK+q)W=7`&(YUa!N%3s(bLDl(ZwamH8^\n" -"Language-Team: LANGUAGE \n" +"Last-Translator: Ahn Young Seon \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,7 +24,7 @@ msgstr "" #: ../../starting/install3/win.rst:6 msgid "Installing Python 3 on Windows" -msgstr "" +msgstr "Windows에 파이썬3 설치" #: ../../starting/install3/win.rst:10 msgid "" @@ -32,12 +32,16 @@ msgid "" "`_. It's a community system packager " "manager for Windows 7+. (It's very much like Homebrew on OS X.)" msgstr "" +"우선 `Chocolatey `_ 을 설치하세요. " +"Windows 7+를 위한 커뮤니티 시스템 패키지 매니저입니다. (OS X의 홈브류와 비슷해요)" #: ../../starting/install3/win.rst:13 msgid "" "Once done, installing Python 3 is very simple, because Chocolatey pushes " "Python 3 as the default." msgstr "" +"초콜레티 설치가 끝났다면 파이썬3 설치는 아주 간단합니다. " +"초콜레티는 파이썬3를 기본값으로 푸시하기 때문입니다. " #: ../../starting/install3/win.rst:19 msgid "" @@ -45,10 +49,12 @@ msgid "" "directly from to the console. (Chocolatey is fantastic and automatically " "adds Python to your path.)" msgstr "" +"이 명령을 실행하면 콘솔에서 직접 Python을 시작할 수 있습니다. " +"(초콜릿은 환상적입니다. 자동으로 Python을 경로(path)에 추가합니다.)" #: ../../starting/install3/win.rst:25 msgid "Setuptools + Pip" -msgstr "" +msgstr "Setuptools + Pip" #: ../../starting/install3/win.rst:27 msgid "" @@ -59,22 +65,29 @@ msgid "" " also enables you to add this network installation capability to your own" " Python software with very little work." msgstr "" +"가장 중요한 2가지 서드파티 파이썬 패키지는 `setuptools " +"`_ 와 `pip " +"`_ 입니다. " +"명령 한번으로 모든 호환되는 Python 소프트웨어 제품을 다운로드, 설치 및 제거 할 수 있습니다. " #: ../../starting/install3/win.rst:32 msgid "" "All supported versions of Python 3 include pip, so just make sure it's up" " to date:" msgstr "" +"지원되는 모든 버전의 파이썬3에는 pip가 포함되어 있습니다. 그러니 최신 버전인지만 확인하세요. " #: ../../starting/install3/win.rst:41 msgid "Pipenv & Virtual Environments" -msgstr "" +msgstr "Pipenv & Virtual Environments" #: ../../starting/install3/win.rst:43 msgid "" "The next step is to install Pipenv, so you can install dependencies and " "manage virtual environments." msgstr "" +"그 다음 단계는 Pipenv 설치입니다. " +"Pipenv로 디펜던시를 설치하고 가상 환경을 관리할 수 있습니다. " #: ../../starting/install3/win.rst:45 msgid "" @@ -84,18 +97,27 @@ msgid "" "but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" +"가상 환경은 가상 Python 환경을 만들어 서로 다른 프로젝트에 " +"필요한 디펜던시를 별도의 위치에 두는 도구입니다. " +"\"프로젝트 X는 버전 1.x에 의존하지만 프로젝트 Y는 4.x가 필요\" " +"라는 딜레마를 해결하여 글로벌 사이트 패키지 디렉토리를 깨끗하게 " +"관리할 수 ​​있도록 합니다." #: ../../starting/install3/win.rst:50 msgid "" "For example, you can work on a project which requires Django 2.0 while " "also maintaining a project which requires Django 1.8." msgstr "" +"예를 들어, Django 1.8이 필요한 프로젝트를 유지하면서 " +"Django 2.0이 필요한 프로젝트에서 작업할 수 있습니다." #: ../../starting/install3/win.rst:53 msgid "" "So, onward! To the :ref:`Pipenv & Virtual Environments " "` docs!" msgstr "" +"그러니 전진! :ref:`Pipenv & Virtual Environments " +"` 문서로!" #: ../../starting/install3/win.rst:57 msgid "" @@ -103,4 +125,7 @@ msgid "" "`_, " "which is available under the same license." msgstr "" +"이 페이지는 동일한 라이선스 하에 있는 `다른 가이드 " +"`_ " +"의 재구성 버전입니다. " From c1c65d3ccd665825848e55548a8a643684b1bce9 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Sat, 3 Apr 2021 03:11:28 +0000 Subject: [PATCH 056/117] install python3 on linux --- .../ko/LC_MESSAGES/starting/install3/linux.mo | Bin 6977 -> 7769 bytes .../ko/LC_MESSAGES/starting/install3/linux.po | 68 +++++++++++++++--- 2 files changed, 58 insertions(+), 10 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install3/linux.mo index b506310ae136bb6028a2ad4ac8d6f50a379ba8f1..2bc3c7517d83c5522c08b54084ea960b7c255312 100644 GIT binary patch literal 7769 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 delta 274 zcmXxeKTASk6vy%3Z4jg~O-suZcPB-}K*0yRfpBf`5^d5DG#CV}A>tbl;o=s8fuoaC zi(oXl>5{#IAOd>>f?tT1=kuJy`S)3z<$FKvCrg^`OF1kZNM%WnL8*lkY+xoN-D3~m zaf9FZb|{_UI4s@KKgR)a_DK4|1t#$ISh~RvWTXmF=^Cq1xw_>uB+*A-OseBErg4og z7(d|%oZ=XN@f-)IfAuS5m(p<_;~9Tsvb4H;v5PCmNnM(nohsTjQ+3LwQmNan>vaOj Po#ul#42-P*^7ZZ(6QMCs diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install3/linux.po index 37462032d..f38bcad0d 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install3/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install3/linux.po @@ -15,8 +15,8 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: Ahn YoungSeon \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,25 +24,30 @@ msgstr "" #: ../../starting/install3/linux.rst:6 msgid "Installing Python 3 on Linux" -msgstr "" +msgstr "리눅스에 파이썬3 설치하기" #: ../../starting/install3/linux.rst:10 msgid "" "This document describes how to install Python 3.6 or 3.8 on Ubuntu Linux " "machines." msgstr "" +"이 문서는 파이썬3.6이나 3.8을 우분투 리눅스에 설치하는 방법을 다룹니다." #: ../../starting/install3/linux.rst:12 msgid "" "To see which version of Python 3 you have installed, open a command " "prompt and run" msgstr "" +"파이썬3의 어느 버전이 설치되었는지를 확인하려면 " +"커맨드 프롬프트를 열고 실행해보세요. " #: ../../starting/install3/linux.rst:18 msgid "" "If you are using Ubuntu 16.10 or newer, then you can easily install " "Python 3.6 with the following commands::" msgstr "" +"우분투 16.10이나 그보다 최신 버전을 사용하고 있다면 아래의 커맨드로 파이썬3.6을 쉽게 " +"설치할 수 있습니다. " #: ../../starting/install3/linux.rst:23 msgid "" @@ -51,6 +56,10 @@ msgid "" "`deadsnakes PPA `_" " to install Python 3.8::" msgstr "" +"다른 버전의 우분투(예를 들면 최신 LTS 릴리즈)를 사용하고 있다면 " +"혹은 더 최신 버전의 파이썬을 사용하고 싶다면 " +"`deadsnakes PPA `_" +"을 사용해서 파이썬3.8을 설치하기를 추천합니다. " #: ../../starting/install3/linux.rst:30 msgid "" @@ -58,6 +67,10 @@ msgid "" "Python 3 pre-installed as well. If not, use your distribution's package " "manager. For example on Fedora, you would use `dnf`:" msgstr "" +"다른 리눅스 배포판을 사용하고 있다면 " +"이미 파이썬3가 설치되어 있을 수 있습니다. " +"그렇지 않다면 해당 배포판의 패키지 매니저를 사용해서 파이선을 설치하세요." +"예를 들어 페도라를 사용한다면 `dnf`: 를 사용하세요." #: ../../starting/install3/linux.rst:38 msgid "" @@ -67,26 +80,31 @@ msgid "" "package on Fedora 32 to get Python 3.9. If you are a Fedora user, you " "might want to read about `multiple Python versions available in Fedora`_." msgstr "" +"``python3`` 패키지의 버전이 당신이 필요한 만큼 최신 버전이 아니라면 " +"리눅스 배포판에 따라 각각 더 최신 버전의 파이썬을 설치하는 방법도 물론 있습니다. " +"예를 들어 ``python3.9`` 패키지를 페도라 32에 설치할 수 있습니다. " +"만약 페도라 사용자라면 " +"`multiple Python versions available in Fedora`_ 를 읽고 싶을겁니다. " #: ../../starting/install3/linux.rst:49 msgid "Working with Python 3" -msgstr "" +msgstr "파이썬3로 작업하기" #: ../../starting/install3/linux.rst:51 msgid "At this point, you may have system Python 2.7 available as well." -msgstr "" +msgstr "파이썬 2.7이 설치되어 있다고 해봅시다." #: ../../starting/install3/linux.rst:57 msgid "This might launch the Python 2 interpreter." -msgstr "" +msgstr "위 명령어는 아마도 파이썬2 인터프리터를 실행시킵니다." #: ../../starting/install3/linux.rst:63 msgid "This will always launch the Python 3 interpreter." -msgstr "" +msgstr "위 명령어는 반드시 파이썬 3 인터프리터를 실행합니다." #: ../../starting/install3/linux.rst:68 msgid "Setuptools & Pip" -msgstr "" +msgstr "Setuptools & Pip" #: ../../starting/install3/linux.rst:70 msgid "" @@ -94,6 +112,9 @@ msgid "" "`_ and `pip " "`_." msgstr "" +"`setuptools " +"`_ 와 `pip " +"`_ 는 가장 중요한 파이썬 서드파티 패키지입니다. " #: ../../starting/install3/linux.rst:72 msgid "" @@ -102,16 +123,22 @@ msgid "" " this network installation capability to your own Python software with " "very little work." msgstr "" +"이걸 설치하면 어느 파이썬 소프트웨어 제품이든 명령어 한 방에 다운로드 하고 설치하고 제거할 수 있습니다. " +"또한 최소한의 작업만으로 네트워크를 통하여 당신의 파이썬 소프트웨어를 설치할 수 있게 해줍니다." #: ../../starting/install3/linux.rst:76 msgid "" "Python 2.7.9 and later (on the python2 series), and Python 3.4 and later " "include pip by default." msgstr "" +"파이썬 2.7.9와 그 이후 버전(파이썬2 중에서), 그리고 파이썬 3.4와 그 이후 버전은 " +"pip가 기본적으로 포함되어 있습니다." #: ../../starting/install3/linux.rst:79 msgid "To see if pip is installed, open a command prompt and run" msgstr "" +"pip가 설치되어 있는지 확인하려면 " +"커맨드 프롬프트를 열고 이 명령을 실행하세요. " #: ../../starting/install3/linux.rst:85 msgid "" @@ -119,6 +146,10 @@ msgid "" "`_ - this will automatically " "install the latest version of setuptools." msgstr "" +"pip를 설치하려면 " +"`pip 공식 설치 가이드를 따라하세요 " +"`_ - 이 문서는 " +"자동적으로 최신 버전의 setuptools를 설치합니다. " #: ../../starting/install3/linux.rst:87 msgid "" @@ -126,22 +157,28 @@ msgid "" "``pip`` command is meant for Python 2, while the ``pip3`` command is " "meant for Python 3." msgstr "" +"우분투와 페도라를 포함한 리눅스 배포판 일부는 " +"``pip`` 명령어를 파이썬2를 위한 것으로 인식한다는 점을 명심하세요. " +"대신 ``pip3`` 명령어는 파이썬3를 위한 것입니다. " #: ../../starting/install3/linux.rst:94 msgid "" "However, when using virtual environments (described below), you don't " "need to care about that." msgstr "" +"하지만 가상 환경(후술합니다)을 사용한다면 이런 점을 걱정할 필요가 없습니다. " #: ../../starting/install3/linux.rst:100 msgid "Pipenv & Virtual Environments" -msgstr "" +msgstr "Pipenv & Virtual Environments" #: ../../starting/install3/linux.rst:102 msgid "" "The next step is to install Pipenv, so you can install dependencies and " "manage virtual environments." msgstr "" +"그 다음 단계는 Pipenv 설치입니다. " +"이걸로 디펜던시를 설치하고 가상 환경을 관리할 수 있습니다." #: ../../starting/install3/linux.rst:104 msgid "" @@ -151,18 +188,28 @@ msgid "" "but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" +"가상 환경은 서로 다른 위치에 있는 별도의 프로젝트에 각각 독자적인 디펜던시가 필요한 경우 " +"각 프로젝트에 가상 파이썬 환경을 만들어 줍니다. " +"\"프로젝트 X는 버전 1.x에 의존하지만 " +"프로젝트 Y는 4.x가 필요합니다\"라는 딜레마를 해결하고 " +"전역 패키지 디렉토리를 깨끗하게 관리할 수 ​​있도록 한다." #: ../../starting/install3/linux.rst:109 msgid "" "For example, you can work on a project which requires Django 1.10 while " "also maintaining a project which requires Django 1.8." msgstr "" +"예를들어 Django 1.10으로 프로젝트를 진행하는 한편 " +"Django 1.8로 만들어진 프로젝트를 유지보수 하고 있다면 " #: ../../starting/install3/linux.rst:112 msgid "" "So, onward! To the :ref:`Pipenv & Virtual Environments " "` docs!" msgstr "" +"전진! " +":ref:`Pipenv & 가상 환경(Virtual Environments) " +"` 문서를 향해!" #: ../../starting/install3/linux.rst:116 msgid "" @@ -170,4 +217,5 @@ msgid "" "`_, " "which is available under the same license." msgstr "" - +"이 페이지는 같은 라이선스를 사용하는 `다른 가이드 `_ " +"의 리믹스 버전이다." From 337a6994d5b6603a5a0b8ce5633aaeb3577fb687 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Mon, 5 Apr 2021 01:11:06 +0000 Subject: [PATCH 057/117] scrape --- .../locale/ko/LC_MESSAGES/scenarios/scrape.mo | Bin 6125 -> 6801 bytes .../locale/ko/LC_MESSAGES/scenarios/scrape.po | 56 +++++++++++++++--- 2 files changed, 49 insertions(+), 7 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.mo index 6f711906f83af3c6bcdc0af7671b49e433997a1c..a546adc361d6452727bb2f61096f87331a53f343 100644 GIT binary patch delta 3402 zcmZ`*OK%%h6ut$qKrK(vmI6W-HrcePsKlmJ0@MxfB7%4LhQx!`wt57Db@tm!&raEdI0PG zhlFTieFp2_SbxK6;M}hd3-KV<(MN>9pGe}80-is^`V*cX-!H^EVJUSkKAu*GRB@!PEk0mAx7xp}P*Q+NA z-|VTr6^TrZo{A2qqNh`lh*Zs%%5JEIWf{C5OT<&rIDgvgNPV`UFV{V*NITr^oYY@t zv42?V)smW9q7U^}!PvFe(B-sLjUAmWX?s?eI%>UyD^H$DMWuS9m&oW8ZbP>0QePsy9N=&1^9@cyNU$Izw#E4;hFo)y3&{sM zefL{M-fgz^+^pN|NCai*lI>acoe32$z5V)YvKuMo2gDPUP(swoA$d|48_HRx^u71y zXlh*Q?>odgY*1S{RoEcnAip3En{!r)?VO@WJrkhmr$CZ`g~l)9ewOh;06Rq_ZySC#~l1E*?k(*z9-6k9T& z%J8Wu)h~rer5Zrbsq>2kY(RB_K;2?uuh$*#a*pr;B9X{=YBGjfm`54fPie?rBaoRB z{^f82NV!dej--;&C>aJ9dt?~gPrw823{fH|U5d+Wdkc^OkPEd}YZC?ozA2}unmh1K zEt()7#TMqYdK*WTLCMS%3Ehx42c4SzuSmYZF+oP$;La4sKga=ee@$%#r~GUf!WDLKRV;rNWQ*>^1O{ zqkCQeerAl*c4hOd15nX5`IalwV(17WoCRO*v*z+ZxNH~Eq0Fu5%mpsso_#Lt89X{HaB7bP_%S5lwZ#> z0YB%yTiQV-Y>`fI#{yR`&G$DOLcj>MzpIFAHz^qOQj`}15qL7G`HZ{ zEdHoy2b6@q?lcgcx4Mi|7z)~mE9{=-qWYHmy+P8{-6&}%`n1}*0a>tU0)T>$3qjVp z*fGDD|FlCR{;yDI!Bj$Z`b7gh)E5XpaH3C8sEe!G%J{ltv?!gv1A}?s!pL>+L~uP^ ze4+NNtLQu^vL&6h2Xz(TA0K&#y4EWrC*F{HyQsc^e+7pM*1OQ=R5^9D#Tr&ntnL8f7ZV|> za%u7rh%)idQ zWm_8A;hECE>_|Ak*?IRyhunnNr3WxVS!2>IBq=wETLcmi3$tM+0qb(kKk;N)zNFG_af%pSRSQ!MGdjoS} zO@im-M>|J6tWr7oK4lv;vSN%tmS9P$=lmg8Z=g8A<4RFoxy3~=$K8h92&}fiaIgpB zjtE$z3V-Z78VedT-i8`9(3oeEvDn1PBVqsMF+XUCK4;QuaUMNPlI{ef^qNC6$=N$6 y^Fn_2zPo``;fMVPo|mKwDvw^B#q{EUsWl#F%nf}LBWzcMIdDN!5@8(9vEm85Zy}FeC!$bwFAU zNDBxsFvtRFeIVTrq&Y!%4XW3>u#+h6IGyx-o diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po index b23642b2a..4bf38cf12 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po @@ -14,8 +14,8 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: Ahn Young Seon \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,11 +23,11 @@ msgstr "" #: ../../scenarios/scrape.rst:4 msgid "HTML Scraping" -msgstr "" +msgstr "HTML 스크랩 하기" #: ../../scenarios/scrape.rst:11 msgid "Web Scraping" -msgstr "" +msgstr "웹 스크랩 하기" #: ../../scenarios/scrape.rst:13 msgid "" @@ -36,6 +36,10 @@ msgid "" " them and preserve the structure while we're at it. Web sites don't " "always provide their data in comfortable formats such as CSV or JSON." msgstr "" +"웹사이트는 HTML로 작성된다. 이는 곧 각각의 웹페이지는 구조화된 문서라는 의미이다. " +"구조화 된 포맷 덕분에 HTML에서 데이터를 얻기에 아주 좋다. " +"그러니 이 작업을 하는 동안 데이터 구조를 보존하는 게 좋다. " +"웹사이트들이 항상 자신의 데이터를 CSV나 JSON 처럼 쓰기 편한 방식으로 제공하는 것은 아니다." #: ../../scenarios/scrape.rst:18 msgid "" @@ -44,10 +48,13 @@ msgid "" "that you need in a format most useful to you while at the same time " "preserving the structure of the data." msgstr "" +"이 지점에서 웹 스크랩이 시작된다. 웹 스크랩핑은 컴퓨터 프로그램을 사용하여 " +"웹 페이지를 검색한 후 데이터 구조를 보존하면서 사용자에게 가장 유용한 " +"형식으로 필요한 데이터를 수집하는 작업입니다." #: ../../scenarios/scrape.rst:26 msgid "lxml and Requests" -msgstr "" +msgstr "lxml과 Requests" #: ../../scenarios/scrape.rst:28 msgid "" @@ -58,22 +65,35 @@ msgid "" " module due to improvements in speed and readability. You can easily " "install both using ``pip install lxml`` and ``pip install requests``." msgstr "" +"`lxml `_ 은 XML과 HTML 문서를 아주 빠르게 처리하기 위하여 " +"작성된 대규모 라이브러리이다. " +"심지어 구문 분석 중에 잘못된 태그를 처리해주기도 한다. " +"`Requests `_ 모듈도 사용할 것이다. " +"urllib2 모듈보다 속도와 가독성 면에서 뛰어나기 때문이다. " +"``pip install lxml`` 과 ``pip install requests`` 로 " +"둘 다 간단히 설치할 수 있다. " #: ../../scenarios/scrape.rst:36 msgid "Let's start with the imports:" -msgstr "" +msgstr "import부터 시작하자" #: ../../scenarios/scrape.rst:43 msgid "" "Next we will use ``requests.get`` to retrieve the web page with our data," " parse it using the ``html`` module, and save the results in ``tree``:" msgstr "" +"그 단계는 ``requests.get`` 이다. " +"우리의 데이터로 웹페이지를 조회하고 " +"``html`` 모듈로 파싱할 것이다. " +"그리고 ``tree`` 에에 저장할 것이다. " #: ../../scenarios/scrape.rst:51 msgid "" "(We need to use ``page.content`` rather than ``page.text`` because " "``html.fromstring`` implicitly expects ``bytes`` as input.)" msgstr "" +"(``page.text`` 보다는 ``page.content`` 를 사용하는 게 좋다. 왜냐하면 " +"``html.fromstring`` 은 묵시적으로 ``bytes`` 을 인풋으로 하기 때문이다." #: ../../scenarios/scrape.rst:54 msgid "" @@ -81,6 +101,10 @@ msgid "" "we can go over two different ways: XPath and CSSSelect. In this example, " "we will focus on the former." msgstr "" +"이제 ``tree`` 는 HTML 파일 전체를 멋진 트리 구조에 담았다. " +"이제 2가지 접근법이 가능하다. " +"XPath 와 CSSSelect 이다. " +"예제에서는 XPath로 하겠다." #: ../../scenarios/scrape.rst:58 msgid "" @@ -88,6 +112,9 @@ msgid "" "HTML or XML documents. A good introduction to XPath is on `W3Schools " "`_ ." msgstr "" +"XPath는 HTML 또는 XML 문서와 같은 구조화된 문서에서 정보를 찾는 방법입니다. " +"XPath에 대한 좋은 소개는 `W3Schools " +"`_에 있습니다." #: ../../scenarios/scrape.rst:62 msgid "" @@ -96,6 +123,11 @@ msgid "" "can right click an element, choose 'Inspect element', highlight the code," " right click again, and choose 'Copy XPath'." msgstr "" +"또한 FireBug for Firefox 또는 Chrome Inspector와 같은 엘리먼트의 XPath를 " +"얻기 위한 다양한 도구가 있습니다. " +"크롬을 사용하는 경우 엘리먼트를 마우스 오른쪽 버튼으로 클릭하고 " +"'요소 검사'를 선택한 후 코드를 강조 표시하고 " +"다시 마우스 오른쪽 버튼을 클릭한 후 'Copy XPath'를 선택할 수 있습니다." #: ../../scenarios/scrape.rst:67 msgid "" @@ -103,16 +135,20 @@ msgid "" "two elements -- one is a div with title 'buyer-name' and the other is a " "span with class 'item-price':" msgstr "" +"빠른 분석 후, 우리는 우리 페이지에서 데이터가 두 가지 요소에 포함되어 있음을 " +"알 수 있습니다. 하나는 'buyer-name'이라는 제목이 있는 div고 " +"다른 하나는 class 'item-price'이 있는 span입니다." #: ../../scenarios/scrape.rst:76 msgid "" "Knowing this we can create the correct XPath query and use the lxml " "``xpath`` function like this:" msgstr "" +"이를 알고 올바른 XPath 쿼리를 만들어 다음과 같은 lxml ``xpath`` 함수를 사용할 수 있습니다." #: ../../scenarios/scrape.rst:86 msgid "Let's see what we got exactly:" -msgstr "" +msgstr "정확히 어떤 것들이 있는지 봅시다." #: ../../scenarios/scrape.rst:106 msgid "" @@ -121,6 +157,9 @@ msgid "" "lists. Now we can do all sorts of cool stuff with it: we can analyze it " "using Python or we can save it to a file and share it with the world." msgstr "" +"축하합니다! lxml 와 Requests를 사용하여 웹 페이지에서 원하는 모든 데이터를 " +"성공적으로 스크랩했습니다. 우리는 그것을 두 개의 목록으로 메모리에 저장했습니다. " +"이제 우리는 파이썬을 사용하여 웹을 분석하거나 파일에 저장하여 세상과 공유할 수 있습니다." #: ../../scenarios/scrape.rst:111 msgid "" @@ -128,6 +167,9 @@ msgid "" "through the rest of the pages of this example dataset, or rewriting this " "application to use threads for improved speed." msgstr "" +"이 예제 데이터 세트의 나머지 페이지를 반복하도록 이 스크립트를 수정하거나, " +"속도를 높이기 위해 스레드를 사용하도록 이 응용 프로그램을 다시 작성하는 방법을 " +"생각해 볼 수 있습니다." #~ msgid "" #~ msgstr "" From 9d9c3fde9e35536531e058d96fcc029a4fdf08d7 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Tue, 6 Apr 2021 04:40:58 +0000 Subject: [PATCH 058/117] Network --- .../ko/LC_MESSAGES/scenarios/network.mo | Bin 3261 -> 3771 bytes .../ko/LC_MESSAGES/scenarios/network.po | 35 +++++++++++++++--- 2 files changed, 29 insertions(+), 6 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.mo b/docs/locale/ko/LC_MESSAGES/scenarios/network.mo index 08885992f1c968d456cc8a26fae3473f7f3bbff9..76e1afe3db46ce6a995b493850068570f7577bef 100644 GIT binary patch delta 1740 zcmZ`(&u`mg7J+1;Yl||;P153O>6O2L({5Zi-{K-xI&yk(?yv!lwYTkDlFXz&oHu1~~wQF?0MWA{Dn=N=?TrT}RevxW5 z+yPq!Z}nKeI&|#=nlnhJX@hn^b323{Yjop&$8`wZHz04pu1RRM4b>KP3-qTteN@*A zL+_*s!vIV3OpADh0u@`adCrapseg>;+@Z0`_n#UWV1 zE^wdmvjD&B7uZ)o!QchK9{~_iQ+^uz|GCi@C)3 zo3>{ZkOH(b3@%$4L)%bZ1g(S?YcbSbH9j&{B~;-0Q=B zYF40Je*rGLyK`8FBhxc&;;Rg~L*LD>=(<7Z?vKnluua-*A$@)QrSVJMK;VDST#TB2 zXY~D^#wP~CdU=#y>x1`t9!Sj~?{i^8lTVY>`PHS59BOX`p!^sfwkJqbRpZGCL0CwL zqAZCjpAaMSYE+z8=8}9mrU;@eND);`szUIYLwH6K#l^X3L}r5|EQohSSq-TvRY}Am zQfN^Tg3mB!YOyIOhsI;vU84EJKtjBe z!nlPJVmvJ^KPUUSH{*Hn+52*=p#uG-{}G?SR9yULsc#Ru^B=M8%sl`A delta 145 zcmdljyH|2TOw@@D+1wTh$R|OkaUq??L c2S*o|AlKmF$rsq@vado0F~$*VgLXD diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/network.po b/docs/locale/ko/LC_MESSAGES/scenarios/network.po index 3eebe1887..4f75ed516 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/network.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/network.po @@ -14,8 +14,8 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: Ahn Young Seon \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,11 +23,11 @@ msgstr "" #: ../../scenarios/network.rst:4 msgid "Networking" -msgstr "" +msgstr "네트워킹" #: ../../scenarios/network.rst:11 msgid "Twisted" -msgstr "" +msgstr "Twisted" #: ../../scenarios/network.rst:13 msgid "" @@ -37,10 +37,15 @@ msgid "" "applications using SMTP, POP3, IMAP, or SSH protocols, instant messaging," " and `much more `_." msgstr "" +"`Twisted `_ 는 이벤트 드리븐 네트워킹 엔진이야. " +"HTTP 서버 및 클라이언트, SMTP, POP3, IMAP 또는 " +"SSH 프로토콜을 사용하는 애플리케이션, 인스턴트 메시징 등을 포함한 " +"다양한 네트워킹 프로토콜을 두루 사용하여 애플리케이션을 구축할 수 있습니다." +"`더 많은 정보는 `_ 를 보세요." #: ../../scenarios/network.rst:22 msgid "PyZMQ" -msgstr "" +msgstr "PyZMQ" #: ../../scenarios/network.rst:24 msgid "" @@ -50,18 +55,27 @@ msgid "" "for message queuing without a message broker. The basic patterns for this" " are:" msgstr "" +"`PyZMQ `_ 는 고성능 비동기 메시징 라이브러리 " +"`ZeroMQ `_ 를 위한 파이썬 바인딩입니다. " +"ZeroMQ의 가장 큰 장점은 메시지 브로커 없이도 메시지 큐를 쌓을 수 있다는 점입니다. " +"기본적인 사용 패턴은: " #: ../../scenarios/network.rst:29 msgid "" "request-reply: connects a set of clients to a set of services. This is a " "remote procedure call and task distribution pattern." msgstr "" +"요청 응답(request-reply) 패턴: 여러 클라이언트 집합을 여러 서비스 집합에 연결하는 패턴. " +"원격 프로시저 호출(RPC)와 분산 작업 패턴입니다. " #: ../../scenarios/network.rst:31 msgid "" "publish-subscribe: connects a set of publishers to a set of subscribers. " "This is a data distribution pattern." msgstr "" +"발행-구독(publish-subscribe) 패턴: " +"여러 발행자 집합을 여러 구독자 집합에 연결하는 패턴." +"데이터 분산 패턴입니다. " #: ../../scenarios/network.rst:33 msgid "" @@ -69,16 +83,21 @@ msgid "" "can have multiple steps and loops. This is a parallel task distribution " "and collection pattern." msgstr "" +"push-pull (또는 pipeline) 패턴: " +"여러 단계의 스텝과 루프를 수행하는 fan-out/fan-in 패턴에서 노드들을 잇는 패턴." +"작업을 분산해서 병렬로 수행하고 이를 한 데 모으는 패턴이야." #: ../../scenarios/network.rst:37 msgid "" "For a quick start, read the `ZeroMQ guide " "`_." msgstr "" +"퀵스타트를 하려면 읽어요! `ZeroMQ guide " +"`_." #: ../../scenarios/network.rst:42 msgid "gevent" -msgstr "" +msgstr "게븐트(gevent)" #: ../../scenarios/network.rst:44 msgid "" @@ -86,6 +105,10 @@ msgid "" " library that uses greenlets to provide a high-level synchronous API on " "top of the libev event loop." msgstr "" +"`gevent `_ 는 코루틴을 사용하는 파이썬 네트워킹 라이브러리 입니다. " +"그린렛(역주: https://greenlet.readthedocs.io/en/latest/)" +"(역주: http://leekchan.com/gevent-tutorial-ko/)을 사용하여 고수준의 동기 API를 " +"libev(역주: http://software.schmorp.de/pkg/libev.html) 이벤트 루프 위에서 돌릴 수 있습니다." #~ msgid "" #~ "`Twisted `_ is an" From 6c0ae7878e147d44aa5a1a06032af428f5a4bac6 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 7 Apr 2021 04:53:33 +0000 Subject: [PATCH 059/117] Pipenv --- docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo | Bin 21703 -> 22671 bytes docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 83 +++++++++++++++--- 2 files changed, 70 insertions(+), 13 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo index d75c06aaf9453722520a34b7b8d45c91e7e5b240..55399f3d1ce557d557a695fb8954c39f0fb226cc 100644 GIT binary patch delta 5880 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 delta 753 zcmXZZPe@cz6vy%38$&5K`L6~fQ!ovjXWHmwsp;4}%X~B1j6rVtV=p)MXF|%b#S1bQ zAq2XxR#DNyAW2OSTVxY}lX=6y6h-j0G-1NPSaN%>$J@=h^?tS-WthZCviw^<+ zrX_hH>7t}nTN=c8we$$z;8{GsPnyPMe2s%O5<}ryDHlDwi)l>a23BEWzqAX7aW~$_ zDO|wI*cXxBnnZo^8OgxTxIF04Fg!HT*CLfRr z4@m38H3y~VSb0cl!!KwW3pV=FP9~8?sSFc%2h+F>*D;A!lXQayd$67OW3#kETzEM1 z0>4|NBG&(*DZIT^dWzL}j(wkTm^i}eJBVk{T=bpKHBAE>*g&EnmPxn{AF}S_5PnC7 zdO7_oKEyE`Ix3yPEypr>4=1Vf45O^K9hWZP2$~E1MDC=&Sb~0Sr}T|UHwH1}O1II$ zC-@%C#!GRDsm9R!iWOW$C8VqH3hOx7?vnC}`?`4ryoM$o-HadLY11HHm+G}ODXp>L z7XCsnC1vA@9;pLQp(*ef&A*<\n" -"Language-Team: LANGUAGE \n" +"Last-Translator: YoungSeon.Ahn \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,11 +23,11 @@ msgstr "" #: ../../dev/virtualenvs.rst:4 msgid "Pipenv & Virtual Environments" -msgstr "" +msgstr "Pipenv & 가상 환경(Virtual Environments)" #: ../../dev/virtualenvs.rst:8 msgid "This tutorial walks you through installing and using Python packages." -msgstr "" +msgstr "이 튜토리얼은 Python 패키지 설치 및 사용을 안내합니다." #: ../../dev/virtualenvs.rst:10 msgid "" @@ -40,22 +40,33 @@ msgid "" "applications), but is also very well suited to managing development and " "testing environments for any kind of project." msgstr "" +"필요한 도구를 설치 및 사용하고 best practice의 강력한 " +"권장 사항을 제시하는 방법을 알려드릴게요. " +"Python은 매우 다양한 용도로 사용되며, 소프트웨어 퍼블리싱 방법에 따라 종속성을 " +"관리하는 방법이 달라질 수 있습니다. 여기에 제시된 지침은 " +"네트워크 서비스(웹 애플리케이션 포함)의 개발과 배포에 가장 직접적으로 " +"적용되지만, 모든 종류의 프로젝트에 대한 개발 및 테스트 환경 관리에도 매우 적합합니다." #: ../../dev/virtualenvs.rst:18 msgid "" "This guide is written for Python 3, however, these instructions should " "work fine on Python 2.7—if you are still using it, for some reason." msgstr "" +"이 안내서 파이썬3를 대상으로 작성되었습니다. " +"하지만 이 안내사항은 파이썬 2.7에서도 잘 적용됩니다. " +"어떤 이유에서든 아직도 그걸 쓰고 있다면 말이지요." #: ../../dev/virtualenvs.rst:23 msgid "Make sure you've got Python & pip" -msgstr "" +msgstr "Python과 pip가 있는지 확인하기" #: ../../dev/virtualenvs.rst:25 msgid "" "Before you go any further, make sure you have Python and that it's " "available from your command line. You can check this by simply running:" msgstr "" +"더 진행하기 전에 파이썬이 설치되어 있는지, 커맨드라인에서 사용할 수 있는지 확인하십시오. " +"이 기능은 간단히 아래 명령어를 실행하기만 하면 확인할 수 있습니다." #: ../../dev/virtualenvs.rst:32 msgid "" @@ -63,10 +74,13 @@ msgid "" "please install the latest 3.x version from `python.org`_ or refer to the " "`Installing Python`_ section of this guide." msgstr "" +"``3.6.2`` 같은 출력이 나와야 합니다. " +"파이썬이 없는 경우, `python.org`_ 에서 최신 3.x 버전을 설치하거나 " +"이 가이드의 `Installing Python`_ 섹션을 참조하십시오." #: ../../dev/virtualenvs.rst:36 msgid "If you're newcomer and you get an error like this:" -msgstr "" +msgstr "초심자이고 이런 에러가 나왔다면: " #: ../../dev/virtualenvs.rst:45 msgid "" @@ -75,12 +89,17 @@ msgid "" "started tutorial`_ for an introduction to using your operating system's " "shell and interacting with Python." msgstr "" +"이 명령은 *셸* ( *터미널* 또는 *콘솔* 이라고도 함)에서 실행되도록 " +"되어 있기 때문입니다. 운영 체제의 셸 사용 및 Python과의 상호 작용에 대한 자세한 내용은 " +"`getting started tutorial`_ 자습서를 참조하십시오." #: ../../dev/virtualenvs.rst:50 msgid "" "Additionally, you'll need to make sure you have `pip`_ available. You can" " check this by running:" msgstr "" +"추가로 `pip`_ 가 동작하는지 확인해야 할 필요가 있을겁니다. " +"아래 명령어로 확인할 수 있습니다: " #: ../../dev/virtualenvs.rst:57 msgid "" @@ -89,10 +108,15 @@ msgid "" "on Linux and installed using your OS package manager, you may have to " "`install pip `_ separately." msgstr "" +"소스에서 Python을 설치하거나 `python.org`_ 의 설치 프로그램을 사용하거나 " +"`Homebrew`_ 를 통해 Python을 설치한 경우 " +"이미 pip이 있어야 합니다. " +"Linux 사용자이고 OS 패키지 관리자를 사용하여 설치한 경우 " +"`pip 설치 `_ 를 별도로 해야 할 수 있습니다." #: ../../dev/virtualenvs.rst:69 msgid "Installing Pipenv" -msgstr "" +msgstr "Pipenv 설치하기" #: ../../dev/virtualenvs.rst:71 msgid "" @@ -102,10 +126,15 @@ msgid "" "recommended as it's a higher-level tool that simplifies dependency " "management for common use cases." msgstr "" +"`Pipenv`_ 는 Python 프로젝트의 종속성 관리자입니다. " +"만약 여러분이 Node.js의 `npm`_이나 Ruby의 `bundler`_ 에 익숙하다면, " +"Pipenv는 그 도구들과 비슷한 사상으로 만들어졌습니다. " +"Pip은 Python 패키지를 설치할 수 있지만 " +"Pipenv는 일반적인 사용 사례에 대한 의존성 관리를 단순화하는 고급 도구로서 하용하기를 권장합합니다." #: ../../dev/virtualenvs.rst:77 msgid "Use ``pip`` to install Pipenv:" -msgstr "" +msgstr "``pip``로 Pipenv를 설치하자:" #: ../../dev/virtualenvs.rst:84 msgid "" @@ -113,6 +142,9 @@ msgid "" "packages. If ``pipenv`` isn't available in your shell after installation," " you'll need to add the `user base`_'s binary directory to your ``PATH``." msgstr "" +"이렇게 하면 시스템 전체 패키지가 박살나지 않도록 `user installation`_ 를 수행할 수 있습니다. " +"설치 후 셸에서 ``pipenv`` 를 사용할 수 없는 경우 `user base`_ 의 바이너리 " +"디렉토리를 ``PATH`` 에 추가해야 합니다." #: ../../dev/virtualenvs.rst:88 msgid "" @@ -123,6 +155,11 @@ msgid "" "``~/.local/bin`` to your ``PATH``. You can set your ``PATH`` permanently " "by `modifying ~/.profile`_." msgstr "" +"Linux 및 macOS에서는 ``python -m site --user-base`` 를 실행하고 끝에 ``bin`` 을 " +"추가하면 사용자 베이스 바이너리 디렉토리를 찾을 수 있습니다. " +"예를 들어, 일반적으로 ``~/.local`` 에서 ``~`` 는 홈 디렉토리의 절대 경로로 인식되므로 " +"``PATH`` 에 ~/.local/bin을 추가해야 합니다. " +"`~/.profile 를 수정하여`_ ``PATH`` 를 영구적으로 설정할 수 있습니다." #: ../../dev/virtualenvs.rst:95 msgid "" @@ -135,10 +172,16 @@ msgid "" " your user ``PATH`` permanently in the `Control Panel`_. You may need to " "log out for the ``PATH`` changes to take effect." msgstr "" +"윈도우즈에서 ``py -m site --user-site`` 를 실행하고 ``site-packages`` 를 ``Scripts`` 로 " +"바꾸면 사용자 베이스 바이너리 디렉토리를 찾을 수 있습니다. " +"예를 들어 ``C:\\Users\\Username\\AppData\\Roaming\\Python36\\site-packages`` 가 리턴하기 위하여 " +"``PATH`` 에 ``C:\\Users\\Username\\AppData\\Roaming\\Python36\\Scripts`` 를 추가해야 합니다. " +"`제어판`_ 에서 사용자 ``PATH`` 를 영구적으로 설정할 수 있습니다. " +"``PATH`` 변경 사항을 적용하려면 로그아웃해야 할 수도 있습니다." #: ../../dev/virtualenvs.rst:113 msgid "Installing packages for your project" -msgstr "" +msgstr "프로젝트에 패키지 설치하기" #: ../../dev/virtualenvs.rst:115 msgid "" @@ -146,6 +189,9 @@ msgid "" "change into your project's directory (or just an empty directory for this" " tutorial) and run:" msgstr "" +"Pipenv는 프로젝트별로 종속성을 관리합니다. " +"패키지를 설치하려면 프로젝트의 디렉터리(또는 이 튜토리얼의 빈 디렉터리만)로 " +"이동하여 다음 명령을 실행하십시오." #: ../../dev/virtualenvs.rst:124 msgid "" @@ -155,24 +201,30 @@ msgid "" "install them, such as when you share your project with others. You should" " get output similar to this (although the exact paths shown will vary):" msgstr "" +"Pipenv가 멋진 `Requests`_ 라이브러릴 설치했습니다. " +"긜고 프로젝트 디렉터리에 ``Pipfile`` 을 만듭니다. ``Pipfile`` 은 프로젝트를 " +"다른 사용자와 공유할 때와 같이 프로젝트를 다시 설치해야 하는 경우 프로젝트에 " +"필요한 종속성을 추적하는 데 사용됩니다. " +"아래와 유사한 출력을 얻어야 합니다(표시된 정확한 경로는 다르지만)." #: ../../dev/virtualenvs.rst:163 msgid "Using installed packages" -msgstr "" +msgstr "설치된 패키지 사용하기" #: ../../dev/virtualenvs.rst:165 msgid "" "Now that Requests is installed you can create a simple ``main.py`` file " "to use it:" msgstr "" +"이제 Requests가 설치되었으므로 간단한 ``main.py`` 파일을 작성하여 사용할 수 있습니다." #: ../../dev/virtualenvs.rst:176 msgid "Then you can run this script using ``pipenv run``:" -msgstr "" +msgstr "그런 다음 ``pipenv run`` 를를 사용하여 이 스크립트를 실행할 수 있습니다." #: ../../dev/virtualenvs.rst:182 msgid "You should get output similar to this:" -msgstr "" +msgstr "아래와 비슷한 결과를 얻어야 합니다:" #: ../../dev/virtualenvs.rst:188 msgid "" @@ -180,16 +232,21 @@ msgid "" " to your script. It's also possible to spawn a new shell that ensures all" " commands have access to your installed packages with ``$ pipenv shell``." msgstr "" +"``$ pipenv run`` 를 사용하면 설치된 패키지를 스크립트에서 사용할 수 있습니다. " +"또한 ``$ pipenv shell`` 을 사용하여 실행하는 모든 명령이 " +"설치된 패키지에 액세스할 수 있도록 하는 새 셸을 생성할 수도 있습니다." #: ../../dev/virtualenvs.rst:194 msgid "Next steps" -msgstr "" +msgstr "다음 단계" #: ../../dev/virtualenvs.rst:196 msgid "" "Congratulations, you now know how to install and use Python packages! ✨ 🍰" " ✨" msgstr "" +"축하해요! 이제 파이썬 패키지를 설치하고 사용하는 방법을 익혔습니다! ✨ 🍰" +" ✨" #: ../../dev/virtualenvs.rst:201 msgid "Lower level: virtualenv" From a7f503e00f1252df270965774f33c4513535d059 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 7 Apr 2021 05:06:55 +0000 Subject: [PATCH 060/117] bug fix --- docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo | Bin 22671 -> 22668 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo index 55399f3d1ce557d557a695fb8954c39f0fb226cc..df44a7f3d93ee7352ee64a4a0decefe48a640815 100644 GIT binary patch delta 435 zcmXZY%_{_90LSs)V~bjC-m)uekc+f9I7qZ@BWp3%T6sHYkv2zMsJ%?0jZ%Ab;pD(c z#`*(X9mt6soG2FuIa9t-<` z^o=bw;w^UL6TVdUqb5^RwLG;`C?;PgXw}IQtKg>yQn4FhB kv1>u9#Bg*`;v;3Df5AG|VFAluJ^SXms-?f&7T=8i0haPVc>n+a delta 435 zcmXZYzbk}c0KoC@A&TS>;?QN}CKNZ4E_L< zjgd()$zU<_y;5&|p6~NM&(r%p$3f^M2;F=X=E6Wl95ytnK?qKD*dFYIwgNcPGW)(C zYV<*4`l2sdJOEejd(&O}a1d(kq9N$ABOX?#3GH!yRhR6G5prZ5FbX@etnT4e%Uu{9 zgD1OV95VW=K4d1~%=g#YZx2ktiXLdGerm7&Xp43xpxX6mjoNET*w@2k4lW&(r=VE_ zozy4Ie|gh1JZehwH`Fi#=N@#dRd#C{!W!3nC;mIDi>}+$ZRek7;ax}P;7eok-kR1& e7Qmk*s`&%fwNm%=?z{aUbX(HceODjfiu?ihVLuQ6 From 382245c48365ddfb6f22bb92ea6e1d3817aca89e Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 8 Apr 2021 01:15:41 +0000 Subject: [PATCH 061/117] etc --- docs/locale/ko/LC_MESSAGES/index.mo | Bin 5468 -> 5469 bytes docs/locale/ko/LC_MESSAGES/index.po | 2 +- docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 34850 -> 34851 bytes 3 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index 9eb1c5a01171c9df08f9d9921ba8a6536e3e9fe5..f9b74ad31a79cdf0fe69045ea771a9814d6a99ee 100644 GIT binary patch delta 209 zcmXBNtqQ_$7{%f9Z;tsf{482*u9z$eYB4B-ffy{Vh&P}H!CK=2Ao zvzWv*yaInc=^G5E|Jw%(Wk?xjsl;qh`3ST(D7>n3SN^>0I6mQta8s!fzu!})j zD&ZNMc*P2Sv5ihf+VjuHHAW8cgTpv0HL#wOb~wWk#yG)VURvP=t5`1lhdbfP_z4q) IZ)<7)0M<(%6y;_`(rpSVuQ6g*e3p#yG?dM~V2(VP2Mc*sVx=T;dEf3~*4D)_BD>Hf#T3FFG53E_$0Q F>j#rd9gzS4 diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index debbb462f..7e52268b2 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -10,7 +10,7 @@ # msgid "" msgstr "" -"Project-Id-Version: pythonguide 0.0.1\n" +"Project-Id-Version: pythonguide ^0.0.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo index 37feedc088ed74c5ad3e938314dbf95292feefb0..daf7906742a688972974dfdbb4cece017563e30b 100644 GIT binary patch delta 569 zcmXBRO-NKx7>Dtvaa7DK1rZD;FoX)+Nni^HR75c$&`K*r#}pZyQWVQiZiOXo#A>5P z8z&HJQ6NFMa*?y?V;gNET4)5~N)U44Gu+Mn-S>aaJ@=gVtS&~mgt?O<=p7o;+7|=OArTf~fM_TQ?#!fh6J#h=xbzTp&`ZnCrOFj}2 zc&fS9yIlmd80>XHp9|FVgbTk;z)vT<)tLEgZ@7WgyHIAnuA920F`epzH@d7#8t;c< z{h?R<{;w8TpLh4!@hZJ)zC94YjzLKhz8D;8_J^Mb!AfxXDwFaoLu55%9>!1lbbV4uaU%jrUTI{^5&5&U|d>2-AQjfIg9<*qIk7xwO z^{n+?D*-nR4qKtk1+F{@7hZ_MZzrs3j`{0{VFQbgAj^D3Kj~-9(UCS-(m9>e@^;A7 zUs~$-`+Ckg*X|SJg?h{UYe!%g2AN&(!{AsGKm76pY?_^Jus6zjAk}-6g#=|?hyf&3`>Gs-ET~P8LBY|R~ From 7fd564fb9a27d68cc3d9552a73a1c84aa3ac5cca Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 8 Apr 2021 01:18:28 +0000 Subject: [PATCH 062/117] virtualenv --- docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo | Bin 22668 -> 23684 bytes docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 113 ++++++++++++++---- 2 files changed, 91 insertions(+), 22 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo index df44a7f3d93ee7352ee64a4a0decefe48a640815..d0f8f77a838e2704ffbe8f4753454af9478c97e3 100644 GIT binary patch delta 6383 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 delta 841 zcmXZZUrfzm9LMp`a}p~%kya5$O{Lz}d5!Nv?1t}yT4*na!Hp6~a0p6~O0e!qdc=JbTQ{n8WP zCF%QeX+L%pOQZN4`|vPj~Mla4=O?T+S2@0LTb;O}sHgmv9bicrz zkd%%Oun1q_6ee)mb@okTFY(Y?DTCP5a~a}=6muI0#~G9}(S@BPE;Y~${>DSNW4**4 zy+$wVe2vmGV*du_@E7uEdssTp{1}FaYa{$7?89XIh+JMja2XbF-;3M;Cd{*-{dSP@9D4^#7vlUq~Zc+-aLR87$1>`ZU4&7mTXb1KtsC+o&M z_Qj%%1m{g-%r5ce7&{oAG0tdqr!x}?+lHJI9vf+i8v8!?tZ_P9|2XY=hwZzzZ^mvb HNSgH*m|vAl diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po index dcddc24d8..5011a6a29 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po +++ b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po @@ -250,7 +250,7 @@ msgstr "" #: ../../dev/virtualenvs.rst:201 msgid "Lower level: virtualenv" -msgstr "" +msgstr "하위계층: virtualenv" #: ../../dev/virtualenvs.rst:203 msgid "" @@ -259,26 +259,30 @@ msgid "" "all the necessary executables to use the packages that a Python project " "would need." msgstr "" +"`virtualenv `_ 는 격리된 파이썬 환경을 만들기 " +"위한 도구이다. " +"virtualenv는 Python 프로젝트에 필요한 패키지를 사용하는 데 필요한 모든 " +"실행 파일이 포함된 폴더를 생성합니다." #: ../../dev/virtualenvs.rst:207 msgid "It can be used standalone, in place of Pipenv." -msgstr "" +msgstr "Pipenv 대신 단독으로 사용할 수 있습니다." #: ../../dev/virtualenvs.rst:209 msgid "Install virtualenv via pip:" -msgstr "" +msgstr "pip로 virtualenv를 설치하자: " #: ../../dev/virtualenvs.rst:215 msgid "Test your installation:" -msgstr "" +msgstr "설치가 잘 됐는지 확인하자:" #: ../../dev/virtualenvs.rst:222 ../../dev/virtualenvs.rst:363 msgid "Basic Usage" -msgstr "" +msgstr "기본 사용법" #: ../../dev/virtualenvs.rst:224 msgid "Create a virtual environment for a project:" -msgstr "" +msgstr "프로젝트에 가상 환경을 생성하자:" #: ../../dev/virtualenvs.rst:231 msgid "" @@ -288,32 +292,43 @@ msgid "" "virtual environment (in this case, it was ``venv``) can be anything; " "omitting the name will place the files in the current directory instead." msgstr "" +"``virtualenv venv`` 는 파이썬 실행 파일이 들어있는 현재 디렉토리에 " +"폴더를 하나 만들고 " +"``pip`` 라이브러리(다른 패키지를 설치하는 데 사용할)의 복사본을 만듭니다." +"가상 환경의 이름(여기서는 ``venv``)은 뭐든 가능합니다. 그리고 " +"이름을 생략하면 파일이 대신 현재 디렉토리에 배치됩니다." #: ../../dev/virtualenvs.rst:238 msgid "" "'venv' is the general convention used globally. As it is readily " "available in ignore files (eg: .gitignore')" msgstr "" +"'venv' 는 전세계적으로 사용되는 일반적인 컨벤션입니다. " +"ignore 파일에서 쉽게 처리 가능합니다(예: .gitignore)." #: ../../dev/virtualenvs.rst:240 msgid "" "This creates a copy of Python in whichever directory you ran the command " "in, placing it in a folder named :file:`venv`." msgstr "" +"이렇게 하면 명령을 실행한 디렉터리에 Python의 복사본이 생성되어 :file:`venv` " +"라는 폴더에 저장됩니다." #: ../../dev/virtualenvs.rst:243 msgid "" "You can also use the Python interpreter of your choice (like " "``python2.7``)." msgstr "" +"``python2.7`` 과 같은 Python 인터프리터를 선택해서 사용할 수도 있습니다." #: ../../dev/virtualenvs.rst:250 msgid "or change the interpreter globally with an env variable in ``~/.bashrc``:" msgstr "" +"아니면 ``~/.bashrc`` 로 전역 환경에서 인터프리터 환경 변수를 바꿀 수도 있습니다." #: ../../dev/virtualenvs.rst:256 msgid "To begin using the virtual environment, it needs to be activated:" -msgstr "" +msgstr "가상 환경 사용을 시작하려면 가상 환경을 활성화해야 합니다." #: ../../dev/virtualenvs.rst:262 msgid "" @@ -323,6 +338,11 @@ msgid "" "using pip will be placed in the ``venv`` folder, isolated from the global" " Python installation." msgstr "" +"현재 가상 환경의 이름이 프롬프트 왼쪽에 나타납니다" +"(예: ``(venv)Your-Computer:project_folder UserName$``)" +"이것이 가상환경이 활성화되어 있음을 알려 줍니다. " +"이제부터 pip을 사용하여 설치하는 모든 패키지는 " +"글로벌 Python 설치환경과 격리된 ``venv`` 폴더에 배치됩니다." #: ../../dev/virtualenvs.rst:267 msgid "" @@ -330,32 +350,37 @@ msgid "" " virtual environment. However, activating the environment requires a " "slightly different command." msgstr "" +"윈도우즈의 경우 1단계에서 언급한 동일한 명령을 사용하여 가상 환경을 생성할 수 " +"있습니다. 그러나 가상상환경을 활성화하려면 약간 다른 명령이 필요합니다." #: ../../dev/virtualenvs.rst:269 msgid "Assuming that you are in your project directory:" -msgstr "" +msgstr "프로젝트 디렉토리에 있다고 가정하고 시작해보면 이렇습니다: " #: ../../dev/virtualenvs.rst:275 msgid "Install packages using the ``pip`` command:" -msgstr "" +msgstr "``pip`` 명령으로 패키지를 설치해봅시다: " #: ../../dev/virtualenvs.rst:281 msgid "" "If you are done working in the virtual environment for the moment, you " "can deactivate it:" msgstr "" +"잠시 가상환경에서의 작업을 멈추려면 이렇게 비활성화 할 수도 있습니다: " #: ../../dev/virtualenvs.rst:288 msgid "" "This puts you back to the system's default Python interpreter with all " "its installed libraries." msgstr "" +"이렇게 하면 설치된 모든 라이브러리와 함께 시스템의 기본 Python 인터프리터로 돌아갑니다." #: ../../dev/virtualenvs.rst:291 msgid "" "To delete a virtual environment, just delete its folder. (In this case, " "it would be ``rm -rf venv``.)" msgstr "" +"가상 환경을 삭제하려면 해당 폴더를 삭제하십시오. (이 경우, ``rm -rf venv``)" #: ../../dev/virtualenvs.rst:294 msgid "" @@ -363,16 +388,21 @@ msgid "" "environments littered across your system, and it's possible you'll forget" " their names or where they were placed." msgstr "" +"개발을 오래 하다보면 시스템 전체에 많은 가상 환경이 흩어져 있을 수 있습니다. " +"그러다보면 가상환경의 이름이나 위치가 기억나지 않을 수도 있습니다. " +"(역주: 그래서 어쩌라는 거임... 이름을 venv로 하는 게 좋다고?)" #: ../../dev/virtualenvs.rst:299 msgid "" "Python has included venv module from version 3.3. For more details: `venv" " `_." msgstr "" +"파이썬3.3 버전부터는 venv 모듈을 포함하고 있다. 자세한 내용은 `venv" +" `_." #: ../../dev/virtualenvs.rst:302 msgid "Other Notes" -msgstr "" +msgstr "기타 참고 사항" #: ../../dev/virtualenvs.rst:304 msgid "" @@ -381,6 +411,10 @@ msgid "" "keeping the package list clean in case it needs to be accessed later. " "[This is the default behavior for ``virtualenv`` 1.7 and later.]" msgstr "" +"``--no-site-packages`` 옵션을 줘서 ``virtualenv`` 를 실행하면 " +"전역환경에 설치된 파이썬 패키지를 가져오지 않습니다. " +"나중에 다시 쓸 패키지 리스트를 깔끔하게 유지하는 데 유용합니다. " +"[``virtualenv`` 1.7 이후부터는 이게 기본 동작입니다.]" #: ../../dev/virtualenvs.rst:309 msgid "" @@ -388,6 +422,8 @@ msgid "" "\"freeze\" the current state of the environment packages. To do this, " "run:" msgstr "" +"개발환경을 일관성 있게 유지하려면 개발환경 패키지의 현재 " +"상태를 \"freeze\" 하는 것이 좋습니다. 이렇게 하려면 다음을 실행합니다." #: ../../dev/virtualenvs.rst:316 msgid "" @@ -398,12 +434,19 @@ msgid "" " different developer (or you, if you need to re-create the environment) " "to install the same packages using the same versions:" msgstr "" +"그러면 :file:`requirements.txt` 파일이 생성됩니다. " +"이 파일에는 현재 환경의 모든 패키지와 해당 버전의 단순한 목록이 적혀있습니다." +"requirements 포맷을 쓰지 않더라도 ``pip list`` 로 ㅎ녀재 설치되어 있는 " +"패키지 목록을 확인할 수 있습니다. " +"이것이 나중에 다른 개발자가 동일한 버전을 사용하여 " +"동일한 패키지를 설치하는 작업(또는 환경을 다시 만들어야 하는 경우)을 더 쉽게 만들어줍니다." #: ../../dev/virtualenvs.rst:327 msgid "" "This can help ensure consistency across installations, across " "deployments, and across developers." msgstr "" +"위 명령을 통해 설치본, 배포본 및 개발자 간에 개발환경의 일관성을 유지할 수 있습니다." #: ../../dev/virtualenvs.rst:330 msgid "" @@ -411,10 +454,13 @@ msgid "" "control by adding it to the ignore list (see :ref:`Version Control " "Ignores`)." msgstr "" +"마지막으로 가상 환경 폴더를 ignore 목록에 추가하여 소스 컨트롤 도구에서 " +"제외해야 합니다(참고하세요 :ref:`버전 컨트롤 " +"ignore`)." #: ../../dev/virtualenvs.rst:336 msgid "virtualenvwrapper" -msgstr "" +msgstr "virtualenvwrapper" #: ../../dev/virtualenvs.rst:338 msgid "" @@ -424,10 +470,15 @@ msgid "" "much more pleasant. It also places all your virtual environments in one " "place." msgstr "" +"`virtualenvwrapper " +"`_ 는" +"가상 환경에서의 작업을 훨씬 더 즐겁게 해주는 일련의 명령을 제공합니다. " +"또한 모든 가상 환경을 한 곳에 배치합니다." #: ../../dev/virtualenvs.rst:342 ../../dev/virtualenvs.rst:354 msgid "To install (make sure **virtualenv** is already installed):" msgstr "" +"설치하려면(**virtualenv** 가 먼저 설치되어 있는지부터 확인하시고):" #: ../../dev/virtualenvs.rst:350 msgid "" @@ -440,22 +491,24 @@ msgid "" "For Windows, you can use the `virtualenvwrapper-win " "`_." msgstr "" +"윈도우즈에서는 `virtualenvwrapper-win " +"`_ 를 사용할 수 있습니다." #: ../../dev/virtualenvs.rst:360 msgid "In Windows, the default path for WORKON_HOME is %USERPROFILE%\\\\Envs" -msgstr "" +msgstr "Windows에서는 WORKON_HOME 의 기본 path가 %USERPROFILE%\Envs 입니다." #: ../../dev/virtualenvs.rst:365 msgid "Create a virtual environment:" -msgstr "" +msgstr "가상 환경 생성:" #: ../../dev/virtualenvs.rst:371 msgid "This creates the :file:`project_folder` folder inside :file:`~/Envs`." -msgstr "" +msgstr "이건 :file:`~/Envs` 안에 :file:`project_folder` 폴더를 만듭니다." #: ../../dev/virtualenvs.rst:373 msgid "Work on a virtual environment:" -msgstr "" +msgstr "가상환경에서 작업하기:" #: ../../dev/virtualenvs.rst:379 msgid "" @@ -463,6 +516,8 @@ msgid "" "environment, and also a project directory inside ``$WORKON_HOME``, which " "is ``cd``-ed into when you ``workon project_folder``." msgstr "" +"대신 가상환경을 생성하고, ``workon project_folder`` 명령을 하기 전의 위치인 " +"``$WORKON_HOME`` 디렉토리 안에 프로젝트 디렉토리를 생성할 수도 있습니다. " #: ../../dev/virtualenvs.rst:387 msgid "" @@ -470,24 +525,28 @@ msgid "" "really helps when you have a lot of environments and have trouble " "remembering their names." msgstr "" +"**virtualenvwrapper** 는 환경 이름의 tab-자동완성 기능을 지원합니다. " +"이건 아주 많은 환경이 있고 각각의 이름을 기억하는게 힘들 때 아주 도움이 됩니다. " #: ../../dev/virtualenvs.rst:391 msgid "" "``workon`` also deactivates whatever environment you are currently in, so" " you can quickly switch between environments." msgstr "" +"``workon`` 은 현재 어느 디렉토리에서 작업하고 있든 가상환경을 비활성화 할 수 있습니다. " +"덕분에 환경 간 전환을 빠르게 할 수 있습니다." #: ../../dev/virtualenvs.rst:394 msgid "Deactivating is still the same:" -msgstr "" +msgstr "비활성화 하는 방법은 똑같습니다: " #: ../../dev/virtualenvs.rst:400 msgid "To delete:" -msgstr "" +msgstr "삭제하려면: " #: ../../dev/virtualenvs.rst:407 msgid "Other useful commands" -msgstr "" +msgstr "기타 유용한 명령어" #: ../../dev/virtualenvs.rst:410 msgid "``lsvirtualenv``" @@ -495,7 +554,7 @@ msgstr "" #: ../../dev/virtualenvs.rst:410 msgid "List all of the environments." -msgstr "" +msgstr "모든 환경의 목록을 보여준다." #: ../../dev/virtualenvs.rst:414 msgid "``cdvirtualenv``" @@ -506,6 +565,8 @@ msgid "" "Navigate into the directory of the currently activated virtual " "environment, so you can browse its :file:`site-packages`, for example." msgstr "" +"현재 활성화 된 가상 환경의 디렉토리로 이동한다. " +"그리하여 :file:`site-packages` 같은 것들을 확인할 수 있다." #: ../../dev/virtualenvs.rst:417 msgid "``cdsitepackages``" @@ -514,6 +575,7 @@ msgstr "" #: ../../dev/virtualenvs.rst:417 msgid "Like the above, but directly into :file:`site-packages` directory." msgstr "" +"위와 비슷하지만 :file:`site-packages` 디렉토리로 바로 이동한다." #: ../../dev/virtualenvs.rst:420 msgid "``lssitepackages``" @@ -521,13 +583,15 @@ msgstr "" #: ../../dev/virtualenvs.rst:420 msgid "Shows contents of :file:`site-packages` directory." -msgstr "" +msgstr ":file:`site-packages` 디렉토리의 내용물을 보여준다." #: ../../dev/virtualenvs.rst:422 msgid "" "`Full list of virtualenvwrapper commands " "`_." msgstr "" +"`virtualenvwrapper 명령어의 전체 목록 " +"`_." #: ../../dev/virtualenvs.rst:425 msgid "virtualenv-burrito" @@ -539,6 +603,9 @@ msgid "" "burrito>`_, you can have a working virtualenv + virtualenvwrapper " "environment in a single command." msgstr "" +"`virtualenv-burrito `_ 를 사용하면 명령어 한 방으로 " +"virtualenv 와 virtualenvwrapper 를 함께 사용할 수 있다." #: ../../dev/virtualenvs.rst:431 msgid "direnv" @@ -549,14 +616,16 @@ msgid "" "When you ``cd`` into a directory containing a :file:`.env`, `direnv " "`_ automagically activates the environment." msgstr "" +":file:`.env` 가 있는 디렉토리로 ``cd`` 할 때 `direnv " +"`_ 는 자동으로 가상환경을 활성화한다. " #: ../../dev/virtualenvs.rst:435 msgid "Install it on Mac OS X using ``brew``:" -msgstr "" +msgstr "``brew`` 로 Mac OS X에 설치해보자: " #: ../../dev/virtualenvs.rst:441 msgid "On Linux follow the instructions at `direnv.net `_" -msgstr "" +msgstr "리눅스라면 `direnv.net `_ 를 참고하자." #~ msgid "" #~ msgstr "" From 2c22cc2ff2d5dd6c204d57a0cf29cc17bf070213 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 8 Apr 2021 01:50:33 +0000 Subject: [PATCH 063/117] text editor --- docs/locale/ko/LC_MESSAGES/dev/env.mo | Bin 25095 -> 26046 bytes docs/locale/ko/LC_MESSAGES/dev/env.po | 83 ++++++++++++++++++++++---- 2 files changed, 70 insertions(+), 13 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.mo b/docs/locale/ko/LC_MESSAGES/dev/env.mo index 8a23c38ab182456a4c94db159fafac49728c6f65..a8597a898c9a6d46e4bc35ce36d16e429b40a6a7 100644 GIT binary patch delta 5963 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 diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.po b/docs/locale/ko/LC_MESSAGES/dev/env.po index b18b99530..c6ca2f187 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/env.po +++ b/docs/locale/ko/LC_MESSAGES/dev/env.po @@ -14,8 +14,8 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: YoungSeon.Ahn \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,11 +23,11 @@ msgstr "" #: ../../dev/env.rst:2 msgid "Your Development Environment" -msgstr "" +msgstr "너의 개발 환경" #: ../../dev/env.rst:8 msgid "Text Editors" -msgstr "" +msgstr "텍스트 에디터" #: ../../dev/env.rst:10 msgid "" @@ -35,6 +35,8 @@ msgid "" " code; however, using a more powerful editor may make your life a bit " "easier." msgstr "" +"일반적인 텍스트를 편집할 수 있다면 뭐든 파이썬 코드를 작성할 수 있습니다. " +"하지만 더 강력한 에디터를 사용하는 편이 당신의 인생에 도움이 될 것입니다. " #: ../../dev/env.rst:15 msgid "Vim" @@ -49,6 +51,11 @@ msgid "" " values compliant with :pep:`8`. In your home directory, open a file " "called :file:`.vimrc` and add the following lines::" msgstr "" +"Vim은 메뉴나 아이콘 대신 키보드 단축키를 사용하여 편집하는 텍스트 편집기입니다. " +"Vim 편집기가 Python 개발을 돕기 위한 몇 가지 플러그인과 설정이 있습니다. " +"Python에서만 개발할 경우, 시작은 들여쓰기 및 줄 바꿈의 기본 설정을 :pep:`8` 을 " +"준수하는 값으로 설정하는 것입니다. 홈 디렉토리에서 :file:`.vimrc` 라는 파일을 " +"열고 다음 줄을 추가합니다." #: ../../dev/env.rst:32 msgid "" @@ -57,12 +64,17 @@ msgid "" "languages, there is a handy plugin called indent_, which handles " "indentation settings for Python source files." msgstr "" +"이 설정을 사용하면 79자 뒤에 새 줄을 삽입하고 들여쓰기를 탭당 4칸으로 설정합니다. " +"다른 언어에도 Vim을 사용하는 경우 Python 소스 파일에 대한 들여쓰기 설정을 " +"처리하는 들여쓰기 플러그인이 있습니다." #: ../../dev/env.rst:37 msgid "" "There is also a handy syntax plugin called syntax_ featuring some " "improvements over the syntax file included in Vim 6.1." msgstr "" +"또한 Vim 6.1에 포함된 구문 파일에 비해 향상된 몇 가지 기능을 제공하는 " +"syntax_ 라는 편리한 구문 플러그인도 있습니다." #: ../../dev/env.rst:40 msgid "" @@ -73,6 +85,11 @@ msgid "" "you can also utilize some very handy plugins to do these checks from " "within the editor." msgstr "" +"이러한 플러그인은 파이썬에서 개발할 수 있는 기본 환경을 제공합니다. " +"Vim을 최대한 활용하려면 코드에서 구문 오류 및 PEP8 규정 준수를 지속적으로 " +"확인해야 합니다. 다행히 pycodestyle_ 과 Pyflakes_ 가 여러분을 위해 " +"이러한 작업을 지속적으로 해줍니다. Vim이 ``+python`` 으로 컴파일된 경우 " +"아주 유용한 플러그인을 사용하여 편집기에서 이러한 검사를 수행할 수도 있습니다." #: ../../dev/env.rst:46 msgid "" @@ -83,6 +100,11 @@ msgid "" "function whenever you save a file. In order to do this, add the following" " line to your :file:`.vimrc`::" msgstr "" +"PEP8를 확인하거나 Pyflake를 하기 위해서 vim-flake8_ 을 설치할 수 있습니다. " +"이걸로 Vim에서 원하는 모든 핫키나 동작에 ``Flake8`` 기능을 매핑할 수 있습니다. " +"플러그인은 화면 하단에 오류를 표시하고 해당 라인으로 쉽게 이동할 수 있는 " +"기능을 제공합니다. 파일을 저장할 때마다 이 기능을 호출하는 것이 매우 편리합니다. " +"이렇게 하려면 다음 줄을 :file:`.vimrc`:: 에 추가하십시오." #: ../../dev/env.rst:55 msgid "" @@ -91,6 +113,9 @@ msgid "" "configuration to do that which also shows status and warning messages in " "the statusbar would be::" msgstr "" +"syntastic_ 을 이미 사용하고 있는 경우, 개발과 에러 및 경고 확인을 할 때 " +"빠른 수정 창에서 파이플레이크가 돌아가도록 설정할 수 있습니다. " +"상태 표시줄의 상태 및 경고 메시지도 표시하는 예제 구성은 다음과 같습니다:: " #: ../../dev/env.rst:68 msgid "Python-mode" @@ -101,36 +126,40 @@ msgid "" "Python-mode_ is a complex solution for working with Python code in Vim. " "It has:" msgstr "" +"Python-mode_ 는 Vim에서 Python 코드로 작업하기 위한 복잡한 솔루션입니다. " +"그 기능은: " #: ../../dev/env.rst:73 msgid "" "Asynchronous Python code checking (``pylint``, ``pyflakes``, " "``pycodestyle``, ``mccabe``) in any combination" msgstr "" +"비동기 파이썬 코드 체크. ``pylint``, ``pyflakes``, " +"``pycodestyle``, ``mccabe`` 중 무엇을 사용하든 된다." #: ../../dev/env.rst:74 msgid "Code refactoring and autocompletion with Rope" -msgstr "" +msgstr "Rope(https://github.com/python-rope/rope)를 사용하여 코드 리팩토링과 자동 완성 기능" #: ../../dev/env.rst:75 msgid "Fast Python folding" -msgstr "" +msgstr "빠른 파이썬 폴딩" #: ../../dev/env.rst:76 msgid "Virtualenv support" -msgstr "" +msgstr "Virtualenv 지원" #: ../../dev/env.rst:77 msgid "Search through Python documentation and run Python code" -msgstr "" +msgstr "파이썬 문서 검색과 파이썬 코드 실행" #: ../../dev/env.rst:78 msgid "Auto pycodestyle_ error fixes" -msgstr "" +msgstr "pycodestyle_ 자동 에러 수정" #: ../../dev/env.rst:80 msgid "And more." -msgstr "" +msgstr "그리고 더..." #: ../../dev/env.rst:83 msgid "SuperTab" @@ -141,6 +170,8 @@ msgid "" "SuperTab_ is a small Vim plugin that makes code completion more " "convenient by using ```` key or any other customized keys." msgstr "" +"SuperTab_ 은 작은 Vim 플러그인입니다. ```` 키나 다른 커스터마이징 된 키로 " +"코드 자동 완성을 편리하게 해줍니다. " #: ../../dev/env.rst:98 msgid "Emacs" @@ -152,10 +183,13 @@ msgid "" "but it can be some work to wire up correctly. A good start if you're " "already an Emacs user is `Python Programming in Emacs`_ at EmacsWiki." msgstr "" +"Emacs도 다른 강력한 텍스트 편집기이다. 완전히 프로그래밍할 수 있지만(Lisp) " +"올바르게 연결하는 것은 몇 가지 작업이 될 수 있습니다. 이미 Emacs " +"사용자라면 Emacs Wiki에서 `Python Programming in Emacs`_ 를 보세요." #: ../../dev/env.rst:104 msgid "Emacs itself comes with a Python mode." -msgstr "" +msgstr "Emacs는 기본적으로 파이썬 모드가 있습니다." #: ../../dev/env.rst:109 msgid "TextMate" @@ -168,6 +202,10 @@ msgid "" "and GUI, TextMate cherry-picks the best of both worlds to the benefit of " "expert scripters and novice users alike." msgstr "" +"`TextMate `_ 는 " +"Apple의 접근 방식을 텍스트 편집기의 세계로 가져옵니다. Unix의 기초와 " +"GUI를 연결함으로써 TextMate는 전문 스크립터와 초보 사용자 모두에게 이익이 되는 " +"두 세계의 장점을 모두 가져왔습니다." #: ../../dev/env.rst:117 msgid "Sublime Text" @@ -179,6 +217,9 @@ msgid "" "editor for code, markup, and prose. You'll love the slick user interface," " extraordinary features, and amazing performance." msgstr "" +"`Sublime Text `_ 는 코드, 마크업 그리고 작문을 위한 " +"정교한 텍스트 에디터입니다." +"매끄러운 사용자 인터페이스, 뛰어난 기능 및 놀라운 성능을 즐기실 수 있습니다." #: ../../dev/env.rst:123 msgid "" @@ -187,6 +228,10 @@ msgid "" "`some of which `_ allow " "for in-editor PEP8 checking and code \"linting\"." msgstr "" +"Sublime Text는 훌륭한 Python 코드 편집기이며, " +"플러그인 API에 Python을 사용합니다. 또한 다양한 플러그인을 가지고 있으며, " +"`그 중 일부는 `_ " +"편집기 PEP8 검사 및 코드 \"린트\"를 가능하게 해줍니다." #: ../../dev/env.rst:129 msgid "Atom" @@ -198,6 +243,8 @@ msgid "" "century, built on atom-shell, and based on everything we love about our " "favorite editors." msgstr "" +"`Atom `_ 은 21세기의 해킹 가능한 텍스트 에디터입니다. " +"atom-shell 위에 구축되었으며, 우리가 좋아하는 에디터의 기능은 다 가지고 있습니다." #: ../../dev/env.rst:135 msgid "" @@ -207,10 +254,14 @@ msgid "" "`_ combined with `linter-flake8 " "`_." msgstr "" +"아톰은 웹 네이티브(HTML, CSS, JS)로 모듈식 설계와 쉬운 플러그인 개발에 초점을 " +"맞추고 있다. 기본 패키지 제어와 수많은 패키지가 함께 제공됩니다. Python을 개발하려면 " +"`Linter `_와 " +"`_ 을 함께 사용하기를 권장한다." #: ../../dev/env.rst:142 msgid "Python (on Visual Studio Code)" -msgstr "" +msgstr "파이썬 (비주얼 스튜디오 코드에서)" #: ../../dev/env.rst:144 msgid "" @@ -223,10 +274,16 @@ msgid "" "features such as Intellisense (autocompletion), local and remote " "debugging, linting, and the like." msgstr "" +"`Python for Visual Studio " +"`_ " +"는 비주얼 스튜디오 코드의 확장자이다. 이것은 Mac, Windows 및 Linux를 지원하는 " +"무료이고 가볍고 오픈 소스인 코드 편집기입니다. Node.js 및 Python과 같은 오픈 " +"소스 기술을 사용하여 구축되었으며, Intelisense(자동 완성), 로컬 및 원격 디버깅, " +"린트 등과 같은 강력한 기능을 갖추고 있습니다." #: ../../dev/env.rst:148 msgid "MIT licensed." -msgstr "" +msgstr "MIT 라이선스입니다." #: ../../dev/env.rst:151 msgid "IDEs" From edb0624a30cecca0da261c60165236cee55672ad Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Fri, 9 Apr 2021 00:54:27 +0000 Subject: [PATCH 064/117] ide --- docs/locale/ko/LC_MESSAGES/dev/env.mo | Bin 26046 -> 26859 bytes docs/locale/ko/LC_MESSAGES/dev/env.po | 50 ++++++++++++++++++++++++-- 2 files changed, 48 insertions(+), 2 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.mo b/docs/locale/ko/LC_MESSAGES/dev/env.mo index a8597a898c9a6d46e4bc35ce36d16e429b40a6a7..2c80af1fc30e9307a1be6849c9d21f7780b229af 100644 GIT binary patch delta 3760 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 ku{*r#qDi!eZ8Nia%5VD9k1W%`_ 은 IntelliJ IDEA로 " +"잘 알려진 제트브레인에서 만들었습니다. " +"두 IDE는 같은 코드 베이스를 공유하고 있는지라 파이참의 많은 기능은 인텔리제이의 무료 플러그인" +"`Python Plug-In `_ " +"에서 왔습니다. " +"파이참의 버전은 2개가 있습니다. " +"하나는 프로페셔널 에디션(30일 무료 체험)이고 " +"하나는 커뮤니티 에디션(Apache 2.0 License)입니다. 커뮤니티 에디션은 기능이 더 적습니다." #: ../../dev/env.rst:165 msgid "Enthought Canopy" @@ -313,6 +321,9 @@ msgid "" "Python IDE which is focused towards Scientists and Engineers as it " "provides pre installed libraries for data analysis." msgstr "" +"`Enthought Canopy `_ 는 " +"과학자와 엔지니어를 주 사용자로 하는 파이썬 IDE입니다. " +"데이터 분석을 위한 라이브러리들이 미리 설치되어 있습니다. " #: ../../dev/env.rst:171 msgid "Eclipse" @@ -323,6 +334,8 @@ msgid "" "The most popular Eclipse plugin for Python development is Aptana's `PyDev" " `_." msgstr "" +"파이썬 개발을 위한 가장 유명한 플러그인은 Aptana의 `PyDev" +" `_ 입니다." #: ../../dev/env.rst:178 msgid "Komodo IDE" @@ -335,6 +348,10 @@ msgid "" "Linux. `KomodoEdit `_ is the open " "source alternative." msgstr "" +"`Komodo IDE `_ 는 " +"ActiveState에서 개발한 Windows, Mac, Linux에서 다 돌아가는 상용 IDE 입니다. " +"`KomodoEdit `_ 는 이를 대체할 수 있는" +"오픈소스입니다. " #: ../../dev/env.rst:187 msgid "Spyder" @@ -348,12 +365,19 @@ msgid "" "`pylint `_ and `rope `_." msgstr "" +"`Spyder `_ 는 " +"과학용 파이썬 라이브러리(이른바 `SciPy `_) 를 " +"돌리고자 특별히 만들어진 IDE입니다. pyflakes_, " +"`pylint `_ 와 `rope `_ 와 통합환경을 제공합니다. " #: ../../dev/env.rst:195 msgid "" "Spyder is open source (free), offers code completion, syntax " "highlighting, a class and function browser, and object inspection." msgstr "" +"Spyder는 오픈소스(공짜)이고 코드자동완성, 신택스 하이라이팅, 클래스와 함수 브라우져, " +"객체 분석 기능이 있습니다." #: ../../dev/env.rst:200 msgid "WingIDE" @@ -365,12 +389,16 @@ msgid "" "Linux, Windows, and Mac (as an X11 application, which frustrates some Mac" " users)." msgstr "" +"`WingIDE `_ 는 파이썬 전용 IDE입니다. " +"리눅스, 윈도우즈, 맥(아쉽게도 X11 애플리케이션이라 맥 사용자를 환장하게 함)에서 돌아갑니다. " #: ../../dev/env.rst:205 msgid "" "WingIDE offers code completion, syntax highlighting, source browser, " "graphical debugger and support for version control systems." msgstr "" +"WingIDE의 기능에는 코드자동완성, 신택스 하이라이팅, 소스 브라우저, " +"Graphical Debugging, 버전제어시스템 지원" #: ../../dev/env.rst:210 msgid "NINJA-IDE" @@ -384,6 +412,10 @@ msgid "" "and Windows desktop operating systems. Installers for these platforms can" " be downloaded from the website." msgstr "" +"`NINJA-IDE `_ (재귀약어: \"Ninja-IDE Is Not Just Another IDE\" 에서 따왔다) " +"는 크로스 플랫폼 IDE이고, 파이썬 어플리케이션 개발을 위해 특별히 디자인되었으며 " +"리눅스/X11과 Mac OS X 그리고 윈도우즈 데스크탑 OS에서 돌아갑니다. " +"웹사이트에서 각 플랫폼을 위한 인스톨러를 다운로드 받으세요.(역주: 20210409 현재 접속이 안되는데...) " #: ../../dev/env.rst:218 msgid "" @@ -391,6 +423,8 @@ msgid "" "Python and Qt. The source files can be downloaded from `GitHub " "`_." msgstr "" +"NINJA-IDE 는 오픈소스(GPLv3 licence)이고 파이썬과 Qt로 개발되었습니다. " +"소스파일은 `GitHub `_ 에서 다운로드 받을 수 있습니다." #: ../../dev/env.rst:224 msgid "Eric (The Eric Python IDE)" @@ -406,6 +440,11 @@ msgid "" "editor control. Eric is an open source software project (GPLv3 licence) " "with more than ten years of active development." msgstr "" +"`Eric `_ 은 모든 걸 갖춘 파이썬 IDE입니다. " +"소스코드 자동완성, 신택스 하이라이팅, 버전컨트롤시스템 지원, 파이썬3 지원, 웹브라우저와 연동, " +"파이썬 쉘, 통합 디버거, 유연한 플러그인 시스템 기능이 있습니다. " +"Qt GUI 툴킷 위에서 파이선으로 개발되었으며 Scintilla 에디터를 사용합니다. " +"Eric은 오픈소스 소프트웨어 프로젝트((GPLv3 licence)이고 10년 넘게 활발히 개발 중입니다. " #: ../../dev/env.rst:235 msgid "Mu" @@ -417,16 +456,23 @@ msgid "" "Python 3 code locally and can also deploy code to the BBC micro:bit and " "to Adafruit boards running CircuitPython." msgstr "" +"`Mu `_ 는 파이썬 IDE의 미니멀리스트입니다. " +"파이썬3 코드를 로컬에서 돌릴 수 있고 BBC micro:bit(역주: https://microbit.org/)에 " +"코드를 배포할 수 있으며 Adafruit 기판에 CircuitPython을 돌릴 수 있습니다. " +"(역주: 모두 임베디드 환경이다)" #: ../../dev/env.rst:241 msgid "" "Intended for beginners, mu includes a Python 3 interpreter, and is easy " "to install on Windows, OS/X and Linux. It runs well on the Raspberry Pi." msgstr "" +"파이썬 초보자를 위해 만들어졌기 때문에 mu는 기본적으로 파이썬3를 포함하고 있고 " +"Windows, OS/X 그리고 Linux 중 어디에도 쉽게 설치할 수 있습니다. " +"라즈베리파이에서도 잘 돌아갑니다. " #: ../../dev/env.rst:244 msgid "There's an active support community on gitter." -msgstr "" +msgstr "현재 지원 커뮤니티가 활동하고 있습니다." #: ../../dev/env.rst:248 msgid "Interpreter Tools" From b7abd5ed37d50c5cc99694c982d9d092a165dc02 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Tue, 13 Apr 2021 07:05:14 +0000 Subject: [PATCH 065/117] env last half --- docs/locale/ko/LC_MESSAGES/dev/env.mo | Bin 26859 -> 27540 bytes docs/locale/ko/LC_MESSAGES/dev/env.po | 95 +++++++++++++++++++------- 2 files changed, 69 insertions(+), 26 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.mo b/docs/locale/ko/LC_MESSAGES/dev/env.mo index 2c80af1fc30e9307a1be6849c9d21f7780b229af..e6ebe86b4b0f5aeac0ab89bd478fe02893136050 100644 GIT binary patch delta 4971 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 R2`g(NUdY<$;T6}|{{XB4Ps0EJ delta 1004 zcmXZaOGs2v9LMqBo$*oQl%}R=5o!tcvQpF3AQ|v=&FA zmsmtm5NKU{fl(ldR*Py;EoxIii_wZ|k+rDr<+l2q-?``f&;Q#;vf7@RS8!SMlfdJ0pc{xra zH3IEo-7SXuNd?);S@T)%ssgCzt_>j{2=Dy5IO~Z<3#kANsllIWAHUP z4SztV;rQilo`cSdZO3$MMrVCzh{1ja=a8C;E_XYw!W?n~&cw4Ag#&m22hoppL20ff zwcrG2T?Mu9GPYuIr9>~fgU+Y_h0Y83SGX?_n!&(%kcCcx06Gl?u^Vk%g6pcJQ4VUy zW8_1tr1LnATnBZnmb~~JpRw)*CXz2!OJTf)&cWR^?l0=aPVxWmF^FYDaIL#x(>iH{ zg-!Sg^VZX#hfBIaIz^tp$-O)S7+~Mi&C+9x-pUtb-S9T)9obhaRp93x(s%Y{*GZY= z^j-W$a^-I6it@O*d!%nn+{QQxT&Z`zL_b&9xwQ{*Hya1>31;rI+oRgEBXY7A`s|LV zT#p?pNb{HrzAQ6T*lHqT673B|<(8S`4<&~mTnb;kpElOfG1}cf+Icf=>~w#)>xSv^ zm)Sjm`Cii!JKcOL`Ds$(@=eOJaq~Csu<0wiYZBu(nvvxTOcbY$@^E@8|VK{R68o Bx4-}Z diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.po b/docs/locale/ko/LC_MESSAGES/dev/env.po index b4d7a51a4..1614487db 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/env.po +++ b/docs/locale/ko/LC_MESSAGES/dev/env.po @@ -476,11 +476,11 @@ msgstr "현재 지원 커뮤니티가 활동하고 있습니다." #: ../../dev/env.rst:248 msgid "Interpreter Tools" -msgstr "" +msgstr "인터프리터 도구" #: ../../dev/env.rst:252 msgid "Virtual Environments" -msgstr "" +msgstr "가상 환경" #: ../../dev/env.rst:254 msgid "" @@ -489,6 +489,8 @@ msgid "" " project without installing them system wide and thus avoiding potential " "version conflicts." msgstr "" +"가상 환경은 프로젝트의 패키지 디펜던시를 격리할 수 있는 강력한 방법을 제공합니다. " +"특정 파이썬 프로젝트을 시스템 전역에 설치하지 않고 잠재적인 버전 오류를 피할 수 있다는 얘기입니다. " #: ../../dev/env.rst:256 msgid "" @@ -496,10 +498,13 @@ msgid "" "`_ docs." msgstr "" +"가상 환경에 대한 더 많은 정보와 사용을 위해서는: `Virtual Environments " +"`_ 문서를 참조하세요." #: ../../dev/env.rst:261 msgid "pyenv" -msgstr "" +msgstr "pyenv" #: ../../dev/env.rst:263 msgid "" @@ -512,6 +517,13 @@ msgid "" "it will also install PyPy, Anaconda, miniconda, stackless, Jython, and " "IronPython interpreters." msgstr "" +"`pyenv `_ 는 여러 버전의 파이썬 인터프리터를 " +"동시에 설치할 수 있게 해주는 도구입니다. 덕분에 다른 버전의 파이썬을 사용하는 " +"각각의 프로젝트를 관리할 경우 발생하는 문제를 해결할 수 있습니다. " +"예를 들어 Python 3.4를 기본 인터프리터로 사용하면서 다른 한 프로젝트에서는 호환성을 " +"위해 Python 2.7을 쉽게 설치할 수 있습니다." +"pyenv는 CPython 버전 뿐만 아니라 PyPy, Anaconda, miniconda, " +"stackless, Jython 및 IronPython 인터프리터도 설치합니다." #: ../../dev/env.rst:271 msgid "" @@ -523,6 +535,13 @@ msgid "" "Python should be run based on environment variables, ``.python-version`` " "files, and the global default." msgstr "" +"pyenv는 ``shims`` 디렉토리를 파이썬 인터프리터의 fake 버전 " +"(``pip`` 및 ``2to3`` 와 같은 다른 도구 포함)으로 채우는 방식으로 작동합니다. " +"이로서 다른 버전의 Python이 필요한 다른 프로젝트를 다루는 경우 발생하는 문제를 해결합니다." +"시스템이 ``python`` 이라는 프로그램을 찾을 때 먼저 ``shims`` 디렉토리 내부를 " +"살펴보고 이 디렉토리에 들어있는 fake 버전을 사용하여 명령을 pyenv에 전달합니다." +"그런 다음 pyenv는 환경 변수, ``.python-version`` 파일 및 전역 기본값을 " +"기반으로 실행해야하는 Python 버전을 결정합니다." #: ../../dev/env.rst:278 msgid "" @@ -532,10 +551,14 @@ msgid "" " possible to use the existing pyenv tools to switch to different " "environments based on environment variables or ``.python-version`` files." msgstr "" +"pyenv는 가상 환경을 관리하는 도구가 아닙니다. " +"gkwlaks `pyenv-virtualenv `_ 플러그인이 " +"다른 환경의 생성을 자동화해주고, pyenv 도구를 사용하여 " +"환경변수와 ``.python-version`` 파일에 따라 다른 환경으로 전환할 수 있도록 해줍니다." #: ../../dev/env.rst:285 msgid "Other Tools" -msgstr "" +msgstr "다른 도구들" #: ../../dev/env.rst:288 msgid "IDLE" @@ -549,22 +572,26 @@ msgid "" "full-blown development using Python, it is quite helpful to try out small" " Python snippets and experiment with different features in Python." msgstr "" +":ref:`IDLE ` 통합개발환경은 는 파이썬 표준 배포판의 일부입니다. " +"완전히 Python으로 작성되었으며 Tkinter GUI 툴킷을 사용합니다. " +"IDLE은 Python을 사용한 본격적인 개발에는 적합하지 않지만 " +"작은 Python 스니펫을 사용해보고 Python의 다양한 기능을 실험하는 데에 아주 유용합니다." #: ../../dev/env.rst:296 msgid "It provides the following features:" -msgstr "" +msgstr "IDLE의 기능은 다음과 같습니다:" #: ../../dev/env.rst:298 msgid "Python Shell Window (interpreter)" -msgstr "" +msgstr "파이썬 쉘 윈도우(인터프리터)" #: ../../dev/env.rst:299 msgid "Multi window text editor that colorizes Python code" -msgstr "" +msgstr "파이썬 코드의 색깔이 표시되는 멀티 윈도우 텍스트 에디터" #: ../../dev/env.rst:300 msgid "Minimal debugging facility" -msgstr "" +msgstr "최소한의 디버깅 기능" #: ../../dev/env.rst:304 msgid "IPython" @@ -575,34 +602,40 @@ msgid "" "`IPython `_ provides a rich toolkit to help you make" " the most out of using Python interactively. Its main components are:" msgstr "" +"`IPython `_ 은 파이썬을 대화식으로 사용할 수 있도록 " +"도와주는 다양한 도구를 제공합니다. 주요 구성요소는 다음과 같습니다: " #: ../../dev/env.rst:309 msgid "Powerful Python shells (terminal- and Qt-based)" -msgstr "" +msgstr "강력한 파이썬 쉘(터미널 혹은 Qt 기반이야)" #: ../../dev/env.rst:310 msgid "" "A web-based notebook with the same core features but support for rich " "media, text, code, mathematical expressions and inline plots" msgstr "" +"웹 기반 노트북. 기능은 (역주: 쉘과) 동일하지만 rich 미디어, 텍스트, 코드, " +"수학 표현식, 인라인 플롯을 지원합니다." #: ../../dev/env.rst:312 msgid "Support for interactive data visualization and use of GUI toolkits" -msgstr "" +msgstr "대화 형 데이터 시각화 및 GUI 툴킷 사용 지원" #: ../../dev/env.rst:313 msgid "Flexible, embeddable interpreters to load into your own projects" -msgstr "" +msgstr "자작 프로젝트에 로드 할 수있는 유연하고 임베디드 가능한 인터프리터" #: ../../dev/env.rst:314 msgid "Tools for high level and interactive parallel computing" -msgstr "" +msgstr "high 레벨의 대화형 병렬 컴퓨팅을 위한 도구" #: ../../dev/env.rst:320 msgid "" "To download and install IPython with all its optional dependencies for " "the notebook, qtconsole, tests, and other functionalities:" msgstr "" +"노트북, qtconsole, 테스트 및 기타 기능에 대한 모든 선택적 디펜던시와 " +"함께 IPython을 다운로드하고 설치하려면:" #: ../../dev/env.rst:327 msgid "BPython" @@ -614,40 +647,44 @@ msgid "" " to the Python interpreter for Unix-like operating systems. It has the " "following features:" msgstr "" +"`bpython `_ 은 유사 유닉스 운영체제를 위한 " +"파이썬 인터프리터 대체 인터페이스입니다. " +"다음 기능이 있습니다: " #: ../../dev/env.rst:333 msgid "In-line syntax highlighting" -msgstr "" +msgstr "인라인 구문 강조" #: ../../dev/env.rst:334 msgid "Readline-like autocomplete with suggestions displayed as you type" -msgstr "" +msgstr "Readline 처럼 입력할 때 제안이 표시되는 자동 완성" #: ../../dev/env.rst:335 msgid "Expected parameter list for any Python function" -msgstr "" +msgstr "파이썬 함수에 필요한 파라미터 목록 표시" #: ../../dev/env.rst:336 msgid "" "\"Rewind\" function to pop the last line of code from memory and re-" "evaluate" msgstr "" +"\"Rewind\" 기능으로 메모리에서 코드의 마지막 라인을 읽어 재실행" #: ../../dev/env.rst:337 msgid "Send entered code off to a pastebin" -msgstr "" +msgstr "pastebin(역주: 클립보드)에 입력한 코드를 보내기" #: ../../dev/env.rst:338 msgid "Save entered code to a file" -msgstr "" +msgstr "입력한 코드를 파일로 저장" #: ../../dev/env.rst:339 msgid "Auto-indentation" -msgstr "" +msgstr "자동 인덴트" #: ../../dev/env.rst:340 msgid "Python 3 support" -msgstr "" +msgstr "파이썬3 지원" #: ../../dev/env.rst:347 msgid "ptpython" @@ -660,40 +697,46 @@ msgid "" "prompt-toolkit>`_ library. It is considered to be an alternative to " "BPython_. Features include:" msgstr "" +"`ptpython `_ 은 " +"`prompt_toolkit `_ 라이브러리 위의 REPL 빌드입니다. " +"BPython_ 의 대안이 될 수 있습니다. 다음 기능이 있습니다. " #: ../../dev/env.rst:353 msgid "Syntax highlighting" -msgstr "" +msgstr "구문 강조" #: ../../dev/env.rst:354 msgid "Autocompletion" -msgstr "" +msgstr "자동 완성" #: ../../dev/env.rst:355 msgid "Multiline editing" -msgstr "" +msgstr "여러 줄 동시 수정" #: ../../dev/env.rst:356 msgid "Emacs and Vim Modes" -msgstr "" +msgstr "Emacs와 Vim 모드" #: ../../dev/env.rst:357 msgid "Embedding REPL inside of your code" -msgstr "" +msgstr "REPL을 코드에 임베딩 할 수 있다" #: ../../dev/env.rst:358 msgid "Syntax validation" -msgstr "" +msgstr "신택스 유효성 검증" #: ../../dev/env.rst:359 msgid "Tab pages" -msgstr "" +msgstr "탭으로 페이지 나누기" #: ../../dev/env.rst:360 msgid "" "Support for integrating with IPython_'s shell, by installing IPython " "(``pip install ipython``) and running ``ptipython``." msgstr "" +"IPython_ 의 쉘을 통합하여 사용할 수 있다. IPython을 설치(``pip install ipython``)" +"하고 ``ptipython`` 을 실행하면 된다." #~ msgid "" #~ msgstr "" From d17e38d7906b88c6c0b8c80e2170a18a9d2aacb5 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Wed, 14 Apr 2021 04:13:01 +0000 Subject: [PATCH 066/117] client --- .../locale/ko/LC_MESSAGES/scenarios/client.mo | Bin 4341 -> 4617 bytes .../locale/ko/LC_MESSAGES/scenarios/client.po | 26 +++++++++++++++--- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.mo b/docs/locale/ko/LC_MESSAGES/scenarios/client.mo index 645355df0fd2c6f5bdc22332336917620b4c6dff..43fe68833e17981f2a15e7e295c1915a8e07a336 100644 GIT binary patch delta 1986 zcmZuyOK%%h7`;V^HjOBikN~lOi+CkfiNZr{%A#FSRHEjE5M3aW%55XLaY>v)*~}!J zL~dd?4j#voX6(4aAqjHTY3#JNaKu002e5(l-0v<}z?$>j*iIX|NWQr<_j{jn{LdS= z-b$COLs5_ww#)XM#n}!km{FBl}S+EmOAUu9am?4$wB#QSPRtrx>QM9J+$!WP~MTW zVbf|_XFWWqjifx&|CyS1C9ODAbaWvhRgk5bs+#d66%sVRqZSfsq0}S8N40SKCTGG? zt=G7VFmS?3qy1vFZZi0e&Q>LYt4s;)(A^}>Tl;YWn+od^u4-YE%ca5+q+#~jZw8{vDGYI48Axr zIyx5b8xVud2Q;1ey0hC->kS$1l(mPV5zH%TH-X65kK`QK)CM}PCDmP@el1CS(yn9H zwaL8|W?S=71y9v;eFKslUu`>PsLKsixF_KNZ_JOc1Sxb8?S|V)spocd_VE$`DRnmwd{n8FYHjX|!Ou;-zcmnBs&b7AY06cbh*XO! zFbTtv@v7g zMc?o3eH*J!bMbA68nx*tTm+9RMch#qt8LwZ6Qs8-AK8N}+MhxD zj;*KDhTBCytN^nub#6*+ONkH)OMt4b8u3}N&B7L#nplc&p0qH|J delta 193 zcmeBF`KmZ!NqsdV14A$e1A{OF1H*Yv1_l-&{TN7#0O=P%S`aAz7f1t@Fz|CTFr)(c z5\n" -"Language-Team: LANGUAGE \n" +"Last-Translator: YoungSeon.Ahn \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" #: ../../scenarios/client.rst:4 msgid "Network Applications" -msgstr "" +msgstr "네트워크 어플리케이션" #: ../../scenarios/client.rst:11 msgid "HTTP" @@ -35,6 +35,9 @@ msgid "" "distributed, collaborative, hypermedia information systems. HTTP is the " "foundation of data communication for the World Wide Web." msgstr "" +"HTTP(Hypertext Transfer Protocol)는 분산, 협업, 하이퍼미디어 정보 시스템을 " +"위한 애플리케이션 프로토콜입니다." +"HTTP는 월드 와이드 웹을 위한 데이터 통신의 기반입니니다." #: ../../scenarios/client.rst:18 msgid "Requests" @@ -47,6 +50,9 @@ msgid "" "time — and a different web. It requires an enormous amount of work (even " "method overrides) to perform the simplest of tasks." msgstr "" +"파이썬의 표준 urllib2 모듈은 필요한 HTTP의 기능 대부분을 지원하지만 API는 완전히 박살나 있습니다. " +"그것은 다른 시간과 다른 웹을 위해 만들어졌습니다. " +"가장 간단한 작업을 수행하더라도 엄청난 양의 작업(메소드 재정의까지)이 필요합니다." #: ../../scenarios/client.rst:25 msgid "" @@ -56,6 +62,10 @@ msgid "" "and HTTP connection pooling are 100% automatic, powered by urllib3, which" " is embedded within Requests." msgstr "" +"" +"Requests는 Python HTTP에서 모든 작업을 처리하므로 웹 서비스와 매끄럽게 통합할 수 있도록 해줍니다. " +"URL에 쿼리 문자열을 수동으로 추가하거나 POST 데이터를 폼 인코딩 할 필요가 없습니다. " +"Requests에 포함된 urllib3에 의해 구동되는 Keep-alive 및 HTTP 커넥션 풀링은 100% 자동입니다." #: ../../scenarios/client.rst:31 msgid "`Documentation `_" @@ -71,7 +81,7 @@ msgstr "" #: ../../scenarios/client.rst:38 msgid "Distributed Systems" -msgstr "" +msgstr "분산 시스템" #: ../../scenarios/client.rst:42 msgid "ZeroMQ" @@ -85,6 +95,10 @@ msgid "" "middleware, a ØMQ system can run without a dedicated message broker. The " "library is designed to have a familiar socket-style API." msgstr "" +"ØMQ(ZeroMQ, 0MQ, ZMQ로도 씀)는 대규모 분산 환경 어플리케이션이나 " +"동시성 어플리케이션을 위한 고성능 비동기 메시징 라이브러리입니다. " +"메시지큐를 제공하지만 다른 메시징 미들웨어와는 달리 제로엠큐는 메시지 브로커 없이도 " +"동작합니다. 그 라이브러리는 소켓 스타일 API처럼 디자인되어 있습니다. " #: ../../scenarios/client.rst:51 msgid "RabbitMQ" @@ -99,6 +113,10 @@ msgid "" "interface with the broker are available for all major programming " "languages." msgstr "" +"RabbitMQ는 Advanced Message Queuing Protocol (AMQP)를 구현한 오픈소스 메시지 " +"브로커 소프트웨어입니다. 래빗MQ 서버는 얼랭 프로그래밍 언어로 개발되었고 " +"클러스터링과 장애 복구를 위하여 Open Telecom Platform 프레임워크에 기반하고 있습니다. " +"브로커와 인터페이스할 클라이언트 라이브러리는 모든 주요 프로그래밍 언어에 사용할 수 있습니다." #: ../../scenarios/client.rst:59 msgid "`Homepage `_" From f00654f75463c0fff87c423e967c3ef6cac51810 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Tue, 20 Apr 2021 09:23:20 +0000 Subject: [PATCH 067/117] db --- docs/locale/ko/LC_MESSAGES/scenarios/db.mo | Bin 7163 -> 8010 bytes docs/locale/ko/LC_MESSAGES/scenarios/db.po | 66 +++++++++++++++++---- 2 files changed, 56 insertions(+), 10 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.mo b/docs/locale/ko/LC_MESSAGES/scenarios/db.mo index c2b96773fca131bd7b4d80d3271b2071bf79f667..150178e365050ca400c2288d6422c08fe74fcb92 100644 GIT binary patch delta 3412 zcmaJ@-)|IE6uyX}V1*(SH5$Ach$WPjfWe4Hg@A%Ui=v78pe?ZC4`3@`u!+fR+bLPQ zt=-M+wo{y41}!W#n>e&fyM#sJgD)Ch{R@nVbMGYTiw{QQckayWZs|%=dYI|l^W!_; z`Of|O=^vj@{h|#lU~JV=#@=R(S<4t(1p624{jmQAc6l>n-{W}=>`vHUVc&#pTh7=I zumiC4{T}?H^Y6gk4I71B0(%U0G3=+X!?1m@?TFjFg6(FA!QNfT*h_d3gZ&wHriHQJ z@P7CK#tz{5^n;A;g8k_s#*Vdn@%tLu*q1p^xWgycD3`j zI^Jl1nIG8M(axXiIT`7C|M-isPfi_;#XgE0iXAg?X){v36ryQB*tZ5QJ$T|JCzSwq&wahrq39e9|+pXSq(0qS)$4XFo3uEtXl^s zS`DBE%?xr-O*0ZQr*kyM%Uaw^TXG_fZq3QSrxvIKP(o_)t=-Y?t(}{mdZrUROa&wZ zsH*VP{U*SiI}^q~cRrxGvt@CyNb}Nptmov%M>ll$oO(ZY96rY5;NUn)=I&*Tr0FMT z-@Xpw1{Hu%>fgMyMaB^qL;RSlp|#UxE(>v)%x&e2PSyDsEs4=H1O&+r|XnAMswJ2VWLPjtK!J(3vE(PPrJ28~*RKM}< zUAymfrz?2QmFRiFB28;NmR#Pbz^Cev-$L1+fOg2Uh^&YvoJrKGdOS;7MGPaJ)>s7@ zq+sHzE(d3c1#+~E?qSBcm`SLN%UlCBJW~%{<)J*618-soXxeSHPEq%yZ3#UgY-$eJ z%ts2NNlLQ)NyrhF4RZV|RMS!p>Db`4fDR*K}-t;opIV8mEgEl9)_eEJ2 z(loat@PCU4*7D+;B3r1nn0_j_HcXo%n}hc%L9pY?6pEvE0-O&{MccUXRm+Ms9VfaD z9gPy*<(T76Idz+&s{O`|md8}H;GP8LTjHdusE{U9^{;6%;MNb-i!NbK0yvdk`F(U9 zT_n*k3}sa#Z<))w9{S3I+7svo-$SHJCcsTmfbxas1F3YcW<+mBHM-H9&s`zh7+Cj}H7y;-9%TxtdTd^d{L*iVK{!-%=20)HtOt8qR;vDJ~VR)kJwDM4+u;{bJ zMG!Ywz9YIgpW_f_P3BXmU8GDoR<~vA{31UugU>CW9>N(8c<*mgpK~Im*rZ63PpDxX zDl|WqA)9SX|;)oSGQgcsx6OjBfYpyfh5s!$CP$&fOQyHjoo}0xR)q- zeY0~x6BlsFn1|RrpdpwdNs!Yxb75;VYQ!+Q$OJQBb8#ajzyY5S=#`K7*cp6FILwbj zLM)0Uw-l!dAT7L}3ATPn({Lse@IW2%i(U=!=OShO&t=4T^}+RfRY)^M(ugAG%FylT z;?IvimZ5GK=UZ0p^T$(8nc^I(u7Xe3v<3*y!(!WhzGHhEKhU$i>twXec;Vg_&EG;; zMo^O?7G51EYTFj_P9rd2p`eIbCnOkQX4QeK6C8B`3I}mhgL+VYgmrcs-4AV4Ols@| zGz`@V%LUguzB#ff&@KYE_E(ZhCoZNcv_6nbx_kft delta 257 zcmX?Q_uG8Jllp2#1_m)c1_m1j28K!e3=C{Q`aF>41k%@lG#8M50Hh}a>DNHo0!Y^j zFfh0P=^a3NK9K$kq}hS=TtSHbr9c|QUjw8;`nLdSka_!obS{uS38dcxX>%b4cLr`C zLtU7GK>+9wV<24vq+LW97;XT?4~jA{+yT!d6U diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.po b/docs/locale/ko/LC_MESSAGES/scenarios/db.po index ceb1ad22a..5dffff7cf 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/db.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/db.po @@ -14,8 +14,8 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: AHN YOUNG SEON \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" #: ../../scenarios/db.rst:4 msgid "Databases" -msgstr "" +msgstr "데이터베이스" #: ../../scenarios/db.rst:11 msgid "DB-API" @@ -36,6 +36,9 @@ msgid "" " database modules such as `sqlite3`, `psycopg`, and `mysql-python` " "conform to this interface." msgstr "" +"파이썬 데이베이스 API (DB-API)는 파이썬 데이터베이스 접근 모듈을 위한 표준 인터페이스를 정의합니다. " +":pep:`249` 에 문서화가 되어 있습니다. `sqlite3`, `psycopg`, 그리고 `mysql-python` 와 " +"같이 거의 모든 파이썬 데이터베이스 모듈이 이 인터페이스를 따릅니다." #: ../../scenarios/db.rst:18 msgid "" @@ -46,6 +49,12 @@ msgid "" "`__." msgstr "" +"이 모듈이 어떻게 이 인터페이스를 따라 동작하는지 확인하고 싶으시다면 아래 튜토리얼을 확인해보세요. " +"`요것 " +"`__ " +"과 `이것 " +"`__." #: ../../scenarios/db.rst:25 msgid "SQLAlchemy" @@ -58,6 +67,9 @@ msgid "" " but also a generalized API for writing database-agnostic code without " "SQL." msgstr "" +"`SQLAlchemy `_ 는 일반적으로 사용되는 데이터베이스 툴킷입니다. " +"다른 데이터베이스 라이브러리와 달리 ORM 레이어를 제공할 뿐만 아니라 SQL 없이도 데이터베이스와 무관하게 " +"코드를 작성할 수 있도록 일반화 된 API를 제공합니다." #: ../../scenarios/db.rst:38 msgid "Records" @@ -70,10 +82,13 @@ msgid "" "can be used programmatically or exported to a number of useful data " "formats." msgstr "" +"`Records `_ 는 미니멀리스트 SQL 라이브러리입니다. " +"다양한 데이터베이스에 raw SQL 쿼리를 날릴 수 있도록 디자인되었습니다. " +"데이터는 프로그래밍방식으로 사용될 수도 있고 여러 유용한 데이터 포맷응로도 추출할 수 있습니다. " #: ../../scenarios/db.rst:48 msgid "Also included is a command-line tool for exporting SQL data." -msgstr "" +msgstr "SQL 데이터를 추출할 수 있는 커맨드라인 도구를 포함하고 있습니다." #: ../../scenarios/db.rst:53 msgid "PugSQL" @@ -86,16 +101,20 @@ msgid "" "that is philosophically lo-fi, but it still presents a clean interface in" " Python." msgstr "" +"`PugSQL `_ 은 파라미터를 집어넣어 SQL을 직접 작성하기 위한 " +"간단한 파이썬 인터페이스입니다. ORM은 절대 아니지만 파이썬으로 깔끔한 인터페이스를 제공합니다. " #: ../../scenarios/db.rst:66 msgid "Django ORM" -msgstr "" +msgstr "쟝고(Django) ORM" #: ../../scenarios/db.rst:68 msgid "" "The Django ORM is the interface used by `Django " "`_ to provide database access." msgstr "" +"쟝고 ORM은 `Django " +"`_ 가 데이터베이스에 접근하기 위해 사용하는 인터페이스입니다. " #: ../../scenarios/db.rst:71 msgid "" @@ -103,18 +122,21 @@ msgid "" "/#the-model-layer>`_, an abstraction that makes it easier to manipulate " "data in Python." msgstr "" +"이는 `모델 `_ , 즉 파이썬으로 데이터를 조직하기 쉽게 해주는 추상화라는 아이디어에 " +"기반하고 있습니다." #: ../../scenarios/db.rst:75 msgid "The basics:" -msgstr "" +msgstr "기본 지식: " #: ../../scenarios/db.rst:77 msgid "Each model is a Python class that subclasses django.db.models.Model." -msgstr "" +msgstr "각 모델은 django.db.models.Model. 의 하위 클래스인 파이썬 클래스이다." #: ../../scenarios/db.rst:78 msgid "Each attribute of the model represents a database field." -msgstr "" +msgstr "모델의 각 속성은 데이터베이스의 필드를 나타낸다." #: ../../scenarios/db.rst:79 msgid "" @@ -122,10 +144,13 @@ msgid "" "`Making queries " "`__." msgstr "" +"쟝고는 자동으로 만들어진 데이터베이스 엑세스 API를 제공합니다. " +"`Making queries " +"`__ 문서를 확인하세요." #: ../../scenarios/db.rst:85 msgid "peewee" -msgstr "" +msgstr "피위(peewee)" #: ../../scenarios/db.rst:87 msgid "" @@ -140,10 +165,23 @@ msgid "" "`_" " available." msgstr "" +"`peewee `_ 는 파이썬 2.6 이상을 지원하면서 " +"3.2 이상도 지원하는 가벼운 ORM입니다. " +"SQLite, MySQL, 그리고 PostgreSQL을 기본적으로 지원합니다. " +"`model layer " +"`_ 는는 쟝고 ORM과과 비슷합니다다. " +"`SQL 비스무리한 메소드 " +"`_ 로로 데이터를를 쿼리할 수도도 있습니다. " +"SQLite, MySQL, PostgreSQL을 기본 지원하며 " +"`다양한 애드온 " +"`_ 도 " +"사용 가능합니다." #: ../../scenarios/db.rst:100 msgid "PonyORM" -msgstr "" +msgstr "포니ORM(PonyORM)" #: ../../scenarios/db.rst:102 msgid "" @@ -154,6 +192,10 @@ msgid "" " for you. It supports Python 2.6+ and Python 3.3+ and can connect to " "SQLite, MySQL, PostgreSQL, and Oracle." msgstr "" +"`PonyORM `_ 은 데이터베이스 쿼리를 위한 새로운 접근방식을 취하는 ORM입니다. " +"SQL과 비슷한 언어나 불리언 표현식을 작성하는 대신, 파이썬의 제너레이터 구문을 사용합니다. " +"PonyORM 엔티티를 생성할 수 있는는 그래픽 스키마 편집기도 제공합니다. " +"파이썬 2.6 이상과 파이썬 3.3 이상을 지원하고 SQLite, MySQL, PostgreSQL, Oracle에 연결할 수 있습니다." #: ../../scenarios/db.rst:111 msgid "SQLObject" @@ -166,6 +208,10 @@ msgid "" "PostgreSQL, and SQLite and more exotic systems like SAP DB, SyBase, and " "Microsoft SQL Server. It only supports Python 2 from Python 2.6 upwards." msgstr "" +"`SQLObject `_ 도 또다른 ORM입니다. 다양한 " +"데이터베이스를 지원합니다. MySQL, PostgreSQL, SQLite처럼 일반적인 데이터베이스 뿐만 아니라 " +"SAP DB, SyBase, Microsoft SQL Server 같은 기묘한 데이터베이스 시스템도. 지원합니다." +"파이썬 2.6 이상의 파이썬2를 지원합니다다." #~ msgid "" #~ msgstr "" From 52ea61de488a042570755bb02ccb0f50c7f77112 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Thu, 22 Apr 2021 10:04:54 +0000 Subject: [PATCH 068/117] gotchas --- docs/locale/ko/LC_MESSAGES/writing/gotchas.mo | Bin 11183 -> 12277 bytes docs/locale/ko/LC_MESSAGES/writing/gotchas.po | 106 ++++++++++++++---- 2 files changed, 85 insertions(+), 21 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo b/docs/locale/ko/LC_MESSAGES/writing/gotchas.mo index b2d4cd7fe5595df122b48d62bd665b0e9cbc2eb9..0ac757a4a365f37d5e2378ebed833ae5e3d8488d 100644 GIT binary patch literal 12277 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 z zSE^gM^o6OgvZ(8_g37`S#6+Y4MvmEmV_skzy*D1cxgyz`S*?9QS35QZwC= zfk4%P>E57|(WNR6junA4RB&|rtj?*1@$3WXcr3w{`suYa{|{+nJfL>BK`^Yh4@3yZ z)Xi`J17rXQlNbO5~sEWMUo*1wavnZVZK%oDwZoS4H1@@Fo1|f{<@V`3@5%3Ul$Ug+FfMkO>ipK;=aeA4QMs!p+E14xEc=3D>z5u@UW!8ozrQJ;~3cba$sIs9y zZPh7oiz62t0B)0hW%e5vJESM*ku+rn-LBmqjjDekU`!_-)Cg|b2%op6pk#TcILTJI z-PovWV>oeQnWV^LYvhPuDMKRyf(G~^th`2KYHaCect}zpky)vqoes}e4Se857!#;p zAZTS!r=#(A%%dLWZ?1^{l=+o%0&@&*6KkSk!J5_c1URdd{8CD~lk5^mxOe&RT0 zTBH&l;VO=`N~2i8GJaqO7TTnGyu^LHM=vh4OJU4m6d&*a>)gs~lEsBvdd6=w@yR3o zR1a|5fp(v?jb3C1o#8G%Vt@ei{LU3^bV^w~#vN?vk_`HXc*Fj^Te`(k4?XHr{oORa1NbV!0G@e=*K%GtlqGi^cRCXRNMDIK%}2A)HAq;j)BUHHQwY3&%|QB ogb_D=K{IYdV-rRwG;Jo6#fZ~m%`O)gon_nb;80EF)q39e2Rn8@Z~y=R diff --git a/docs/locale/ko/LC_MESSAGES/writing/gotchas.po b/docs/locale/ko/LC_MESSAGES/writing/gotchas.po index 803d6b9fd..f9cdb6b7a 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/gotchas.po +++ b/docs/locale/ko/LC_MESSAGES/writing/gotchas.po @@ -14,8 +14,8 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: AHN YOUNGSEON \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" #: ../../writing/gotchas.rst:5 msgid "Common Gotchas" -msgstr "" +msgstr "자주 하는 실수" #: ../../writing/gotchas.rst:9 msgid "" @@ -31,6 +31,8 @@ msgid "" " avoids surprises. However, there are a few cases that can be confusing " "for newcomers." msgstr "" +"대부분의 경우에서 파이썬의 목표는 깔끔하고 일관적이라 깜짝 놀랄 일이 일어나지 않는 언어를 목표로 합니다. " +"하지만 초보자에게 혼란을 일으킬 수 있는 몇 가지 케이스가 있습니다. " #: ../../writing/gotchas.rst:13 msgid "" @@ -40,40 +42,50 @@ msgid "" "strange at first glance, but are generally sensible, once you're aware of" " the underlying cause for the surprise." msgstr "" +"어떤 것들은 의도된 바입니다. 하지만 놀랄 수도 있습니다. " +"어떤 것들은 필시 언어의 암적인 부분입니다. " +"다음은 언뜻 보기에는 이상해 보일 수 있지만 " +"그 깜짝 놀랄만한 원인을 알고 나면 합리적이라 생각할 수도 있는 기묘한 동작들의 모음입니다." #: ../../writing/gotchas.rst:25 msgid "Mutable Default Arguments" -msgstr "" +msgstr "가변 디폴트 전달인자(Mutable Default Arguments)" #: ../../writing/gotchas.rst:27 msgid "" "Seemingly the *most* common surprise new Python programmers encounter is " "Python's treatment of mutable default arguments in function definitions." msgstr "" +"파이썬 초보자가 보기에 *가장* 놀랄만한 것은 파이썬의 함수 선언에서의 " +"가변 디폴트 전달인자(Arguments)입니다. " #: ../../writing/gotchas.rst:31 ../../writing/gotchas.rst:105 msgid "What You Wrote" -msgstr "" +msgstr "이렇게 작성하면" #: ../../writing/gotchas.rst:40 ../../writing/gotchas.rst:113 msgid "What You Might Have Expected to Happen" -msgstr "" +msgstr "요렇게 동작하기를 기대할텐데" #: ../../writing/gotchas.rst:50 msgid "" "A new list is created each time the function is called if a second " "argument isn't provided, so that the output is::" msgstr "" +"두 번째 전달인자가 없다면 함수가 호출될 때마다 매번 새 리스트를 만들테니 " +"그 결과는 이럴거라 생각하지만::" #: ../../writing/gotchas.rst:57 ../../writing/gotchas.rst:130 msgid "What Actually Happens" -msgstr "" +msgstr "실제로는" #: ../../writing/gotchas.rst:64 msgid "" "A new list is created *once* when the function is defined, and the same " "list is used in each successive call." msgstr "" +"새 리스트는 함수를 정의할 때 *한번만* 만들어지고 " +"함수가 호출될 때마다 같은 리스트를 계속 사용합니다." #: ../../writing/gotchas.rst:67 msgid "" @@ -83,10 +95,14 @@ msgid "" "*will* and have mutated that object for all future calls to the function " "as well." msgstr "" +"파이썬의 디폴트 전달인자는 함수가 정의될 때 *한번만* 평가됩니다. " +"(루비처럼) 함수가 실행될 때마다 평가되는 게 아닙니다." +"이 말인즉 함수에서 디폴트 전달인자를 변경하면 그 함수가 실행될 때마다 " +"*앞으로* 그 객체를 계속 수정한다는 것입니다." #: ../../writing/gotchas.rst:73 ../../writing/gotchas.rst:169 msgid "What You Should Do Instead" -msgstr "" +msgstr "대신 이렇게 하세요" #: ../../writing/gotchas.rst:75 msgid "" @@ -94,14 +110,16 @@ msgid "" "arg to signal that no argument was provided (:py:data:`None` is often a " "good choice)." msgstr "" +"디폴트 전달인자가 없다는 표지를 만들어 함수가 호출될 때마다 매번 새 객체를 생성하도로 하세요." +"(:py:data:`None` 이 좋을겁니다)." #: ../../writing/gotchas.rst:86 msgid "Do not forget, you are passing a *list* object as the second argument." -msgstr "" +msgstr "*리스트* 객체를 두번째 전달인자로 넣는 걸 잊지 마세요." #: ../../writing/gotchas.rst:89 ../../writing/gotchas.rst:192 msgid "When the Gotcha Isn't a Gotcha" -msgstr "" +msgstr "실수가 실수가 아닌 때" #: ../../writing/gotchas.rst:91 msgid "" @@ -109,26 +127,32 @@ msgid "" "behavior to maintain state between calls of a function. This is often " "done when writing a caching function." msgstr "" +"가끔은 함수를 호출할 때마다 그 상태를 유지하기 위하여 " +"특별히 위 동작을 \"이용\" (의도된 것입니다, 라 읽어요) 할 수도 있습니다. " #: ../../writing/gotchas.rst:98 msgid "Late Binding Closures" -msgstr "" +msgstr "늦은 바인딩 클로져(Late Binding Closure)" #: ../../writing/gotchas.rst:100 msgid "" "Another common source of confusion is the way Python binds its variables " "in closures (or in the surrounding global scope)." msgstr "" +"또다른 혼란의 근원은 파이썬이 클로져(또는 클로져를 둘러싸는 글로벌 스코프)에서 " +"그 변수를 바인딩하는 방법입니다." #: ../../writing/gotchas.rst:120 msgid "" "A list containing five functions that each have their own closed-over " "``i`` variable that multiplies their argument, producing::" msgstr "" +"리스트는 각각 ``i`` 변수를 독립적으로 가지는 5개의 함수를 구성요소로 가지며 " +"인자를 곱해서 이런 결과를 낼거라 생각하지만" #: ../../writing/gotchas.rst:140 msgid "Five functions are created; instead all of them just multiply ``x`` by 4." -msgstr "" +msgstr "5개의 함수가 만들어졌습니다. 그리고 모든 함수는 그저 ``x`` 를 4로 곱합니다." #: ../../writing/gotchas.rst:142 msgid "" @@ -136,6 +160,8 @@ msgid "" "variables used in closures are looked up at the time the inner function " "is called." msgstr "" +"파이썬의 클로저는 *늦은 바인딩* 을 합니다. " +"그 말인즉 클로저 안에서 사용되는 변수값은 안쪽 함수가 호출될 때 비로소 정해진다는 것입니다. " #: ../../writing/gotchas.rst:146 msgid "" @@ -143,6 +169,9 @@ msgid "" "``i`` is looked up in the surrounding scope at call time. By then, the " "loop has completed and ``i`` is left with its final value of 4." msgstr "" +"여기서 리턴된 함수는 *무엇이든* 호출될 때마다 그 호출 시점에서 바깥 스코프의 ``i`` " +"값을 조회합니다. " +"그리하여 반복문이 끝나고 ``i`` 는 반복문에서의 마지막 값인 4가 되는 것입니다." #: ../../writing/gotchas.rst:150 msgid "" @@ -152,6 +181,11 @@ msgid "" "expression are in no way special, and in fact the same exact behavior is " "exhibited by just using an ordinary ``def``:" msgstr "" +"이 문제에 대해 특히 끔찍한 일은 이것이 파이썬의 :ref:`lambdas " +"`와 관련이 있다는 " +"잘못된 정보가 널리 퍼져있다는 것입니다." +"``람다`` 표현식으로 만들어진 함수라고 특별한 게 아닙니다. " +"사실 아래와 같은 일반적인 ``def`` 와 똑같이 동작합니다:" #: ../../writing/gotchas.rst:171 msgid "" @@ -160,10 +194,15 @@ msgid "" "functions (see :ref:`default_args`), you can create a closure that binds " "immediately to its arguments by using a default arg like so:" msgstr "" +"가장 많이 쓰이는 해결책은 필시 약간의 해킹입니다. " +"디폴트 전달인자가 함수에서 어떻게 평가되는지에 대하여 위에서 소개한 " +"파이썬의 동작(see :ref:`default_args`)을 응용하면 됩니다. " +"다음과 같이 디폴트 전달인자를 사용해서 전달인자에 즉시 바인딩 되는 " +"클로져를 만들 수 있습니다. " #: ../../writing/gotchas.rst:181 msgid "Alternatively, you can use the functools.partial function:" -msgstr "" +msgstr "이 방법 대신 functools.partial 함수를 사용해도 됩니다." #: ../../writing/gotchas.rst:194 msgid "" @@ -171,10 +210,13 @@ msgid "" " in lots of situations. Looping to create unique functions is " "unfortunately a case where they can cause hiccups." msgstr "" +"가끔은 일부러 클로져를 이런 방식으로 사용하고 싶을 때도 있습니다. " +"늦은 바인딩이 도움되는 경우가 많습니다. " +"반복문을 돌려서 유니크한 함수를 만드는 것은 불운한 딸꾹질을 일으킬 수 있습니다." #: ../../writing/gotchas.rst:201 msgid "Bytecode (.pyc) Files Everywhere!" -msgstr "" +msgstr "바이트코드 (.pyc) 파일로 가득찼어!" #: ../../writing/gotchas.rst:203 msgid "" @@ -182,12 +224,16 @@ msgid "" " will automatically write a bytecode version of that file to disk, e.g. " "``module.pyc``." msgstr "" +"기보적으로 파일에서 파이썬 코드를 실행하면 파이썬 인터프리터는 " +"자동적으로 파일의 바이트코드 버전을 만들어서 디스크에 쓸 겁니다(예를 들면 " +"``module.pyc``)." #: ../../writing/gotchas.rst:207 msgid "" "These ``.pyc`` files should not be checked into your source code " "repositories." msgstr "" +"``.pyc`` 파일이 소스코드 저장소에 들어가면 안됩니다." #: ../../writing/gotchas.rst:209 msgid "" @@ -195,20 +241,25 @@ msgid "" "Without these bytecode files, Python would re-generate the bytecode every" " time the file is loaded." msgstr "" +"이론상으로 이 동작은 성능상의 이유 때문에 늘 켜져 있습니다. " +"이러한 바이트코드 파일이 없다면 파이썬은 그 파일을 실행할 때마다 " +"바이트코드를 다시 생성할 것입니다." #: ../../writing/gotchas.rst:215 msgid "Disabling Bytecode (.pyc) Files" -msgstr "" +msgstr "바이트코드 (.pyc) 파일을 만들지 않는 설정하기" #: ../../writing/gotchas.rst:217 msgid "" "Luckily, the process of generating the bytecode is extremely fast, and " "isn't something you need to worry about while developing your code." msgstr "" +"다행히 바이트코드를 생성하는 프로세스는 아주 빠릅니다. " +"그러니 개발하는 동안 바이트코드 생성하는 시간이 오래걸릴까봐 걱정할 필요가 없습니다." #: ../../writing/gotchas.rst:220 msgid "Those files are annoying, so let's get rid of them!" -msgstr "" +msgstr "이 귀찮은 파일들을 다 지워버립시다!" #: ../../writing/gotchas.rst:226 msgid "" @@ -216,28 +267,32 @@ msgid "" "will no longer write these files to disk, and your development " "environment will remain nice and clean." msgstr "" +"환경변수에 ``$PYTHONDONTWRITEBYTECODE`` 이라 지정해놓으면 파이썬은 " +"더이상 이 파일들을 디스크에 쓰지 않습니다. 그리고 개발환경은 깨끗해집니다." #: ../../writing/gotchas.rst:230 msgid "I recommend setting this environment variable in your ``~/.profile``." -msgstr "" +msgstr "이 환경변수를 ``~/.profile`` 에 세팅하기를 추천드립니다." #: ../../writing/gotchas.rst:233 msgid "Removing Bytecode (.pyc) Files" -msgstr "" +msgstr "Bytecode (.pyc) 파일 삭제하기" #: ../../writing/gotchas.rst:235 msgid "Here's nice trick for removing all of these files, if they already exist::" -msgstr "" +msgstr "이미 이 파일들이 존재한다면 한꺼번에 몽땅 삭제하는 멋진 방법이 있습니다." #: ../../writing/gotchas.rst:239 msgid "" "Run that from the root directory of your project, and all ``.pyc`` files " "will suddenly vanish. Much better." msgstr "" +"프로젝트의 최상위 디렉토리에서 위 명령어를 실행하면 모든 ``.pyc`` 파일이 사라집니다. " +"한결 낫구만." #: ../../writing/gotchas.rst:245 msgid "Version Control Ignores" -msgstr "" +msgstr "버전 컨트롤에서 무시하기" #: ../../writing/gotchas.rst:247 msgid "" @@ -246,6 +301,10 @@ msgid "" " Popular version control systems have the ability to use wildcards " "defined in a file to apply special rules." msgstr "" +"그래도 성능 상의 이유 때문에 ``.pyc`` 파일이 필요하다면 " +"버전 컨트롤 저장소의 ignore 파일에 추가해도 됩니다. " +"대부분의 버전 컨트롤 시스템이 ignore 파일에서 와일드카드를 사용하는 특수 " +"규칙을 적용할 수 있습니다. " #: ../../writing/gotchas.rst:252 msgid "" @@ -253,10 +312,13 @@ msgid "" "the repository. Git_ uses ``.gitignore`` while Mercurial_ uses " "``.hgignore``." msgstr "" +"ignore 파일이 이 규칙과 맞아떨어지는 파일들을 저장소에 들어가지 않도록 해줍니다. " +"Git_ 은 ``.gitignore`` 을 사용하고, " +"Mercurial_ 은 ``.hgignore`` 을 사용합니다." #: ../../writing/gotchas.rst:258 msgid "At the minimum your ignore files should look like this." -msgstr "" +msgstr "ignore 파일은 최소 이런 모양일 겁니다." #: ../../writing/gotchas.rst:266 msgid "" @@ -264,6 +326,8 @@ msgid "" "needs. The next time you commit to the repository, these files will not " "be included." msgstr "" +"필요에 따라 더 많은 파일과 디렉토리를 포함 할 수 있습니다. " +"다음에 저장소에 커밋 할 때 이러한 파일은 포함되지 않습니다." #~ msgid "" #~ msgstr "" From 7c26a038662a0027a1daa1668fe001ab4e62fc4a Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Fri, 23 Apr 2021 22:35:56 +0000 Subject: [PATCH 069/117] Choosing a License --- docs/locale/ko/LC_MESSAGES/writing/license.mo | Bin 3919 -> 4127 bytes docs/locale/ko/LC_MESSAGES/writing/license.po | 31 ++++++++++++++---- 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/license.mo b/docs/locale/ko/LC_MESSAGES/writing/license.mo index 2444e8605374bbfe2fd06a7fb4bcaf5ca0eaebc8..6ce0bbb0a2453d2b5d34e4cb68cae78d5f1bd580 100644 GIT binary patch delta 1845 zcmaJ>U2ofD6n^)?*ca@ADX|RS`G*3cttyf#-egx=saL#82$kKIb{ldCvK3 zc%0)nolz}${2g)1Y<7&XMm4^H-X21ubyP=dElGCBfw9APXRB+_+|Wj4mgSD z*MLWXTR?mL$P?OCsuE9gw<78Hm z!3?_I`2Kw*C-P-#WD%GPD;wGl586)P8!=Tf>SA+Ah5$#MB*`cY<$Ge;1nUfE6F26r zUcbiDWpPv&-gZGG=(pMACsXqG!+CXmon4rHk0D-|>kX9&DjdRau~Ou;?T1Si$chIo zPW2T~u0AIgQ5Vi~h0xxJ(wBA)kDaG#JuI7$1A=BGL(%w&+$_J6J{U?>df~`xBTBHC zXQEG1Sn2esb9!i5vQ>qa%!^VWYg7{_$B=5Ji)P`PfgY+dhFhap@03N!Q8~>j+9#XT z$a1mySk@MFECsSVC_tS%T#ss^b~ zZT{DYR9i|K3Rg)NdhR7@F1I>VWm>hWOdtwvF76t%mQ_A!uc2$4mLJOe;C3Y~QS1vS zS!x}9QHR;G(v*ql8LnwmXu=$1^l7y`s%aT^P=uh{gGnKR@KlC$0vS*XZ3EvX9?>#f z{N4|GTagZmvl>A?nn6`j(vW>sqhUfvWl&Uuv4kvW;$Dk@o)i9T{=5FEqQsM;Xjq(V zLu%{}c<{)f?O$~%m}<3;GYeLijsO8kQMn5e-tWt)7Bx$h>T)_FGo<~fyo(NCJ>>S2 zrd5e$mop){J*uro+URP2#pWH^2bCI|V7sYUfezG#VITPLCggmJvy>0*ExNrRH;nkr zf++FgIV-x^ptBQn2eBkPGVEAl%bE$IV%?Qy7kca-%s0WMa?7m1PpS2I7HeaiPvJ_P zsvAVY?N!PS53RCAypp%%eC{n*rMI+g qs+7Gsh&TCv7xeLk&&K(?v+s}di5r^Sn|p;tUj}|Q-ot4b#@IgsEe}ip delta 233 zcmXZWKMMf?7zXg?{5j`vbPT5Jl2OP;1{bH)-3?^4N*QjlpxmM?O5F#bl$6blz5@9e zzJSf*QKsMXzV-IJd;O{H?yH3WoMS)^Krs$vX`P;^O-1^qD*ezfRb(Ja)xUZA+iSE< z3p7H\n" -"Language-Team: LANGUAGE \n" +"Last-Translator: AHN YOUNGSEON \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" #: ../../writing/license.rst:5 msgid "Choosing a License" -msgstr "" +msgstr "라이선스 선택하기" #: ../../writing/license.rst:9 msgid "" @@ -33,16 +33,22 @@ msgid "" " tell them what rules to play by. Choosing a license is complicated, so " "here are some pointers:" msgstr "" +"소스코드를 공개하려면 라이선스가 *필요합니다*. 미국에서는 라이선스를 정하지 않으면 " +"사용자가 다운로드, 수정, 제품 배포를 할 수 없습니다. " +"뿐만 아니라 규칙을 정해 알리지 않는 한 다른 사람들이 코드에 기여할 수도 없습니다." +"라이선스 선택은 복잡합니다. 몇 가지 지침을 알려드릴게요: " #: ../../writing/license.rst:14 msgid "" "Open source. There are plenty of `open source licenses " "`_ available to choose from." msgstr "" +"오픈소스. 수많은 `오픈소스 라이선스 `_ " +"를 선택할 수 있습니다." #: ../../writing/license.rst:18 msgid "In general, these licenses tend to fall into one of two categories:" -msgstr "" +msgstr "보통 라이선스는 이 두 카테고리 중 하나에 속합니다:" #: ../../writing/license.rst:20 msgid "" @@ -50,6 +56,8 @@ msgid "" " they please (these are the more permissive open source licenses such as " "the MIT, BSD, and Apache)" msgstr "" +"기쁜 마음으로 사용자가 이 소프트웨어를 자유롭게 사용할 수 있도록 하는 데 보다 중점을 " +"둔 라이선스(MIT, BSD, Apache처럼 보다 관대한 라이선스)" #: ../../writing/license.rst:24 msgid "" @@ -58,6 +66,8 @@ msgid "" "free (these are the less permissive free software licenses such as the " "GPL and LGPL)" msgstr "" +"코드를 항상 무료로 사용(변경과 배포 포함)할 수 있도록 하는 데 중점을 둔 라이선스" +"(GPL, LGPL처럼 덜 허용적인 자유 소프트웨어 라이선스)" #: ../../writing/license.rst:29 msgid "" @@ -65,22 +75,28 @@ msgid "" "someone to add code to the software and distribute it without also " "including the source code for their changes." msgstr "" +"후자는 소프트웨어에 코드를 수정하지 못 하게 하고, 수정한 소스코드를 포함하지 " +"않으면 배포를 할 수 없다는 점에서 덜 허용적인 라이선스입니다. " #: ../../writing/license.rst:33 msgid "" "To help you choose one for your project, there's a `license chooser " "`_; **use it**." msgstr "" +"프로젝트의 라이선스를 선택하는 데 도움을 받고 싶다면 " +"`라이선스 선택기 " +"`_ 가 있습니다. **써보세요!**." #: ../../writing/license.rst:36 msgid "**More Permissive**" -msgstr "" +msgstr "**보다 자유로운 라이선스**" #: ../../writing/license.rst:38 msgid "" "PSFL (Python Software Foundation License) -- for contributing to Python " "itself" msgstr "" +"PSFL (Python Software Foundation License) -- 파이썬에 기여하기 위한 라이선스" #: ../../writing/license.rst:39 msgid "MIT / BSD / ISC" @@ -104,7 +120,7 @@ msgstr "" #: ../../writing/license.rst:47 msgid "**Less Permissive:**" -msgstr "" +msgstr "**덜 허용적인 라이선스**" #: ../../writing/license.rst:49 msgid "LGPL" @@ -128,6 +144,9 @@ msgid "" "and must do using a particular software can be found at `tl;drLegal " "`_." msgstr "" +"`tl;drLegal `_ 에서 " +"특정 소프트웨어를 사용하여 무엇을 할 수 있고, 할 수 없는지에 대한 개괄적인 설명을 " +"보실 수 있습니다. " #~ msgid "" #~ "Your source publication *needs* a " From 7a4ab5678f04e2a10fc671813dea1ff69698d3e0 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Mon, 26 Apr 2021 07:49:04 +0000 Subject: [PATCH 070/117] cli --- docs/locale/ko/LC_MESSAGES/scenarios/cli.mo | Bin 7053 -> 7862 bytes docs/locale/ko/LC_MESSAGES/scenarios/cli.po | 70 +++++++++++++++++--- 2 files changed, 60 insertions(+), 10 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo b/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo index ecbdcc99260969f7ff8ebad02aa9a57af683088d..dc6d0f57c66d13f819cae948937805e42aafdc7d 100644 GIT binary patch delta 3622 zcma)9OK%%h6rL89QfSLV6;K}KmKKqyRRRkhLalg&r>NRcT2L1VM`=m|C9awjiItsZ zk~*V`0nz1_pr*?`f+<1~YZ6Y>Zz;8fe!*1@q3nW&s;X8LcW9K2YtLxbJan5(X z?>i^S*A@<@?nLwrn)d59O?y<+w09rYGmPXU=uS<06Kl)U+Kbu=Z0LPP z)BeNy8`h&(?>wt%39L`-@&e26s(iiSpRK#!{_rq6apd^n4?cbG$YFNi`@WWr?%ub; z=lV~F!{4-YhQBqw+rDe#$489u?RMnVmX{vXMBL)DrW~y{wRL^l)!W~!$pMF7z24Mz zx~KD-+FvD^*6E8=r*5X6uBY)`H&bf5#V#i(8e7q zNQNy;n6ZXE_ZFhaF7dJ{>;YjdQB=rIj9-))M3JqET#C;uF}l>Aam$zdJ>@AeI`794 zk%WcD|TP=HlnSc(NS-hGE;@OWt=TV~l$S%QiCPK$oqj_QJV$sA6bd)!~ zq0z?da#Q>1j!v*4ksuV4C8j3^2Cs^I6fll4D#qvxAY<}Uk}pKn&xHKX zat!K0`eQo61{0}R@={C`Vocc42)+>$!*o!@Z84mrgKpX4Wsu`?+MO>Ehh^qE-60B5 zF_j`VQ?7G^4LAhqR(M*rm?+b}*|JAkB?G#NPe)e(6=A#(!|OnmXhl+J1bQL`UI8W_ zC7y`7H!T3M&Q7J{83#zXiwT4p(A*ca7E;c_4s`eTpLwIT^<=oS&uHGX$K${%60Hy= za`!MH{HkRJ7JC4%jJB@bzOMdrXZpk8(|t-?6KVJZoJ)?C$RzN&(HkOS0w{a>xs~!f z4`NxcAV`KIyl@k$^UEv;;W?8Tkwdjn65Dbs^NprO6j+HO0UiqVeb*ZbF=AaP^i@wk zK8rb%UjYdt@jO@yUjoBm0*i_+g#a-@O+%|D`+PJdm5yg$=B37Zvn*P~9TW9*$~F43UyicOE#E=K%32Qh$=5C~owthLcP+d8(qp*$pD5bnx~IY$L) z>(T_O{vbe#05Y{{1Ml#$NxvEa(Q5MJwCCV zCV2x5YJ71hVq}>x;OR8P;x5)2#eNd6m_~0<`*95+KnhijvLU_*4Lnp6KR|-_=zHyl zYEP5xVREoXWV{SDAOm`?9)=uDi9raM+7pQ4cYm_0cRKpIo2YeTESm-E;8rsr*@)Rp z^%Gez&DLL#lNh^DpmUPB;lCf+^ZN0lhiYzHOAwY$Ef@8mirGLG zuG`qya2ql-4s2zL*Az@8=~LEwCCHDw`Z9WspCuGdeSunCVF0X9vK@><#tLh%lguGW z%-Se(oY<@y;JWPZtdG+aYheIBp;`&)S0!B|F7+$C$bAIu-j;FIzvE>sMAJi$(YxhwqxI>hdR8foeR%9xJEQ+> wlsL)aRktTdI#CE;ZVCo+8L>!gt#wDTmpKR1na1NY7@%>s2~$e=4E|gCA6K281ONa4 delta 225 zcmdmH+iO1INPRUU1H*n^1_m|;1_o<>1_o9j?F6MgfV3o#?+2te1Jz{!X%-+~Mv#Gl z8%QexX?-BA3#8kC^07dA5|Dl(#K7PT6fYNHU?>36yMZ(d69a>eC<8+yP~K3Sfq@rD zZeTfkzZXTY^NhcTE30E*TkD*ylh diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po index 6143edc86..40ee93faa 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/cli.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/cli.po @@ -14,8 +14,8 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"Last-Translator: AHN YOUNGSEON \n" +"Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -23,7 +23,7 @@ msgstr "" #: ../../scenarios/cli.rst:4 msgid "Command-line Applications" -msgstr "" +msgstr "커맨드라인 어플리케이션" #: ../../scenarios/cli.rst:8 msgid "" @@ -35,40 +35,57 @@ msgid "" "to as parameters or sub-commands, as well as options, often referred to " "as flags or switches." msgstr "" +"커맨드라인 어플리케이션은 콘솔 어플리케이션 " +"`_ 이라고도 합니다. " +"커맨드라인 어플리케이션은 텍스트 인터페이스로 사용하도록 설계된 컴퓨터 프로그램입니다. " +"`쉘 " +"`_ 이 그 예입니다. " +"커맨드라인 어플리케이션은 일반적으로 다양한 인자를 입력값으로 받습니다. " +"파라미터로 받기도 하고 서브커맨드, 옵션, 플래그, 스위치로도 받습니다." #: ../../scenarios/cli.rst:15 msgid "Some popular command-line applications include:" -msgstr "" +msgstr "유명한 커맨드라인 어플리케이션을 모아봤습니다:" #: ../../scenarios/cli.rst:17 msgid "" "`grep `_ - A plain-text data search " "utility" msgstr "" +"`grep `_ - " +"평문 데이터 검색 유틸리티" #: ../../scenarios/cli.rst:18 msgid "`curl `_ - A tool for data transfer with URL syntax" msgstr "" +"`curl `_ - " +"URL 구문으로 데이터를 전달하기 위한 도구" #: ../../scenarios/cli.rst:19 msgid "" "`httpie `_ - A command-line HTTP" " client, a user-friendly cURL replacement" msgstr "" +"`httpie `_ - " +"커맨드라인 HTTP 클라이언트로서 cURL보다 사용자 친화적인 대체품" #: ../../scenarios/cli.rst:21 msgid "`Git `_ - A distributed version control system" msgstr "" +"`Git `_ - " +"분ㄴ산 버전 컨트롤 시스템" #: ../../scenarios/cli.rst:22 msgid "" "`Mercurial `_ - A distributed version " "control system primarily written in Python" msgstr "" +"`Mercurial `_ - " +"주로 파이썬으로 작성된 분산 버전 컨트롤 시스템" #: ../../scenarios/cli.rst:28 msgid "Click" -msgstr "" +msgstr "클릭(Click)" #: ../../scenarios/cli.rst:30 msgid "" @@ -77,10 +94,14 @@ msgid "" "as possible. This “Command-Line Interface Creation Kit” is highly " "configurable but comes with good defaults out of the box." msgstr "" +"`click `_ 은 최소한의 코드만으로 " +"커맨드라인 인터페이스를 구성할 수 있도록 해주는 파이썬 패키지입니다. " +"이 “Command-Line Interface Creation Kit” 은 상세한 설정이 가능하지만 " +"그냥 기본값으로 사용해도 아주 좋습니다." #: ../../scenarios/cli.rst:38 msgid "docopt" -msgstr "" +msgstr "닥옵트(docopt)" #: ../../scenarios/cli.rst:40 msgid "" @@ -88,10 +109,14 @@ msgid "" "that allows creating command-line interfaces easily and intuitively, by " "parsing POSIX-style usage instructions." msgstr "" +"`docopt `_ 는 " +"가볍고도 아주 파이썬다운 패키지로서 포직스 스타일의 사용법을 파싱하여 " +"커맨드라인 인터페이스를 직관적이고도 쉽게 만들 수 있게 " +"해주는 라이브러리입니다. " #: ../../scenarios/cli.rst:47 msgid "Plac" -msgstr "" +msgstr "플락(Plac)" #: ../../scenarios/cli.rst:49 msgid "" @@ -104,10 +129,18 @@ msgid "" " people writing throw-away scripts for themselves, who choose to create a" " command-line interface because it is quick and simple." msgstr "" +"`Plac `_ 은 " +"파이선 표준 라이브러리 `argparse " +"`_ 를 " +"선언형 인터페이스를 사용해 그 복잡성을 숨기는 간단한 랩퍼입니다. " +"매개변수 파서는 명령형으로 작성할 필요가 없습니다. 그냥 추론됩니다. " +"이 모듈은 복잡한 걸 원치 않는 사용자, 프로그래머, 시스템 관리자, 과학자 및 " +"일회용 스크립트를 작성하는 대신 커맨드라인 인터페이스를 빠르고 간단하게 개발하고자 하는 " +"사람들을 대상으로합니다." #: ../../scenarios/cli.rst:60 msgid "Cliff" -msgstr "" +msgstr "클리프(Cliff)" #: ../../scenarios/cli.rst:62 msgid "" @@ -118,10 +151,16 @@ msgid "" "``svn`` and ``git``, where the main program handles some basic argument " "parsing and then invokes a sub-command to do the work." msgstr "" +"`Cliff `_ 는 커맨드라인 프로그램을 " +"개발하기 위한 프레임워크입니다. " +"setuptools를 엔트리포인트로 사용하여 서브캐맨드, 출력 포맷터 및 기타 확장을 제공합니다. " +"이 프레임워크는 ``svn`` 과 ``git`` 처럼 다단계 명령을 만드는 데 사용됩니다. " +"여기서 메인 프로그램은 몇 가지 기본적인 인자값 구문 분석을 처리한 다음 " +"서브커맨드를 호출하여 작업을 수행합니다." #: ../../scenarios/cli.rst:72 msgid "Cement" -msgstr "" +msgstr "시멘트(Cement)" #: ../../scenarios/cli.rst:74 msgid "" @@ -132,10 +171,17 @@ msgid "" "and its use cases span from the simplicity of a micro-framework to the " "complexity of a mega-framework." msgstr "" +"`Cement `_ 는 " +"진보된 CLI 어플리케이션 프레임워크입니다. " +"그 목표는 간단한 커맨드라인 애플리케이션과 복잡한 커맨드라인 어플리케이션 모두를 위한 표준 " +"및 기능이 풍부한 플랫폼을 도입하고 " +"품질 저하없이 신속한 개발 요구 사항을 지원하는 것입니다. " +"시멘트는 유연하며 그 사용 사례는 간단한 마이크로 프레임워크에서 복잡한 대규모 프레임워크에 " +"이르기까지 다양합니다." #: ../../scenarios/cli.rst:84 msgid "Python Fire" -msgstr "" +msgstr "파이썬 파이어(Python Fire)" #: ../../scenarios/cli.rst:86 msgid "" @@ -146,6 +192,10 @@ msgid "" " explore code in a REPL, and simplify transitioning between Python and " "Bash (or any other shell)." msgstr "" +"`Python Fire `_ 는 " +"파이썬 객체를 전혀 사용하지 않고도 자동으로 커맨드라인 인터페이스를 생성하는 라이브러리입니다. " +"커맨드라인에서 파이썬 코드를 보다 쉽게 디버깅하고, 기존 코드에 대한 CLI 인터페이스를 생성하고 " +"REPL에서 인터렉티브하게 코드를 탐색하고, 파이썬과 Bash(아니면 다른 쉘) 간의 전환을 단순화 할 수 있습니다." #~ msgid "" #~ msgstr "" From db2202ab977e6e4b3687807af4ecb1b6e8917295 Mon Sep 17 00:00:00 2001 From: "YoungSeon.Ahn" Date: Mon, 26 Apr 2021 07:51:10 +0000 Subject: [PATCH 071/117] cli-bug fix --- docs/locale/ko/LC_MESSAGES/scenarios/cli.mo | Bin 7862 -> 7863 bytes docs/locale/ko/LC_MESSAGES/scenarios/cli.po | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo b/docs/locale/ko/LC_MESSAGES/scenarios/cli.mo index dc6d0f57c66d13f819cae948937805e42aafdc7d..7977716da6c9305a29643645ab14403c3705b020 100644 GIT binary patch delta 146 zcmdmHyWMuen|c){28J2@3=BLB3=De(85k6R^eG_i45VKJX+EI5z7PWgE0DGmfrz_^ zF)$PX`_ 이라고도 합니다. " "커맨드라인 어플리케이션은 텍스트 인터페이스로 사용하도록 설계된 컴퓨터 프로그램입니다. " "`쉘 " From e45b5a74d1eda40cd2896086c0de80c9a21475ce Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 08:31:36 +0900 Subject: [PATCH 072/117] Sync .po catalogs with upstream English changes Run `make gettext` + `sphinx-intl update -l ko` after merging upstream/master. 12 .po files updated with new untranslated entries and fuzzy markers where the English source has changed. Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/index.po | 36 +++-- docs/locale/ko/LC_MESSAGES/intro/learning.po | 13 +- docs/locale/ko/LC_MESSAGES/scenarios/admin.po | 123 ++++++++------- .../locale/ko/LC_MESSAGES/scenarios/client.po | 41 +++-- docs/locale/ko/LC_MESSAGES/scenarios/gui.po | 64 ++++---- .../ko/LC_MESSAGES/scenarios/imaging.po | 22 ++- .../locale/ko/LC_MESSAGES/scenarios/scrape.po | 85 +++++----- docs/locale/ko/LC_MESSAGES/scenarios/xml.po | 18 ++- .../ko/LC_MESSAGES/starting/install/osx.po | 63 ++++---- .../ko/LC_MESSAGES/starting/install3/osx.po | 148 +++++++++--------- docs/locale/ko/LC_MESSAGES/writing/reading.po | 9 +- docs/locale/ko/LC_MESSAGES/writing/style.po | 122 +++++++-------- 12 files changed, 392 insertions(+), 352 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index 7e52268b2..42c6c04c1 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -12,14 +12,24 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide ^0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Jou Sung-Shik \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" + +#: ../../index.rst:-1 +#, fuzzy +msgid "" +"An opinionated guide to the Python programming language and a best " +"practice handbook for the installation, configuration, and usage of " +"Python on a daily basis." +msgstr "" +"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용법에 대한 " +"모범 사례 안내서입니다." #: ../../index.rst:12 msgid "The Hitchhiker's Guide to Python!" @@ -34,8 +44,8 @@ msgid "" "**This is a living, breathing guide.** If you'd like to contribute, " "`fork us on GitHub `_!" msgstr "" -"**이 안내서는 살아 숨쉬고 있습니다.** 기여하고 싶으시다면, " -"`fork us on GitHub `_!" +"**이 안내서는 살아 숨쉬고 있습니다.** 기여하고 싶으시다면, `fork us on GitHub " +"`_!" #: ../../index.rst:19 msgid "" @@ -43,8 +53,8 @@ msgid "" "developers a best practice handbook for the installation, configuration, " "and usage of Python on a daily basis." msgstr "" -"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 " -"매일매일 단위로 파이썬의 설치, 설정, 사용법에 대한 모범 사례 안내서입니다." +"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용법에 대한 " +"모범 사례 안내서입니다." #: ../../index.rst:23 msgid "" @@ -65,11 +75,9 @@ msgid "" "congratulations — you are indeed a person of excellent taste. —*Kenneth " "Reitz*" msgstr "" -"파이썬2 대신 **파이썬3** 를 사용하실 것을 강력하게 추천드립니다. *아직도* " -" 파이썬2를 운영환경에서 사용하고 있다면 어플리케이션과 인프라스트럭쳐를 " -"업그레이드 하실 것을 고려해보세요. " -"이미 파이썬3를 사용하고 계신다면, 축하드립니다 -정말 멋진 취향을 가지신 분입니다-. " -"-*케네스 레이츠*-" +"파이썬2 대신 **파이썬3** 를 사용하실 것을 강력하게 추천드립니다. *아직도* 파이썬2를 운영환경에서 사용하고 있다면 " +"어플리케이션과 인프라스트럭쳐를 업그레이드 하실 것을 고려해보세요. 이미 파이썬3를 사용하고 계신다면, 축하드립니다 -정말 멋진 " +"취향을 가지신 분입니다-. -*케네스 레이츠*-" #: ../../index.rst:31 msgid "" @@ -101,8 +109,7 @@ msgstr "파이썬 개발 환경" msgid "" "This part of the guide focuses on the Python development environment, and" " the best-practice tools that are available for writing Python code." -msgstr "" -"안내서의 이 부분은 파이썬 개발 환경, 그리고 파이썬 코드 작성을 위한 모범적인 개발도구를 다룹니다." +msgstr "안내서의 이 부분은 파이썬 개발 환경, 그리고 파이썬 코드 작성을 위한 모범적인 개발도구를 다룹니다." #: ../../contents.rst.inc:50 msgid "Writing Great Python Code" @@ -148,8 +155,7 @@ msgid "" "intentionally excluded from this list of additional notes. Additionally, " "this note." msgstr "" -"이 참고 사항에서는 장음계와 단음계를 비롯한 음계의 모든 사항들을 다루지는 않습니다. " -"그런 것들은 이 참고 사항의 목록에서 일부러 " +"이 참고 사항에서는 장음계와 단음계를 비롯한 음계의 모든 사항들을 다루지는 않습니다. 그런 것들은 이 참고 사항의 목록에서 일부러 " "제외시켰습니다. 이 문단도 그렇습니다." #: ../../contents.rst.inc:133 diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.po b/docs/locale/ko/LC_MESSAGES/intro/learning.po index e9a1bf7dc..cf2029aee 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/learning.po +++ b/docs/locale/ko/LC_MESSAGES/intro/learning.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../intro/learning.rst:5 msgid "Learning Python" @@ -450,8 +450,8 @@ msgstr "" #: ../../intro/learning.rst:256 msgid "" -"`Expert Python Programming `_" +"`Expert Python Programming `_" msgstr "" #: ../../intro/learning.rst:260 @@ -974,3 +974,8 @@ msgstr "" #~ "ebook/dp/B00B5VXMRG/>`_" #~ msgstr "" +#~ msgid "" +#~ "`Expert Python Programming `_" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po index 86a1a6c46..30ed07de7 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/admin.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/admin.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../scenarios/admin.rst:4 msgid "Systems Administration" @@ -154,18 +154,18 @@ msgid "" "tests (net, CPU) fail, it will send an email." msgstr "" -#: ../../scenarios/admin.rst:192 +#: ../../scenarios/admin.rst:193 msgid "" -"A full terminal application like a widely extended top which is based on " -"psutil and with the ability of a client-server monitoring is `glance " -"`_." +"A full terminal application like a widely extended top is `Glance " +"`_, which is based on psutil and " +"has the ability for client-server monitoring." msgstr "" -#: ../../scenarios/admin.rst:199 +#: ../../scenarios/admin.rst:197 msgid "Ansible" msgstr "" -#: ../../scenarios/admin.rst:201 +#: ../../scenarios/admin.rst:199 msgid "" "`Ansible `_ is an open source system automation " "tool. Its biggest advantage over Puppet or Chef is that it does not " @@ -174,30 +174,30 @@ msgid "" "YAML with Jinja2 for templating." msgstr "" -#: ../../scenarios/admin.rst:206 +#: ../../scenarios/admin.rst:204 msgid "Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" msgstr "" -#: ../../scenarios/admin.rst:212 +#: ../../scenarios/admin.rst:210 msgid "" "Ansible requires an inventory file that describes the hosts to which it " "has access. Below is an example of a host and playbook that will ping all" " the hosts in the inventory file." msgstr "" -#: ../../scenarios/admin.rst:216 +#: ../../scenarios/admin.rst:214 msgid "Here is an example inventory file: :file:`hosts.yml`" msgstr "" -#: ../../scenarios/admin.rst:224 +#: ../../scenarios/admin.rst:222 msgid "Here is an example playbook: :file:`ping.yml`" msgstr "" -#: ../../scenarios/admin.rst:236 +#: ../../scenarios/admin.rst:234 msgid "To run the playbook:" msgstr "" -#: ../../scenarios/admin.rst:242 +#: ../../scenarios/admin.rst:240 msgid "" "The Ansible playbook will ping all of the servers in the " ":file:`hosts.yml` file. You can also select groups of servers using " @@ -205,18 +205,18 @@ msgid "" "`_." msgstr "" -#: ../../scenarios/admin.rst:246 +#: ../../scenarios/admin.rst:244 msgid "" "`An Ansible tutorial `_ is also a great and detailed introduction to getting started" " with Ansible." msgstr "" -#: ../../scenarios/admin.rst:252 +#: ../../scenarios/admin.rst:250 msgid "Chef" msgstr "" -#: ../../scenarios/admin.rst:254 +#: ../../scenarios/admin.rst:252 msgid "" "`Chef `_ is a systems and cloud " "infrastructure automation framework that makes it easy to deploy servers " @@ -225,7 +225,7 @@ msgid "" "Ruby to write your infrastructure code." msgstr "" -#: ../../scenarios/admin.rst:259 +#: ../../scenarios/admin.rst:257 msgid "" "Chef clients run on every server that is part of your infrastructure and " "these regularly check with your Chef server to ensure your system is " @@ -234,7 +234,7 @@ msgid "" "and this distributed approach makes Chef a scalable automation platform." msgstr "" -#: ../../scenarios/admin.rst:264 +#: ../../scenarios/admin.rst:262 msgid "" "Chef works by using custom recipes (configuration elements), implemented " "in cookbooks. Cookbooks, which are basically packages for infrastructure " @@ -244,13 +244,13 @@ msgid "" "on Chef to learn how to create a simple Chef Server." msgstr "" -#: ../../scenarios/admin.rst:270 +#: ../../scenarios/admin.rst:268 msgid "" "To create a simple cookbook the `knife " "`_ command is used:" msgstr "" -#: ../../scenarios/admin.rst:276 +#: ../../scenarios/admin.rst:274 msgid "" "`Getting started with Chef `_ is a good starting point for Chef Beginners and " @@ -259,15 +259,15 @@ msgid "" " the `Chef Supermarket `_." msgstr "" -#: ../../scenarios/admin.rst:281 +#: ../../scenarios/admin.rst:279 msgid "`Chef Documentation `_" msgstr "" -#: ../../scenarios/admin.rst:286 +#: ../../scenarios/admin.rst:284 msgid "Puppet" msgstr "" -#: ../../scenarios/admin.rst:288 +#: ../../scenarios/admin.rst:286 msgid "" "`Puppet `_ is IT Automation and configuration " "management software from Puppet Labs that allows System Administrators to" @@ -275,7 +275,7 @@ msgid "" "elegant way to manage their fleet of physical and virtual machines." msgstr "" -#: ../../scenarios/admin.rst:293 +#: ../../scenarios/admin.rst:291 msgid "" "Puppet is available both as an Open Source and an Enterprise variant. " "Modules are small, shareable units of code written to automate or define " @@ -284,14 +284,14 @@ msgid "" "Enterprise Puppet." msgstr "" -#: ../../scenarios/admin.rst:298 +#: ../../scenarios/admin.rst:296 msgid "" "Puppet Agents are installed on nodes whose state needs to be monitored or" " changed. A designated server known as the Puppet Master is responsible " "for orchestrating the agent nodes." msgstr "" -#: ../../scenarios/admin.rst:302 +#: ../../scenarios/admin.rst:300 msgid "" "Agent nodes send basic facts about the system such as the operating " "system, kernel, architecture, IP address, hostname, etc. to the Puppet " @@ -301,21 +301,21 @@ msgid "" " and sends a report back to the Puppet Master." msgstr "" -#: ../../scenarios/admin.rst:309 +#: ../../scenarios/admin.rst:307 msgid "" "Facter is an interesting tool that ships with Puppet that pulls basic " "facts about the system. These facts can be referenced as a variable while" " writing your Puppet modules." msgstr "" -#: ../../scenarios/admin.rst:322 +#: ../../scenarios/admin.rst:320 msgid "" "Writing Modules in Puppet is pretty straight forward. Puppet Manifests " "together form Puppet Modules. Puppet manifests end with an extension of " "``.pp``. Here is an example of 'Hello World' in Puppet." msgstr "" -#: ../../scenarios/admin.rst:334 +#: ../../scenarios/admin.rst:332 msgid "" "Here is another example with system based logic. Note how the operating " "system fact is being used as a variable prepended with the ``$`` sign. " @@ -323,7 +323,7 @@ msgid "" "referenced by ``$hostname``." msgstr "" -#: ../../scenarios/admin.rst:348 +#: ../../scenarios/admin.rst:346 msgid "" "There are several resource types for Puppet but the package-file-service " "paradigm is all you need for undertaking the majority of the " @@ -332,29 +332,29 @@ msgid "" "notified to restart every time the sshd configuration file is changed." msgstr "" -#: ../../scenarios/admin.rst:379 +#: ../../scenarios/admin.rst:377 msgid "" "For more information, refer to the `Puppet Labs Documentation " "`_" msgstr "" -#: ../../scenarios/admin.rst:384 +#: ../../scenarios/admin.rst:382 msgid "Blueprint" msgstr "" -#: ../../scenarios/admin.rst +#: ../../scenarios/admin.rst:384 msgid "Todo" msgstr "" -#: ../../scenarios/admin.rst:386 +#: ../../scenarios/admin.rst:384 msgid "Write about Blueprint" msgstr "" -#: ../../scenarios/admin.rst:391 +#: ../../scenarios/admin.rst:389 msgid "Buildout" msgstr "" -#: ../../scenarios/admin.rst:393 +#: ../../scenarios/admin.rst:391 msgid "" "`Buildout `_ is an open source software build " "tool. Buildout is created using the Python programming language. It " @@ -366,25 +366,6 @@ msgid "" "tasks in any environment can be created, and many are already available." msgstr "" -#: ../../scenarios/admin.rst:404 -msgid "Shinken" -msgstr "" - -#: ../../scenarios/admin.rst:406 -msgid "" -"`Shinken `_ is a modern, Nagios " -"compatible monitoring framework written in Python. Its main goal is to " -"give users a flexible architecture for their monitoring system that is " -"designed to scale to large environments." -msgstr "" - -#: ../../scenarios/admin.rst:411 -msgid "" -"Shinken is backwards-compatible with the Nagios configuration standard " -"and plugins. It works on any operating system and architecture that " -"supports Python, which includes Windows, Linux, and FreeBSD." -msgstr "" - #~ msgid "" #~ msgstr "" @@ -531,3 +512,33 @@ msgstr "" #~ "and FreeBSD." #~ msgstr "" +#~ msgid "" +#~ "A full terminal application like a " +#~ "widely extended top which is based " +#~ "on psutil and with the ability of" +#~ " a client-server monitoring is " +#~ "`glance `_." +#~ msgstr "" + +#~ msgid "Shinken" +#~ msgstr "" + +#~ msgid "" +#~ "`Shinken `_ is" +#~ " a modern, Nagios compatible monitoring " +#~ "framework written in Python. Its main" +#~ " goal is to give users a " +#~ "flexible architecture for their monitoring " +#~ "system that is designed to scale " +#~ "to large environments." +#~ msgstr "" + +#~ msgid "" +#~ "Shinken is backwards-compatible with the" +#~ " Nagios configuration standard and plugins." +#~ " It works on any operating system " +#~ "and architecture that supports Python, " +#~ "which includes Windows, Linux, and " +#~ "FreeBSD." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.po b/docs/locale/ko/LC_MESSAGES/scenarios/client.po index d17781c25..722199b25 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/client.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/client.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../scenarios/client.rst:4 msgid "Network Applications" @@ -35,9 +35,8 @@ msgid "" "distributed, collaborative, hypermedia information systems. HTTP is the " "foundation of data communication for the World Wide Web." msgstr "" -"HTTP(Hypertext Transfer Protocol)는 분산, 협업, 하이퍼미디어 정보 시스템을 " -"위한 애플리케이션 프로토콜입니다." -"HTTP는 월드 와이드 웹을 위한 데이터 통신의 기반입니니다." +"HTTP(Hypertext Transfer Protocol)는 분산, 협업, 하이퍼미디어 정보 시스템을 위한 애플리케이션 " +"프로토콜입니다.HTTP는 월드 와이드 웹을 위한 데이터 통신의 기반입니니다." #: ../../scenarios/client.rst:18 msgid "Requests" @@ -50,9 +49,8 @@ msgid "" "time — and a different web. It requires an enormous amount of work (even " "method overrides) to perform the simplest of tasks." msgstr "" -"파이썬의 표준 urllib2 모듈은 필요한 HTTP의 기능 대부분을 지원하지만 API는 완전히 박살나 있습니다. " -"그것은 다른 시간과 다른 웹을 위해 만들어졌습니다. " -"가장 간단한 작업을 수행하더라도 엄청난 양의 작업(메소드 재정의까지)이 필요합니다." +"파이썬의 표준 urllib2 모듈은 필요한 HTTP의 기능 대부분을 지원하지만 API는 완전히 박살나 있습니다. 그것은 다른 시간과" +" 다른 웹을 위해 만들어졌습니다. 가장 간단한 작업을 수행하더라도 엄청난 양의 작업(메소드 재정의까지)이 필요합니다." #: ../../scenarios/client.rst:25 msgid "" @@ -62,13 +60,12 @@ msgid "" "and HTTP connection pooling are 100% automatic, powered by urllib3, which" " is embedded within Requests." msgstr "" -"" -"Requests는 Python HTTP에서 모든 작업을 처리하므로 웹 서비스와 매끄럽게 통합할 수 있도록 해줍니다. " -"URL에 쿼리 문자열을 수동으로 추가하거나 POST 데이터를 폼 인코딩 할 필요가 없습니다. " -"Requests에 포함된 urllib3에 의해 구동되는 Keep-alive 및 HTTP 커넥션 풀링은 100% 자동입니다." +"Requests는 Python HTTP에서 모든 작업을 처리하므로 웹 서비스와 매끄럽게 통합할 수 있도록 해줍니다. URL에 쿼리 " +"문자열을 수동으로 추가하거나 POST 데이터를 폼 인코딩 할 필요가 없습니다. Requests에 포함된 urllib3에 의해 " +"구동되는 Keep-alive 및 HTTP 커넥션 풀링은 100% 자동입니다." #: ../../scenarios/client.rst:31 -msgid "`Documentation `_" +msgid "`Documentation `_" msgstr "" #: ../../scenarios/client.rst:32 @@ -95,10 +92,9 @@ msgid "" "middleware, a ØMQ system can run without a dedicated message broker. The " "library is designed to have a familiar socket-style API." msgstr "" -"ØMQ(ZeroMQ, 0MQ, ZMQ로도 씀)는 대규모 분산 환경 어플리케이션이나 " -"동시성 어플리케이션을 위한 고성능 비동기 메시징 라이브러리입니다. " -"메시지큐를 제공하지만 다른 메시징 미들웨어와는 달리 제로엠큐는 메시지 브로커 없이도 " -"동작합니다. 그 라이브러리는 소켓 스타일 API처럼 디자인되어 있습니다. " +"ØMQ(ZeroMQ, 0MQ, ZMQ로도 씀)는 대규모 분산 환경 어플리케이션이나 동시성 어플리케이션을 위한 고성능 비동기 메시징 " +"라이브러리입니다. 메시지큐를 제공하지만 다른 메시징 미들웨어와는 달리 제로엠큐는 메시지 브로커 없이도 동작합니다. 그 라이브러리는 " +"소켓 스타일 API처럼 디자인되어 있습니다. " #: ../../scenarios/client.rst:51 msgid "RabbitMQ" @@ -113,10 +109,10 @@ msgid "" "interface with the broker are available for all major programming " "languages." msgstr "" -"RabbitMQ는 Advanced Message Queuing Protocol (AMQP)를 구현한 오픈소스 메시지 " -"브로커 소프트웨어입니다. 래빗MQ 서버는 얼랭 프로그래밍 언어로 개발되었고 " -"클러스터링과 장애 복구를 위하여 Open Telecom Platform 프레임워크에 기반하고 있습니다. " -"브로커와 인터페이스할 클라이언트 라이브러리는 모든 주요 프로그래밍 언어에 사용할 수 있습니다." +"RabbitMQ는 Advanced Message Queuing Protocol (AMQP)를 구현한 오픈소스 메시지 브로커 " +"소프트웨어입니다. 래빗MQ 서버는 얼랭 프로그래밍 언어로 개발되었고 클러스터링과 장애 복구를 위하여 Open Telecom " +"Platform 프레임워크에 기반하고 있습니다. 브로커와 인터페이스할 클라이언트 라이브러리는 모든 주요 프로그래밍 언어에 사용할 수" +" 있습니다." #: ../../scenarios/client.rst:59 msgid "`Homepage `_" @@ -132,3 +128,6 @@ msgstr "" #~ msgid "`PyPi `_" #~ msgstr "" +#~ msgid "`Documentation `_" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po index dcc48d3f4..2242526d2 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../scenarios/gui.rst:4 msgid "GUI Applications" @@ -129,62 +129,66 @@ msgid "PySide" msgstr "" #: ../../scenarios/gui.rst:81 -msgid "PySide is a Python binding of the cross-platform GUI toolkit Qt." +msgid "" +"PySide is a Python binding of the cross-platform GUI toolkit Qt. The " +"package name depends on the major Qt version (`PySide` for Qt4, `PySide2`" +" for Qt5, and `PySide6` for Qt6). This set of bindings is developed by " +"`The Qt Company `_." msgstr "" -#: ../../scenarios/gui.rst:87 -msgid "https://wiki.qt.io/Category:LanguageBindings::PySide::Downloads" +#: ../../scenarios/gui.rst:90 +msgid "https://pyside.org" msgstr "" -#: ../../scenarios/gui.rst:92 +#: ../../scenarios/gui.rst:95 msgid "PyQt" msgstr "" -#: ../../scenarios/gui.rst:94 +#: ../../scenarios/gui.rst:97 msgid "" "If your software does not fully comply with the GPL you will need a " "commercial license!" msgstr "" -#: ../../scenarios/gui.rst:96 +#: ../../scenarios/gui.rst:99 msgid "PyQt provides Python bindings for the Qt Framework (see below)." msgstr "" -#: ../../scenarios/gui.rst:98 +#: ../../scenarios/gui.rst:101 msgid "http://www.riverbankcomputing.co.uk/software/pyqt/download" msgstr "" -#: ../../scenarios/gui.rst:103 +#: ../../scenarios/gui.rst:106 msgid "Pyjs Desktop (formerly Pyjamas Desktop)" msgstr "" -#: ../../scenarios/gui.rst:105 +#: ../../scenarios/gui.rst:108 msgid "" "Pyjs Desktop is a application widget set for desktop and a cross-platform" " framework. It allows the exact same Python web application source code " "to be executed as a standalone desktop application." msgstr "" -#: ../../scenarios/gui.rst:110 +#: ../../scenarios/gui.rst:113 msgid "The main website: `pyjs `_." msgstr "" -#: ../../scenarios/gui.rst:115 +#: ../../scenarios/gui.rst:118 msgid "Qt" msgstr "" -#: ../../scenarios/gui.rst:117 +#: ../../scenarios/gui.rst:120 msgid "" "`Qt `_ is a cross-platform application framework " "that is widely used for developing software with a GUI but can also be " "used for non-GUI applications." msgstr "" -#: ../../scenarios/gui.rst:124 +#: ../../scenarios/gui.rst:127 msgid "PySimpleGUI" msgstr "" -#: ../../scenarios/gui.rst:126 +#: ../../scenarios/gui.rst:129 msgid "" "`PySimpleGUI `_ is a wrapper for " "Tkinter and Qt (others on the way). The amount of code required to " @@ -193,18 +197,18 @@ msgid "" "\"ported\" between GUI frameworks by changing import statements." msgstr "" -#: ../../scenarios/gui.rst:136 +#: ../../scenarios/gui.rst:139 msgid "" "PySimpleGUI is contained in a single PySimpleGUI.py file. Should pip " "installation be impossible, copying the PySimpleGUI.py file into a " "project's folder is all that's required to import and begin using." msgstr "" -#: ../../scenarios/gui.rst:143 +#: ../../scenarios/gui.rst:146 msgid "Toga" msgstr "" -#: ../../scenarios/gui.rst:145 +#: ../../scenarios/gui.rst:148 msgid "" "`Toga `_ is a Python native, OS " "native, cross platform GUI toolkit. Toga consists of a library of base " @@ -212,42 +216,42 @@ msgid "" "development." msgstr "" -#: ../../scenarios/gui.rst:149 +#: ../../scenarios/gui.rst:152 msgid "" "Toga is available on macOS, Windows, Linux (GTK), and mobile platforms " "such as Android and iOS." msgstr "" -#: ../../scenarios/gui.rst:155 +#: ../../scenarios/gui.rst:158 msgid "Tk" msgstr "" -#: ../../scenarios/gui.rst:157 +#: ../../scenarios/gui.rst:160 msgid "" "Tkinter is a thin object-oriented layer on top of Tcl/Tk. **It has the " "advantage of being included with the Python standard library, making it " "the most convenient and compatible toolkit to program with.**" msgstr "" -#: ../../scenarios/gui.rst:161 +#: ../../scenarios/gui.rst:164 msgid "" "Both Tk and Tkinter are available on most Unix platforms, as well as on " "Windows and Macintosh systems. Starting with the 8.0 release, Tk offers " "native look and feel on all platforms." msgstr "" -#: ../../scenarios/gui.rst:165 +#: ../../scenarios/gui.rst:168 msgid "" "There's a good multi-language Tk tutorial with Python examples at `TkDocs" " `_. There's more information " "available on the `Python Wiki `_." msgstr "" -#: ../../scenarios/gui.rst:172 +#: ../../scenarios/gui.rst:175 msgid "wxPython" msgstr "" -#: ../../scenarios/gui.rst:174 +#: ../../scenarios/gui.rst:177 msgid "" "wxPython is a GUI toolkit for the Python programming language. It allows " "Python programmers to create programs with a robust, highly functional " @@ -256,7 +260,7 @@ msgid "" "cross platform GUI library, which is written in C++." msgstr "" -#: ../../scenarios/gui.rst:180 +#: ../../scenarios/gui.rst:183 msgid "" "**Install (Stable) wxPython** *go to " "https://www.wxpython.org/pages/downloads/ and download the appropriate " @@ -356,3 +360,9 @@ msgstr "" #~ "OS.*" #~ msgstr "" +#~ msgid "PySide is a Python binding of the cross-platform GUI toolkit Qt." +#~ msgstr "" + +#~ msgid "https://wiki.qt.io/Category:LanguageBindings::PySide::Downloads" +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po index 107e02fef..a2ff44ec3 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../scenarios/imaging.rst:4 msgid "Image Manipulation" @@ -78,7 +78,7 @@ msgstr "" #: ../../scenarios/imaging.rst:64 msgid "" "There are more examples of the Pillow library in the `Pillow tutorial " -"`_." +"`_." msgstr "" #: ../../scenarios/imaging.rst:70 @@ -108,8 +108,7 @@ msgstr "" #: ../../scenarios/imaging.rst:110 msgid "" "There are more Python-implemented examples of OpenCV in this `collection " -"of tutorials `_." +"of tutorials `_." msgstr "" #~ msgid "Add introduction about image manipulation and its Python libraries." @@ -150,3 +149,16 @@ msgstr "" #~ " widely used." #~ msgstr "" +#~ msgid "" +#~ "There are more examples of the " +#~ "Pillow library in the `Pillow tutorial" +#~ " `_." +#~ msgstr "" + +#~ msgid "" +#~ "There are more Python-implemented " +#~ "examples of OpenCV in this `collection" +#~ " of tutorials `_." +#~ msgstr "" + diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po index 4bf38cf12..ddf59326b 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ahn Young Seon \n" "Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../scenarios/scrape.rst:4 msgid "HTML Scraping" @@ -36,10 +36,9 @@ msgid "" " them and preserve the structure while we're at it. Web sites don't " "always provide their data in comfortable formats such as CSV or JSON." msgstr "" -"웹사이트는 HTML로 작성된다. 이는 곧 각각의 웹페이지는 구조화된 문서라는 의미이다. " -"구조화 된 포맷 덕분에 HTML에서 데이터를 얻기에 아주 좋다. " -"그러니 이 작업을 하는 동안 데이터 구조를 보존하는 게 좋다. " -"웹사이트들이 항상 자신의 데이터를 CSV나 JSON 처럼 쓰기 편한 방식으로 제공하는 것은 아니다." +"웹사이트는 HTML로 작성된다. 이는 곧 각각의 웹페이지는 구조화된 문서라는 의미이다. 구조화 된 포맷 덕분에 HTML에서 데이터를" +" 얻기에 아주 좋다. 그러니 이 작업을 하는 동안 데이터 구조를 보존하는 게 좋다. 웹사이트들이 항상 자신의 데이터를 CSV나 " +"JSON 처럼 쓰기 편한 방식으로 제공하는 것은 아니다." #: ../../scenarios/scrape.rst:18 msgid "" @@ -48,30 +47,29 @@ msgid "" "that you need in a format most useful to you while at the same time " "preserving the structure of the data." msgstr "" -"이 지점에서 웹 스크랩이 시작된다. 웹 스크랩핑은 컴퓨터 프로그램을 사용하여 " -"웹 페이지를 검색한 후 데이터 구조를 보존하면서 사용자에게 가장 유용한 " -"형식으로 필요한 데이터를 수집하는 작업입니다." +"이 지점에서 웹 스크랩이 시작된다. 웹 스크랩핑은 컴퓨터 프로그램을 사용하여 웹 페이지를 검색한 후 데이터 구조를 보존하면서 " +"사용자에게 가장 유용한 형식으로 필요한 데이터를 수집하는 작업입니다." #: ../../scenarios/scrape.rst:26 msgid "lxml and Requests" msgstr "lxml과 Requests" #: ../../scenarios/scrape.rst:28 +#, fuzzy msgid "" "`lxml `_ is a pretty extensive library written for " "parsing XML and HTML documents very quickly, even handling messed up tags" -" in the process. We will also be using the `Requests `_ module instead of the already built-in urllib2" -" module due to improvements in speed and readability. You can easily " -"install both using ``pip install lxml`` and ``pip install requests``." +" in the process. We will also be using the `Requests " +"`_ module instead of the " +"already built-in urllib2 module due to improvements in speed and " +"readability. You can easily install both using ``pip install lxml`` and " +"``pip install requests``." msgstr "" -"`lxml `_ 은 XML과 HTML 문서를 아주 빠르게 처리하기 위하여 " -"작성된 대규모 라이브러리이다. " -"심지어 구문 분석 중에 잘못된 태그를 처리해주기도 한다. " -"`Requests `_ 모듈도 사용할 것이다. " -"urllib2 모듈보다 속도와 가독성 면에서 뛰어나기 때문이다. " -"``pip install lxml`` 과 ``pip install requests`` 로 " -"둘 다 간단히 설치할 수 있다. " +"`lxml `_ 은 XML과 HTML 문서를 아주 빠르게 처리하기 위하여 작성된 대규모 " +"라이브러리이다. 심지어 구문 분석 중에 잘못된 태그를 처리해주기도 한다. `Requests `_ 모듈도 사용할 것이다. urllib2 모듈보다 속도와 가독성 면에서 뛰어나기 " +"때문이다. ``pip install lxml`` 과 ``pip install requests`` 로 둘 다 간단히 설치할 수 있다." +" " #: ../../scenarios/scrape.rst:36 msgid "Let's start with the imports:" @@ -82,18 +80,16 @@ msgid "" "Next we will use ``requests.get`` to retrieve the web page with our data," " parse it using the ``html`` module, and save the results in ``tree``:" msgstr "" -"그 단계는 ``requests.get`` 이다. " -"우리의 데이터로 웹페이지를 조회하고 " -"``html`` 모듈로 파싱할 것이다. " -"그리고 ``tree`` 에에 저장할 것이다. " +"그 단계는 ``requests.get`` 이다. 우리의 데이터로 웹페이지를 조회하고 ``html`` 모듈로 파싱할 것이다. 그리고" +" ``tree`` 에에 저장할 것이다. " #: ../../scenarios/scrape.rst:51 msgid "" "(We need to use ``page.content`` rather than ``page.text`` because " "``html.fromstring`` implicitly expects ``bytes`` as input.)" msgstr "" -"(``page.text`` 보다는 ``page.content`` 를 사용하는 게 좋다. 왜냐하면 " -"``html.fromstring`` 은 묵시적으로 ``bytes`` 을 인풋으로 하기 때문이다." +"(``page.text`` 보다는 ``page.content`` 를 사용하는 게 좋다. 왜냐하면 ``html.fromstring``" +" 은 묵시적으로 ``bytes`` 을 인풋으로 하기 때문이다." #: ../../scenarios/scrape.rst:54 msgid "" @@ -101,10 +97,8 @@ msgid "" "we can go over two different ways: XPath and CSSSelect. In this example, " "we will focus on the former." msgstr "" -"이제 ``tree`` 는 HTML 파일 전체를 멋진 트리 구조에 담았다. " -"이제 2가지 접근법이 가능하다. " -"XPath 와 CSSSelect 이다. " -"예제에서는 XPath로 하겠다." +"이제 ``tree`` 는 HTML 파일 전체를 멋진 트리 구조에 담았다. 이제 2가지 접근법이 가능하다. XPath 와 " +"CSSSelect 이다. 예제에서는 XPath로 하겠다." #: ../../scenarios/scrape.rst:58 msgid "" @@ -112,9 +106,8 @@ msgid "" "HTML or XML documents. A good introduction to XPath is on `W3Schools " "`_ ." msgstr "" -"XPath는 HTML 또는 XML 문서와 같은 구조화된 문서에서 정보를 찾는 방법입니다. " -"XPath에 대한 좋은 소개는 `W3Schools " -"`_에 있습니다." +"XPath는 HTML 또는 XML 문서와 같은 구조화된 문서에서 정보를 찾는 방법입니다. XPath에 대한 좋은 소개는 " +"`W3Schools `_에 있습니다." #: ../../scenarios/scrape.rst:62 msgid "" @@ -123,11 +116,9 @@ msgid "" "can right click an element, choose 'Inspect element', highlight the code," " right click again, and choose 'Copy XPath'." msgstr "" -"또한 FireBug for Firefox 또는 Chrome Inspector와 같은 엘리먼트의 XPath를 " -"얻기 위한 다양한 도구가 있습니다. " -"크롬을 사용하는 경우 엘리먼트를 마우스 오른쪽 버튼으로 클릭하고 " -"'요소 검사'를 선택한 후 코드를 강조 표시하고 " -"다시 마우스 오른쪽 버튼을 클릭한 후 'Copy XPath'를 선택할 수 있습니다." +"또한 FireBug for Firefox 또는 Chrome Inspector와 같은 엘리먼트의 XPath를 얻기 위한 다양한 도구가" +" 있습니다. 크롬을 사용하는 경우 엘리먼트를 마우스 오른쪽 버튼으로 클릭하고 '요소 검사'를 선택한 후 코드를 강조 표시하고 다시 " +"마우스 오른쪽 버튼을 클릭한 후 'Copy XPath'를 선택할 수 있습니다." #: ../../scenarios/scrape.rst:67 msgid "" @@ -135,16 +126,14 @@ msgid "" "two elements -- one is a div with title 'buyer-name' and the other is a " "span with class 'item-price':" msgstr "" -"빠른 분석 후, 우리는 우리 페이지에서 데이터가 두 가지 요소에 포함되어 있음을 " -"알 수 있습니다. 하나는 'buyer-name'이라는 제목이 있는 div고 " -"다른 하나는 class 'item-price'이 있는 span입니다." +"빠른 분석 후, 우리는 우리 페이지에서 데이터가 두 가지 요소에 포함되어 있음을 알 수 있습니다. 하나는 'buyer-" +"name'이라는 제목이 있는 div고 다른 하나는 class 'item-price'이 있는 span입니다." #: ../../scenarios/scrape.rst:76 msgid "" "Knowing this we can create the correct XPath query and use the lxml " "``xpath`` function like this:" -msgstr "" -"이를 알고 올바른 XPath 쿼리를 만들어 다음과 같은 lxml ``xpath`` 함수를 사용할 수 있습니다." +msgstr "이를 알고 올바른 XPath 쿼리를 만들어 다음과 같은 lxml ``xpath`` 함수를 사용할 수 있습니다." #: ../../scenarios/scrape.rst:86 msgid "Let's see what we got exactly:" @@ -157,9 +146,8 @@ msgid "" "lists. Now we can do all sorts of cool stuff with it: we can analyze it " "using Python or we can save it to a file and share it with the world." msgstr "" -"축하합니다! lxml 와 Requests를 사용하여 웹 페이지에서 원하는 모든 데이터를 " -"성공적으로 스크랩했습니다. 우리는 그것을 두 개의 목록으로 메모리에 저장했습니다. " -"이제 우리는 파이썬을 사용하여 웹을 분석하거나 파일에 저장하여 세상과 공유할 수 있습니다." +"축하합니다! lxml 와 Requests를 사용하여 웹 페이지에서 원하는 모든 데이터를 성공적으로 스크랩했습니다. 우리는 그것을 두" +" 개의 목록으로 메모리에 저장했습니다. 이제 우리는 파이썬을 사용하여 웹을 분석하거나 파일에 저장하여 세상과 공유할 수 있습니다." #: ../../scenarios/scrape.rst:111 msgid "" @@ -167,9 +155,8 @@ msgid "" "through the rest of the pages of this example dataset, or rewriting this " "application to use threads for improved speed." msgstr "" -"이 예제 데이터 세트의 나머지 페이지를 반복하도록 이 스크립트를 수정하거나, " -"속도를 높이기 위해 스레드를 사용하도록 이 응용 프로그램을 다시 작성하는 방법을 " -"생각해 볼 수 있습니다." +"이 예제 데이터 세트의 나머지 페이지를 반복하도록 이 스크립트를 수정하거나, 속도를 높이기 위해 스레드를 사용하도록 이 응용 " +"프로그램을 다시 작성하는 방법을 생각해 볼 수 있습니다." #~ msgid "" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.po b/docs/locale/ko/LC_MESSAGES/scenarios/xml.po index 39c3a0ffa..a508a8529 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/xml.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/xml.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../scenarios/xml.rst:4 msgid "XML parsing" @@ -81,6 +81,20 @@ msgid "" "memory, and supports XML namespaces." msgstr "" +#: ../../scenarios/xml.rst:87 +msgid "xmlschema" +msgstr "" + +#: ../../scenarios/xml.rst:89 +msgid "" +"`xmlschema `_ provides support " +"for using XSD-Schemas in Python. Unlike other XML libraries, automatic " +"type parsing is available, so f.e. if the schema defines an element to be" +" of type ``int``, the parsed ``dict`` will contain also an ``int`` value " +"for that element. Moreover the library supports automatic and explicit " +"validation of XML documents against a schema." +msgstr "" + #~ msgid "and then you can get the child elements name like this:" #~ msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po index c153d3f08..ece2f235e 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../starting/install/osx.rst:6 #, fuzzy @@ -32,24 +32,27 @@ msgstr "" #: ../../starting/install/osx.rst:13 #, fuzzy -msgid "**Mac OS X comes with Python 2.7 out of the box.**" +msgid "" +"**Mac OS X comes with Python 2.7 out of the box between versions 10.8 and" +" 12.3.**" msgstr "맥 OS X의 최신 버전인 엘 캐피탄에는 **파이썬 2.7이 딸려옵니다**." #: ../../starting/install/osx.rst:15 #, fuzzy msgid "" -"You do not need to install or configure anything else to use Python. " -"Having said that, I would strongly recommend that you install the tools " -"and libraries described in the next section before you start building " -"Python applications for real-world use. In particular, you should always " -"install Setuptools, as it makes it much easier for you to install and " -"manage other third-party Python libraries." +"If your Mac OS X version is between the above versions, you do not need " +"to install or configure anything else to use Python. Having said that, I " +"would strongly recommend that you install the tools and libraries " +"described in the next section before you start building Python " +"applications for real-world use. In particular, you should always install" +" Setuptools, as it makes it much easier for you to install and manage " +"other third-party Python libraries." msgstr "" "파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 " "이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 " "합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " -#: ../../starting/install/osx.rst:21 +#: ../../starting/install/osx.rst:22 #, fuzzy msgid "" "The version of Python that ships with OS X is great for learning, but " @@ -61,15 +64,15 @@ msgstr "" "OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. OS X에 딸려온 버전은 안정화된 `공식" " 릴리즈 된 파이썬 `_ 보다 구버전일 것입니다." -#: ../../starting/install/osx.rst:29 +#: ../../starting/install/osx.rst:30 msgid "Doing it Right" msgstr "바로 시작하기" -#: ../../starting/install/osx.rst:31 +#: ../../starting/install/osx.rst:32 msgid "Let's install a real version of Python." msgstr "진짜 파이썬을 설치해보자!" -#: ../../starting/install/osx.rst:33 +#: ../../starting/install/osx.rst:34 #, fuzzy msgid "" "Before installing Python, you'll need to install a C compiler. The " @@ -85,7 +88,7 @@ msgstr "" "아주 작은 `OSX-GCC-Installer `_ 패키지를 설치해도 됩니다. " -#: ../../starting/install/osx.rst:42 +#: ../../starting/install/osx.rst:43 #, fuzzy msgid "" "If you already have Xcode installed, do not install OSX-GCC-Installer. In" @@ -95,13 +98,13 @@ msgstr "" "이미 XCode를 설치했거나 Homebrew를 사용할 계획이라면, OSX-GCC-Installer는 설치하지 마세요. 두 개를 모두" " 설치하면 원인을 밝히 어려운 문제를 일으킬 수 있습니다. " -#: ../../starting/install/osx.rst:47 +#: ../../starting/install/osx.rst:48 msgid "" "If you perform a fresh install of Xcode, you will also need to add the " "commandline tools by running ``xcode-select --install`` on the terminal." msgstr "" -#: ../../starting/install/osx.rst:51 +#: ../../starting/install/osx.rst:52 #, fuzzy msgid "" "While OS X comes with a large number of Unix utilities, those familiar " @@ -112,7 +115,7 @@ msgstr "" "것입니다. 바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를" " 채워줍니다." -#: ../../starting/install/osx.rst:55 +#: ../../starting/install/osx.rst:56 #, fuzzy msgid "" "To `install Homebrew `_, open :file:`Terminal` " @@ -121,7 +124,7 @@ msgstr "" "`Homebrew `_ 를 설치하려면 :file:`터미널` 을 열거나 마음에 드는 " "OSX 터미널 에뮬레이터를 열고 아래 코드를 그냥 실행하기만 하면 됩니다." -#: ../../starting/install/osx.rst:62 +#: ../../starting/install/osx.rst:63 msgid "" "The script will explain what changes it will make and prompt you before " "the installation begins. Once you've installed Homebrew, insert the " @@ -133,31 +136,31 @@ msgstr "" "디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣으세요. :file:`~/.profile` 파일의 마지막 줄에 다음과" " 같이 덧붙이면 됩니다." -#: ../../starting/install/osx.rst:72 +#: ../../starting/install/osx.rst:73 msgid "Now, we can install Python 2.7:" msgstr "이제 우리는 파이썬 2.7을 설치할 수 있습니다." -#: ../../starting/install/osx.rst:78 +#: ../../starting/install/osx.rst:79 msgid "" "Because ``python@2`` is a \"keg\", we need to update our ``PATH`` again, " "to point at our new installation:" msgstr "" -#: ../../starting/install/osx.rst:84 +#: ../../starting/install/osx.rst:85 msgid "" "Homebrew names the executable ``python2`` so that you can still run the " "system Python via the executable ``python``." msgstr "" -#: ../../starting/install/osx.rst:96 +#: ../../starting/install/osx.rst:97 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" -#: ../../starting/install/osx.rst:98 +#: ../../starting/install/osx.rst:99 msgid "Homebrew installs Setuptools and ``pip`` for you." msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해줍니다." -#: ../../starting/install/osx.rst:100 +#: ../../starting/install/osx.rst:101 msgid "" "Setuptools enables you to download and install any compliant Python " "software over a network (usually the Internet) with a single command " @@ -168,7 +171,7 @@ msgstr "" "다운로드받고 설치할 수 있도록 해줍니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." " " -#: ../../starting/install/osx.rst:105 +#: ../../starting/install/osx.rst:106 msgid "" "``pip`` is a tool for easily installing and managing Python packages, " "that is recommended over ``easy_install``. It is superior to " @@ -180,11 +183,11 @@ msgstr "" "추천한다. ``easy_install`` 는 `많은 면 `_ 에서 탁월하고, 활발히 운영되고 있습니다." -#: ../../starting/install/osx.rst:118 +#: ../../starting/install/osx.rst:119 msgid "Virtual Environments" msgstr "Virtual Environments" -#: ../../starting/install/osx.rst:120 +#: ../../starting/install/osx.rst:121 #, fuzzy msgid "" "A Virtual Environment (commonly referred to as a 'virtualenv') is a tool " @@ -197,13 +200,13 @@ msgstr "" "툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " "패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:125 +#: ../../starting/install/osx.rst:126 msgid "" "For example, you can work on a project which requires Django 1.10 while " "also maintaining a project which requires Django 1.8." msgstr "예를 들면 장고 1.10을 쓰는 프로젝트에서 일하면서, 장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." -#: ../../starting/install/osx.rst:128 +#: ../../starting/install/osx.rst:129 msgid "" "To start using this and see more information: :ref:`Virtual Environments " "` docs." @@ -212,7 +215,7 @@ msgstr "" "`_ 문서에서 볼 수 있습니다." -#: ../../starting/install/osx.rst:132 +#: ../../starting/install/osx.rst:133 #, fuzzy msgid "" "This page is a remixed version of `another guide " diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po index 1058fccb0..9a58253d8 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po @@ -13,32 +13,35 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ahn YoungSeon \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../starting/install3/osx.rst:8 msgid "Installing Python 3 on Mac OS X" msgstr "Mac OS X에 파이썬3 설치하기" #: ../../starting/install3/osx.rst:12 -msgid "**Mac OS X comes with Python 2.7 out of the box.**" +#, fuzzy +msgid "" +"**Mac OS X comes with Python 2.7 out of the box between versions 10.8 and" +" 12.3.**" msgstr "**Mac OS X는 파이썬2가 기본적으로 설치되어서 나온다.**" #: ../../starting/install3/osx.rst:14 +#, fuzzy msgid "" -"You do not need to install or configure anything else to use Python 2. " -"These instructions document the installation of Python 3." -msgstr "" -"그러니 파이썬2를 따로 설치하거나 설정할 필요는 없다. " -"이 안내문은 파이썬3 설치를 다룬다." +"If your Mac OS X version is between the above versions, you do not need " +"to install or configure anything else to use Python 2. These instructions" +" document the installation of Python 3." +msgstr "그러니 파이썬2를 따로 설치하거나 설정할 필요는 없다. 이 안내문은 파이썬3 설치를 다룬다." -#: ../../starting/install3/osx.rst:17 +#: ../../starting/install3/osx.rst:18 msgid "" "The version of Python that ships with OS X is great for learning, but " "it's not good for development. The version shipped with OS X may be out " @@ -46,21 +49,19 @@ msgid "" "`_, which is considered the " "stable production version." msgstr "" -"OS X와 함께 달려오는 파이썬 버전은 학습하기에는 아주 좋다. " -"하지만 개발에는 좋지 않다. " -"OS X에 딸려오는 버전은 이미 구식이다." -"`안정화 된 `공식 최신 버전의 파이썬 릴리즈보다 " -"`_ 구식이다." +"OS X와 함께 달려오는 파이썬 버전은 학습하기에는 아주 좋다. 하지만 개발에는 좋지 않다. OS X에 딸려오는 버전은 이미 " +"구식이다.`안정화 된 `공식 최신 버전의 파이썬 릴리즈보다 `_ 구식이다." -#: ../../starting/install3/osx.rst:25 +#: ../../starting/install3/osx.rst:26 msgid "Doing it Right" msgstr "똑바로 하기" -#: ../../starting/install3/osx.rst:27 +#: ../../starting/install3/osx.rst:28 msgid "Let's install a real version of Python." msgstr "이제 진짜 파이썬 버전을 설치해보자." -#: ../../starting/install3/osx.rst:29 +#: ../../starting/install3/osx.rst:30 msgid "" "Before installing Python, you'll need to install GCC. GCC can be obtained" " by downloading `Xcode `_, the " @@ -68,49 +69,47 @@ msgid "" "(must have an Apple account) or the even smaller `OSX-GCC-Installer " "`_ package." msgstr "" -"파이썬을 설치하기 전에 GCC를 설치해야 한다. " -"GCC는 `Xcode `_, " -"더 작은 `Command Line Tools `_ (Apple 계정이 있어야 함) " -"또는 더 작은 `OSX-GCC-Installer `_ " -"패키지를 다운로드하여 얻을 수 있다." +"파이썬을 설치하기 전에 GCC를 설치해야 한다. GCC는 `Xcode " +"`_, 더 작은 `Command Line Tools " +"`_ (Apple 계정이 있어야 함) 또는 더 작은 " +"`OSX-GCC-Installer `_ 패키지를 다운로드하여 얻을 수 있다." -#: ../../starting/install3/osx.rst:36 +#: ../../starting/install3/osx.rst:37 msgid "" "If you already have Xcode installed, do not install OSX-GCC-Installer. In" " combination, the software can cause issues that are difficult to " "diagnose." msgstr "" -"Xcode가 이미 설치되어 있다면 OSX-GCC-Installer를 설치하면 안된다. " -"둘 다 설치해서 GCC가 꼬여버리면 뭔지도 모를 문제가 발생할 수도 있다." +"Xcode가 이미 설치되어 있다면 OSX-GCC-Installer를 설치하면 안된다. 둘 다 설치해서 GCC가 꼬여버리면 뭔지도 " +"모를 문제가 발생할 수도 있다." -#: ../../starting/install3/osx.rst:41 +#: ../../starting/install3/osx.rst:42 msgid "" "If you perform a fresh install of Xcode, you will also need to add the " "commandline tools by running ``xcode-select --install`` on the terminal." msgstr "" -"Xcode를 새로 설치한다면 터미널에서 " -"``xcode-select --install`` 을 실행하여 commandline tools을 추가해야 한다." +"Xcode를 새로 설치한다면 터미널에서 ``xcode-select --install`` 을 실행하여 commandline " +"tools을 추가해야 한다." -#: ../../starting/install3/osx.rst:44 +#: ../../starting/install3/osx.rst:45 msgid "" "While OS X comes with a large number of Unix utilities, those familiar " "with Linux systems will notice one key component missing: a package " "manager. `Homebrew `_ fills this void." msgstr "" -"OS X에는 다양한 Unix 유틸리티가 포함되어 있지만, 리눅스에 익숙한 사람이라면 한 가지 " -"중요한 구성요소가 빠졌다는 사실을 알아챌 것이다. " -"바로 패키지 매니저다. " -"`Homebrew `_ 가 그 빈자리를 메꾼다." +"OS X에는 다양한 Unix 유틸리티가 포함되어 있지만, 리눅스에 익숙한 사람이라면 한 가지 중요한 구성요소가 빠졌다는 사실을 " +"알아챌 것이다. 바로 패키지 매니저다. `Homebrew `_ 가 그 빈자리를 메꾼다." -#: ../../starting/install3/osx.rst:48 +#: ../../starting/install3/osx.rst:49 msgid "" "To `install Homebrew `_, open :file:`Terminal` " "or your favorite OS X terminal emulator and run" msgstr "" -"`Homebrew를 설치 `_ 하려면, " -":file:`Terminal` 이든 아니면 달리 좋아하는 OS X의 터미널 에뮬레이터를 아래 스크립트를 실행해라." +"`Homebrew를 설치 `_ 하려면, :file:`Terminal` 이든 아니면 " +"달리 좋아하는 OS X의 터미널 에뮬레이터를 아래 스크립트를 실행해라." -#: ../../starting/install3/osx.rst:55 +#: ../../starting/install3/osx.rst:56 msgid "" "The script will explain what changes it will make and prompt you before " "the installation begins. Once you've installed Homebrew, insert the " @@ -118,78 +117,75 @@ msgid "" "variable. You can do this by adding the following line at the bottom of " "your :file:`~/.profile` file" msgstr "" -"이 스크립트는 설치를 시작하기 전에 변경 사항 설명 메시지를 표시한다. " -"Homebrew가 이미 설치되어 있다면 :envvar:`PATH` 환경 변수 최상단에 " -"Homebrew의 디렉토리를 추가하자. " -"하기 라인을 :file:`~/.profile` 의 마지막 라인에 추가하면 된다. " +"이 스크립트는 설치를 시작하기 전에 변경 사항 설명 메시지를 표시한다. Homebrew가 이미 설치되어 있다면 " +":envvar:`PATH` 환경 변수 최상단에 Homebrew의 디렉토리를 추가하자. 하기 라인을 :file:`~/.profile`" +" 의 마지막 라인에 추가하면 된다. " -#: ../../starting/install3/osx.rst:65 +#: ../../starting/install3/osx.rst:66 msgid "If you have OS X 10.12 (Sierra) or older use this line instead" msgstr "OS X 10.12 (Sierra) 혹은 그 이전 버전을 사용하고 있다면 아래의 라인을 대신 사용해라." -#: ../../starting/install3/osx.rst:71 +#: ../../starting/install3/osx.rst:72 msgid "Now, we can install Python 3:" msgstr "이제 우리는 파이썬3를 설치할 수 있다." -#: ../../starting/install3/osx.rst:77 +#: ../../starting/install3/osx.rst:78 msgid "This will take a minute or two." msgstr "1~2분 정도 걸린다." -#: ../../starting/install3/osx.rst:81 +#: ../../starting/install3/osx.rst:82 msgid "Pip" msgstr "Pip" -#: ../../starting/install3/osx.rst:83 +#: ../../starting/install3/osx.rst:84 msgid "Homebrew installs ``pip`` pointing to the Homebrew'd Python 3 for you." msgstr "Homebrew는 Homebrew의 파이썬3를 바라보는 ``pip`` 를 설치한다." -#: ../../starting/install3/osx.rst:88 +#: ../../starting/install3/osx.rst:89 msgid "Working with Python 3" msgstr "파이썬3로 작업하기" -#: ../../starting/install3/osx.rst:90 +#: ../../starting/install3/osx.rst:91 msgid "" "At this point, you have the system Python 2.7 available, potentially the " ":ref:`Homebrew version of Python 2 ` installed, and the " "Homebrew version of Python 3 as well." msgstr "" -"여기까지 했으면 이 시점에서 너의 시스템은 파이썬2.7을 사용 가능하고, " -"아마도 :ref:`파이썬2의 Homebrew 버전 ` 도 설치되어 있을 것이고, " -"파이썬3의 Homebrew 버전도 설치되어 있을 것이다." +"여기까지 했으면 이 시점에서 너의 시스템은 파이썬2.7을 사용 가능하고, 아마도 :ref:`파이썬2의 Homebrew 버전 " +"` 도 설치되어 있을 것이고, 파이썬3의 Homebrew 버전도 설치되어 있을 것이다." -#: ../../starting/install3/osx.rst:98 ../../starting/install3/osx.rst:110 +#: ../../starting/install3/osx.rst:99 ../../starting/install3/osx.rst:111 msgid "will launch the Homebrew-installed Python 3 interpreter." msgstr "위 명령은 Homebrew로 설치한 파이썬3 인터프리터를 실행한다." -#: ../../starting/install3/osx.rst:104 +#: ../../starting/install3/osx.rst:105 msgid "will launch the Homebrew-installed Python 2 interpreter (if any)." msgstr "위 명령은 Homebrew로 설치한 파이썬2 인터프리터(있으면 말이지)를 실행한다." -#: ../../starting/install3/osx.rst:112 +#: ../../starting/install3/osx.rst:113 msgid "" "If the Homebrew version of Python 2 is installed then ``pip2`` will point" " to Python 2. If the Homebrew version of Python 3 is installed then " "``pip`` will point to Python 3." msgstr "" -"파이썬2의 Homebrew 버전이 설치되었다면 ``pip2`` 는 파이썬2를 가리킨다. " -"파이썬3의 Homebrew 버전이 설치되었다면 ``pip`` 는 파이썬3를 가리킨다." +"파이썬2의 Homebrew 버전이 설치되었다면 ``pip2`` 는 파이썬2를 가리킨다. 파이썬3의 Homebrew 버전이 " +"설치되었다면 ``pip`` 는 파이썬3를 가리킨다." -#: ../../starting/install3/osx.rst:115 +#: ../../starting/install3/osx.rst:116 msgid "The rest of the guide will assume that ``python`` references Python 3." msgstr "이 가이드의 나머지 부분에서 ``python`` 이라 함은 파이썬3를 가리킨다고 가정하겠다. " -#: ../../starting/install3/osx.rst:126 +#: ../../starting/install3/osx.rst:127 msgid "Pipenv & Virtual Environments" msgstr "Pipenv & Virtual Environments(가상 환경)" -#: ../../starting/install3/osx.rst:128 +#: ../../starting/install3/osx.rst:129 msgid "" "The next step is to install Pipenv, so you can install dependencies and " "manage virtual environments." -msgstr "" -"그 다음 순서로 Pipenv를 설치하여 디펜던시를 설치하고 가상 환경을 관리할 수 있다." +msgstr "그 다음 순서로 Pipenv를 설치하여 디펜던시를 설치하고 가상 환경을 관리할 수 있다." -#: ../../starting/install3/osx.rst:130 +#: ../../starting/install3/osx.rst:131 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " @@ -197,34 +193,30 @@ msgid "" "but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environment(이하 가상 환경 -역주)은 가상의 파이썬 환경을 만들어 " -"서로 다른 프로젝트에 필요한 디펜던시를 별도의 위치에 두는 도구이다. " -"\"프로젝트 X는 버전 1.x에 의존하지만 " -"프로젝트 Y는 4.x가 필요합니다\"라는 딜레마를 해결하고 " -"전역 패키지 디렉토리를 깨끗하게 관리할 수 ​​있도록 한다." +"Virtual Environment(이하 가상 환경 -역주)은 가상의 파이썬 환경을 만들어 서로 다른 프로젝트에 필요한 디펜던시를 " +"별도의 위치에 두는 도구이다. \"프로젝트 X는 버전 1.x에 의존하지만 프로젝트 Y는 4.x가 필요합니다\"라는 딜레마를 해결하고" +" 전역 패키지 디렉토리를 깨끗하게 관리할 수 ​​있도록 한다." -#: ../../starting/install3/osx.rst:135 +#: ../../starting/install3/osx.rst:136 msgid "" "For example, you can work on a project which requires Django 1.10 while " "also maintaining a project which requires Django 1.8." -msgstr "" -"예를들어 Django 1.10으로 프로젝트를 진행하는 한편 " -"Django 1.8로 만들어진 프로젝트를 유지보수 하고 있다면 " +msgstr "예를들어 Django 1.10으로 프로젝트를 진행하는 한편 Django 1.8로 만들어진 프로젝트를 유지보수 하고 있다면 " -#: ../../starting/install3/osx.rst:138 +#: ../../starting/install3/osx.rst:139 msgid "" "So, onward! To the :ref:`Pipenv & Virtual Environments " "` docs!" msgstr "" -"전진! " -":ref:`Pipenv & 가상 환경(Virtual Environments) " -"` 문서를 향해!" +"전진! :ref:`Pipenv & 가상 환경(Virtual Environments) `" +" 문서를 향해!" -#: ../../starting/install3/osx.rst:142 +#: ../../starting/install3/osx.rst:143 msgid "" "This page is a remixed version of `another guide " "`_, " "which is available under the same license." msgstr "" -"이 페이지는 같은 라이선스를 사용하는 `다른 가이드 `_ " -"의 리믹스 버전이다." +"이 페이지는 같은 라이선스를 사용하는 `다른 가이드 `_ 의 리믹스 버전이다." + diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.po b/docs/locale/ko/LC_MESSAGES/writing/reading.po index 327fb5b50..81b2f43c7 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/reading.po +++ b/docs/locale/ko/LC_MESSAGES/writing/reading.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn LoveMeWithoutAll@Gmail.com\n" "Language-Team: Korean \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../writing/reading.rst:5 msgid "Reading Great Code" @@ -102,14 +102,15 @@ msgstr "" "작성된 Apache2 라이선스의 HTTP 라이브러리입니다. 인류를 위해 만들었습니다. " #: ../../writing/reading.rst:46 +#, fuzzy msgid "" -"`Tablib `_ Tablib is a format-" +"`Tablib `_ Tablib is a format-" "agnostic tabular dataset library, written in Python." msgstr "" "`Tablib `_ Tablib은 포맷에 구속받지 않는 " "tabular 데이터셋 라이브러리입니다. 파이썬으로 작성했습니다. (역주: Requests, Tablib은 저자 본인의 프로젝트)" -#: ../../writing/reading.rst +#: ../../writing/reading.rst:50 ../../writing/reading.rst:52 msgid "Todo" msgstr "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po index 5fad46d99..6e4847e5c 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/style.po +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -12,14 +12,14 @@ msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-03-15 08:55+0000\n" +"POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: YoungSeon.Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.2.0\n" +"Generated-By: Babel 2.18.0\n" #: ../../writing/style.rst:6 msgid "Code Style" @@ -673,18 +673,18 @@ msgstr "" "`pep8.org `_ " #: ../../writing/style.rst:466 +#, fuzzy msgid "" "This is highly recommended reading. The entire Python community does " "their best to adhere to the guidelines laid out within this document. " -"Some project may sway from it from time to time, while others may `amend " -"its recommendations `_." +"Some project may sway from it from time to time, while others may amend " +"its recommendations." msgstr "" "읽어볼 것을 강력 추천합니다. 모든 파이썬 커뮤니티가 이 문서의 가이드라인을 준수하려고 노력합니다. 시간이 흐름에 따라 여기서 " "멀어지는 프로젝트도 있을겁니다. 그렇지 않은 분들은 `이 추천사항을 수정해주세요 `_." -#: ../../writing/style.rst:471 +#: ../../writing/style.rst:470 #, fuzzy msgid "" "That being said, conforming your Python code to PEP 8 is generally a good" @@ -699,27 +699,27 @@ msgstr "" "`_ 라는 커맨드라인 프로그램이 있습니다. 터미널에서 아래의 명령어를" " 돌려 설치해보세요. " -#: ../../writing/style.rst:483 +#: ../../writing/style.rst:482 msgid "" "Then run it on a file or series of files to get a report of any " "violations." msgstr "그런 다음 파일 하나 혹은 여러 개의 파일에다 돌리면 PEP 8 위반 여부 보고서를 얻을 수 있습니다. " -#: ../../writing/style.rst:498 +#: ../../writing/style.rst:497 msgid "Auto-Formatting" msgstr "" -#: ../../writing/style.rst:500 +#: ../../writing/style.rst:499 msgid "" "There are several auto-formatting tools that can reformat your code, in " "order to comply with PEP 8." msgstr "" -#: ../../writing/style.rst:503 +#: ../../writing/style.rst:502 msgid "**autopep8**" msgstr "" -#: ../../writing/style.rst:505 +#: ../../writing/style.rst:504 #, fuzzy msgid "" "The program `autopep8 `_ can be used " @@ -729,11 +729,11 @@ msgstr "" "`autopep8 `_ 프로그램도 코드를 PEP 8 스타일로" " 자동 재포맷하는데 쓰일 수 있습니다. 이렇게 설치하시면 됩니다: " -#: ../../writing/style.rst:512 +#: ../../writing/style.rst:511 msgid "Use it to format a file in-place with:" msgstr "포맷할 파일에다가 이렇게 사용하시며 됩니다: " -#: ../../writing/style.rst:518 +#: ../../writing/style.rst:517 msgid "" "Excluding the ``--in-place`` flag will cause the program to output the " "modified code directly to the console for review. The ``--aggressive`` " @@ -743,12 +743,12 @@ msgstr "" "``--in-place`` 플래그를 빼면 프로그램이 콘솔에 바로 뽑아준 변경된 코드로 리뷰를 할 수 있습니다. " "``--aggressive`` 플래그는 더 많은 변화를 수행하고, 여러 번 수행해서 더 많은 효과를 볼 수도 있습니다. " -#: ../../writing/style.rst:522 +#: ../../writing/style.rst:521 #, fuzzy msgid "**yapf**" msgstr "**나쁜 예**" -#: ../../writing/style.rst:524 +#: ../../writing/style.rst:523 msgid "" "While autopep8 focuses on solving the PEP 8 violations, `yapf " "`_ tries to improve the format of your " @@ -757,22 +757,22 @@ msgid "" "gets installed with:" msgstr "" -#: ../../writing/style.rst:534 +#: ../../writing/style.rst:533 msgid "Run the auto-formatting of a file with:" msgstr "" -#: ../../writing/style.rst:540 +#: ../../writing/style.rst:539 msgid "" "Similar to autopep8, running the command without the ``--in-place`` flag " "will output the diff for review before applying the changes." msgstr "" -#: ../../writing/style.rst:543 +#: ../../writing/style.rst:542 #, fuzzy msgid "**black**" msgstr "**나쁜 예**" -#: ../../writing/style.rst:545 +#: ../../writing/style.rst:544 msgid "" "The auto-formatter `black `_ offers an " "opinionated and deterministic reformatting of your code base. Its main " @@ -783,32 +783,32 @@ msgid "" " You can install the tool as follows:" msgstr "" -#: ../../writing/style.rst:557 +#: ../../writing/style.rst:556 msgid "A python file can be formatted with:" msgstr "" -#: ../../writing/style.rst:563 +#: ../../writing/style.rst:562 msgid "" "Adding the ``--diff`` flag provides the code modification for review " "without direct application." msgstr "" -#: ../../writing/style.rst:568 +#: ../../writing/style.rst:567 msgid "Conventions" msgstr "컨벤션(convention)" -#: ../../writing/style.rst:570 +#: ../../writing/style.rst:569 msgid "" "Here are some conventions you should follow to make your code easier to " "read." msgstr "읽기 쉬운 코드 작성을 위한 코딩 컨벤션을 소개합니다. " -#: ../../writing/style.rst:573 +#: ../../writing/style.rst:572 #, fuzzy msgid "Check if a variable equals a constant" msgstr "변수와 상수가 같은지 여부를 체크하기" -#: ../../writing/style.rst:575 +#: ../../writing/style.rst:574 #, fuzzy msgid "" "You don't need to explicitly compare a value to True, or None, or 0 -- " @@ -820,26 +820,26 @@ msgstr "" " Testing `_ 을 보시면 어느 것이 false인지 알 수 있습니다. " -#: ../../writing/style.rst:580 ../../writing/style.rst:612 -#: ../../writing/style.rst:650 ../../writing/style.rst:691 -#: ../../writing/style.rst:708 ../../writing/style.rst:753 -#: ../../writing/style.rst:799 ../../writing/style.rst:834 +#: ../../writing/style.rst:579 ../../writing/style.rst:611 +#: ../../writing/style.rst:649 ../../writing/style.rst:690 +#: ../../writing/style.rst:707 ../../writing/style.rst:752 +#: ../../writing/style.rst:798 ../../writing/style.rst:833 msgid "**Bad**:" msgstr "" -#: ../../writing/style.rst:590 ../../writing/style.rst:622 -#: ../../writing/style.rst:657 ../../writing/style.rst:671 -#: ../../writing/style.rst:697 ../../writing/style.rst:727 -#: ../../writing/style.rst:766 ../../writing/style.rst:808 -#: ../../writing/style.rst:845 +#: ../../writing/style.rst:589 ../../writing/style.rst:621 +#: ../../writing/style.rst:656 ../../writing/style.rst:670 +#: ../../writing/style.rst:696 ../../writing/style.rst:726 +#: ../../writing/style.rst:765 ../../writing/style.rst:807 +#: ../../writing/style.rst:844 msgid "**Good**:" msgstr "" -#: ../../writing/style.rst:607 +#: ../../writing/style.rst:606 msgid "Access a Dictionary Element" msgstr "딕셔너리의 엘리먼트에 접근하기" -#: ../../writing/style.rst:609 +#: ../../writing/style.rst:608 msgid "" "Don't use the :py:meth:`dict.has_key` method. Instead, use ``x in d`` " "syntax, or pass a default argument to :py:meth:`dict.get`." @@ -847,11 +847,11 @@ msgstr "" ":py:meth:`dict.has_key` 메소드를 쓰지 마세요. 대신에 ``x in d`` 문법을 쓰거나, " ":py:meth:`dict.get` 에 디폴트값을 넣어 쓰세요. " -#: ../../writing/style.rst:636 +#: ../../writing/style.rst:635 msgid "Short Ways to Manipulate Lists" msgstr "리스트를 조작하는 지름길" -#: ../../writing/style.rst:638 +#: ../../writing/style.rst:637 #, fuzzy msgid "" "`List comprehensions `_ 은 리스트로 작업하는 강력하고도 간결한 방법입니다. :py:func:`map` 과 " ":py:func:`filter` 함수 또한 리스트에 명령을 수행하는 또다른 간결한 문법입니다. " -#: ../../writing/style.rst:642 +#: ../../writing/style.rst:641 msgid "" "`Generator expressions `_ follows almost the same syntax as list " "comprehensions but return a generator instead of a list." msgstr "" -#: ../../writing/style.rst:647 +#: ../../writing/style.rst:646 msgid "" "Creating a new list requires more work and uses more memory. If you are " "just going to loop through the new list, prefer using an iterator " "instead." msgstr "" -#: ../../writing/style.rst:664 +#: ../../writing/style.rst:663 msgid "" "Use list comprehensions when you really need to create a second list, for" " example if you need to use the result multiple times." msgstr "" -#: ../../writing/style.rst:668 +#: ../../writing/style.rst:667 msgid "" "If your logic is too complicated for a short list comprehension or " "generator expression, consider using a generator function instead of " "returning a list." msgstr "" -#: ../../writing/style.rst:689 +#: ../../writing/style.rst:688 msgid "Never use a list comprehension just for its side effects." msgstr "" -#: ../../writing/style.rst:706 +#: ../../writing/style.rst:705 #, fuzzy msgid "Filtering a list" msgstr "리스트로 문자열 만들기" -#: ../../writing/style.rst:710 +#: ../../writing/style.rst:709 msgid "Never remove items from a list while you are iterating through it." msgstr "" -#: ../../writing/style.rst:720 +#: ../../writing/style.rst:719 msgid "Don't make multiple passes through the list." msgstr "" -#: ../../writing/style.rst:729 +#: ../../writing/style.rst:728 msgid "Use a list comprehension or generator expression." msgstr "" -#: ../../writing/style.rst:741 +#: ../../writing/style.rst:740 msgid "Possible side effects of modifying the original list" msgstr "" -#: ../../writing/style.rst:743 +#: ../../writing/style.rst:742 msgid "" "Modifying the original list can be risky if there are other variables " "referencing it. But you can use *slice assignment* if you really want to " "do that." msgstr "" -#: ../../writing/style.rst:752 +#: ../../writing/style.rst:751 msgid "Modifying the values in a list" msgstr "" -#: ../../writing/style.rst:755 +#: ../../writing/style.rst:754 msgid "" "Remember that assignment never creates a new object. If two or more " "variables refer to the same list, changing one of them changes them all." msgstr "" -#: ../../writing/style.rst:768 +#: ../../writing/style.rst:767 msgid "It's safer to create a new list object and leave the original alone." msgstr "" -#: ../../writing/style.rst:778 +#: ../../writing/style.rst:777 msgid "Use :py:func:`enumerate` keep a count of your place in the list." msgstr ":py:func:`enumerate` 를 사용하면 리스트 안의 순서를 세어 기억시켜둘 수 있습니다. " -#: ../../writing/style.rst:790 +#: ../../writing/style.rst:789 msgid "" "The :py:func:`enumerate` function has better readability than handling a " "counter manually. Moreover, it is better optimized for iterators." msgstr ":py:func:`enumerate` 함수는 직접 번호를 매기는 코드를 다루는 방법보다 가독성이 좋습니다. " -#: ../../writing/style.rst:794 +#: ../../writing/style.rst:793 msgid "Read From a File" msgstr "파일에서 읽기" -#: ../../writing/style.rst:796 +#: ../../writing/style.rst:795 msgid "" "Use the ``with open`` syntax to read from files. This will automatically " "close files for you." msgstr "``with open`` 문법으로 파일을 읽으세요. 파일을 자동으로 닫아줍니다. " -#: ../../writing/style.rst:816 +#: ../../writing/style.rst:815 msgid "" "The ``with`` statement is better because it will ensure you always close " "the file, even if an exception is raised inside the ``with`` block." @@ -964,11 +964,11 @@ msgstr "" "``with`` 문은 파일을 반드시 닫아주기 때문에 더 좋습니다. 심지어 ``with`` 블럭 안에서 예외(exception)이 " "발생해도 그렇습니다. " -#: ../../writing/style.rst:820 +#: ../../writing/style.rst:819 msgid "Line Continuations" msgstr "줄 잇기" -#: ../../writing/style.rst:822 +#: ../../writing/style.rst:821 msgid "" "When a logical line of code is longer than the accepted limit, you need " "to split it over multiple physical lines. The Python interpreter will " @@ -981,7 +981,7 @@ msgstr "" "역슬래시(\\)일 경우 자동으로 줄을 이어줍니다. 이는 많은 경우에 도움이 되지만 망가지기 쉬운 경우가 있기에 일반적으로 " "피해야합니다: 역슬래시 뒤에 빈 칸(white space)가 있는 경우, 코드가 망가지고 예상치 못한 결과가 나옵니다. " -#: ../../writing/style.rst:829 +#: ../../writing/style.rst:828 #, fuzzy msgid "" "A better solution is to use parentheses around your elements. Left with " @@ -992,7 +992,7 @@ msgstr "" "더 나은 해결책은 괄호()를 두르는 것입니다. 파이썬 인터프리터는 왼쪽의 열린 괄호에서부터 오른쪽의 닫힌 괄호까지의 줄을 자동으로 " "연결합니다. 중괄호{}와 대괄호[]에서도 동일하게 동작합니다. " -#: ../../writing/style.rst:858 +#: ../../writing/style.rst:857 msgid "" "However, more often than not, having to split a long logical line is a " "sign that you are trying to do too many things at the same time, which " From a2e389b4ec7509a28ea594b15593ca6968f66885 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 08:47:07 +0900 Subject: [PATCH 073/117] Update fuzzy translations to match latest English source MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Resolved all 39 fuzzy entries across 6 .po files after upstream sync: - index.po (1), scenarios/scrape.po (1), starting/install/osx.po (10), starting/install3/osx.po (2), writing/reading.po (4), writing/style.po (21) Updates include: URL refreshes (http→https, pep8→pycodestyle, kennethreitz/tablib→jazzband/tablib, artifex.org→github), corrected mistranslations (yapf/black were "나쁜 예", "Filtering a list" was "리스트로 문자열 만들기"), typo fixes (콘트리트→콘크리트, 윈하시면→원하시면), and adjustments where the English source was reworded. Preserved each file's existing style (e.g., scrape.po uses 해라체; install/osx.po uses 합쇼체) and terminology per project convention. .mo files recompiled with sphinx-intl build. Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/index.mo | Bin 5469 -> 5770 bytes docs/locale/ko/LC_MESSAGES/index.po | 5 +- docs/locale/ko/LC_MESSAGES/intro/learning.mo | Bin 30659 -> 384 bytes docs/locale/ko/LC_MESSAGES/scenarios/admin.mo | Bin 18549 -> 384 bytes .../locale/ko/LC_MESSAGES/scenarios/client.mo | Bin 4617 -> 3832 bytes docs/locale/ko/LC_MESSAGES/scenarios/gui.mo | Bin 10297 -> 384 bytes .../ko/LC_MESSAGES/scenarios/imaging.mo | Bin 4511 -> 384 bytes .../locale/ko/LC_MESSAGES/scenarios/scrape.mo | Bin 6801 -> 6770 bytes .../locale/ko/LC_MESSAGES/scenarios/scrape.po | 9 +- docs/locale/ko/LC_MESSAGES/scenarios/xml.mo | Bin 2329 -> 384 bytes .../ko/LC_MESSAGES/starting/install/osx.mo | Bin 4380 -> 8590 bytes .../ko/LC_MESSAGES/starting/install/osx.po | 48 +- .../ko/LC_MESSAGES/starting/install3/osx.mo | Bin 8362 -> 8489 bytes .../ko/LC_MESSAGES/starting/install3/osx.po | 8 +- docs/locale/ko/LC_MESSAGES/writing/reading.mo | Bin 3228 -> 5183 bytes docs/locale/ko/LC_MESSAGES/writing/reading.po | 20 +- docs/locale/ko/LC_MESSAGES/writing/style.mo | Bin 34844 -> 41007 bytes docs/locale/ko/LC_MESSAGES/writing/style.po | 775 +++++++++--------- 18 files changed, 407 insertions(+), 458 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/index.mo b/docs/locale/ko/LC_MESSAGES/index.mo index f9b74ad31a79cdf0fe69045ea771a9814d6a99ee..791688111df835b8a365eda749cadcecc04deef7 100644 GIT binary patch delta 672 zcmYk&?@Lor7zgmjX{~MjkZT%cbEjTplsBf}(3QFsrPhjGm@oPT7k9b4u-$8yNk+j^ zXNGPh-DV+orY{16MS+V(^e6Np3hYJHEAfT*45Bx^?R$x!1BcJ^Je+f$bI$i;vts6l zP*)&~{g?+aH=N|ZQK})DLH-KX!%i2`b9fF$;3jN_t+hm_;Td=VK7f7jGqj*khc)mu z48X7O2vLT9BRGIU%Qm7zup73b*)>=Tr?wNlMSaFiGzfck5apd5UWAPvqG31!v+zA^ zfqmY;kGcu3;+%2ly!4BYXcts>61_lwx{csG3Vu|ZU;-L214rO5=rkVQO|%7!?pR;1}Wby+pGjg2xDkpudsm1~lL}`~(lf zLEOqYIN4+_)>tQ_8q-HrP1Q9iEytNMrp9HK)>%3sv&(nV30-5OhOQV=Dy3=)OG=tD zCMhzLw77ZHEw6=Ko9_CM80-`~+F7tG+z~n+>^9rHaCcUFI4zKnLnLpcJ6+) zU@`mAv^}@VmnV3!!g%4KJz3^i%h|m&-)4Rj0z&ZvpPKl$V6wy)Uz)B4aqXus<@p1h C6`I=s delta 533 zcmYk&OG_JJ6vpuHiQ2@2i05bP$paN(jW@eA1h=%z0me(!l0&f%SH^YZn^RZYphIQ3K$ zRdAdCPR=8Jr9VJFwiihe?7>D{!}sXm7+&BIwiQb`{EPv-$5$9Akvi}rzLYkU;?hd+ z4FfFsfyH=UDxHx3c_NMAZW-nFIF5F?G=q8ELT`oCf_vD2KXH>eztMeR)F)NpHICvf z*0EoGl~RUa3K#Gfj$kKW|HUju@Y7T21%Agco?t9u??GQ9|sTBI>(+|{-)@r%pWwZcV;kTSiRv;sLQgPg4Z4n z8%t?#G?t35#^Sa)ZO4*sV)RF&k;LMgbS6INolLA|VhQs@I+M(Xjnwi(n;i)D8IRWi T%bD}7c-}f^zN36|RkGqArWI6_ diff --git a/docs/locale/ko/LC_MESSAGES/index.po b/docs/locale/ko/LC_MESSAGES/index.po index 42c6c04c1..d2de321ed 100644 --- a/docs/locale/ko/LC_MESSAGES/index.po +++ b/docs/locale/ko/LC_MESSAGES/index.po @@ -22,14 +22,13 @@ msgstr "" "Generated-By: Babel 2.18.0\n" #: ../../index.rst:-1 -#, fuzzy msgid "" "An opinionated guide to the Python programming language and a best " "practice handbook for the installation, configuration, and usage of " "Python on a daily basis." msgstr "" -"이 장인정신으로 만든 안내서는 파이썬 초보자와 숙련된 파이썬 개발자 모두에게 매일매일 단위로 파이썬의 설치, 설정, 사용법에 대한 " -"모범 사례 안내서입니다." +"파이썬 프로그래밍 언어에 대한 독단적인 안내서이자, 파이썬의 설치, 설정, 일상적인 " +"사용에 대한 모범 사례 안내서입니다." #: ../../index.rst:12 msgid "The Hitchhiker's Guide to Python!" diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.mo b/docs/locale/ko/LC_MESSAGES/intro/learning.mo index 82ba2e79ead2dbf0724a73255d4031e74dc5d162..e64754bdfaae516a10071360018eec59c6c71757 100644 GIT binary patch delta 114 zcmX^7p0R;h=bjMDR0bem1Y#K=RsnI4fDVuy1eDYT(vuDCLj=rp4NP^73>6G4tc=XG y4J;>5wU3k54M|PRwNmhL^m7k&baz#-@$qrU$<)g)O1GPA;ZVqCXrX7o#Q*>mj1`yw literal 30659 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 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo b/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo index 66cb50defc0c78ae3a027fca07f0583ec51b679d..e64754bdfaae516a10071360018eec59c6c71757 100644 GIT binary patch delta 114 zcmex5fw6&E=bjMDR0bem1Y#K=RsnI4fDVuy1eDYT(vy=^Lj=rp4NP^73>6G4tc=XG y4J;=gQ;n0>4M|PRwNmhL^m7k&baz#-@$qrU$<)g)O1GPwsaD8lXrX7o#Q*>dgcYy= literal 18549 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 literal 10297 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 H+_C)&CrzJ7 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo index bb9f7373033965dec632691a6b1ad30648bb5213..e64754bdfaae516a10071360018eec59c6c71757 100644 GIT binary patch delta 113 zcmbQQ+`z1JPl#nI0}wC*u?!HafH+7%2gnWrO6mgX$;&xH1k7{|Om&S66$~t_jLftR xEGKhw#!2gjq$cKCDfl@0xraKsyDHfD_&DTb>g5-u+f81_S;%H+p=ZFw005m)6lDMa literal 4511 zcmeHJ&u<$=6keeGkonz1FCg&{NNrWm+DWNY+_Y+%xYWpQOp-<_9OCirti8?d&UR+j zj)gdaIC0~|38@E!xbQ!4;mQGSaO3abd%Lz{psF}=iY4dEdS>5z@0;(vncvTz`P#$h zb$s8%_Yps=eCkhm-X%N>;M>6az~6wM0-p!&J?(jCfu8^a{FVV1$M2uu z@!^XVk6j@1P(bGKGyd>8zXF-ZH!oK_?z~d*_#DXN-vXIO^lHW9Ga&N_U#obWV}Ukl zXkrynsBB>3+{HR09nny`F~ycf@kC`bREeJY-e%;KAvcz;PO&?0$vPwB(bz@WOr;51 z-YtcH6~&o#GD+fWMEy9yyLFoB;(U_OSWXlR*gS$oApW!LhVUe&Dw9j)^d6j7{Gh$1*F8WrK;Y&8V^NzsJ8dT;a5dWnz)0GgzS1wc+G2QHMG@3^b@^?(n~lmJ+>F z1`s+D^8jKs00bmE);J7P!oJ6#H3O8m5N%R;Wa+&?jQ#wd2< zV#uao=0a3fSJK98{-t&6WC~ak<$|D;$_Lm6ENDOyx!9R?Dz)`;Q*Dvw+BiEm3SIWS zp0@7aeqjfsE9N4nf^ilY-_O|yOv3H z%aIvffEE`^X6zfdWAW>!Xu}>i9x`*6&>s06Iya(^O~J?V}9qlC*QHqu8+F)f^d4WEOx= zReygIkQH4iNUI}WYQrC?&KETzbqGSO{E$rw-Jwrb>zw?0p=tUmNhCt zC2(7&^=9*ZpVP$hENQu4)f!?|NLBStaE=yz3U9kHvKRy!1z9$sGMhzvss!S0jfz4O z6O~8;{mW>yug7$6bYo>*BcC0fG`ZD>lV1K0#;f#L&iP4F2|D9M`PW6uSOh;|_{8(% zxB;JqL#>aNz4wGjzv^|O6N&?6xaL|^C0g}K97q0IZC7#c5IsAJLvgDZS+TEMRO|2T zi!B^td03ZL94LN?kAXoH$k!5JU?>OD4nSHT zNbdmBl0fsz*N`BP{F{$%E(OHz;dz`PsZf+JYthy@Dwl^T5OKwHRQo(%H*YzdIE3e nZh5_ahr;WoEpO&6eLZ2$O!D3Bj1z`#%rr1OEa zK9GJ6q$Pp0xF7?=W*}_{q<;hHr$D+MsPCZ=1A_pNP84Ba03wDWpdpii{B|IH8OWCw zXJFU{q~D7(@G;y3N-UEAY5)o}Y_?=v$ti86ub+~iT&!16S(1^Tr(2X-SejZ~QmmI> zl)m{dmoB4#p{{|kuA!-dfrXW+skVW^WGkKw7AuA9{K+$U D9q&)L diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po index ddf59326b..fb5f8c778 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scrape.po @@ -55,7 +55,6 @@ msgid "lxml and Requests" msgstr "lxml과 Requests" #: ../../scenarios/scrape.rst:28 -#, fuzzy msgid "" "`lxml `_ is a pretty extensive library written for " "parsing XML and HTML documents very quickly, even handling messed up tags" @@ -66,10 +65,10 @@ msgid "" "``pip install requests``." msgstr "" "`lxml `_ 은 XML과 HTML 문서를 아주 빠르게 처리하기 위하여 작성된 대규모 " -"라이브러리이다. 심지어 구문 분석 중에 잘못된 태그를 처리해주기도 한다. `Requests `_ 모듈도 사용할 것이다. urllib2 모듈보다 속도와 가독성 면에서 뛰어나기 " -"때문이다. ``pip install lxml`` 과 ``pip install requests`` 로 둘 다 간단히 설치할 수 있다." -" " +"라이브러리이다. 심지어 구문 분석 중에 잘못된 태그를 처리해주기도 한다. `Requests " +"`_ 모듈도 사용할 것이다. 이미 내장된 urllib2 " +"모듈보다 속도와 가독성 면에서 뛰어나기 때문이다. ``pip install lxml`` 과 ``pip install " +"requests`` 로 둘 다 간단히 설치할 수 있다." #: ../../scenarios/scrape.rst:36 msgid "Let's start with the imports:" diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo b/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo index d3dfcff06856a99b0d7fc6314d822a836640bbb3..e64754bdfaae516a10071360018eec59c6c71757 100644 GIT binary patch delta 113 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 CB7lkj delta 1243 zcmc(dPiPZC6viiQup0X())o|MeMUjlCMK;xS=(A$lvV;(?4b(6PLoNpbay81AKM-@ z7x5$(Ts;&jh?m|xn5zil#fu=GJcu5>v>pTx9u&XbB`8QQqBt=8cJ_Vq-uH%gXJR!~ zf8QOy&#;o%eb}qP;g{7HW2}nv9&if01$Kh3!Rz1$Fb7^~Vax@W!DTSs%Gg2h9=I2L z3I;XafnB(>0p?8s!18=$*I|ji=kd2EX_Z&gG zUR!djN{$WcIvEaeO3jN(YJe65Ng+z)D)MS2?g~<#4f*uxnMp`_g&T4ph}M)LUE*#S zmtuho>A3uYX>!+4QezWUQJhCG5@@z4YkI{qN`lJDj>M*E$O=t|MreqXr1KYPb~sFA znnP*jERO1aBmTTTsVp&Pqln~|aLBC+5{shfxqQz2*-X%jqY#CwCFN0(OLAPpG|Bd4 zc*$9ETwyg!UNiV+sdPQVrpjTKny}BovV}J)+rp_fy^|`_Y*CfOKqy-X>TnbFoA1X< zct$uaD$C-sgk}Y~{-f5zJAzh&h%0Q%klf5PHrgJv_%GXUG?JZmESXDZhtjz`Wlw1N z{E=+dzuTqGXf&@91uiQduZZ-F;8yU5h6{x;)5s{hGMbn+J)4{9vvBKZBx~W(8Ofcb z=yN3N_a(2^2Q%5kKc9rn2jTdiPQpshC%@3Uwf>)`pg9ENe`gAI|273|eeLG@+A8@E UyL%h{uD31zq5dz8OO%iO03si8m;e9( diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po index ece2f235e..447c18fb7 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/osx.po @@ -22,23 +22,20 @@ msgstr "" "Generated-By: Babel 2.18.0\n" #: ../../starting/install/osx.rst:6 -#, fuzzy msgid "Installing Python 2 on Mac OS X" -msgstr "맥 OS X에 파이썬 설치하기" +msgstr "맥 OS X에 파이썬 2 설치하기" #: ../../starting/install/osx.rst:11 msgid "Check out our :ref:`guide for installing Python 3 on OS X`." msgstr "" #: ../../starting/install/osx.rst:13 -#, fuzzy msgid "" "**Mac OS X comes with Python 2.7 out of the box between versions 10.8 and" " 12.3.**" -msgstr "맥 OS X의 최신 버전인 엘 캐피탄에는 **파이썬 2.7이 딸려옵니다**." +msgstr "**맥 OS X 10.8부터 12.3 사이의 버전에는 파이썬 2.7이 딸려옵니다.**" #: ../../starting/install/osx.rst:15 -#, fuzzy msgid "" "If your Mac OS X version is between the above versions, you do not need " "to install or configure anything else to use Python. Having said that, I " @@ -48,12 +45,12 @@ msgid "" " Setuptools, as it makes it much easier for you to install and manage " "other third-party Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 " -"이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 " -"합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다. " +"맥 OS X 버전이 위의 범위에 해당한다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 " +"사용할 파이썬 어플리케이션을 만들기 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 " +"Setuptools는 반드시 설치해야 합니다. Setuptools가 있으면 다른 파이썬 서드파티 라이브러리들을 훨씬 쉽게 설치하고 " +"관리할 수 있습니다." #: ../../starting/install/osx.rst:22 -#, fuzzy msgid "" "The version of Python that ships with OS X is great for learning, but " "it's not good for development. The version shipped with OS X may be out " @@ -61,8 +58,9 @@ msgid "" "`_, which is considered the " "stable production version." msgstr "" -"OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. OS X에 딸려온 버전은 안정화된 `공식" -" 릴리즈 된 파이썬 `_ 보다 구버전일 것입니다." +"OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. OS X에 딸려온 버전은 `공식 최신 " +"파이썬 릴리즈 `_ 보다 구버전일 수 있습니다. 이 " +"릴리즈가 안정적인 프로덕션 버전으로 간주됩니다." #: ../../starting/install/osx.rst:30 msgid "Doing it Right" @@ -73,7 +71,6 @@ msgid "Let's install a real version of Python." msgstr "진짜 파이썬을 설치해보자!" #: ../../starting/install/osx.rst:34 -#, fuzzy msgid "" "Before installing Python, you'll need to install a C compiler. The " "fastest way is to install the Xcode Command Line Tools by running " @@ -84,19 +81,18 @@ msgid "" msgstr "" "파이썬을 설치하기 전에 C 컴파일러를 설치해야 합니다. 이를 위해서는 Xcode Command Line Tools을 설치하는 방법이" " 가장 빠릅니다. ``xcode-select --install`` 을 돌리시면 됩니다. 맥 앱스토어에서 `Xcode " -"`_ 의 풀 버전을 다운로드 받을 수도 있습니다. 비공식 버전이지만 " +"`_ 의 풀 버전을 다운로드 받을 수도 있습니다. 비공식 버전이지만 " "아주 작은 `OSX-GCC-Installer `_ 패키지를 설치해도 됩니다. " +"installer#readme>`_ 패키지를 설치해도 됩니다." #: ../../starting/install/osx.rst:43 -#, fuzzy msgid "" "If you already have Xcode installed, do not install OSX-GCC-Installer. In" " combination, the software can cause issues that are difficult to " "diagnose." msgstr "" -"이미 XCode를 설치했거나 Homebrew를 사용할 계획이라면, OSX-GCC-Installer는 설치하지 마세요. 두 개를 모두" -" 설치하면 원인을 밝히 어려운 문제를 일으킬 수 있습니다. " +"이미 XCode를 설치했다면, OSX-GCC-Installer는 설치하지 마세요. 두 개를 함께 설치하면 원인을 밝히기 어려운 문제를" +" 일으킬 수 있습니다." #: ../../starting/install/osx.rst:48 msgid "" @@ -105,24 +101,22 @@ msgid "" msgstr "" #: ../../starting/install/osx.rst:52 -#, fuzzy msgid "" "While OS X comes with a large number of Unix utilities, those familiar " "with Linux systems will notice one key component missing: a decent " "package manager. `Homebrew `_ fills this void." msgstr "" "OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 요소 하나가 빠져있다는 사실을 알아차릴 " -"것입니다. 바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를" +"것입니다. 바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를" " 채워줍니다." #: ../../starting/install/osx.rst:56 -#, fuzzy msgid "" "To `install Homebrew `_, open :file:`Terminal` " "or your favorite OS X terminal emulator and run" msgstr "" -"`Homebrew `_ 를 설치하려면 :file:`터미널` 을 열거나 마음에 드는 " -"OSX 터미널 에뮬레이터를 열고 아래 코드를 그냥 실행하기만 하면 됩니다." +"`Homebrew `_ 를 설치하려면 :file:`터미널` 을 열거나 마음에 드는 OSX" +" 터미널 에뮬레이터를 열고 아래 코드를 실행하면 됩니다." #: ../../starting/install/osx.rst:63 msgid "" @@ -188,7 +182,6 @@ msgid "Virtual Environments" msgstr "Virtual Environments" #: ../../starting/install/osx.rst:121 -#, fuzzy msgid "" "A Virtual Environment (commonly referred to as a 'virtualenv') is a tool " "to keep the dependencies required by different projects in separate " @@ -196,9 +189,9 @@ msgid "" "\"Project X depends on version 1.x but, Project Y needs 4.x\" dilemma, " "and keeps your global site-packages directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 여러 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 " -"툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " -"패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." +"Virtual Environment(보통 'virtualenv'로 부릅니다)는 각 프로젝트마다 파이썬 가상 환경을 만들어 서로 다른 " +"프로젝트가 필요로 하는 의존성을 별도의 위치에 분리해주는 툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트 Y는 " +"버전 4.x가 필요한\" 난국을 해결해주고, 전역 site-packages 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." #: ../../starting/install/osx.rst:126 msgid "" @@ -216,13 +209,12 @@ msgstr "" "guide/blob/master/docs/dev/virtualenvs.rst>`_ 문서에서 볼 수 있습니다." #: ../../starting/install/osx.rst:133 -#, fuzzy msgid "" "This page is a remixed version of `another guide " "`_, " "which is available under the same license." msgstr "" -"이 페이지는 `다른 안내서 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." #~ msgid "or Python 3:" diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.mo index 1044f8ee30586339367cc5e1238613a1cc7ed2dc..5fd309a6b8bf1d10693c1e1fc395e6bb750c7e54 100644 GIT binary patch delta 790 zcmX}o?@Lo*6bJC5rBlN>9WBdhCkqPO#(tPC328#vi`5W|%=KpKZ7y;*w`JN7He{9L zqQTv;$bpnn)}UxZ`auK{^e*U4(7({VBO-!=q`udizPNmzbDsO0=RD`JXR#~2E8asy z%Vk8Z_2ZZ*YM5;-JJBJmmyL1T?}(KvLVk+*OM{Jw$czPewl6<&hlh(E)3 z(1&g}!iG8`58MOY@GSJ>`~xT={%asgAr|Z7h_Lw6Kr{-MjYQZZ5miz!0ll!+q`jyg zsuMD9(h7Zm*ATZi5-q?ta3>txOyq<&U@LqD)faz*7We}OA@^<33QfWDNc@88i$hK5 z9^TtZ^a%O)m>X)-$aYK#UWX>^cVWIbLZ?`pTnzdUf02Hdxy(Eu#4ZX#n8$=jG$e+j z?6BM190(7w!)bFBEamn}_ZglLFGTogV32*i+_(BKhoWo8W5WUm2E;L8bu((=38_b) zDEO;>R!E=p9}R6*`#!7F!FG3tvu&?^zx1>&*knB}1V%d8>p9ka!qa_-4|u%?&xLGa zB-knW4WmaKZkxS^T3XibR@;-85~bv`l?GXv%qzK~lDot5^Q1DDRA$oh%?y`PDK&j7 z&rVxARt3dyMdy+qE@&_K|8K6y%4||QoKaUZX)a}p^7PA6c2=IAmluoDq&Zp`Zmicy K{cM$*dFmgyK)JX8 delta 667 zcmXZYNoZ416vpwB){G8GEY>DYS5%bLS6>^k3Iu2l~L!^cWa29`JKUSS0H}O4g!V@l$?Kp)S z@IG?2y#Alxx}+pWDSV-D8hhQ%AIxEx2EO8EtC8g*_pJRD&5J+bCGsD9gBMqdtid?l zmT?#p_yK#c%`0+^dy=@{s{3e`9Q2n+EFP{FnZQSFBJ4?!+p5@!NvvZX?d{D8y~I4Z zu$HOdXWW8kIz+6ARxygN(0cJA?!;f1!EJ%&`I!+G;}n+AdT}l&vIFPV(G2x>>qR&t z1?Kkxr?H*=eH&?#e2O_w;bpWY_ydRVxbfT8Z4S2R4m0XrwA+purmJk6^M;H=-Uq(0 zrgv-Mn9_UVu~?_B8xCJ)Z(NC6l|eXS?!+OuuJ1J6T9& zwSjzLtQc3h@qe+{7w%QfWuIy10L#&pH_-cd9@D$Tg7Dt`gA>wgab diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po index 9a58253d8..479459f55 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po @@ -8,7 +8,6 @@ # package. # FIRST AUTHOR , 2021. # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" @@ -27,19 +26,18 @@ msgid "Installing Python 3 on Mac OS X" msgstr "Mac OS X에 파이썬3 설치하기" #: ../../starting/install3/osx.rst:12 -#, fuzzy msgid "" "**Mac OS X comes with Python 2.7 out of the box between versions 10.8 and" " 12.3.**" -msgstr "**Mac OS X는 파이썬2가 기본적으로 설치되어서 나온다.**" +msgstr "**Mac OS X 10.8부터 12.3 사이의 버전에는 파이썬 2.7이 기본적으로 설치되어서 나온다.**" #: ../../starting/install3/osx.rst:14 -#, fuzzy msgid "" "If your Mac OS X version is between the above versions, you do not need " "to install or configure anything else to use Python 2. These instructions" " document the installation of Python 3." -msgstr "그러니 파이썬2를 따로 설치하거나 설정할 필요는 없다. 이 안내문은 파이썬3 설치를 다룬다." +msgstr "" +"맥 OS X 버전이 위의 범위에 해당한다면 파이썬2를 따로 설치하거나 설정할 필요는 없다. 이 안내문은 파이썬3 설치를 다룬다." #: ../../starting/install3/osx.rst:18 msgid "" diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.mo b/docs/locale/ko/LC_MESSAGES/writing/reading.mo index cfc24c2c550d93aed673c6923ef910ed83063fbe..a913c1db21fcdef0526c68a2b3e8741964112a0c 100644 GIT binary patch delta 2356 zcmb7EOK%%h6ut>b=>tTm!~z7;ffW)?npUDJh=;0D+DITG+Nu%)k@3tVo@VTE=h4<( z)M;u*CUKNRb`k@&aU`cns{n43f=dHsjml#In=ZOw>3c`;1B%3V$2M(&O)ZVjeVlvl zcfRwTTYU1y^U2#gy5<;ukK%h8UrJ8y`3a1rgO6_n-}w&4&cXfxdlvRYCu0`upRhY% z2OnbWJ?uHKKV$w=7h@m5mb)4I2=)%_N!amCjNR;DN%j{8V>s}`X2yQS#@kz)fuGyP zu*=vYY#H|1M;M!j{T}uy*keFEjdM0^2W;nKj3uz%wVknRuxDW}!tQ;XvG)P)cUX4d zw5pq?9&<^xG@abU?CtdN1E=GrV#LVR)kw@Z;pq;!7THSN(98rG8r+Sc1Zj$^kmK5( z>UuVOl$b_}Ic(X68;Lfjn(pd$)QIVHDx$dLM)c-AhC`ZV#D>?Dj`5DogKrp0)QV}j zj%`mQ;|Vun#d@^n($3b_Yl9zBYe+b(&_Lh@3_4CCFrup#GErTJqPlAvY7;@+3!8=$ zktsyWCiGoL=g8lQO)j#FelKkD+!@V5R*7M?;7mwd_QQ zV!C_EvPVMHzw@0CnU4hRdA6$euJO*_IyN6y&YTIO z9=V%chqnwK)9sNnx;Gr~8#P?Vix?x;&Qq;r$!*&O^;B$EM7dd zEzL9apcG`pRMXR>vM6o=?T}}ZriZ=ZVciZ9W@b-|PmOF{>Qqu8$4(pwa9{Yi6hw#) z9XT@41e^>ILk1CeqQsJRH$kp43^!F#1BJ$1+cGJlE1GV%Pebjxbg`@vLvNl&IRL{z z6fZ6nfbDyb9)0&MvMuC=qB#l2)uU1&eV~@YUQCTN)fJ6;F#zaMEnI4Zy?}d71Jx}i za?f-h-M*)%@5P?oyQpvP%e(iy(DzbqtUH>!)BS4h{Y~-CU3+ssZn~A6s)^FNpQ=&g z>Z(|*iH}D~%w-#E6@Fn=TquZAiukn(Us`Wm$X@wJpcSHM1rZ}U7?Y}7`He_o*W zVmZSn@?v?E{A^atrLl}THR?5ysmNd=RppnkT%pF5^Ng=8Km5yswz3S^Zbv>=AU;{; zOLgM4%VI%75(_f~1paK1FKv*>6vXmu3!XoNmcE~ZwAPu2LP)ubq= z`D6w`dz-z>FXs8B6`TnXPgVViy7)BfpTjKZVZKNOHYjEeHHWZa#Nue~TF941fB-2SK09_&z!)&^Se-ec%uV+Q2B;|oJO2OnHanxdBNy@%a zn@7cE7AW^c#Di3ku*}&%Uu=9`52T9zD?_T4=F4+0GeKW|GXp*-DXy>J8opR1f1%2! z@~wxe_0)(P6@Ltff>@!T4NK^Pg>+k~chi$^4a6lrsrlJ7n!6YX31XIbF02Mke!a@S ys6wYhE-_F5 delta 402 zcmdn5F-Nlgo)F7a1|Z-DVi_PV0dbJP86X>^;4Ba~0&y}U14A8vHC@ zSSe)ZPoBu>rWBAy}@XTWqC}R{-V~+ZtLcK$x}$ldo|WG8#?xQN(1#{na?a*WZ09=n~+5i9m diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.po b/docs/locale/ko/LC_MESSAGES/writing/reading.po index 81b2f43c7..9ac8e91a7 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/reading.po +++ b/docs/locale/ko/LC_MESSAGES/writing/reading.po @@ -64,7 +64,6 @@ msgstr "" "기반으로 하는 파이썬 마이크로 프레임워크입니다. 아주 빠르게 시작할 수 있도록 만들어졌으며, 이러한 취지에 따라 개발되었습니다. " #: ../../writing/reading.rst:27 -#, fuzzy msgid "" "`Diamond `_ Diamond is a " "Python daemon that collects metrics and publishes them to Graphite or " @@ -73,11 +72,10 @@ msgid "" " custom collectors for gathering metrics from almost any source." msgstr "" "`Diamond `_ Diamond는 Graphite나" -" 다른 백엔드에 지표를 수집하고 퍼블리싱하는 파이썬 데몬입니다. cpu, 메모리, 네트워크, i/o, 로딩, 디스크 지표를 수집할 " -"수 있습니다. 추가적으로 거의 어느 소스에서라도 지표를 수집하는 커스텀 수집기를 구현하기 위한 API가 특장점입니다. " +" 다른 백엔드에 지표를 수집하고 퍼블리싱하는 파이썬 데몬입니다. CPU, 메모리, 네트워크, I/O, 로드, 디스크 지표를 수집할 " +"수 있습니다. 추가적으로 거의 어느 소스에서라도 지표를 수집하는 커스텀 수집기를 구현하기 위한 API가 특장점입니다." #: ../../writing/reading.rst:34 -#, fuzzy msgid "" "`Werkzeug `_ Werkzeug started as a" " simple collection of various utilities for WSGI applications and has " @@ -89,9 +87,9 @@ msgid "" msgstr "" "`Werkzeug `_ Werkzeug는 WSGI " "어플리케이션을 위한 간단한 유틸리티 모음집으로 시작되었습니다. 하지만 이제는 가장 발전한 WSGI 유틸리티 모듈 중 하나가 " -"되었습니다강력한 디버거, 리퀘스트와 리스폰스 오브젝트의 모든 기능을 갖추었으며, 엔티티 태그를 조작할 HTTP 유틸리티와 캐시 " -"컨트롤 헤더, HTTP dates, 쿠키 조작, 파일 업로드, 강력한 URL 라우팅 시스템, 그리고 커뮤니티에서 기여한 애드온 모듈" -" 꾸러미가 포함되어 있습니다. " +"되었습니다. 강력한 디버거, 리퀘스트와 리스폰스 오브젝트의 모든 기능을 갖추었으며, 엔티티 태그를 조작할 HTTP 유틸리티와 캐시" +" 컨트롤 헤더, HTTP dates, 쿠키 조작, 파일 업로드, 강력한 URL 라우팅 시스템, 그리고 커뮤니티에서 기여한 애드온 " +"모듈 꾸러미가 포함되어 있습니다." #: ../../writing/reading.rst:42 msgid "" @@ -102,13 +100,12 @@ msgstr "" "작성된 Apache2 라이선스의 HTTP 라이브러리입니다. 인류를 위해 만들었습니다. " #: ../../writing/reading.rst:46 -#, fuzzy msgid "" "`Tablib `_ Tablib is a format-" "agnostic tabular dataset library, written in Python." msgstr "" -"`Tablib `_ Tablib은 포맷에 구속받지 않는 " -"tabular 데이터셋 라이브러리입니다. 파이썬으로 작성했습니다. (역주: Requests, Tablib은 저자 본인의 프로젝트)" +"`Tablib `_ Tablib은 포맷에 구속받지 않는 tabular" +" 데이터셋 라이브러리입니다. 파이썬으로 작성했습니다." #: ../../writing/reading.rst:50 ../../writing/reading.rst:52 msgid "Todo" @@ -121,11 +118,10 @@ msgid "" msgstr "리스트에 올라간 프로젝트의 코드 샘플 추가 필요왜 좋은 코드인지 복잡한 예를 들어 설명할 것" #: ../../writing/reading.rst:52 -#, fuzzy msgid "" "Explain techniques to rapidly identify data structures and algorithms and" " determine what the code is doing." -msgstr "데이터 구조와 알고리즘을 빠르게 분석하고 코드가 뭘 하고 있는지 밝히는 기술을 설명할 것" +msgstr "데이터 구조와 알고리즘을 빠르게 식별하고 코드가 뭘 하고 있는지 파악하는 기술을 설명할 것" #~ msgid "" #~ "One of the core tenets behind the" diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.mo b/docs/locale/ko/LC_MESSAGES/writing/style.mo index 14b3a360d9cfd9b379c5d4e896688577799c634d..d221dc54ad11211e43e6ccea97286677d76246e9 100644 GIT binary patch delta 12912 zcmcJV3v^WVoyTv$+G@2`lq#V1id7&@0^$qf1Cc6Ved4oPWNv0|l7X4I!#oJ1b|*lB zF^LkKM1mx7)Ib2!8ZrTchOXP~c6)Y@wU5(1-EP~{Zg>00z3JAj-Lt3NcK7r9|L;r& zbz41q)+7GrzW)E;b8%{r;a;GYfrIgdY)nQ}G#&&0`w@nJ5H zBR_)t8)U@{!}tbru);9D$<0%^pFUMT&mw!dZbSYj^1_cA#=Xe7ry0iU$T;#OzPt2v z!wu&8OCRLuon4k6sg8QjihH(Vhf!vB*ah72; zpwM3h2YDV+ES>Mm z%aG#I&mb>AZa`j$d;(dId#yA97T#DUq#|oP3|v33v@GXxz8|ST<4Ir?311GfVS+q2MyzoJa`!SJTI>M zykX3kX&C>FB#g$4fX2pE$k|-4Mv4a>MiLccFVaN*BT_K&JLF#ECoQ~nl3~1tJf(t= z0Gub|3F-O?lAIp?!SiI#CxYEbe27q(gf9$77!Evn$2v$i#^E4kUwc6&MfqBhP>ta zuaM7jz3fp*X*hiki|MU5AY^Mg(54yC5pWCJDK@ho|55IxD z2Klk44dWqM2>ENi+mDoucXvZdTz?I@4msx;yn}4oZ5Z9i`}P<{lJ{KP_&enKy&5wQ z_8AWTbr0*Yl$`ZpUi_%K~ONX{H)&Gi00fRxst5L5H8oR3>7Z z4e7Alb`s{DnN*__t1(xYjp2qyb5q)igj1O+)3%bC>XcKRu&t1}*-j+GPRw-b%{y

+(Hl|YX+Qo~DHx^$XSYKnTFzf78%1)R` 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 delta 7422 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 BFn0g| diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po index 6e4847e5c..61f0fdef2 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/style.po +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -26,15 +26,14 @@ msgid "Code Style" msgstr "코드 스타일" #: ../../writing/style.rst:10 -#, fuzzy msgid "" -"If you ask Python programmers what they like most about Python, they will" -" often cite its high readability. Indeed, a high level of readability is " -"at the heart of the design of the Python language, following the " -"recognized fact that code is read much more often than it is written." +"If you ask Python programmers what they like most about Python, they will " +"often cite its high readability. Indeed, a high level of readability is at " +"the heart of the design of the Python language, following the recognized " +"fact that code is read much more often than it is written." msgstr "" -"파이썬 프로그래머에게 파이썬의 어떤 점을 가장 좋아하냐고 묻는다면, 뛰어난 가독성이 좋다고들 할 것입니다. 실제로 높은 수준의 " -"가독성은 파이썬 언어 디자인의 핵심입니다. 코드 작성은 한 번이겠지만, 코드를 읽을 일은 훨씬 더 많기 때문입니다. " +"파이썬 프로그래머에게 파이썬의 어떤 점을 가장 좋아하냐고 묻는다면, 뛰어난 가독성이 좋다고들 할 것입니다. 실제로 높은 수준의 가독성은 " +"파이썬 언어 디자인의 핵심입니다. 코드 작성은 한 번이겠지만, 코드를 읽을 일은 훨씬 더 많기 때문입니다. " #: ../../writing/style.rst:15 msgid "" @@ -44,20 +43,21 @@ msgstr "파이썬 코드가 쉽게 읽히고 잘 이해되는 이유는 비교 #: ../../writing/style.rst:18 msgid "" -"When a veteran Python developer (a Pythonista) calls portions of code not" -" \"Pythonic\", they usually mean that these lines of code do not follow " -"the common guidelines and fail to express its intent in what is " -"considered the best (hear: most readable) way." +"When a veteran Python developer (a Pythonista) calls portions of code not " +"\"Pythonic\", they usually mean that these lines of code do not follow the " +"common guidelines and fail to express its intent in what is considered the " +"best (hear: most readable) way." msgstr "" -"뿐만 아니라 베테랑 파이썬 개발자(파이써니스타)들이 코드의 어느 부분을 지적하며 이건 \"파이썬스럽지\" 않아, 라고 한다면 이는 " -"보통 파이썬의 일반적인 가이드라인을 따르지 않았다는 뜻이며, 가장 좋은 방법(명심하세요: 최고의 가독성)을 따르지 않아 코드의 " -"의도를 표현하는데 실패했다는 뜻입니다. " +"뿐만 아니라 베테랑 파이썬 개발자(파이써니스타)들이 코드의 어느 부분을 지적하며 이건 \"파이썬스럽지\" 않아, 라고 한다면 이는 보통 " +"파이썬의 일반적인 가이드라인을 따르지 않았다는 뜻이며, 가장 좋은 방법(명심하세요: 최고의 가독성)을 따르지 않아 코드의 의도를 " +"표현하는데 실패했다는 뜻입니다. " #: ../../writing/style.rst:23 msgid "" -"On some border cases, no best way has been agreed upon on how to express " -"an intent in Python code, but these cases are rare." -msgstr "어떤 경우에는 파이썬 코드의 의도를 표현하기 위한 최선의 방법을 합의하기 어려울 때도 있습니다. 하지만 이런 경우는 거의 없습니다. " +"On some border cases, no best way has been agreed upon on how to express an " +"intent in Python code, but these cases are rare." +msgstr "" +"어떤 경우에는 파이썬 코드의 의도를 표현하기 위한 최선의 방법을 합의하기 어려울 때도 있습니다. 하지만 이런 경우는 거의 없습니다. " #: ../../writing/style.rst:29 msgid "General concepts" @@ -69,8 +69,8 @@ msgstr "명쾌한 코드" #: ../../writing/style.rst:34 msgid "" -"While any kind of black magic is possible with Python, the most explicit " -"and straightforward manner is preferred." +"While any kind of black magic is possible with Python, the most explicit and" +" straightforward manner is preferred." msgstr "파이썬으로 어둡의 마법을 부릴 수 있다면, 가장 명쾌하고 간단한 방법을 추천합니다. " #: ../../writing/style.rst:37 ../../writing/style.rst:64 @@ -83,13 +83,13 @@ msgstr "**좋은 예**" #: ../../writing/style.rst:52 msgid "" -"In the good code above, x and y are explicitly received from the caller, " -"and an explicit dictionary is returned. The developer using this function" -" knows exactly what to do by reading the first and last lines, which is " -"not the case with the bad example." +"In the good code above, x and y are explicitly received from the caller, and" +" an explicit dictionary is returned. The developer using this function knows" +" exactly what to do by reading the first and last lines, which is not the " +"case with the bad example." msgstr "" -"위의 좋은 코드 예시에서 x와 y는 호출자로부터 직접 값을 받아와 곧바로 딕셔너리로 반환합니다. 이 함수를 쓰는 개발자들은 첫 줄과" -" 마지막 줄을 읽는 것만으로 무엇을 하는 함수인지 정확히 알 수 있습니다. 하지만 나쁜 예에서는 그렇지 않습니다. " +"위의 좋은 코드 예시에서 x와 y는 호출자로부터 직접 값을 받아와 곧바로 딕셔너리로 반환합니다. 이 함수를 쓰는 개발자들은 첫 줄과 " +"마지막 줄을 읽는 것만으로 무엇을 하는 함수인지 정확히 알 수 있습니다. 하지만 나쁜 예에서는 그렇지 않습니다. " #: ../../writing/style.rst:58 msgid "One statement per line" @@ -97,12 +97,12 @@ msgstr "한 줄에 한 구문" #: ../../writing/style.rst:60 msgid "" -"While some compound statements such as list comprehensions are allowed " -"and appreciated for their brevity and their expressiveness, it is bad " -"practice to have two disjointed statements on the same line of code." +"While some compound statements such as list comprehensions are allowed and " +"appreciated for their brevity and their expressiveness, it is bad practice " +"to have two disjointed statements on the same line of code." msgstr "" -"간결성과 표현성을 위해 리스트 컴프리헨션(list comprehension) 같은 복잡한 구문을 만드는 경우가 있습니다. 이렇게 한" -" 줄의 코드에 두 개의 분리 가능한 코드를 넣는 것은 잘못된 습관입니다. " +"간결성과 표현성을 위해 리스트 컴프리헨션(list comprehension) 같은 복잡한 구문을 만드는 경우가 있습니다. 이렇게 한 줄의" +" 코드에 두 개의 분리 가능한 코드를 넣는 것은 잘못된 습관입니다. " #: ../../writing/style.rst:91 msgid "Function arguments" @@ -114,154 +114,147 @@ msgstr "인자는 4가지 경로를 통해 함수로 전달될 수 있습니다. #: ../../writing/style.rst:95 msgid "" -"**Positional arguments** are mandatory and have no default values. They " -"are the simplest form of arguments and they can be used for the few " -"function arguments that are fully part of the function's meaning and " -"their order is natural. For instance, in ``send(message, recipient)`` or " -"``point(x, y)`` the user of the function has no difficulty remembering " -"that those two functions require two arguments, and in which order." +"**Positional arguments** are mandatory and have no default values. They are " +"the simplest form of arguments and they can be used for the few function " +"arguments that are fully part of the function's meaning and their order is " +"natural. For instance, in ``send(message, recipient)`` or ``point(x, y)`` " +"the user of the function has no difficulty remembering that those two " +"functions require two arguments, and in which order." msgstr "" -"**위치 인자** 는 필수입니다. 그리고 디폴트 값을 가지면 안됩니다. 위치 인자는 인자의 가장 간단한 형태이자, 함수의 의미를 " -"완전히 담고있는 함수 자체를 전달하기도 합니다. 인자의 순서는 넣은대로 들어갑니다. 예를 들어 ``send(message, " -"recipient)`` 혹은 ``point(x, y)`` 에서 함수를 사용하는 사람은 이 함수들이 인자를 몇 개 필요로 하는지, " -"어느 순서로 들어가야 하는지 기억하려고 고민할 필요가 없습니다. " +"**위치 인자** 는 필수입니다. 그리고 디폴트 값을 가지면 안됩니다. 위치 인자는 인자의 가장 간단한 형태이자, 함수의 의미를 완전히 " +"담고있는 함수 자체를 전달하기도 합니다. 인자의 순서는 넣은대로 들어갑니다. 예를 들어 ``send(message, " +"recipient)`` 혹은 ``point(x, y)`` 에서 함수를 사용하는 사람은 이 함수들이 인자를 몇 개 필요로 하는지, 어느 " +"순서로 들어가야 하는지 기억하려고 고민할 필요가 없습니다. " #: ../../writing/style.rst:102 msgid "" -"In those two cases, it is possible to use argument names when calling the" -" functions and, doing so, it is possible to switch the order of " -"arguments, calling for instance ``send(recipient='World', " -"message='Hello')`` and ``point(y=2, x=1)`` but this reduces readability " -"and is unnecessarily verbose, compared to the more straightforward calls " -"to ``send('Hello', 'World')`` and ``point(1, 2)``." +"In those two cases, it is possible to use argument names when calling the " +"functions and, doing so, it is possible to switch the order of arguments, " +"calling for instance ``send(recipient='World', message='Hello')`` and " +"``point(y=2, x=1)`` but this reduces readability and is unnecessarily " +"verbose, compared to the more straightforward calls to ``send('Hello', " +"'World')`` and ``point(1, 2)``." msgstr "" "위의 예시에서 함수를 호출할 때 인자명을 명시하는 것도 가능합니다. " -"``send(recipient='World',message='Hello')`` , ``point(y=2, x=1)`` 이렇게 하면 " -"인자의 순서를 바꿔도 상관없습니다. 하지만 위 방법은 ``send('Hello', 'World')`` , ``point(1, " -"2)`` 에 비하여 가독성이 떨어지고, 코드가 쓸데없이 장황해집니다. " +"``send(recipient='World',message='Hello')`` , ``point(y=2, x=1)`` 이렇게 하면 인자의" +" 순서를 바꿔도 상관없습니다. 하지만 위 방법은 ``send('Hello', 'World')`` , ``point(1, 2)`` 에 " +"비하여 가독성이 떨어지고, 코드가 쓸데없이 장황해집니다. " #: ../../writing/style.rst:109 msgid "" -"**Keyword arguments** are not mandatory and have default values. They are" -" often used for optional parameters sent to the function. When a function" -" has more than two or three positional parameters, its signature is more " +"**Keyword arguments** are not mandatory and have default values. They are " +"often used for optional parameters sent to the function. When a function has" +" more than two or three positional parameters, its signature is more " "difficult to remember and using keyword arguments with default values is " -"helpful. For instance, a more complete ``send`` function could be defined" -" as ``send(message, to, cc=None, bcc=None)``. Here ``cc`` and ``bcc`` are" -" optional, and evaluate to ``None`` when they are not passed another " -"value." +"helpful. For instance, a more complete ``send`` function could be defined as" +" ``send(message, to, cc=None, bcc=None)``. Here ``cc`` and ``bcc`` are " +"optional, and evaluate to ``None`` when they are not passed another value." msgstr "" -"**키워드 인자** 는 필수값은 아니지만 디폴트값을 가집니다. 키워드 인자는 선택적인 파라미터로서 함수에 전달됩니다. 함수가 2개 " -"혹은 3개 이상의 위치 인자를 가지면 여기에 무슨 값을 넣어야할지 기억하기 어렵습니다. 이 때 디폴트값을 가진 키워드 인자가 도움이" -" 됩니다. 예를 들어 이렇게 하면 ``send`` 함수를 더 명확하게 정의할 수 있습니다. ``send(message, to, " -"cc=None, bcc=None)`` .여기서 ``cc`` 와 ``bcc`` 는 선택적인 값입니다. 그리고 다른 값을 넣지 않으면 " -"``None`` 으로 해석됩니다. " +"**키워드 인자** 는 필수값은 아니지만 디폴트값을 가집니다. 키워드 인자는 선택적인 파라미터로서 함수에 전달됩니다. 함수가 2개 혹은 " +"3개 이상의 위치 인자를 가지면 여기에 무슨 값을 넣어야할지 기억하기 어렵습니다. 이 때 디폴트값을 가진 키워드 인자가 도움이 됩니다. " +"예를 들어 이렇게 하면 ``send`` 함수를 더 명확하게 정의할 수 있습니다. ``send(message, to, cc=None, " +"bcc=None)`` .여기서 ``cc`` 와 ``bcc`` 는 선택적인 값입니다. 그리고 다른 값을 넣지 않으면 ``None`` 으로 " +"해석됩니다. " #: ../../writing/style.rst:117 -#, fuzzy -msgid "" -"Calling a function with keyword arguments can be done in multiple ways in" -" Python; for example, it is possible to follow the order of arguments in " -"the definition without explicitly naming the arguments, like in " -"``send('Hello', 'World', 'Cthulhu', 'God')``, sending a blind carbon copy" -" to God. It would also be possible to name arguments in another order, " -"like in ``send('Hello again', 'World', bcc='God', cc='Cthulhu')``. Those " -"two possibilities are better avoided without any strong reason to not " -"follow the syntax that is the closest to the function definition: " +msgid "" +"Calling a function with keyword arguments can be done in multiple ways in " +"Python; for example, it is possible to follow the order of arguments in the " +"definition without explicitly naming the arguments, like in ``send('Hello', " +"'World', 'Cthulhu', 'God')``, sending a blind carbon copy to God. It would " +"also be possible to name arguments in another order, like in ``send('Hello " +"again', 'World', bcc='God', cc='Cthulhu')``. Those two possibilities are " +"better avoided without any strong reason to not follow the syntax that is " +"the closest to the function definition: ``send('Hello', 'World', " +"cc='Cthulhu', bcc='God')``." +msgstr "" +"파이썬에서는 키워드 인자가 있는 함수를 다양한 방식으로 호출할 수 있습니다. 예를 들면 ``send('Hello', 'World', " +"'Cthulhu', 'God')`` 처럼 인자명을 명시하지 않고 함수를 정의할 때의 순서에 따라 인자들을 보낼 수 있습니다. 이렇게 하면" +" God에게 blind carbon copy를 보내게 됩니다. 다른 방법도 가능합니다. ``send('Hello again', " +"'World', bcc='God', cc='Cthulhu')`` 처럼 순서를 다르게해도 인자명을 명시적으로 넣어주면 됩니다. 그래도 위 " +"두 방식처럼 함수 정의시의 인자 순서를 어그러뜨리는 방식은 가급적 피하는 편이 좋습니다. 즉 이렇게 하는게 제일 좋습니다: " "``send('Hello', 'World', cc='Cthulhu', bcc='God')``." -msgstr "" -"파이썬에서는 키워드 인자가 있는 함수를 다양한 방식으로 호출할 수 있습니다. 예를 들면 ``send('Hello', 'World'," -" 'Cthulhu', 'God')`` 처럼 인자명을 명시하지 않고 함수를 정의할 때의 순서에 따라 인자들을 보낼 수 있습니다. " -"이렇게 하면 God에게 blind carbon copy를 보내게 됩니다. 다른 방법도 가능합니다. ``send('Hello " -"again', 'World', bcc='God', cc='Cthulhu')`` 처럼 순서를 다르게해도 인자명을 명시적으로 넣어주면 " -"됩니다. 그래도 위 두 방식처럼 함수 정의시의 인자 순서를 어그러뜨리는 방식은 가급적 피하는 편이 좋습니다. 즉 이렇게 하는게 제일" -" 좋습니다: ``send('Hello', 'World', cc='Cthulhu', bcc='God')``." #: ../../writing/style.rst:127 -#, fuzzy msgid "" "As a side note, following the `YAGNI " -"`_ principle, it is" -" often harder to remove an optional argument (and its logic inside the " -"function) that was added \"just in case\" and is seemingly never used, " -"than to add a new optional argument and its logic when needed." +"`_ principle, it is " +"often harder to remove an optional argument (and its logic inside the " +"function) that was added \"just in case\" and is seemingly never used, than " +"to add a new optional argument and its logic when needed." msgstr "" -"첨언 하나. `YAGNI `_ " -"원칙에 따르면, \"만약을 위해서\" 추가했고 두 번 다시 사용하지 않은 선택적인 인자(그리고 함수 안에 포함된 관련 로직)을 " -"삭제하기란, 필요할 때 새로운 선택적인 인자와 관련 로직을 추가하기보다 훨씬 어렵습니다. " +"첨언 하나. `YAGNI `_ 원칙에 " +"따르면, \"만약을 위해서\" 추가했고 두 번 다시 사용하지 않은 선택적인 인자(그리고 함수 안에 포함된 관련 로직)을 삭제하기란, " +"필요할 때 새로운 선택적인 인자와 관련 로직을 추가하기보다 훨씬 어렵습니다. " #: ../../writing/style.rst:132 -#, fuzzy msgid "" "The **arbitrary argument list** is the third way to pass arguments to a " -"function. If the function intention is better expressed by a signature " -"with an extensible number of positional arguments, it can be defined with" -" the ``*args`` constructs. In the function body, ``args`` will be a tuple" -" of all the remaining positional arguments. For example, ``send(message, " -"*args)`` can be called with each recipient as an argument: " -"``send('Hello', 'God', 'Mom', 'Cthulhu')``, and in the function body " -"``args`` will be equal to ``('God', 'Mom', 'Cthulhu')``." -msgstr "" -"**임의 인자 리스트** 는 함수에 인자를 보내는 세번째 방법입니다. 위치 인자에 추가적인 번호를 달아야 함수의 의도가 보다 잘 " -"설명되는 경우에는 ``*args`` 생성자를 쓰면 됩니다. 함수 본문에서 ``args`` 는 나머지 모든 위치 인자의 튜플이 " -"됩니다. 예를 들어 ``send(message, *args)`` 는 이런 식으로 인자가 호출됩니다: ``send('Hello', " -"'God', 'Mom', 'Cthulhu')`` 를 호출하면, 함수 본문에서 ``args`` 는 ``('God', 'Mom', " -"'Cthulhu')`` 와 같습니다. " +"function. If the function intention is better expressed by a signature with " +"an extensible number of positional arguments, it can be defined with the " +"``*args`` constructs. In the function body, ``args`` will be a tuple of all " +"the remaining positional arguments. For example, ``send(message, *args)`` " +"can be called with each recipient as an argument: ``send('Hello', 'God', " +"'Mom', 'Cthulhu')``, and in the function body ``args`` will be equal to " +"``('God', 'Mom', 'Cthulhu')``." +msgstr "" +"**임의 인자 리스트** 는 함수에 인자를 보내는 세번째 방법입니다. 위치 인자에 추가적인 번호를 달아야 함수의 의도가 보다 잘 설명되는" +" 경우에는 ``*args`` 생성자를 쓰면 됩니다. 함수 본문에서 ``args`` 는 나머지 모든 위치 인자의 튜플이 됩니다. 예를 들어" +" ``send(message, *args)`` 는 이런 식으로 인자가 호출됩니다: ``send('Hello', 'God', 'Mom', " +"'Cthulhu')`` 를 호출하면, 함수 본문에서 ``args`` 는 ``('God', 'Mom', 'Cthulhu')`` 와 " +"같습니다. " #: ../../writing/style.rst:141 msgid "" -"However, this construct has some drawbacks and should be used with " -"caution. If a function receives a list of arguments of the same nature, " -"it is often more clear to define it as a function of one argument, that " -"argument being a list or any sequence. Here, if ``send`` has multiple " -"recipients, it is better to define it explicitly: ``send(message, " -"recipients)`` and call it with ``send('Hello', ['God', 'Mom', " -"'Cthulhu'])``. This way, the user of the function can manipulate the " -"recipient list as a list beforehand, and it opens the possibility to pass" -" any sequence, including iterators, that cannot be unpacked as other " -"sequences." -msgstr "" -"하지만 이 생성자에는 문제점이 있으니 주의하셔야 합니다. 만약 함수가 같은 속성을 가진 인자의 리스트를 받는다면 ,이 리스트는 " -"리스트나 시퀀스의 형태를 가진 하나의 인자로 정의하는 편이 보다 명확할 때가 많습니다. 예를 들어 ``send`` 가 복수의 " -"수신자를 가진다면 이런 식으로 명확하게 정의하는 편이 좋습니다: ``send(message, recipients)`` 로 정의하고," -" ``send('Hello', ['God', 'Mom', 'Cthulhu'])`` 로 호출합니다. 이 방식에서는 함수를 사용하는 " -"사람들이 미리 수신자 명단을 리스트로 가공할 수 있고, 어느 시퀀스를 넘겨받든 이터레이터만 있으면 원하는 방식으로 풀 수 있습니다." -" " +"However, this construct has some drawbacks and should be used with caution. " +"If a function receives a list of arguments of the same nature, it is often " +"more clear to define it as a function of one argument, that argument being a" +" list or any sequence. Here, if ``send`` has multiple recipients, it is " +"better to define it explicitly: ``send(message, recipients)`` and call it " +"with ``send('Hello', ['God', 'Mom', 'Cthulhu'])``. This way, the user of the" +" function can manipulate the recipient list as a list beforehand, and it " +"opens the possibility to pass any sequence, including iterators, that cannot" +" be unpacked as other sequences." +msgstr "" +"하지만 이 생성자에는 문제점이 있으니 주의하셔야 합니다. 만약 함수가 같은 속성을 가진 인자의 리스트를 받는다면 ,이 리스트는 리스트나 " +"시퀀스의 형태를 가진 하나의 인자로 정의하는 편이 보다 명확할 때가 많습니다. 예를 들어 ``send`` 가 복수의 수신자를 가진다면 " +"이런 식으로 명확하게 정의하는 편이 좋습니다: ``send(message, recipients)`` 로 정의하고, " +"``send('Hello', ['God', 'Mom', 'Cthulhu'])`` 로 호출합니다. 이 방식에서는 함수를 사용하는 사람들이 " +"미리 수신자 명단을 리스트로 가공할 수 있고, 어느 시퀀스를 넘겨받든 이터레이터만 있으면 원하는 방식으로 풀 수 있습니다. " #: ../../writing/style.rst:150 msgid "" "The **arbitrary keyword argument dictionary** is the last way to pass " -"arguments to functions. If the function requires an undetermined series " -"of named arguments, it is possible to use the ``**kwargs`` construct. In " -"the function body, ``kwargs`` will be a dictionary of all the passed " -"named arguments that have not been caught by other keyword arguments in " -"the function signature." +"arguments to functions. If the function requires an undetermined series of " +"named arguments, it is possible to use the ``**kwargs`` construct. In the " +"function body, ``kwargs`` will be a dictionary of all the passed named " +"arguments that have not been caught by other keyword arguments in the " +"function signature." msgstr "" -"**임의 키워드 인자 딕셔너리** 는 함수에 인자를 넘기는 마지막 방식입니다. 만약 함수가 필요로 하는 인자가 몇 개가 들어올지 알" -" 수 없으되 이름이 붙어있다면, ``kwargs`` 생성자를 사용할 수 있습니다. 함수 본문에서 ``kwargs`` 는 이름붙은 " -"모든 인자의 딕셔너리가 되는데 이러한 인자들은 오로지 ``kwargs`` 로만 받을 수 있습니다. " +"**임의 키워드 인자 딕셔너리** 는 함수에 인자를 넘기는 마지막 방식입니다. 만약 함수가 필요로 하는 인자가 몇 개가 들어올지 알 수 " +"없으되 이름이 붙어있다면, ``kwargs`` 생성자를 사용할 수 있습니다. 함수 본문에서 ``kwargs`` 는 이름붙은 모든 인자의 " +"딕셔너리가 되는데 이러한 인자들은 오로지 ``kwargs`` 로만 받을 수 있습니다. " #: ../../writing/style.rst:157 msgid "" -"The same caution as in the case of *arbitrary argument list* is " -"necessary, for similar reasons: these powerful techniques are to be used " -"when there is a proven necessity to use them, and they should not be used" -" if the simpler and clearer construct is sufficient to express the " -"function's intention." +"The same caution as in the case of *arbitrary argument list* is necessary, " +"for similar reasons: these powerful techniques are to be used when there is " +"a proven necessity to use them, and they should not be used if the simpler " +"and clearer construct is sufficient to express the function's intention." msgstr "" "비슷한 이유로 *임의 인자 리스트* 를 쓸 때도 조심해야합니다: 이런 강력한 테크닉은 꼭 필요한 경우에만 써야합니다. 그리고 다른 " "간단하고 명쾌한 생성자로도 함수의 의도를 표현하기에 충분하다면 절대 쓰면 안됩니다. " #: ../../writing/style.rst:162 msgid "" -"It is up to the programmer writing the function to determine which " -"arguments are positional arguments and which are optional keyword " -"arguments, and to decide whether to use the advanced techniques of " -"arbitrary argument passing. If the advice above is followed wisely, it is" -" possible and enjoyable to write Python functions that are:" +"It is up to the programmer writing the function to determine which arguments" +" are positional arguments and which are optional keyword arguments, and to " +"decide whether to use the advanced techniques of arbitrary argument passing." +" If the advice above is followed wisely, it is possible and enjoyable to " +"write Python functions that are:" msgstr "" -"어느 인자를 위치 인자로 쓸지, 어느 인자를 선택적 키워드 인자로 쓸지, 임의 인자를 넘기는 고급 기술을 쓸지 말지를 결정하는 것은" -" 전적으로 함수를 작성하는 프로그래머에게 달렸습니다. 지금까지의 조언이 현명하게 쓰인다면, 파이썬 함수를 이렇게 즐겁게 작성할 수 " +"어느 인자를 위치 인자로 쓸지, 어느 인자를 선택적 키워드 인자로 쓸지, 임의 인자를 넘기는 고급 기술을 쓸지 말지를 결정하는 것은 " +"전적으로 함수를 작성하는 프로그래머에게 달렸습니다. 지금까지의 조언이 현명하게 쓰인다면, 파이썬 함수를 이렇게 즐겁게 작성할 수 " "있습니다: " #: ../../writing/style.rst:168 @@ -270,8 +263,8 @@ msgstr "읽기 쉽다(이름과 인자를 설명할 필요가 없다)" #: ../../writing/style.rst:170 msgid "" -"easy to change (adding a new keyword argument does not break other parts " -"of the code)" +"easy to change (adding a new keyword argument does not break other parts of " +"the code)" msgstr "변경하기 쉽다(새 키워드 인자를 추가해도 코드의 다른 부분을 망가뜨리지 않는다)" #: ../../writing/style.rst:174 @@ -280,12 +273,12 @@ msgstr "마법의 지팡이를 피하기" #: ../../writing/style.rst:176 msgid "" -"A powerful tool for hackers, Python comes with a very rich set of hooks " -"and tools allowing you to do almost any kind of tricky tricks. For " -"instance, it is possible to do each of the following:" +"A powerful tool for hackers, Python comes with a very rich set of hooks and " +"tools allowing you to do almost any kind of tricky tricks. For instance, it " +"is possible to do each of the following:" msgstr "" -"파이썬은 해커를 위한 막강한 도구입니다. 파이썬에는 어떠한 종류의 교묘한 트릭이라도 가능하게 해주는 다양한 도구들이 있습니다. 예를" -" 들자면 이런 것들입니다: " +"파이썬은 해커를 위한 막강한 도구입니다. 파이썬에는 어떠한 종류의 교묘한 트릭이라도 가능하게 해주는 다양한 도구들이 있습니다. 예를 " +"들자면 이런 것들입니다: " #: ../../writing/style.rst:180 msgid "change how objects are created and instantiated" @@ -296,38 +289,37 @@ msgid "change how the Python interpreter imports modules" msgstr "파이썬 인터프리터가 모듈을 임포트 하는 방법을 변경" #: ../../writing/style.rst:184 -#, fuzzy msgid "" "It is even possible (and recommended if needed) to embed C routines in " "Python." -msgstr "파이썬에 C 루틴을 넣는 것도 가능(필요하면 추천하기도)" +msgstr "파이썬에 C 루틴을 넣는 것도 가능합니다(필요하다면 추천하기도 합니다)." #: ../../writing/style.rst:186 msgid "" -"However, all these options have many drawbacks and it is always better to" -" use the most straightforward way to achieve your goal. The main drawback" -" is that readability suffers greatly when using these constructs. Many " -"code analysis tools, such as pylint or pyflakes, will be unable to parse " -"this \"magic\" code." +"However, all these options have many drawbacks and it is always better to " +"use the most straightforward way to achieve your goal. The main drawback is " +"that readability suffers greatly when using these constructs. Many code " +"analysis tools, such as pylint or pyflakes, will be unable to parse this " +"\"magic\" code." msgstr "" "하지만 이 모든 방법은 결점이 있습니다. 그리고 목표를 향해 곧바로 나아가는 방법이 늘 더 좋습니다. 가장 중요한 문제점은 이러한 " -"생성자를 쓰면 가독성이 엄청나게 훼손된다는 점입니다. 파이린트나 파이플레이크 같은 많은 코드 분석 툴이 이런 \"마법\" 코드를 " -"파싱하지 못합니다. " +"생성자를 쓰면 가독성이 엄청나게 훼손된다는 점입니다. 파이린트나 파이플레이크 같은 많은 코드 분석 툴이 이런 \"마법\" 코드를 파싱하지" +" 못합니다. " #: ../../writing/style.rst:191 msgid "" -"We consider that a Python developer should know about these nearly " -"infinite possibilities, because it instills confidence that no impassable" -" problem will be on the way. However, knowing how and particularly when " -"**not** to use them is very important." +"We consider that a Python developer should know about these nearly infinite " +"possibilities, because it instills confidence that no impassable problem " +"will be on the way. However, knowing how and particularly when **not** to " +"use them is very important." msgstr "" -"우리는 파이썬 개발자들이 이러한 무한한 가능성을 알았으면 좋겠습니다. 해결불가능한 문제는 없다는 자신감을 심어주기 때문입니다. " -"하지만 어떻게, 특히 어느 시점에 이런 마법의 지팡이를 **사용하지 말아야 하는지** 를 아는 것은 대단히 중요합니다. " +"우리는 파이썬 개발자들이 이러한 무한한 가능성을 알았으면 좋겠습니다. 해결불가능한 문제는 없다는 자신감을 심어주기 때문입니다. 하지만 " +"어떻게, 특히 어느 시점에 이런 마법의 지팡이를 **사용하지 말아야 하는지** 를 아는 것은 대단히 중요합니다. " #: ../../writing/style.rst:196 msgid "" -"Like a kung fu master, a Pythonista knows how to kill with a single " -"finger, and never to actually do it." +"Like a kung fu master, a Pythonista knows how to kill with a single finger, " +"and never to actually do it." msgstr "쿵푸의 달인처럼, 파이써니스타는 한 손가락으로 사람을 죽일 수 있지만 절대 실전에서 그것을 사용하지 않습니다. " #: ../../writing/style.rst:200 @@ -336,127 +328,122 @@ msgstr "우리는 모두 책임감 있는 사용자다" #: ../../writing/style.rst:202 msgid "" -"As seen above, Python allows many tricks, and some of them are " -"potentially dangerous. A good example is that any client code can " -"override an object's properties and methods: there is no \"private\" " -"keyword in Python. This philosophy, very different from highly defensive " -"languages like Java, which give a lot of mechanisms to prevent any " -"misuse, is expressed by the saying: \"We are all responsible users\"." +"As seen above, Python allows many tricks, and some of them are potentially " +"dangerous. A good example is that any client code can override an object's " +"properties and methods: there is no \"private\" keyword in Python. This " +"philosophy, very different from highly defensive languages like Java, which " +"give a lot of mechanisms to prevent any misuse, is expressed by the saying: " +"\"We are all responsible users\"." msgstr "" "위에서 본대로 파이썬에서는 많은 트릭이 가능하지만 이런 것들은 위험할 수 있습니다. 어느 클라이언트 코드가 객체의 속성과 메소드를 " -"오버라이드 할 수 있다는 것은 이 위험성에 대한 좋은 예시입니다. 파이썬에는 \"private\" 키워드가 없습니다. 이는 자바처럼" -" 오류를 막기 위한 많은 메커니즘을 가지고 있는 방어적인 언어와는 아주 다릅니다. 이러한 철학은 다음과 같이 표현할 수 있습니다: " +"오버라이드 할 수 있다는 것은 이 위험성에 대한 좋은 예시입니다. 파이썬에는 \"private\" 키워드가 없습니다. 이는 자바처럼 " +"오류를 막기 위한 많은 메커니즘을 가지고 있는 방어적인 언어와는 아주 다릅니다. 이러한 철학은 다음과 같이 표현할 수 있습니다: " "\"우리는 모두 책임감 있는 사용자다\"." #: ../../writing/style.rst:209 -#, fuzzy msgid "" -"This doesn't mean that, for example, no properties are considered " -"private, and that no proper encapsulation is possible in Python. Rather, " -"instead of relying on concrete walls erected by the developers between " -"their code and others', the Python community prefers to rely on a set of " -"conventions indicating that these elements should not be accessed " -"directly." +"This doesn't mean that, for example, no properties are considered private, " +"and that no proper encapsulation is possible in Python. Rather, instead of " +"relying on concrete walls erected by the developers between their code and " +"others', the Python community prefers to rely on a set of conventions " +"indicating that these elements should not be accessed directly." msgstr "" -"이 말의 의미인즉 이런 경우를 말하는 것입니다. 파이썬에는 private로 인식되는 속성이 없습니다. 캡슐화도 불가능합니다. " -"파이썬에서는 개발자가 자신이 만든 코드와 다른 코드들 사이에 콘트리트 장벽을 세우고 거기에 의지하지 않습니다. 대신에 파이썬 " -"커뮤니티에는 코딩 컨벤션이 있습니다. 코딩 컨벤션을 통해서 직접 접근해서는 안 될 엘리먼트들을 알려줍니다. " +"이 말의 의미는 이런 것입니다. 파이썬에는 private로 인식되는 속성이 없다거나 적절한 캡슐화가 불가능하다는 뜻이 아닙니다. " +"파이썬에서는 개발자가 자신이 만든 코드와 다른 코드들 사이에 콘크리트 장벽을 세우고 거기에 의지하기보다는, 직접 접근해서는 안 될 " +"엘리먼트들을 알려주는 컨벤션에 의지하는 쪽을 선호합니다." #: ../../writing/style.rst:215 msgid "" -"The main convention for private properties and implementation details is " -"to prefix all \"internals\" with an underscore. If the client code breaks" -" this rule and accesses these marked elements, any misbehavior or " -"problems encountered if the code is modified is the responsibility of the" -" client code." +"The main convention for private properties and implementation details is to " +"prefix all \"internals\" with an underscore. If the client code breaks this " +"rule and accesses these marked elements, any misbehavior or problems " +"encountered if the code is modified is the responsibility of the client " +"code." msgstr "" -"private 속성과 그 상세한 구현을 위한 코딩 컨벤션은 \"내부적으로 사용하는\" 모든 변수 앞에 언더스코어(_)를 붙이는 " -"것입니다. 만약 클라이언트 코드가 이 룰을 무시하고 어떤 엘리먼트에 접근하려고 한다면 그 코드가 겪을지도 모를 모든 문제와 오용은 " -"전적으로 클라이언트 코드의 책임입니다. " +"private 속성과 그 상세한 구현을 위한 코딩 컨벤션은 \"내부적으로 사용하는\" 모든 변수 앞에 언더스코어(_)를 붙이는 것입니다." +" 만약 클라이언트 코드가 이 룰을 무시하고 어떤 엘리먼트에 접근하려고 한다면 그 코드가 겪을지도 모를 모든 문제와 오용은 전적으로 " +"클라이언트 코드의 책임입니다. " #: ../../writing/style.rst:220 msgid "" -"Using this convention generously is encouraged: any method or property " -"that is not intended to be used by client code should be prefixed with an" -" underscore. This will guarantee a better separation of duties and easier" -" modification of existing code; it will always be possible to publicize a" -" private property, but making a public property private might be a much " +"Using this convention generously is encouraged: any method or property that " +"is not intended to be used by client code should be prefixed with an " +"underscore. This will guarantee a better separation of duties and easier " +"modification of existing code; it will always be possible to publicize a " +"private property, but making a public property private might be a much " "harder operation." msgstr "" -"이 컨벤션을 따를 것을 추천드립니다: 클라이언트 코드에서 가져다 쓰라고 만든 메소드나 속성이 아니라면 반드시 앞에 언더스코어(_)를" -" 붙이세요. 이렇게 하면 각 코드의 역할을 더 명확히 분리시켜줄 뿐만 아니라, 기존 코드의 수정도 쉬워집니다. 그리고 private" -" 속성으로 표시하는 것은 언제든지 가능하지만, public 속성을 private로 바꾸기란 훨씬 더 어려운 작업이 될겁니다. " +"이 컨벤션을 따를 것을 추천드립니다: 클라이언트 코드에서 가져다 쓰라고 만든 메소드나 속성이 아니라면 반드시 앞에 언더스코어(_)를 " +"붙이세요. 이렇게 하면 각 코드의 역할을 더 명확히 분리시켜줄 뿐만 아니라, 기존 코드의 수정도 쉬워집니다. 그리고 private " +"속성으로 표시하는 것은 언제든지 가능하지만, public 속성을 private로 바꾸기란 훨씬 더 어려운 작업이 될겁니다. " #: ../../writing/style.rst:227 msgid "Returning values" msgstr "반환값" #: ../../writing/style.rst:229 -#, fuzzy msgid "" "When a function grows in complexity, it is not uncommon to use multiple " -"return statements inside the function's body. However, in order to keep a" -" clear intent and a sustainable readability level, it is preferable to " -"avoid returning meaningful values from many output points in the body." +"return statements inside the function's body. However, in order to keep a " +"clear intent and a sustainable readability level, it is preferable to avoid " +"returning meaningful values from many output points in the body." msgstr "" -"함수가 점점 더 복잡해지는 경우, 함수 본문에 여러 개의 리턴 구문이 들어가는 것이 보통입니다. 하지만 코드의 의도를 명확히 하면서" -" 가독성의 수준을 유지하기 위하여, 함수 본문 안에 여러 개의 리턴문을 넣는 것은 피할 것을 추천합니다. " +"함수가 점점 더 복잡해지는 경우, 함수 본문에 여러 개의 리턴 구문이 들어가는 것이 보통입니다. 하지만 코드의 의도를 명확히 하고 지속 " +"가능한 가독성 수준을 유지하기 위해서는, 본문의 여러 출력 지점에서 의미 있는 값을 리턴하는 것은 피하는 편이 좋습니다." #: ../../writing/style.rst:234 msgid "" -"There are two main cases for returning values in a function: the result " -"of the function return when it has been processed normally, and the error" -" cases that indicate a wrong input parameter or any other reason for the " -"function to not be able to complete its computation or task." +"There are two main cases for returning values in a function: the result of " +"the function return when it has been processed normally, and the error cases" +" that indicate a wrong input parameter or any other reason for the function " +"to not be able to complete its computation or task." msgstr "" -"다음은 함수가 값을 리턴하는 주요 케이스입니다: 함수가 정상적으로 실행되었을 때의 리턴값, 그리고 잘못된 입력 파라미터나 들어가거나" -" 다른 이유로 인하여 함수의 계산이나 작업을 완료할 수 없어 에러가 발생하는 경우가 있습니다. " +"다음은 함수가 값을 리턴하는 주요 케이스입니다: 함수가 정상적으로 실행되었을 때의 리턴값, 그리고 잘못된 입력 파라미터나 들어가거나 다른" +" 이유로 인하여 함수의 계산이나 작업을 완료할 수 없어 에러가 발생하는 경우가 있습니다. " #: ../../writing/style.rst:239 msgid "" -"If you do not wish to raise exceptions for the second case, then " -"returning a value, such as None or False, indicating that the function " -"could not perform correctly might be needed. In this case, it is better " -"to return as early as the incorrect context has been detected. It will " -"help to flatten the structure of the function: all the code after the " -"return-because-of-error statement can assume the condition is met to " -"further compute the function's main result. Having multiple such return " -"statements is often necessary." +"If you do not wish to raise exceptions for the second case, then returning a" +" value, such as None or False, indicating that the function could not " +"perform correctly might be needed. In this case, it is better to return as " +"early as the incorrect context has been detected. It will help to flatten " +"the structure of the function: all the code after the return-because-of-" +"error statement can assume the condition is met to further compute the " +"function's main result. Having multiple such return statements is often " +"necessary." msgstr "" -"두번째 경우에서 예외를 발생시키고 싶지 않다면, None 이나 False 같이 함수를 정상적으로 수행할 수 없다는 의미의 리턴값이 " -"필요할 것입니다. 이런 경우에는 가능한 한 일찍 부정확한 구문이 발견되었음을 알리는 편이 좋습니다. 이 방법이 함수의 구조를 " -"매끈하게 하는데 도움이 될 것입니다: 에러 때문에 리턴하는 구문 아래의 모든 코드는 해당 함수의 주요 결과물을 계산하기 위한 조건을" -" 만족한다고 볼 수 있습니다. 이런 경우에는 여러 개의 리턴 구문이 필요합니다. " +"두번째 경우에서 예외를 발생시키고 싶지 않다면, None 이나 False 같이 함수를 정상적으로 수행할 수 없다는 의미의 리턴값이 필요할" +" 것입니다. 이런 경우에는 가능한 한 일찍 부정확한 구문이 발견되었음을 알리는 편이 좋습니다. 이 방법이 함수의 구조를 매끈하게 하는데 " +"도움이 될 것입니다: 에러 때문에 리턴하는 구문 아래의 모든 코드는 해당 함수의 주요 결과물을 계산하기 위한 조건을 만족한다고 볼 수 " +"있습니다. 이런 경우에는 여러 개의 리턴 구문이 필요합니다. " #: ../../writing/style.rst:247 msgid "" "However, when a function has multiple main exit points for its normal " "course, it becomes difficult to debug the returned result, so it may be " -"preferable to keep a single exit point. This will also help factoring out" -" some code paths, and the multiple exit points are a probable indication " -"that such a refactoring is needed." +"preferable to keep a single exit point. This will also help factoring out " +"some code paths, and the multiple exit points are a probable indication that" +" such a refactoring is needed." msgstr "" -"하지만 정상적으로 코드가 돌아가는 부분에도 함수에 여러 개의 종료 지점이 있는 경우, 리턴하는 결과물을 디버깅하기 어렵습니다. " -"따라서 함수에 하나의 종료점만 두는 편을 추천합니다. 이렇게 하면 코드의 경로를 뽑아내기에 좋습니다. 그러니 여러 개의 종료점이 " -"있으면 이는 곧 리팩토링이 필요한 지점일지도 모릅니다. " +"하지만 정상적으로 코드가 돌아가는 부분에도 함수에 여러 개의 종료 지점이 있는 경우, 리턴하는 결과물을 디버깅하기 어렵습니다. 따라서 " +"함수에 하나의 종료점만 두는 편을 추천합니다. 이렇게 하면 코드의 경로를 뽑아내기에 좋습니다. 그러니 여러 개의 종료점이 있으면 이는 곧" +" 리팩토링이 필요한 지점일지도 모릅니다. " #: ../../writing/style.rst:270 msgid "Idioms" msgstr "이디엄" #: ../../writing/style.rst:272 -#, fuzzy msgid "" "A programming idiom, put simply, is a *way* to write code. The notion of " "programming idioms is discussed amply at `c2 " "`_ and at `Stack Overflow " -"`_." +"`_." msgstr "" "프로그래밍 이디엄이란 간단히 말하자면 코드를 작성하는 *방법* 입니다. 이 개념은 `c2 " "`_ 와 `Stack Overflow " -"`_ 에서 광범위하게 논의된 바 있습니다. " +"`_ " +"에서 광범위하게 논의된 바 있습니다." #: ../../writing/style.rst:276 msgid "Idiomatic Python code is often referred to as being *Pythonic*." @@ -464,12 +451,12 @@ msgstr "자연스러운 파이썬 코드를 흔히들 *파이써닉* 스럽다 #: ../../writing/style.rst:278 msgid "" -"Although there usually is one --- and preferably only one --- obvious way" -" to do it; *the* way to write idiomatic Python code can be non-obvious to" -" Python beginners. So, good idioms must be consciously acquired." +"Although there usually is one --- and preferably only one --- obvious way to" +" do it; *the* way to write idiomatic Python code can be non-obvious to " +"Python beginners. So, good idioms must be consciously acquired." msgstr "" -"이를 위한 명백한 방법(그리고 유일한 방법이라고 말하고 싶습니다)이 있지만, 파이썬 초보자에게는 이상적인 파이썬 코드 작성법이 " -"와닿지 않을 수도 있습니다. 그러니 좋은 이디엄들을 의식적으로 숙지해야 합니다. " +"이를 위한 명백한 방법(그리고 유일한 방법이라고 말하고 싶습니다)이 있지만, 파이썬 초보자에게는 이상적인 파이썬 코드 작성법이 와닿지 " +"않을 수도 있습니다. 그러니 좋은 이디엄들을 의식적으로 숙지해야 합니다. " #: ../../writing/style.rst:282 msgid "Some common Python idioms follow:" @@ -482,11 +469,11 @@ msgstr "언패킹" #: ../../writing/style.rst:289 msgid "" "If you know the length of a list or tuple, you can assign names to its " -"elements with unpacking. For example, since ``enumerate()`` will provide " -"a tuple of two elements for each item in list:" +"elements with unpacking. For example, since ``enumerate()`` will provide a " +"tuple of two elements for each item in list:" msgstr "" -"리스트나 튜플의 길이를 알고 있다면, 언패킹을 하면서 각 엘리먼트마다 이름을 붙여줄 수 있습니다. 예를 들면 " -"``enumerate()`` 는 리스트 내부에 있는 각각의 아이템에 2개의 엘리먼트가 있는 튜플을 만들어줍니다: " +"리스트나 튜플의 길이를 알고 있다면, 언패킹을 하면서 각 엘리먼트마다 이름을 붙여줄 수 있습니다. 예를 들면 ``enumerate()``" +" 는 리스트 내부에 있는 각각의 아이템에 2개의 엘리먼트가 있는 튜플을 만들어줍니다: " #: ../../writing/style.rst:298 msgid "You can use this to swap variables as well:" @@ -508,28 +495,27 @@ msgstr "사용하지 않을 변수 만들기" #: ../../writing/style.rst:323 msgid "" -"If you need to assign something (for instance, in :ref:`unpacking-ref`) " -"but will not need that variable, use ``__``:" +"If you need to assign something (for instance, in :ref:`unpacking-ref`) but " +"will not need that variable, use ``__``:" msgstr "" "사용하지 않을 변수를 가져다가 어딘가에 할당하는 경우 (예를 들면 :ref:`unpacking-ref` 할 경우) ``__`` 를 " "사용하세요: " #: ../../writing/style.rst:333 msgid "" -"Many Python style guides recommend the use of a single underscore " -"\"``_``\" for throwaway variables rather than the double underscore " -"\"``__``\" recommended here. The issue is that \"``_``\" is commonly used" -" as an alias for the :func:`~gettext.gettext` function, and is also used " -"at the interactive prompt to hold the value of the last operation. Using " -"a double underscore instead is just as clear and almost as convenient, " -"and eliminates the risk of accidentally interfering with either of these " -"other use cases." -msgstr "" -"이 안내서에서는 쓸모없는 변수를 치워버리는데 언더스코어 두 줄 \"``__``\" 을 사용할 것을 추천하지만, 다른 많은 파이썬 " -"스타일 안내서에서는 언더스코어 한 줄 \"``_``\" 을 사용하라고 합니다. 하지만 \"``_``\" 에는 문제가 있습니다. " -"\"``_``\" 이 일반적으로 :func:`~gettext.gettext` 함수의 별칭(alias)로 쓰일 뿐 아니라, 대화형 " -"프롬프트상에서 이전 명령어의 결과값을 가지고 있는 변수로 쓰이기 때문입니다. 그 대신 언더스코어 두 줄을 사용하면 아주 깔끔하고 " -"편리할 뿐만 아니라, 위에서 이야기한 경우가 돌발적으로 나타나 코드를 간섭하는 리스크를 제거할 수 있습니다. " +"Many Python style guides recommend the use of a single underscore \"``_``\" " +"for throwaway variables rather than the double underscore \"``__``\" " +"recommended here. The issue is that \"``_``\" is commonly used as an alias " +"for the :func:`~gettext.gettext` function, and is also used at the " +"interactive prompt to hold the value of the last operation. Using a double " +"underscore instead is just as clear and almost as convenient, and eliminates" +" the risk of accidentally interfering with either of these other use cases." +msgstr "" +"이 안내서에서는 쓸모없는 변수를 치워버리는데 언더스코어 두 줄 \"``__``\" 을 사용할 것을 추천하지만, 다른 많은 파이썬 스타일 " +"안내서에서는 언더스코어 한 줄 \"``_``\" 을 사용하라고 합니다. 하지만 \"``_``\" 에는 문제가 있습니다. \"``_``\"" +" 이 일반적으로 :func:`~gettext.gettext` 함수의 별칭(alias)로 쓰일 뿐 아니라, 대화형 프롬프트상에서 이전 " +"명령어의 결과값을 가지고 있는 변수로 쓰이기 때문입니다. 그 대신 언더스코어 두 줄을 사용하면 아주 깔끔하고 편리할 뿐만 아니라, 위에서" +" 이야기한 경우가 돌발적으로 나타나 코드를 간섭하는 리스크를 제거할 수 있습니다. " #: ../../writing/style.rst:343 msgid "Create a length-N list of the same thing" @@ -545,14 +531,13 @@ msgstr "길이가 N인 리스트가 들어있는 리스트 만들기" #: ../../writing/style.rst:354 msgid "" -"Because lists are mutable, the ``*`` operator (as above) will create a " -"list of N references to the `same` list, which is not likely what you " -"want. Instead, use a list comprehension:" +"Because lists are mutable, the ``*`` operator (as above) will create a list " +"of N references to the `same` list, which is not likely what you want. " +"Instead, use a list comprehension:" msgstr "" -"리스트는 변경 가능하기 때문에, ``*`` 연산자는 (위에서처럼) N개의 리퍼런스가 있는 `같은` 리스트를 만들 것입니다. 하지만 " -"아마 이렇게 만들고 싶지는 않았을 것입니다. 대신에 리스트 컴프리헨션(list comprehension)을 사용하세요: (역주: " -"번역이 마땅치 않아 영문 그대로 사용하였습니다. 타 번역서에서는 리스트 축약, 리스트 해석, 리스트 내장, 리스트 내포 등으로 " -"번역되어 있습니다. )" +"리스트는 변경 가능하기 때문에, ``*`` 연산자는 (위에서처럼) N개의 리퍼런스가 있는 `같은` 리스트를 만들 것입니다. 하지만 아마 " +"이렇게 만들고 싶지는 않았을 것입니다. 대신에 리스트 컴프리헨션(list comprehension)을 사용하세요: (역주: 번역이 마땅치" +" 않아 영문 그대로 사용하였습니다. 타 번역서에서는 리스트 축약, 리스트 해석, 리스트 내장, 리스트 내포 등으로 번역되어 있습니다. )" #: ../../writing/style.rst:363 msgid "Create a string from a list" @@ -566,8 +551,8 @@ msgstr "문자열을 만드는 일반적인 이디엄은 빈 문자열 변수에 #: ../../writing/style.rst:373 msgid "" -"This will set the value of the variable *word* to 'spam'. This idiom can " -"be applied to lists and tuples." +"This will set the value of the variable *word* to 'spam'. This idiom can be " +"applied to lists and tuples." msgstr "이것은 변수의 *글자* 의 값을 붙여줍니다. 이 이디엄은 리스트와 튜플에도 적용 가능합니다. " #: ../../writing/style.rst:377 @@ -576,8 +561,8 @@ msgstr "컬렉션에서 아이템 찾기" #: ../../writing/style.rst:379 msgid "" -"Sometimes we need to search through a collection of things. Let's look at" -" two options: lists and sets." +"Sometimes we need to search through a collection of things. Let's look at " +"two options: lists and sets." msgstr "컬렉션에서 무언가를 찾아야 할 때가 있습니다. 두 가지 옵션을 살펴봅시다. 리스트와 셋(set)입니다: " #: ../../writing/style.rst:382 @@ -585,39 +570,35 @@ msgid "Take the following code for example:" msgstr "예시 삼아 다음의 코드를 작성해봅시다: " #: ../../writing/style.rst:395 -#, fuzzy -msgid "" -"Even though both functions look identical, because *lookup_set* is " -"utilizing the fact that sets in Python are hashtables, the lookup " -"performance between the two is very different. To determine whether an " -"item is in a list, Python will have to go through each item until it " -"finds a matching item. This is time consuming, especially for long lists." -" In a set, on the other hand, the hash of the item will tell Python where" -" in the set to look for a matching item. As a result, the search can be " -"done quickly, even if the set is large. Searching in dictionaries works " -"the same way. For more information see this `StackOverflow " -"`_ page. For detailed information on the amount of time various " -"common operations take on each of these data structures, see `this page " -"`_." -msgstr "" -"두 함수는 똑같아 보입니다. 하지만 검색 성능은 확연히 다릅니다. *lookup_set* 함수가 파이썬에서 셋(set)은 " -"해시테이블이라는 사실을 이용하기 때문입니다. 리스트 안에 어떤 아이템이 존재하는지 확인하려면 파이썬은 그 아이템과 매칭되는 것을 " -"찾을 때까지 각각의 아이템을 모두 검사해야만 합니다. 이 작업에는 시간이 걸립니다. 리스트가 긴 경우에는 더욱 그렇습니다. 반면에 " -"셋(set)에서는 각 아이템의 해시가 셋 안에의 어느 곳에 매칭되는 아이템이 위치하는지 알려줍니다. 결과적으로 셋(set)이 " -"크더라도 검색이 빠르게 완료됩니다. 딕셔너리(dictionary)에서의 검색도 마찬가지로 수행됩니다. 더 많은 정보를 윈하시면 " -"`StackOverflow `_ 를 참조하세요. 데이터 구조에 따라 각 연산자들이 어느 정도의 시간을 소모하는지에 " -"대한 자세한 정보는 `이 페이지 `_ 를 " -"참고하세요. " +msgid "" +"Even though both functions look identical, because *lookup_set* is utilizing" +" the fact that sets in Python are hashtables, the lookup performance between" +" the two is very different. To determine whether an item is in a list, " +"Python will have to go through each item until it finds a matching item. " +"This is time consuming, especially for long lists. In a set, on the other " +"hand, the hash of the item will tell Python where in the set to look for a " +"matching item. As a result, the search can be done quickly, even if the set " +"is large. Searching in dictionaries works the same way. For more information" +" see this `StackOverflow `_ page. For detailed information on the " +"amount of time various common operations take on each of these data " +"structures, see `this page `_." +msgstr "" +"두 함수는 똑같아 보입니다. 하지만 검색 성능은 확연히 다릅니다. *lookup_set* 함수가 파이썬에서 셋(set)은 해시테이블이라는" +" 사실을 이용하기 때문입니다. 리스트 안에 어떤 아이템이 존재하는지 확인하려면 파이썬은 그 아이템과 매칭되는 것을 찾을 때까지 각각의 " +"아이템을 모두 검사해야만 합니다. 이 작업에는 시간이 걸립니다. 리스트가 긴 경우에는 더욱 그렇습니다. 반면에 셋(set)에서는 각 " +"아이템의 해시가 셋 안의 어느 곳에 매칭되는 아이템이 위치하는지 알려줍니다. 결과적으로 셋(set)이 크더라도 검색이 빠르게 완료됩니다." +" 딕셔너리(dictionary)에서의 검색도 마찬가지로 수행됩니다. 더 많은 정보를 원하시면 `StackOverflow " +"`_ 페이지를 참조하세요. 데이터 구조에 따라 각 연산자들이 어느 정도의 시간을 소모하는지에 대한 자세한 정보는 `이 페이지 " +"`_ 를 참고하세요." #: ../../writing/style.rst:409 msgid "" -"Because of these differences in performance, it is often a good idea to " -"use sets or dictionaries instead of lists in cases where:" +"Because of these differences in performance, it is often a good idea to use " +"sets or dictionaries instead of lists in cases where:" msgstr "" -"이러한 성능의 차이 때문에 다음과 같은 경우에는 리스트 대신 셋(set)이나 딕셔너리(dictionary)를 사용하는 편이 " -"좋습니다: " +"이러한 성능의 차이 때문에 다음과 같은 경우에는 리스트 대신 셋(set)이나 딕셔너리(dictionary)를 사용하는 편이 좋습니다: " #: ../../writing/style.rst:412 msgid "The collection will contain a large number of items" @@ -635,11 +616,11 @@ msgstr "중복 아이템이 없는 경우" msgid "" "For small collections, or collections which you will not frequently be " "searching through, the additional time and memory required to set up the " -"hashtable will often be greater than the time saved by the improved " -"search speed." +"hashtable will often be greater than the time saved by the improved search " +"speed." msgstr "" -"크기가 작거나 검색을 자주 하지 않는 컬렉션의 경우에는 오히려 해시테이블을 만드는데 필요한 추가적인 시간과 메모리가 검색할 때 " -"절약되는 시간에 비해 더 큰 경우도 많습니다. " +"크기가 작거나 검색을 자주 하지 않는 컬렉션의 경우에는 오히려 해시테이블을 만드는데 필요한 추가적인 시간과 메모리가 검색할 때 절약되는 " +"시간에 비해 더 큰 경우도 많습니다. " #: ../../writing/style.rst:426 msgid "Zen of Python" @@ -650,59 +631,53 @@ msgid "Also known as :pep:`20`, the guiding principles for Python's design." msgstr ":pep:`20` 으로도 알려진 파이썬 디자인의 기본 원칙" #: ../../writing/style.rst:455 -#, fuzzy msgid "" -"For some examples of good Python style, see `these slides from a Python " -"user group `_." +"For some examples of good Python style, see `these slides from a Python user" +" group `_." msgstr "" -"좋은 파이썬 스타일의 예시를 보고 싶다면, `파이썬 유저 그룹의 이 슬라이드 " -"`_ 를 읽어보세요. " +"좋은 파이썬 스타일의 예시를 보고 싶다면, `파이썬 유저 그룹의 이 슬라이드 `_ 를 읽어보세요." #: ../../writing/style.rst:461 msgid "PEP 8" msgstr "PEP 8" #: ../../writing/style.rst:463 -#, fuzzy msgid "" -":pep:`8` is the de facto code style guide for Python. A high quality, " -"easy-to-read version of PEP 8 is also available at `pep8.org " +":pep:`8` is the de facto code style guide for Python. A high quality, easy-" +"to-read version of PEP 8 is also available at `pep8.org " "`_." msgstr "" -":pep:`8` 은 사실상 파이썬을 위한 코드 스타일 안내서입니다. 질 좋고 읽기 쉬운 버전의 PEP 8도 있습니다: " -"`pep8.org `_ " +":pep:`8` 은 사실상 파이썬을 위한 코드 스타일 안내서입니다. 질 좋고 읽기 쉬운 버전의 PEP 8도 있습니다: `pep8.org " +"`_ " #: ../../writing/style.rst:466 -#, fuzzy msgid "" -"This is highly recommended reading. The entire Python community does " -"their best to adhere to the guidelines laid out within this document. " -"Some project may sway from it from time to time, while others may amend " -"its recommendations." +"This is highly recommended reading. The entire Python community does their " +"best to adhere to the guidelines laid out within this document. Some project" +" may sway from it from time to time, while others may amend its " +"recommendations." msgstr "" -"읽어볼 것을 강력 추천합니다. 모든 파이썬 커뮤니티가 이 문서의 가이드라인을 준수하려고 노력합니다. 시간이 흐름에 따라 여기서 " -"멀어지는 프로젝트도 있을겁니다. 그렇지 않은 분들은 `이 추천사항을 수정해주세요 `_." +"읽어볼 것을 강력 추천합니다. 모든 파이썬 커뮤니티가 이 문서의 가이드라인을 준수하려고 노력합니다. 시간이 흐름에 따라 여기서 멀어지는 " +"프로젝트도 있을 것이고, 권장 사항을 수정하는 프로젝트도 있을 것입니다." #: ../../writing/style.rst:470 -#, fuzzy msgid "" -"That being said, conforming your Python code to PEP 8 is generally a good" -" idea and helps make code more consistent when working on projects with " -"other developers. There is a command-line program, `pycodestyle " +"That being said, conforming your Python code to PEP 8 is generally a good " +"idea and helps make code more consistent when working on projects with other" +" developers. There is a command-line program, `pycodestyle " "`_ (previously known as ``pep8``), " "that can check your code for conformance. Install it by running the " "following command in your terminal:" msgstr "" -"이 말인즉, PEP 8에 파이썬 코드를 맞추는 편이 대체로 좋은 생각이며, 프로젝트에서 다른 개발자와 함께 일할 경우 코드의 " -"일관성을 유지하는데 도움이 된다는 뜻입니다. 이를 위해 여러분의 코드가 PEP 8을 지키는지를 체크하는 `pep8 " -"`_ 라는 커맨드라인 프로그램이 있습니다. 터미널에서 아래의 명령어를" -" 돌려 설치해보세요. " +"이 말인즉, PEP 8에 파이썬 코드를 맞추는 편이 대체로 좋은 생각이며, 프로젝트에서 다른 개발자와 함께 일할 경우 코드의 일관성을 " +"유지하는데 도움이 된다는 뜻입니다. 이를 위해 여러분의 코드가 PEP 8을 지키는지를 체크하는 `pycodestyle " +"`_ (이전 명칭은 ``pep8``) 라는 커맨드라인 프로그램이 " +"있습니다. 터미널에서 아래의 명령어를 돌려 설치해보세요." #: ../../writing/style.rst:482 msgid "" -"Then run it on a file or series of files to get a report of any " -"violations." +"Then run it on a file or series of files to get a report of any violations." msgstr "그런 다음 파일 하나 혹은 여러 개의 파일에다 돌리면 PEP 8 위반 여부 보고서를 얻을 수 있습니다. " #: ../../writing/style.rst:497 @@ -720,14 +695,12 @@ msgid "**autopep8**" msgstr "" #: ../../writing/style.rst:504 -#, fuzzy msgid "" -"The program `autopep8 `_ can be used " -"to automatically reformat code in the PEP 8 style. Install the program " -"with:" +"The program `autopep8 `_ can be used to " +"automatically reformat code in the PEP 8 style. Install the program with:" msgstr "" -"`autopep8 `_ 프로그램도 코드를 PEP 8 스타일로" -" 자동 재포맷하는데 쓰일 수 있습니다. 이렇게 설치하시면 됩니다: " +"`autopep8 `_ 프로그램도 코드를 PEP 8 스타일로 자동 " +"재포맷하는데 쓰일 수 있습니다. 이렇게 설치하시면 됩니다:" #: ../../writing/style.rst:511 msgid "Use it to format a file in-place with:" @@ -736,25 +709,24 @@ msgstr "포맷할 파일에다가 이렇게 사용하시며 됩니다: " #: ../../writing/style.rst:517 msgid "" "Excluding the ``--in-place`` flag will cause the program to output the " -"modified code directly to the console for review. The ``--aggressive`` " -"flag will perform more substantial changes and can be applied multiple " -"times for greater effect." +"modified code directly to the console for review. The ``--aggressive`` flag " +"will perform more substantial changes and can be applied multiple times for " +"greater effect." msgstr "" "``--in-place`` 플래그를 빼면 프로그램이 콘솔에 바로 뽑아준 변경된 코드로 리뷰를 할 수 있습니다. " "``--aggressive`` 플래그는 더 많은 변화를 수행하고, 여러 번 수행해서 더 많은 효과를 볼 수도 있습니다. " #: ../../writing/style.rst:521 -#, fuzzy msgid "**yapf**" -msgstr "**나쁜 예**" +msgstr "**yapf**" #: ../../writing/style.rst:523 msgid "" "While autopep8 focuses on solving the PEP 8 violations, `yapf " -"`_ tries to improve the format of your " -"code aside from complying with PEP 8. This formatter aims at providing as" -" good looking code as a programmer who writes PEP 8 compliant code. It " -"gets installed with:" +"`_ tries to improve the format of your code " +"aside from complying with PEP 8. This formatter aims at providing as good " +"looking code as a programmer who writes PEP 8 compliant code. It gets " +"installed with:" msgstr "" #: ../../writing/style.rst:533 @@ -768,19 +740,18 @@ msgid "" msgstr "" #: ../../writing/style.rst:542 -#, fuzzy msgid "**black**" -msgstr "**나쁜 예**" +msgstr "**black**" #: ../../writing/style.rst:544 msgid "" "The auto-formatter `black `_ offers an " -"opinionated and deterministic reformatting of your code base. Its main " -"focus lies in providing a uniform code style without the need of " -"configuration throughout its users. Hence, users of black are able to " -"forget about formatting altogether. Also, due to the deterministic " -"approach minimal git diffs with only the relevant changes are guaranteed." -" You can install the tool as follows:" +"opinionated and deterministic reformatting of your code base. Its main focus" +" lies in providing a uniform code style without the need of configuration " +"throughout its users. Hence, users of black are able to forget about " +"formatting altogether. Also, due to the deterministic approach minimal git " +"diffs with only the relevant changes are guaranteed. You can install the " +"tool as follows:" msgstr "" #: ../../writing/style.rst:556 @@ -789,8 +760,8 @@ msgstr "" #: ../../writing/style.rst:562 msgid "" -"Adding the ``--diff`` flag provides the code modification for review " -"without direct application." +"Adding the ``--diff`` flag provides the code modification for review without" +" direct application." msgstr "" #: ../../writing/style.rst:567 @@ -804,21 +775,19 @@ msgid "" msgstr "읽기 쉬운 코드 작성을 위한 코딩 컨벤션을 소개합니다. " #: ../../writing/style.rst:572 -#, fuzzy msgid "Check if a variable equals a constant" msgstr "변수와 상수가 같은지 여부를 체크하기" #: ../../writing/style.rst:574 -#, fuzzy msgid "" -"You don't need to explicitly compare a value to True, or None, or 0 -- " -"you can just add it to the if statement. See `Truth Value Testing " -"`_ for " -"a list of what is considered false." +"You don't need to explicitly compare a value to True, or None, or 0 -- you " +"can just add it to the if statement. See `Truth Value Testing " +"`_ for a " +"list of what is considered false." msgstr "" -"값이 True인지, None인지, 0인지를 확실하게 비교할 필요는 없습니다 - 그냥 if문만 붙이면 됩니다. `Truth Value" -" Testing `_ 을 보시면 어느 것이 false인지 알 수 있습니다. " +"값이 True인지, None인지, 0인지를 확실하게 비교할 필요는 없습니다 - 그냥 if문만 붙이면 됩니다. `Truth Value " +"Testing `_" +" 을 보시면 어느 것이 false인지 알 수 있습니다. " #: ../../writing/style.rst:579 ../../writing/style.rst:611 #: ../../writing/style.rst:649 ../../writing/style.rst:690 @@ -852,42 +821,40 @@ msgid "Short Ways to Manipulate Lists" msgstr "리스트를 조작하는 지름길" #: ../../writing/style.rst:637 -#, fuzzy msgid "" -"`List comprehensions `_ provides a powerful, concise way to work with " -"lists." +"`List comprehensions " +"`_ " +"provides a powerful, concise way to work with lists." msgstr "" "`리스트 컴프리헨션(list comprehension) " -"`_ 은 리스트로 작업하는 강력하고도 간결한 방법입니다. :py:func:`map` 과 " -":py:func:`filter` 함수 또한 리스트에 명령을 수행하는 또다른 간결한 문법입니다. " +"`_ " +"은 리스트로 작업하는 강력하고도 간결한 방법을 제공합니다." #: ../../writing/style.rst:641 msgid "" -"`Generator expressions `_ follows almost the same syntax as list " -"comprehensions but return a generator instead of a list." +"`Generator expressions " +"`_ " +"follows almost the same syntax as list comprehensions but return a generator" +" instead of a list." msgstr "" #: ../../writing/style.rst:646 msgid "" -"Creating a new list requires more work and uses more memory. If you are " -"just going to loop through the new list, prefer using an iterator " -"instead." +"Creating a new list requires more work and uses more memory. If you are just" +" going to loop through the new list, prefer using an iterator instead." msgstr "" #: ../../writing/style.rst:663 msgid "" -"Use list comprehensions when you really need to create a second list, for" -" example if you need to use the result multiple times." +"Use list comprehensions when you really need to create a second list, for " +"example if you need to use the result multiple times." msgstr "" #: ../../writing/style.rst:667 msgid "" -"If your logic is too complicated for a short list comprehension or " -"generator expression, consider using a generator function instead of " -"returning a list." +"If your logic is too complicated for a short list comprehension or generator" +" expression, consider using a generator function instead of returning a " +"list." msgstr "" #: ../../writing/style.rst:688 @@ -895,9 +862,8 @@ msgid "Never use a list comprehension just for its side effects." msgstr "" #: ../../writing/style.rst:705 -#, fuzzy msgid "Filtering a list" -msgstr "리스트로 문자열 만들기" +msgstr "리스트 필터링하기" #: ../../writing/style.rst:709 msgid "Never remove items from a list while you are iterating through it." @@ -918,8 +884,8 @@ msgstr "" #: ../../writing/style.rst:742 msgid "" "Modifying the original list can be risky if there are other variables " -"referencing it. But you can use *slice assignment* if you really want to " -"do that." +"referencing it. But you can use *slice assignment* if you really want to do " +"that." msgstr "" #: ../../writing/style.rst:751 @@ -958,11 +924,11 @@ msgstr "``with open`` 문법으로 파일을 읽으세요. 파일을 자동으 #: ../../writing/style.rst:815 msgid "" -"The ``with`` statement is better because it will ensure you always close " -"the file, even if an exception is raised inside the ``with`` block." +"The ``with`` statement is better because it will ensure you always close the" +" file, even if an exception is raised inside the ``with`` block." msgstr "" -"``with`` 문은 파일을 반드시 닫아주기 때문에 더 좋습니다. 심지어 ``with`` 블럭 안에서 예외(exception)이 " -"발생해도 그렇습니다. " +"``with`` 문은 파일을 반드시 닫아주기 때문에 더 좋습니다. 심지어 ``with`` 블럭 안에서 예외(exception)이 발생해도" +" 그렇습니다. " #: ../../writing/style.rst:819 msgid "Line Continuations" @@ -970,35 +936,34 @@ msgstr "줄 잇기" #: ../../writing/style.rst:821 msgid "" -"When a logical line of code is longer than the accepted limit, you need " -"to split it over multiple physical lines. The Python interpreter will " -"join consecutive lines if the last character of the line is a backslash. " -"This is helpful in some cases, but should usually be avoided because of " -"its fragility: a white space added to the end of the line, after the " -"backslash, will break the code and may have unexpected results." +"When a logical line of code is longer than the accepted limit, you need to " +"split it over multiple physical lines. The Python interpreter will join " +"consecutive lines if the last character of the line is a backslash. This is " +"helpful in some cases, but should usually be avoided because of its " +"fragility: a white space added to the end of the line, after the backslash, " +"will break the code and may have unexpected results." msgstr "" "코드의 논리적 줄이 어느 정도를 넘어서면 몇 개의 물리적 줄로 쪼갤 필요가 있습니다. 파이썬 인터프리터는 줄의 마지막 문자가 " -"역슬래시(\\)일 경우 자동으로 줄을 이어줍니다. 이는 많은 경우에 도움이 되지만 망가지기 쉬운 경우가 있기에 일반적으로 " -"피해야합니다: 역슬래시 뒤에 빈 칸(white space)가 있는 경우, 코드가 망가지고 예상치 못한 결과가 나옵니다. " +"역슬래시(\\)일 경우 자동으로 줄을 이어줍니다. 이는 많은 경우에 도움이 되지만 망가지기 쉬운 경우가 있기에 일반적으로 피해야합니다: " +"역슬래시 뒤에 빈 칸(white space)가 있는 경우, 코드가 망가지고 예상치 못한 결과가 나옵니다. " #: ../../writing/style.rst:828 -#, fuzzy msgid "" -"A better solution is to use parentheses around your elements. Left with " -"an unclosed parenthesis on an end-of-line, the Python interpreter will " -"join the next line until the parentheses are closed. The same behavior " -"holds for curly and square braces." +"A better solution is to use parentheses around your elements. Left with an " +"unclosed parenthesis on an end-of-line, the Python interpreter will join the" +" next line until the parentheses are closed. The same behavior holds for " +"curly and square braces." msgstr "" "더 나은 해결책은 괄호()를 두르는 것입니다. 파이썬 인터프리터는 왼쪽의 열린 괄호에서부터 오른쪽의 닫힌 괄호까지의 줄을 자동으로 " "연결합니다. 중괄호{}와 대괄호[]에서도 동일하게 동작합니다. " #: ../../writing/style.rst:857 msgid "" -"However, more often than not, having to split a long logical line is a " -"sign that you are trying to do too many things at the same time, which " -"may hinder readability." -msgstr "그러나 대부분의 경우 긴 논리적 줄을 나누는 짓은 동시에 너무 많은 일을 하려고 한다는 신호입니다. 이는 가독성을 해칩니다. " +"However, more often than not, having to split a long logical line is a sign " +"that you are trying to do too many things at the same time, which may hinder" +" readability." +msgstr "" +"그러나 대부분의 경우 긴 논리적 줄을 나누는 짓은 동시에 너무 많은 일을 하려고 한다는 신호입니다. 이는 가독성을 해칩니다. " #~ msgid "Note: Use range() instead of xrange() in Python 3" #~ msgstr "주석: 파이썬3에서는 xrange() 대신에 range()를 쓰세요. " - From 8b1160307ec69bf5ef332b11b43b199d007f93a4 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 08:53:57 +0900 Subject: [PATCH 074/117] Fix syntax error in scenarios/web.po Removed stray duplicate double-quote at line 764 that broke msgfmt and polib parsing. The Chameleon/Pyramid Framework entry now ends with a single closing quote. Also normalized the Last-Translator header per project convention. Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 34851 -> 34802 bytes docs/locale/ko/LC_MESSAGES/scenarios/web.po | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo index daf7906742a688972974dfdbb4cece017563e30b..58430d232abc1e311c9f2a9ecaad8a11c399fce9 100644 GIT binary patch delta 881 zcmXZaPe{{o7{~FCGdIdDjbh?q^oOX?E$T3%a?{MEnU;UjVwk3FE1SB~X@4C3r-EiJ zp+nJO5k!dD=#LR~OKQ=jE>Q>T5CmQ-0-;OqU*8Vn^?RP@`~CjD&+}Vm)b=xFd(f1h zY|fK%<VG}EU0P4< zt&`?s2-`7?wVXGN{kXW^)Xy~}r9Kv<8l(fLo%~o3MyvD4E)GX$qf|-$J_kpM1iDHL4%9 zZ!P$P)~K%2&Nt$j2wf0QN6ibwz^x~o;(gNIoOkGv@mVbNP4pO6+Z^750?YTUtp!}`X9r=(5z=ro@xU;1^% xe4^P4*-Q4BGG|-wKrGzY-5XmLh@=z#rRj{{o&N0av#s@I>jEq7*?9G&|1YFPkdFWW delta 923 zcmXZaOGs2v9LMqB_@vYxE{cM|X%I3f$ZV0;=#1~Qho)r~VN;q7>Wn&RnZ;CSFT||b zsNp69(dao8B|$FIO%K{dn~(^LD1;y~a?$sC+T73i|NrNnd(QvdpVy*>`=TCHMu)m> z(yJV4NK&~+a^fsL!sJ|O7$-3weR)zJ^Y7s^;+z8MF8;xlI8rD@@CC+Wut-{lofwBb zn8y2IEGB+ltk6OscDocyAra##B$r4T#H%rpcvq=(0uSO+e1|J=8o%T3|Mky1q|L4zItmEO0lDaXL_{$-w zg!l*6vcQ(ZX5k^P^nv;q+R1kvF&nsb)O2JN$Ei=C9Xo5K+c<#zm|bVC2VLxpre?K7I!ED-F zL;f4mb(OT5gA8I4-`5C(7z&Ru0mpF_PN5g4F%5Hr(qe2tx~_J7&BAZ+Ee^IxH^}== zO4o57pJMMRX$|$F4wLttHXZ+q7j4_5s!mh*ct%=6%bU+iYca&XVcqe_c}|Hl7wAH? zl-gyk$bLC;HEudH$#dNAs1CIG>m3z!fpEJ!B__+!5D53UQ=DauZLQwM4TXW$reK!C h-@Fh8UFlmLX6V`&9&@+YHbv~7)Hs_n;wgIQ{s)tCr9uDz diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.po b/docs/locale/ko/LC_MESSAGES/scenarios/web.po index cfbd03424..0e996d78a 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/web.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/web.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: Ahn Young Seon \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -761,7 +761,7 @@ msgid "" msgstr "" "카멜레온은 파이썬 2.5와 그 이상 (3.x와 PyPy 포함)에서 사용 가능하며, " "`Pyramid Framework " -"`_ 에서 일반적으로 사용합니다."" +"`_ 에서 일반적으로 사용합니다." #: ../../scenarios/web.rst:451 msgid "" From 3f7238435ae350f8277134a978a7d168cd8795f3 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:01:34 +0900 Subject: [PATCH 075/117] Resolve all pre-existing fuzzy entries (69 across 6 files) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Carried over from prior translation history, not from upstream sync: - writing/structure.po (38), writing/tests.po (9), writing/documentation.po (8), writing/logging.po (7), starting/install/linux.po (4), starting/install/win.po (3) Substantive fixes include: - Mistranslations of project names (e.g. hypothesis/tox both rendered as "nose" in tests.po; "Pro/Con" rendered as "이렇게 하자 / 이렇게 하지 마세요" in logging.po) - Truncated paragraphs missing chunks of the English source (structure.po race-condition example, documentation.po Numpy style) - URL refreshes (http→https, docs.python.org/2→/3, pypi.python.org→pypi.org, diveintopython.net→diveintopython3.net, stuartellis.eu→stuartellis.name) - Typos (다양환→다양한, 지세웠→지새웠, 비지니스→비즈니스, 얽메이지→얽매이지, 해롭습다→해롭습니다, "Installing Python on Windows/Linux" → "파이썬 2") - Missing markup (backticks, parentheses) Per file's existing convention, used 합쇼체 for all six files. All Last-Translator headers normalized to "YoungSeon Ahn ". Total project fuzzy count: 0. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/starting/install/linux.mo | Bin 5249 -> 5671 bytes .../ko/LC_MESSAGES/starting/install/linux.po | 120 +- .../ko/LC_MESSAGES/starting/install/win.mo | Bin 7176 -> 6443 bytes .../ko/LC_MESSAGES/starting/install/win.po | 172 ++- .../ko/LC_MESSAGES/writing/documentation.mo | Bin 14560 -> 18770 bytes .../ko/LC_MESSAGES/writing/documentation.po | 354 +++--- docs/locale/ko/LC_MESSAGES/writing/logging.mo | Bin 7426 -> 9468 bytes docs/locale/ko/LC_MESSAGES/writing/logging.po | 130 +- .../ko/LC_MESSAGES/writing/structure.mo | Bin 34911 -> 56245 bytes .../ko/LC_MESSAGES/writing/structure.po | 1061 ++++++++--------- docs/locale/ko/LC_MESSAGES/writing/tests.mo | Bin 14988 -> 15442 bytes docs/locale/ko/LC_MESSAGES/writing/tests.po | 319 +++-- 12 files changed, 981 insertions(+), 1175 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo index 985643769e936a2af2eeed8560713ba47ef656e7..7b541425974d64a59ab2ead5e68053dec2b02123 100644 GIT binary patch delta 1361 zcmb`F%WoT16vnUf;1OC1B|=5&;%q9BV2{*ho*Cv5 zClcTgIbf1NTWq&(^IBf%j1u83+ELk8n2+8+O{{oQsCN60gtPmqz|L#4$ zbIy0ZIqwZz3+I2`+f!k9p2XUZ)d&s`JmC;yhp{49?;t+W)w%Z@_y^8^feG;UZpNMf zU+Q7Z244e%#6N+bfr(zmz684;V(b`r13b-Go(XI;1Y!>})(@_MQ{Z>tTu}TG#>T;K zA4OvD>BkuR6#sv?i?IXXz;4E#NBk5Rh=2d_j*#c}V2^VQyaC<;e*`_K`~e(7$9WcJ z>`!dw5O{kpV_$$>Pj!TR1zyDY4)`+)jPu1fZabQ3IAorq7rEh{dNoXEc#2M{E{z&4w=G+9c;{Vu z_RPuA_yDO!iq1}WhU?MbVA9NT%4u$9r&$ z_bcXdImK~3$mFoqQ4BT9qc~|vojcGIcpORbNv@k#7A8h=nvpVdPBbVSrd&o#X10q? zs+t}MBF{*nOyG}$T%>DBZa7?N9qvu^yg(xvgJRQ;qGpWauu?b8^9p<(?u)BN+CvAC zF|KBZC_eJaiL)aoMkyALAJ?}{87_7Az14N_Xv^!%g-XYE)enfZby1v?^9_0BBKeDp za(P33w2qOGg@*j5>Q}1m&1P$D_uWul-mJ-mI*G3fvR;tO)t!kD^`a=%{L3GZyi)cH zO}|_a%UeOFwIb~l=!{30+P60mYq#nomzv^M!7r|(wwNztTpkdh96_Kbeu2 zH)IL6biTok5E2)z%H=JXLHC?5)bULrqaaqQfebmjE|;$R6}VokqJ^TIho{?Jv`TyK G_WTWOKK@Ps delta 1018 zcmds!&ubGw6vtm;tR+pGUb;1-5dj}Sct_a=!n*ohAZ?@bZCMBPGSIQScQ3HhBQ(QCwa zj}8Yv#z{WF-v+zj8q{ooU%)ru`t)EhO{R#R6PnCm^BIlarTXV1mm{~Y*JQcQD)3>N z4K1sNX$5vga#d-zUC$SeW4jiYI(|*LJkR(PZ8vD=N6GmN@`_RQ$R?oHK_n^LE_ zW&1VuYmzOkT495xY6gzbw%=h@9k)xfry7zgw&!d6e&E~6^$-inH5MK(%Zkz>%@yUI z^|>5Y4*HJ74tDo zrH%gY=z63do7jkTvsY^_=N+{v8#2^@E5pq!Sq))3Stu*Si^8=6{AO@njh)OLDH>sf z^TpzlV`r7N3h|N?XyIg*m2P+jyUl^?EzVux;dXI0zH)2jMrKWF4>w})T\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -22,81 +22,76 @@ msgstr "" "Generated-By: Babel 2.2.0\n" #: ../../starting/install/linux.rst:6 -#, fuzzy msgid "Installing Python 2 on Linux" -msgstr "리눅스에 파이썬 설치하기" +msgstr "리눅스에 파이썬 2 설치하기" #: ../../starting/install/linux.rst:11 msgid "" -"Check out our :ref:`guide for installing Python 3 on " -"Linux`." +"Check out our :ref:`guide for installing Python 3 on Linux`." msgstr "" #: ../../starting/install/linux.rst:13 -#, fuzzy msgid "" -"The latest versions of CentOS, Red Hat Enterprise Linux (RHEL) and Ubuntu" -" **come with Python 2.7 out of the box**." -msgstr "최신 버전의 CentOS, 페도라, 레드햇 엔터프라이즈(RHEL), 그리고 우분투는 **파이썬 2.7이 딸려옵니다. 멋지죠. ** " +"The latest versions of CentOS, Red Hat Enterprise Linux (RHEL) and Ubuntu " +"**come with Python 2.7 out of the box**." +msgstr "최신 버전의 CentOS, 레드햇 엔터프라이즈 리눅스(RHEL), 그리고 우분투에는 **파이썬 2.7이 딸려옵니다**." #: ../../starting/install/linux.rst:16 msgid "" -"To see which version of Python you have installed, open a command prompt " -"and run" +"To see which version of Python you have installed, open a command prompt and" +" run" msgstr "어느 버전의 파이썬이 설치되어 있는지 확인하려면, 명령창을 열고 아래의 스크립트를 실행하세요. " #: ../../starting/install/linux.rst:22 msgid "" -"However, with the growing popularity of Python 3, some distributions, " -"such as Fedora, don't come with Python 2 pre-installed. You can install " -"the ``python2`` package with your distribution package manager:" +"However, with the growing popularity of Python 3, some distributions, such " +"as Fedora, don't come with Python 2 pre-installed. You can install the " +"``python2`` package with your distribution package manager:" msgstr "" #: ../../starting/install/linux.rst:30 msgid "" -"You do not need to install or configure anything else to use Python. " -"Having said that, I would strongly recommend that you install the tools " -"and libraries described in the next section before you start building " -"Python applications for real-world use. In particular, you should always " -"install Setuptools and pip, as it makes it much easier for you to use " -"other third-party Python libraries." +"You do not need to install or configure anything else to use Python. Having " +"said that, I would strongly recommend that you install the tools and " +"libraries described in the next section before you start building Python " +"applications for real-world use. In particular, you should always install " +"Setuptools and pip, as it makes it much easier for you to use other third-" +"party Python libraries." msgstr "" -"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 " -"이 안내서에서 앞으로 설명할 도구와 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools와 pip는 반드시 " -"설치해야 합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다." +"파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 " +"안내서에서 앞으로 설명할 도구와 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 Setuptools와 pip는 반드시 설치해야 " +"합니다. 이것들은 다른 파이썬 서드파티 라이브러리들을 사용하기 편하게 해줍니다." #: ../../starting/install/linux.rst:39 msgid "Setuptools & Pip" msgstr "Setuptools & Pip" #: ../../starting/install/linux.rst:41 -#, fuzzy msgid "" "The two most crucial third-party Python packages are `setuptools " "`_ and `pip " "`_." msgstr "" "가장 중요한 파이썬 서드파티 패키지를 2개 뽑으라면 `setuptools " -"`_ 와 `pip " +"`_ 와 `pip " "`_ 입니다." #: ../../starting/install/linux.rst:43 msgid "" -"Once installed, you can download, install and uninstall any compliant " -"Python software product with a single command. It also enables you to add" -" this network installation capability to your own Python software with " -"very little work." +"Once installed, you can download, install and uninstall any compliant Python" +" software product with a single command. It also enables you to add this " +"network installation capability to your own Python software with very little" +" work." msgstr "" -"이것들을 설치하면 단 한 줄의 명령만으로도 pip와 setuptools에 호환되는 모든 파이썬 소프트웨어를 다운로드, 설치, 삭제할" -" 수 있습니다.또한 당신이 만든 파이썬 소프트웨어에 네트워크 설치 기능을 손쉽게 추가할 수 있도록 해줍니다. " +"이것들을 설치하면 단 한 줄의 명령만으로도 pip와 setuptools에 호환되는 모든 파이썬 소프트웨어를 다운로드, 설치, 삭제할 수 " +"있습니다.또한 당신이 만든 파이썬 소프트웨어에 네트워크 설치 기능을 손쉽게 추가할 수 있도록 해줍니다. " #: ../../starting/install/linux.rst:47 msgid "" "Python 2.7.9 and later (on the python2 series), and Python 3.4 and later " "include pip by default." msgstr "" -"파이썬 2.7.9와 그 이후의 버전(파이썬2 중에서), 그리고 파이썬 3.4와 그 이후의 버전은 pip를 기본적으로 포함하고 " -"있습니다. " +"파이썬 2.7.9와 그 이후의 버전(파이썬2 중에서), 그리고 파이썬 3.4와 그 이후의 버전은 pip를 기본적으로 포함하고 있습니다. " #: ../../starting/install/linux.rst:50 msgid "To see if pip is installed, open a command prompt and run" @@ -108,8 +103,8 @@ msgid "" "`_ - this will automatically " "install the latest version of setuptools." msgstr "" -"pip를 설치하려면 `pip 공식 설치 안내서 `_ 를" -" 따라해보세요. - 이 링크는 setuptools 최신 버전도 자동 설치해줍니다. " +"pip를 설치하려면 `pip 공식 설치 안내서 `_ 를 " +"따라해보세요. - 이 링크는 setuptools 최신 버전도 자동 설치해줍니다. " #: ../../starting/install/linux.rst:61 msgid "Virtual Environments" @@ -119,18 +114,18 @@ msgstr "Virtual Environments" msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x " -"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x but," +" Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 서로 다른 파이썬 프로젝트들 간의 독립성을 유지시켜주는 툴입니다." -" 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 패키지 " -"디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." +"Virtual Environments은 파이썬 가상 환경을 만들어 서로 다른 파이썬 프로젝트들 간의 독립성을 유지시켜주는 툴입니다. 이는" +" \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 패키지 디렉토리를 " +"깨끗하게 관리할 수 있도록 해줍니다." #: ../../starting/install/linux.rst:68 msgid "" -"For example, you can work on a project which requires Django 1.10 while " -"also maintaining a project which requires Django 1.8." +"For example, you can work on a project which requires Django 1.10 while also" +" maintaining a project which requires Django 1.8." msgstr "예를 들면 장고 1.10을 쓰는 프로젝트에서 작업하면서, 동시에 장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있습니다." #: ../../starting/install/linux.rst:71 @@ -143,41 +138,30 @@ msgstr "" #: ../../starting/install/linux.rst:73 msgid "" -"You can also use :ref:`virtualenvwrapper ` to make" -" it easier to manage your virtual environments." +"You can also use :ref:`virtualenvwrapper ` to make it" +" easier to manage your virtual environments." msgstr "" ":ref:`virtualenvwrapper ` 를 봐도 됩니다. Virtual " "Environments를 보다 쉽게 관리할 수 있을 것입니다. " #: ../../starting/install/linux.rst:78 -#, fuzzy msgid "" "This page is a remixed version of `another guide " -"`_, " -"which is available under the same license." +"`_, which" +" is available under the same license." msgstr "" -"이 페이지는 `다른 안내서 `_ 를 풀어쓴 버전입니다. 동일한 라이선스 아래서 사용할 수 있습니다." #~ msgid "" -#~ "Some older versions of RHEL and " -#~ "CentOS come with Python 2.4 which " -#~ "is unacceptable for modern Python " -#~ "development. Fortunately, there are `Extra " -#~ "Packages for Enterprise Linux`_ which " -#~ "include high quality additional packages " -#~ "based on their Fedora counterparts. This" -#~ " repository contains a Python 2.6 " -#~ "package specifically designed to install " -#~ "side-by-side with the system's " -#~ "Python 2.4 installation." +#~ "Some older versions of RHEL and CentOS come with Python 2.4 which is " +#~ "unacceptable for modern Python development. Fortunately, there are `Extra " +#~ "Packages for Enterprise Linux`_ which include high quality additional " +#~ "packages based on their Fedora counterparts. This repository contains a " +#~ "Python 2.6 package specifically designed to install side-by-side with the " +#~ "system's Python 2.4 installation." #~ msgstr "" -#~ "몇몇 오래된 버전의 RHEL와 CentOS에는 파이썬 2.4가" -#~ " 딸려오는데, 이 버전은 요즘의 파이썬 개발에는 적당하지" -#~ " 않습니다. 다행히도 `Extra Packages for " -#~ "Enterprise Linux`가 있습니다. 여기에는 페도라에 대응하는" -#~ " 훌륭한 추가 패키지가 들어있는데, 파이썬 2.4가 " -#~ "설치된 시스템에서도 2.4버전과 2.6버전이 병행하여 설치될 " -#~ "수 있도록 특별히 만들어진 파이썬 2.6 패키지를 " -#~ "포함하고 있습니다. " - +#~ "몇몇 오래된 버전의 RHEL와 CentOS에는 파이썬 2.4가 딸려오는데, 이 버전은 요즘의 파이썬 개발에는 적당하지 않습니다. 다행히도" +#~ " `Extra Packages for Enterprise Linux`가 있습니다. 여기에는 페도라에 대응하는 훌륭한 추가 패키지가 " +#~ "들어있는데, 파이썬 2.4가 설치된 시스템에서도 2.4버전과 2.6버전이 병행하여 설치될 수 있도록 특별히 만들어진 파이썬 2.6 " +#~ "패키지를 포함하고 있습니다. " diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo index 195a0569defeb04a9c4403f2febc3ce677776acf..0eee8e1a6bcde5530abe7f1c1465648f451a96f0 100644 GIT binary patch delta 1433 zcmbVMU1(cX9RD|)Wp-|8SNvj({}{eCH>@bm(bYxNGAQCFdzi4CCMU_EH}}MQ?rp3f zS;rlers^PO>$YU8(mBQo29wbi@;C;27`}*)3VTrOJ$d$Jg8!QjZwo%{!sVC$`TBjF z|INa&J7dM)hIdzhp8fP5q<1MOwmpyO_p1W{{}4VP9E$*q6F%Mr@Fk7C@f5%z!ga!D z34bO0neb1-0b0902=G1Cn|lBR;ipdn4ATDlgd+e&csK;`7EL@NJVO(&>;-TM=br({ z&;ft%14vPQmQJtIx_i$793f=GUBU~5duaX=;TN?2#sPpkH2?DR0KXI7Cydhk4=;2G z;g=Ty;xzsjA;br;e0cAH#)ku2k>b0;R?aAI*1o=W4Kbg{rJ2OWvi9F=SH&KM&UmU5VB3M+#Q)2?aGp_`97GMXa2 zeYK;QG(~czL-BUcmBI-;Ei5vrkhaf+B2Hvwj$@u>cp$T5zNsEh{@&y#@yT~^ zd}`{XDT1&j$`AK_7CCyX@#g+VyNdd1U3)9I)wrumHPqKO_4zejYql3R^yQ1%t73a; ziE91TTF?}_wu}jVx2j7k=>O#D6)#NuiF$4lbS~MDhRW!O@{c12i-~O=vE50iac5TqZrWEC+FvgR4sV_7IsU(9^l#0# z=hu1*dU8o83Ax=w|6)gHq_kSj58pV_YbaVAO2jeL-m2bQZdaDKHtLPjBbO-qS`+^x z_ZPp#1fA^P+(2Df@Xt4c^mlyGPugJU-)y12zUJ5K`f{^fp^SsOi+cL{g?_+(trdje bt?0$oK#Kp(64V6>amFT0 delta 2208 zcmeHHO^6&t7_FUTquC5bH)=F`_`E6X^q5U_lW}&*8WbWMb`OgY0&!})t7posu4<~P zGqeyo5)U5qwCG9j;88uufFRyH2p+_fH&O5qLGa|ktFO9ec13Rz*o(u|ys7H%)%U)? z{$%-`3)N4HN8e}oEMh&0^=a7r?bDxQ>^#;g*0)%;#n={}_m47m3-})JSKx_x#sOf}@q=SitXqpD|Xk`31%<;$Q-lz~6z#;ON>3#vaE0Mw_u0 zfe!dC&c6T_z{?LXHpInWo@@j?g$O=`odpI#Cr>qk{saa=ui>)$!IQu@!LyG9LF;gM zx>0oJv04%P3K#^*#~J$>_%W~p;+->%pwFLRfyTZ8vUS>ft9@#+IQLs?^YTcj>?E2Hk=Q`u&U~RCsGJm_;)UlXR zMY2StDJbTez|qQZoJ@(tbwY(c*p(EUELW0iKXd3z>c`v)%B@L?*wa}05pi-5r9`mL za7#p2JaOd=30?6WC0y;*8{$bqek2`f;m5}A&U|w(5lPH*z9W_NCBYU#EkWeJeAhm2 z3R@CPJ=}(yA~wy*aQX*1bC?8FJn7`Yq1VK4v#(9cu5lgN@L^kQ<+(P*D!kovue2Bn9vIb80BKO89 zNBxoax$AYid6~<|*kKo`d_%;(dtkISc)eCL2m%fWGLQ1I%6TMBSLiO90jcf6IAYr& zr})-MM{!MFCp0N+=#~)uw5&~{;W8G^foEn9La<9TNR3ivTr*6X$~wHDVxL}xLNz`4 z4`utpLf)P4PAL!&G*Ty|$)RDCB3^itK}w8vE@yYwP8%+vx-K{}Datj=T`l){ClE|p z*Cxc=%tUBxlM9Vjoc3Vo&@4wAqN#16C)bbLRu!#}H1(CaDKZhd2$Kc{mxdXaDgtqB zVT0>ofx`7@*X(aP+k$7|g!&sBmsDN0wS_HJSgtxR8=JWv>Ac>$)w3^9^LO>xg{xPt zzSMcOiKRzp_s+EW-16jB`{au! YIJ9BEU@-juW!U#_w@*)gd~~z*7jJFSr~m)} diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.po b/docs/locale/ko/LC_MESSAGES/starting/install/win.po index 7c52aa3bb..35c77bc68 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/win.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/win.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: YoungSeon.Ahn \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -22,9 +22,8 @@ msgstr "" "Generated-By: Babel 2.2.0\n" #: ../../starting/install/win.rst:6 -#, fuzzy msgid "Installing Python 2 on Windows" -msgstr "Windows에 파이썬 설치하기" +msgstr "Windows에 파이썬 2 설치하기" #: ../../starting/install/win.rst:11 msgid "" @@ -33,48 +32,46 @@ msgid "" msgstr "" #: ../../starting/install/win.rst:13 -#, fuzzy msgid "" "First, download the `latest version " -"`_ of Python " -"2.7 from the official website. If you want to be sure you are installing " -"a fully up-to-date version, click the Downloads > Windows link from the " -"home page of the `Python.org web site `_ ." +"`_ of Python 2.7" +" from the official website. If you want to be sure you are installing a " +"fully up-to-date version, click the Downloads > Windows link from the home " +"page of the `Python.org web site `_ ." msgstr "" "우선 공식 웹사이트에서 파이썬 2.7의 `최신 버전 " -"`_ 을 다운로드 받아야" -" 합니다. 최신 버전으로 파이썬을 설치하고자 한다면, `Python.org 웹사이트 `_ 에서 " -"Downloads > Windows 링크에서 다운받으면 됩니다." +"`_ 을 다운로드 받아야 " +"합니다. 최신 버전으로 파이썬을 설치하고자 한다면, `Python.org 웹사이트 `_ 의 " +"홈페이지에서 Downloads > Windows 링크에서 다운받으면 됩니다." #: ../../starting/install/win.rst:18 msgid "" -"The Windows version is provided as an MSI package. To install it " -"manually, just double-click the file. The MSI package format allows " -"Windows administrators to automate installation with their standard " -"tools." +"The Windows version is provided as an MSI package. To install it manually, " +"just double-click the file. The MSI package format allows Windows " +"administrators to automate installation with their standard tools." msgstr "" -"Windows버전은 MSI 패키지 형태로 제공됩니다. 수동으로 설치하고자 한다면, 그냥 파일을 더블 클릭하면 됩니다. Windows" -" 관리자 계정 사용자라면 MSI 패키지로 Windows 표준 도구를 자동 설치할 수 있습니다. " +"Windows버전은 MSI 패키지 형태로 제공됩니다. 수동으로 설치하고자 한다면, 그냥 파일을 더블 클릭하면 됩니다. Windows " +"관리자 계정 사용자라면 MSI 패키지로 Windows 표준 도구를 자동 설치할 수 있습니다. " #: ../../starting/install/win.rst:22 msgid "" -"By design, Python installs to a directory with the version number " -"embedded, e.g. Python version 2.7 will install at " -":file:`C:\\\\Python27\\\\`, so that you can have multiple versions of " -"Python on the same system without conflicts. Of course, only one " -"interpreter can be the default application for Python file types. It also" -" does not automatically modify the :envvar:`PATH` environment variable, " -"so that you always have control over which copy of Python is run." +"By design, Python installs to a directory with the version number embedded, " +"e.g. Python version 2.7 will install at :file:`C:\\\\Python27\\\\`, so that " +"you can have multiple versions of Python on the same system without " +"conflicts. Of course, only one interpreter can be the default application " +"for Python file types. It also does not automatically modify the " +":envvar:`PATH` environment variable, so that you always have control over " +"which copy of Python is run." msgstr "" "파이썬이 설치되는 디렉토리는 버전의 숫자를 포함하도록 디자인되어 있습니다. 예를 들어 파이썬 2.7을 설치하면 " -":file:`C:\\\\Python27\\\\` 디렉토리에 설치됩니다. 덕분에 하나의 시스템에서 충돌 없어 여러 버전의 파이썬을 " -"사용할 수 있습니다. 물론 오직 하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있습니다. 또한 파이썬을 설치할 때 " +":file:`C:\\\\Python27\\\\` 디렉토리에 설치됩니다. 덕분에 하나의 시스템에서 충돌 없어 여러 버전의 파이썬을 사용할 " +"수 있습니다. 물론 오직 하나의 인터프리터만 파이썬 파일 타입의 기본 설정이 될 수 있습니다. 또한 파이썬을 설치할 때 " ":envvar:`PATH` 환경 변수가 자동으로 변경되지도 않습니다. 그러니 어느 버전의 파이썬을 실행할지 늘 관리해야 합니다. " #: ../../starting/install/win.rst:30 msgid "" -"Typing the full path name for a Python interpreter each time quickly gets" -" tedious, so add the directories for your default Python version to the " +"Typing the full path name for a Python interpreter each time quickly gets " +"tedious, so add the directories for your default Python version to the " ":envvar:`PATH`. Assuming that your Python installation is in " ":file:`C:\\\\Python27\\\\`, add this to your :envvar:`PATH`:" msgstr "" @@ -92,19 +89,18 @@ msgstr "" #: ../../starting/install/win.rst:47 msgid "" -"The second (:file:`Scripts`) directory receives command files when " -"certain packages are installed, so it is a very useful addition. You do " -"not need to install or configure anything else to use Python. Having said" -" that, I would strongly recommend that you install the tools and " -"libraries described in the next section before you start building Python " -"applications for real-world use. In particular, you should always install" -" Setuptools, as it makes it much easier for you to use other third-party " -"Python libraries." -msgstr "" -"두번째 (:file:`스크립트`) 디렉토리는 파이썬 패키지가 설치될 때마다 커맨드 파일을 수신받기 때문에 아주 유용합니다. 이제 " -"파이썬을 사용하기 위해 달리 설치하거나 설정해줘야만 하는 것은 없습니다. 그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 " -"전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 " -"합니다. Setuptools는 다른 파이썬 서드파티 라이브러리들을 편리하게 사용할 수 있게 해줍니다. " +"The second (:file:`Scripts`) directory receives command files when certain " +"packages are installed, so it is a very useful addition. You do not need to " +"install or configure anything else to use Python. Having said that, I would " +"strongly recommend that you install the tools and libraries described in the" +" next section before you start building Python applications for real-world " +"use. In particular, you should always install Setuptools, as it makes it " +"much easier for you to use other third-party Python libraries." +msgstr "" +"두번째 (:file:`스크립트`) 디렉토리는 파이썬 패키지가 설치될 때마다 커맨드 파일을 수신받기 때문에 아주 유용합니다. 이제 파이썬을" +" 사용하기 위해 달리 설치하거나 설정해줘야만 하는 것은 없습니다. 그렇기 해도 실제로 사용할 파이썬 어플리케이션을 만들기 전에 이 " +"안내서에서 앞으로 설명할 툴과 라이브러리들을 설치할 것을 강력 추천합니다. 특히 Setuptools는 반드시 설치해야 합니다. " +"Setuptools는 다른 파이썬 서드파티 라이브러리들을 편리하게 사용할 수 있게 해줍니다. " #: ../../starting/install/win.rst:58 msgid "Setuptools + Pip" @@ -119,10 +115,10 @@ msgstr "" #: ../../starting/install/win.rst:62 msgid "" -"Once installed, you can download, install and uninstall any compliant " -"Python software product with a single command. It also enables you to add" -" this network installation capability to your own Python software with " -"very little work." +"Once installed, you can download, install and uninstall any compliant Python" +" software product with a single command. It also enables you to add this " +"network installation capability to your own Python software with very little" +" work." msgstr "" #: ../../starting/install/win.rst:66 @@ -150,18 +146,18 @@ msgstr "Virtual Environments" msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x " -"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x but," +" Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environments은 파이썬 가상 환경을 만들어 여러 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 " -"툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 " -"패키지 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." +"Virtual Environments은 파이썬 가상 환경을 만들어 여러 위치의 다양한 프로젝트들 간의 독립성을 유지시켜주는 툴입니다. " +"이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트Y는 버전 4.x가 필요한\" 난국을 해결해줍니다. 그리고 전역 패키지 디렉토리를 " +"깨끗하게 관리할 수 있도록 해줍니다." #: ../../starting/install/win.rst:87 msgid "" -"For example, you can work on a project which requires Django 1.10 while " -"also maintaining a project which requires Django 1.8." +"For example, you can work on a project which requires Django 1.10 while also" +" maintaining a project which requires Django 1.8." msgstr "예를 들면 장고 1.10을 쓰는 프로젝트에서 일하면서, 장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." #: ../../starting/install/win.rst:90 @@ -174,69 +170,47 @@ msgstr "" "guide/blob/master/docs/dev/virtualenvs.rst>`_ 문서에서 볼 수 있습니다." #: ../../starting/install/win.rst:95 -#, fuzzy msgid "" "This page is a remixed version of `another guide " -"`_, " -"which is available under the same license." +"`_, which" +" is available under the same license." msgstr "" -"이 페이지는 `다른 안내서 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." #~ msgid "" -#~ "The most crucial third-party Python " -#~ "software of all is Setuptools, which " -#~ "extends the packaging and installation " -#~ "facilities provided by the distutils in" -#~ " the standard library. Once you add" -#~ " Setuptools to your Python system you" -#~ " can download and install any " -#~ "compliant Python software product with a" -#~ " single command. It also enables you" -#~ " to add this network installation " -#~ "capability to your own Python software" -#~ " with very little work." +#~ "The most crucial third-party Python software of all is Setuptools, which " +#~ "extends the packaging and installation facilities provided by the distutils " +#~ "in the standard library. Once you add Setuptools to your Python system you " +#~ "can download and install any compliant Python software product with a single" +#~ " command. It also enables you to add this network installation capability to" +#~ " your own Python software with very little work." #~ msgstr "" -#~ "Setuptools는 가장 중요한 파이썬 서드파티 소프트웨어입니다." -#~ " Setuptools는 표준 라이브러리인 distutils의 패키징 " -#~ "기능과 설치 기능을 확장한 것입니다. Setuptools를 " -#~ "파이썬 시스템에 설치하면 어떤 파이썬 소프트웨어 제품이라도" -#~ " 명령어 한 줄로 설치할 수 있습니다. 또한 " -#~ "최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크" -#~ " 설치를 가능하게 해줍니다." +#~ "Setuptools는 가장 중요한 파이썬 서드파티 소프트웨어입니다. Setuptools는 표준 라이브러리인 distutils의 패키징 " +#~ "기능과 설치 기능을 확장한 것입니다. Setuptools를 파이썬 시스템에 설치하면 어떤 파이썬 소프트웨어 제품이라도 명령어 한 줄로 " +#~ "설치할 수 있습니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." #~ msgid "" -#~ "To obtain the latest version of " -#~ "Setuptools for Windows, run the Python" -#~ " script available here: `ez_setup.py " +#~ "To obtain the latest version of Setuptools for Windows, run the Python " +#~ "script available here: `ez_setup.py " #~ "`_" #~ msgstr "" -#~ "Windows에서 최신 버전의 Setuptoos를 설치하려면 이 " -#~ "파이썬 스크립트를 실행하면 됩니다. `ez_setup.py " -#~ "`_" -#~ " " +#~ "Windows에서 최신 버전의 Setuptoos를 설치하려면 이 파이썬 스크립트를 실행하면 됩니다. `ez_setup.py " +#~ "`_ " #~ msgid "" -#~ "You'll now have a new command " -#~ "available to you: **easy_install**. It " -#~ "is considered by many to be " -#~ "deprecated, so we will install its " -#~ "replacement: **pip**. Pip allows for " -#~ "uninstallation of packages, and is " -#~ "actively maintained, unlike easy_install." +#~ "You'll now have a new command available to you: **easy_install**. It is " +#~ "considered by many to be deprecated, so we will install its replacement: " +#~ "**pip**. Pip allows for uninstallation of packages, and is actively " +#~ "maintained, unlike easy_install." #~ msgstr "" -#~ "이제 새로운 명령을 내릴 수 있게 되었습니다: " -#~ "**easy_install** 입니다. 하지만 이 명령어를 불편하게" -#~ " 생각하는 사람들도 많습니다. 그러니 이를 대체할 것을" -#~ " 설치해봅시다. **pip**로 패키지의 설치와 제거도 가능하고," -#~ " easy_install와 달리 현재 활발히 운영되고 있습니다." +#~ "이제 새로운 명령을 내릴 수 있게 되었습니다: **easy_install** 입니다. 하지만 이 명령어를 불편하게 생각하는 사람들도 " +#~ "많습니다. 그러니 이를 대체할 것을 설치해봅시다. **pip**로 패키지의 설치와 제거도 가능하고, easy_install와 달리 현재 " +#~ "활발히 운영되고 있습니다." #~ msgid "" -#~ "To install pip, run the Python " -#~ "script available here: `get-pip.py " +#~ "To install pip, run the Python script available here: `get-pip.py " #~ "`_" #~ msgstr "" -#~ "pip를 설치하려면 아래 파이썬 스크립트를 실행하면 됩니다." -#~ " `get-pip.py " +#~ "pip를 설치하려면 아래 파이썬 스크립트를 실행하면 됩니다. `get-pip.py " #~ "`_" - diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.mo b/docs/locale/ko/LC_MESSAGES/writing/documentation.mo index 0e4addfff9eafb5436cbfcf5c0c029a9b43bd2d0..aa3706585a8d3e30bc8ce5077adc4bcbaf39e208 100644 GIT binary patch delta 5765 zcmaJ@eQ;FO6~BO@p!h+pieSBJElIirKU!3Z*!V%UBMvHRXF4tWvip*KenJZvdl`?bV7st3 zTY0|kV*UQ-u)DDS&4r9Dn9ta|uyH*9`BKJuvHyuhjQs%5e^`ufVfS9f*gLRaznrmU zj0J4v62_L}MGNc^*l)qo#*bkmu&-ai*fp@9yOJ>udlxL0*k;%@u&uBUz#fEMi38t( zZNc+JS2Ok|>;~AkV3#aqECu@~*Z}q$pJD7W`s;1{@mak13oQPzf8)PbVXwfc--n%o zeIC}prYYEWV38!-cP(SbU_42byJ4@s8Ij}tqp%;~`HfqU1)h)J3Rv;H z=QhR)uNXsj9V;>D@ej3E~G z7VM8;{{j0pY~gmsx?%T%BsiO0dnaS?#qNbgd07;81FQoZhdl-B!0)YhF&4)2D__Ds zJbws#3GByT*4(-HZs0$G4FgD%YP$X&IEQ@|%Vl;au%+?wbkU7lSuizE$POwV)9L$e#~`v z#Er)dCu&=c$r}<$v(4HLFCCU2YP5}&z9 zEI?+ID3aW6#1l5$QA8=vXgBG+wv-bge8_=|ysaqCikViDdu}QjF_B^vN3>v_t3|V| z&5ZaVZu$7a!x4^`N~$1%m;RDI;RuPKz8uHXfgNsgtCv~5XgY9sljZnHH=0rhH*qiK zrtBzhx3-x$WSg1nq*qC#i@W(URDLFI@T4sSJ4CBUsfCS(%YRR}o|B(&xxx!-}% zw);slZrbo?A$6A-o*8iwZo&fe06NJ#0Rx@!9c10i zS{%N%&9cq4;YS~TYIDnDkA*osQnrBB4q5!I>22Z$& zlx=_=ekalfmQheaBS`Vm3*OqP5Pduq-_%)!E>y`c0-j<^ST8Cs;VnU3<2CbVV+v7S zZr?!jr4l+iqC1@h8tBTK+blQbRjFMerRoD(uk`|+e#gdPQm#mvL#D8PVTDM@o>zv z6Ag`M`ig8evuA@CwQUMzd@2#Mob8q20>vQ>Q}UsEN69WpR1HO?gEj2hOoNExk+iD$ zMEYe!NN4TZfuR~fNmYrLfd_eOcl5W!Fa5C==ZXhP0%#H3PA7#hH|VrB&{C!A=rjc8 zY8Zfbg}+KeOvAIFr!+YYf*pQ>I{sfMn7WzI=cX!c%1hy-POTU?&D@@_4GY78l)j0k zO@&fb?LluvUBs>$k`f}|py@%xBWgku47=S$_r)-0=kimBDQ!biCdfeA+F>N4Bpd2T zH8tQcNwHvV!r5Ha8bB9n1Vpw5s^R!C@EYW8?zU)Sk18!_jr=mWZxG^1ea zGrzdu{>}2O z%8{Zx&@a=&T<$z4M|X?^p^5C9wcBnL+3&C~1G(B6&zk*PB=}eJ} z-Z41hax6`5WhO5VOv)2!iUAwpWLC}$;cH|dPvH0ilj3xjI5vw7U2^ASIXfYGyWyl6 zTMHuhQfaESubeGVLZ$q$$PdfWe##zai42Y!;_}5l1j^;P0U*HT(2MF|gps4CZrM95 z4|ef#c3gH3sr@@A<)I0z(5V`v%%(NhKBHllIV4-;u`hL)aIFUg^{Vl1n3BD<|A+eMG zak0N2dsLL!w0sq)p@RSL@28t@k@<19P%iIW}qvDFm zf;{k&3g*UajspOM*=pF$le@|o?z&wT zx{={tF4+8L0u1mlY94`QEfC+jMb*ha+M?76Q1AQiTjEJ4XynHwv;?UAcH~|_b%KF>x-pfRt*R` zBkw>QD~deu(|ap-w7E8?E}yF;$wC@&pnr11C^9;dKqCsN91*%eo(j&iJTy?AqZdjk zPV|N7%=#ej#K)Pun1D>w_pz85Kx3eDLzNbV-BA#uL&z_4pouTkZAl$E9~ZUO#sv!k z(bq+yaaz@|Ml7&hA&X*Ma6#jwo*H4%UsIS*ZlgL@)K8zv0k`NmrW$A;vVw`% zaeVUpBGfkvmxDzmx}*Ja3cU=WhUg6zs0N6kj%V`t9xhLz_ji;JB8y(g7b!65rkI(P zxuTd#i{SXAYO?D2D&a~9NAg6cQB-McKRy)upkTG0MX!|dS&=(N%_DXe0Dm1e(Cs-L zs?7}|6pet~{?eIQ&5tX!{`8KigNM&%7T>)*D7}`aUaSCLI}_X+6U9C)X3CMqT)wy$ zeL@;NcO4XO^n-GkWf04548gj{39_BgsAB?yuy)bY(?AK@()!?autc_iGd<}b@ubS{`DrF%^GYD0SK!G>Wr0W@{aSA;IbE_8&nh7%7hp=$2JgzPP z(0XXDDt>wl4|=oMn-8>HsxgC;QTEUUt%+ubkmBB;E)k>s4dtO3lIk@yw-4i1c37#B zo}i6@8Pk=QduC)VOTD8jO6}W3bs9X2Wkii@66V)dTqE>`IuS$&CvhR`R`aTc23$5&Z;ud#HK>gc$pKwOrqh2jCD`j{{TZb6utle delta 1717 zcmc)IOKenC7{KvwTIiJ03N0^R=y8yTWhk_wRBD5x6q?wY`XEM)t(QB8>DZZjruUv( z93&YM7n+#3=!hBvVWDEgS9PijH5!8&qXwfgGrx1b zd!FBSznqMn9xt70o3mf|tmk(rzsF-y@83^zy~ty9TW}xG4*cC;KDQQs2_NElPlHH( zoydEbr+>6jv0M8<0AH#VH(d6@R7sI(pHgI za5?V5&yY*X_BN5%aS)?%%$DaMjrjETn!4_YxmmK{oIc zj8gyNl_E@$vn#n2Hm?$SAKS6?EsdXPJc1vtCVhCz8Xn>}QZ_k&+wd?(sXvQ({2lK@ z_bSG*(FYjEV@!_TnQzwC#_MFQgn3*_{6QpHGMOa*$7mcT(177OktP<{i(k`!xTBW( zd!x6LxQo%dk=`KkDHich?CTVHGO|nLIG)5qjDO>5kyhMsjmWRWGrT~*;XS0A7=5eGTO2Lm-cl|rzRZFs)EUS1Rd8mLG_sz zEi_s^Cr63~-*0wCvE5Nj2ic5QJ6+mTR<_u>cweE&l}5@>E!bL_)4HRsVQed@7%3lL zbfRIX=(=X4^4j9HvAMSy&l{us-lW!Uz2ceVEo7I>pHzl?thH|0rZ&yh61b z^mg{BTC;aUxj!);>#Dq+Xm2ckoIF!Xo!_#T?D;MGP5OVAy`wU{K34xv-KV=uWpZO( neSEN1_)2g0yx6(Q_gy!0uJWsTerYW4*)qTUeSgsU-|EX>j4rd8 diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.po b/docs/locale/ko/LC_MESSAGES/writing/documentation.po index 8c96488de..4fa8a20d6 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/writing/documentation.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: YoungSeon.Ahn LoveMeWithoutAll@Gmail.com\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -27,12 +27,12 @@ msgstr "문서화" #: ../../writing/documentation.rst:9 msgid "" -"Readability is a primary focus for Python developers, in both project and" -" code documentation. Following some simple best practices can save both " -"you and others a lot of time." +"Readability is a primary focus for Python developers, in both project and " +"code documentation. Following some simple best practices can save both you " +"and others a lot of time." msgstr "" -"가독성은 파이썬 개발자의 기본적인 관심사입니다. 이는 프로젝트와 코드 문서화 모두 해당됩니다. 몇 가지 간단한 우수 사례를 " -"따라해봅시다. 당신 뿐 아니라 다른 모두의 시간을 절약해줄 것입니다. " +"가독성은 파이썬 개발자의 기본적인 관심사입니다. 이는 프로젝트와 코드 문서화 모두 해당됩니다. 몇 가지 간단한 우수 사례를 따라해봅시다." +" 당신 뿐 아니라 다른 모두의 시간을 절약해줄 것입니다. " #: ../../writing/documentation.rst:16 msgid "Project Documentation" @@ -40,54 +40,53 @@ msgstr "프로젝트 문서화" #: ../../writing/documentation.rst:18 msgid "" -"A :file:`README` file at the root directory should give general " -"information to both users and maintainers of a project. It should be raw " -"text or written in some very easy to read markup, such as :ref" -":`reStructuredText-ref` or Markdown. It should contain a few lines " -"explaining the purpose of the project or library (without assuming the " -"user knows anything about the project), the URL of the main source for " -"the software, and some basic credit information. This file is the main " -"entry point for readers of the code." -msgstr "" -"최상위 디렉토리의 :file:`README` 파일에는 해당 프로젝트의 사용자와 유지보수 담당자 모두에게 도움이 되는 일반적인 정보가" -" 있어야 합니다. 순수한 텍스트로 작성하시거나, 읽기 아주 쉬운 마크업 문서로 작성하세요. :ref" -":`reStructuredText-ref` 나 마크다운 같은 것이면 됩니다. 여기에는 반드시 프로젝트나 라이브러리(사용자가 이 " -"프로젝트의 모든 것을 알고 있을거라고 생각하면 안됩니다)의 목적을 설명하는 몇 줄의 글, 소프트웨어를 위한 주요 소스의 URL, 몇" -" 가지 기본적인 신용 정보를 포함해야 합니다. " +"A :file:`README` file at the root directory should give general information " +"to both users and maintainers of a project. It should be raw text or written" +" in some very easy to read markup, such as :ref:`reStructuredText-ref` or " +"Markdown. It should contain a few lines explaining the purpose of the " +"project or library (without assuming the user knows anything about the " +"project), the URL of the main source for the software, and some basic credit" +" information. This file is the main entry point for readers of the code." +msgstr "" +"최상위 디렉토리의 :file:`README` 파일에는 해당 프로젝트의 사용자와 유지보수 담당자 모두에게 도움이 되는 일반적인 정보가 " +"있어야 합니다. 순수한 텍스트로 작성하시거나, 읽기 아주 쉬운 마크업 문서로 작성하세요. :ref:`reStructuredText-" +"ref` 나 마크다운 같은 것이면 됩니다. 여기에는 반드시 프로젝트나 라이브러리(사용자가 이 프로젝트의 모든 것을 알고 있을거라고 " +"생각하면 안됩니다)의 목적을 설명하는 몇 줄의 글, 소프트웨어를 위한 주요 소스의 URL, 몇 가지 기본적인 신용 정보를 포함해야 " +"합니다. " #: ../../writing/documentation.rst:26 -#, fuzzy msgid "" "An :file:`INSTALL` file is less necessary with Python. The installation " "instructions are often reduced to one command, such as ``pip install " "module`` or ``python setup.py install``, and added to the :file:`README` " "file." msgstr "" -":file:`INSTALL` 파일은 파이썬에서는 필수적이지는 않습니다. 설치 명령어는 ``pip install module`` 이나" -" ``python setup.py install`` 같이 한 줄의 커맨드 명령어로 끝난 후, :file:`README` 파일에 " -"추가되는 경우가 많습니다. " +":file:`INSTALL` 파일은 파이썬에서는 필수적이지는 않습니다. 설치 명령어는 ``pip install module`` 이나 " +"``python setup.py install`` 같이 한 줄의 커맨드 명령어로 끝난 후, :file:`README` 파일에 추가되는 " +"경우가 많습니다. " #: ../../writing/documentation.rst:31 msgid "" -"A :file:`LICENSE` file should *always* be present and specify the license" -" under which the software is made available to the public." +"A :file:`LICENSE` file should *always* be present and specify the license " +"under which the software is made available to the public." msgstr "" -":file:`LICENSE` 파일은 *반드시* 있어야만 합니다. 그리고 소프트웨어가 공개 가능한지 여부를 명시하는 라이선스를 " -"명시해야 합니다. " +":file:`LICENSE` 파일은 *반드시* 있어야만 합니다. 그리고 소프트웨어가 공개 가능한지 여부를 명시하는 라이선스를 명시해야 " +"합니다. " #: ../../writing/documentation.rst:34 msgid "" -"A :file:`TODO` file or a ``TODO`` section in :file:`README` should list " -"the planned development for the code." -msgstr ":file:`README` 안의 :file:`TODO` 파일이나 ``TODO`` 섹션에는 개발할 코드의 목록을 나열해야 합니다. " +"A :file:`TODO` file or a ``TODO`` section in :file:`README` should list the " +"planned development for the code." +msgstr "" +":file:`README` 안의 :file:`TODO` 파일이나 ``TODO`` 섹션에는 개발할 코드의 목록을 나열해야 합니다. " #: ../../writing/documentation.rst:37 msgid "" -"A :file:`CHANGELOG` file or section in :file:`README` should compile a " -"short overview of the changes in the code base for the latest versions." +"A :file:`CHANGELOG` file or section in :file:`README` should compile a short" +" overview of the changes in the code base for the latest versions." msgstr "" -":file:`CHANGELOG` 파일이나 :file:`README` 안의 섹션에는 반드시 최신 버전의 코드에서 일어난 변화에 대하여" -" 개략적인 소개가 있어야 합니다. " +":file:`CHANGELOG` 파일이나 :file:`README` 안의 섹션에는 반드시 최신 버전의 코드에서 일어난 변화에 대하여 " +"개략적인 소개가 있어야 합니다. " #: ../../writing/documentation.rst:43 msgid "Project Publication" @@ -95,28 +94,26 @@ msgstr "프로젝트 발표" #: ../../writing/documentation.rst:45 msgid "" -"Depending on the project, your documentation might include some or all of" -" the following components:" +"Depending on the project, your documentation might include some or all of " +"the following components:" msgstr "프로젝트에 따라서 당신의 문서는 아래의 것들 중 몇 개를 포함하거나, 혹은 전부를 포함할 것입니다. " #: ../../writing/documentation.rst:48 -#, fuzzy msgid "" -"An *introduction* should give a very short overview of what can be done " -"with the product, using one or two extremely simplified use cases. This " -"is the thirty-second pitch for your project." +"An *introduction* should give a very short overview of what can be done with" +" the product, using one or two extremely simplified use cases. This is the " +"thirty-second pitch for your project." msgstr "" "*소개(introduction)* 은 하나나 두개의 아주 간단한 유즈케이스를 사용하여 이 프로젝트가 무엇을 할 수 있는지 간략하게 " "보여주어야 합니다. 이것이 당신의 프로젝트를 위한 30초 홍보입니다. " #: ../../writing/documentation.rst:52 msgid "" -"A *tutorial* should show some primary use cases in more detail. The " -"reader will follow a step-by-step procedure to set-up a working " -"prototype." +"A *tutorial* should show some primary use cases in more detail. The reader " +"will follow a step-by-step procedure to set-up a working prototype." msgstr "" -"*튜토리얼(tutorial)* 은 몇 가지 기본적인 유즈케이스를 좀 더 자세히 보여주어야 합니다. 읽는 이는 하나 하나씩 따라가며 " -"실제 동작하는 프로토타입을 만들 것입니다. " +"*튜토리얼(tutorial)* 은 몇 가지 기본적인 유즈케이스를 좀 더 자세히 보여주어야 합니다. 읽는 이는 하나 하나씩 따라가며 실제 " +"동작하는 프로토타입을 만들 것입니다. " #: ../../writing/documentation.rst:55 msgid "" @@ -124,16 +121,16 @@ msgid "" ":ref:`docstrings `). It will list all publicly available " "interfaces, parameters, and return values." msgstr "" -"*API 레퍼런스(reference)* 는 보통 코드에서 생성됩니다(:ref:`docstrings ` 를" -" 보세요). 공개적으로 가능한 모든 인터페이스, 파라미터, 리턴값을 보여주어야 합니다. " +"*API 레퍼런스(reference)* 는 보통 코드에서 생성됩니다(:ref:`docstrings ` 를 " +"보세요). 공개적으로 가능한 모든 인터페이스, 파라미터, 리턴값을 보여주어야 합니다. " #: ../../writing/documentation.rst:59 msgid "" -"*Developer documentation* is intended for potential contributors. This " -"can include code convention and general design strategy of the project." +"*Developer documentation* is intended for potential contributors. This can " +"include code convention and general design strategy of the project." msgstr "" -"*개발자 문서(Developer documentation)* 는 잠재적인 기여자(contributors)를 위한 것입니다. 여기에는" -" 코딩 규약(code convention)과 프로젝트의 일반적인 디자인 전략을 담을 수 있습니다. " +"*개발자 문서(Developer documentation)* 는 잠재적인 기여자(contributors)를 위한 것입니다. 여기에는 코딩" +" 규약(code convention)과 프로젝트의 일반적인 디자인 전략을 담을 수 있습니다. " #: ../../writing/documentation.rst:65 msgid "Sphinx" @@ -141,62 +138,59 @@ msgstr "스핑크스(Sphinx)" #: ../../writing/documentation.rst:67 msgid "" -"Sphinx_ is far and away the most popular Python documentation tool. **Use" -" it.** It converts :ref:`restructuredtext-ref` markup language into a " -"range of output formats including HTML, LaTeX (for printable PDF " -"versions), manual pages, and plain text." +"Sphinx_ is far and away the most popular Python documentation tool. **Use " +"it.** It converts :ref:`restructuredtext-ref` markup language into a range " +"of output formats including HTML, LaTeX (for printable PDF versions), manual" +" pages, and plain text." msgstr "" -"Sphinx_ 는 단연코 가장 유명한 파이썬 문서화 도구입니다. **쓰세요.**:ref:`restructuredtext-ref` " -"마크업 언어를 HTML, LaTeX(인쇄 가능한 PDF 버전), 매뉴얼 페이지, 일반 텍스트 등의 포맷으로 바꿔줍니다. " +"Sphinx_ 는 단연코 가장 유명한 파이썬 문서화 도구입니다. **쓰세요.**:ref:`restructuredtext-ref` 마크업 " +"언어를 HTML, LaTeX(인쇄 가능한 PDF 버전), 매뉴얼 페이지, 일반 텍스트 등의 포맷으로 바꿔줍니다. " #: ../../writing/documentation.rst:72 msgid "" -"There is also **great**, **free** hosting for your Sphinx_ docs: `Read " -"The Docs`_. Use it. You can configure it with commit hooks to your source" -" repository so that rebuilding your documentation will happen " -"automatically." +"There is also **great**, **free** hosting for your Sphinx_ docs: `Read The " +"Docs`_. Use it. You can configure it with commit hooks to your source " +"repository so that rebuilding your documentation will happen automatically." msgstr "" -"뿐만 아니라 Sphinx_ 문서를 위한 **훌륭하면서도**, **무료인** 호스팅 서비스가 있습니다: `Read The Docs`_" -" 입니다. 쓰세요. 소스 저장소에 커밋 후크를 걸어두면 문서를 자동으로 빌드하도록 설정할 수 있습니다. " +"뿐만 아니라 Sphinx_ 문서를 위한 **훌륭하면서도**, **무료인** 호스팅 서비스가 있습니다: `Read The Docs`_ " +"입니다. 쓰세요. 소스 저장소에 커밋 후크를 걸어두면 문서를 자동으로 빌드하도록 설정할 수 있습니다. " #: ../../writing/documentation.rst:77 -#, fuzzy msgid "" "When run, Sphinx_ will import your code and using Python's introspection " -"features it will extract all function, method, and class signatures. It " -"will also extract the accompanying docstrings, and compile it all into " -"well structured and easily readable documentation for your project." +"features it will extract all function, method, and class signatures. It will" +" also extract the accompanying docstrings, and compile it all into well " +"structured and easily readable documentation for your project." msgstr "" -"Read The Docs를 돌리면 Sphinx_ 는 당신의 코드를 불러옵니다. 그리고 파이썬 내부의 기능을 사용하여 모든 함수와 " -"메소드 클래스 시그니처를 끄집어냅니다. 뿐만 아니라 당신의 프로젝트를 위해 코드에 딸려있는 독스트링(Docstrings)을 불러와 " -"잘 구조화되고 읽기 쉬운 문서로 모조리 컴파일합니다. " +"실행되면 Sphinx_ 는 당신의 코드를 불러옵니다. 그리고 파이썬의 introspection 기능을 사용하여 모든 함수와 메소드, " +"클래스 시그니처를 끄집어냅니다. 뿐만 아니라 코드에 딸려있는 독스트링(Docstrings)도 불러와서 당신의 프로젝트를 위해 잘 " +"구조화되고 읽기 쉬운 문서로 모조리 컴파일합니다." #: ../../writing/documentation.rst:84 msgid "" -"Sphinx is famous for its API generation, but it also works well for " -"general project documentation. This Guide is built with Sphinx_ and is " -"hosted on `Read The Docs`_" +"Sphinx is famous for its API generation, but it also works well for general " +"project documentation. This Guide is built with Sphinx_ and is hosted on " +"`Read The Docs`_" msgstr "" -"Sphinx는 API 생성기로도 유명하지만, 일반적인 프로젝트 문서화로도 잘 작동합니다. 이 안내서는 Sphinx_ 로 빌드되었고," -" `Read The Docs`_ 로 호스팅되었습니다. " +"Sphinx는 API 생성기로도 유명하지만, 일반적인 프로젝트 문서화로도 잘 작동합니다. 이 안내서는 Sphinx_ 로 빌드되었고, " +"`Read The Docs`_ 로 호스팅되었습니다. " #: ../../writing/documentation.rst:94 msgid "reStructuredText" msgstr "" #: ../../writing/documentation.rst:96 -#, fuzzy msgid "" "Most Python documentation is written with reStructuredText_. It's like " "Markdown, but with all the optional extensions built in." msgstr "" -"대부분의 파이썬 문서는 reStructuredText_ 로 작성됩니다. reStructuredText는 모든 추가 기능을 포함하고 " -"있는 마크다운과 비슷합니다. " +"대부분의 파이썬 문서는 reStructuredText_ 로 작성됩니다. reStructuredText는 모든 추가 기능을 포함하고 있는 " +"마크다운과 비슷합니다. " #: ../../writing/documentation.rst:99 msgid "" -"The `reStructuredText Primer`_ and the `reStructuredText Quick " -"Reference`_ should help you familiarize yourself with its syntax." +"The `reStructuredText Primer`_ and the `reStructuredText Quick Reference`_ " +"should help you familiarize yourself with its syntax." msgstr "" "`reStructuredText Primer`_ 와 `reStructuredText Quick Reference`_ " "가reStructuredText의 문법에 익숙해지는데 큰 도움을 줄 것입니다. " @@ -207,12 +201,12 @@ msgstr "코드 문서에 대한 조언" #: ../../writing/documentation.rst:111 msgid "" -"Comments clarify the code and they are added with purpose of making the " -"code easier to understand. In Python, comments begin with a hash (number " -"sign) (``#``)." +"Comments clarify the code and they are added with purpose of making the code" +" easier to understand. In Python, comments begin with a hash (number sign) " +"(``#``)." msgstr "" -"주석은 코드를 명확하게 합니다. 그리고 코드를 이해하기 쉽도록 하고자 덧붙여집니다. 파이썬에서는 주석이 해시 (숫자 표시) (#)로" -" 시작됩니다. " +"주석은 코드를 명확하게 합니다. 그리고 코드를 이해하기 쉽도록 하고자 덧붙여집니다. 파이썬에서는 주석이 해시 (숫자 표시) (#)로 " +"시작됩니다. " #: ../../writing/documentation.rst:117 msgid "In Python, *docstrings* describe modules, classes, and functions:" @@ -220,8 +214,8 @@ msgstr "파이썬에서는 *독스트링(docstrings)* 이 모듈, 클래스, 함 #: ../../writing/documentation.rst:125 msgid "" -"In general, follow the comment section of :pep:`8#comments` (the \"Python" -" Style Guide\"). More information about docstrings can be found at " +"In general, follow the comment section of :pep:`8#comments` (the \"Python " +"Style Guide\"). More information about docstrings can be found at " ":pep:`0257#specification` (The Docstring Conventions Guide)." msgstr "" "보통 :pep:`8#comments` (the \"파이썬 스타일 안내서(Python Style Guide)\")의 주석 섹션대로 " @@ -235,15 +229,15 @@ msgstr "코드를 주석 처리하기" #: ../../writing/documentation.rst:131 msgid "" "*Do not use triple-quote strings to comment code*. This is not a good " -"practice, because line-oriented command-line tools such as grep will not " -"be aware that the commented code is inactive. It is better to add hashes " -"at the proper indentation level for every commented line. Your editor " -"probably has the ability to do this easily, and it is worth learning the " +"practice, because line-oriented command-line tools such as grep will not be " +"aware that the commented code is inactive. It is better to add hashes at the" +" proper indentation level for every commented line. Your editor probably has" +" the ability to do this easily, and it is worth learning the " "comment/uncomment toggle." msgstr "" -"*세따옴표를 코드의 주석 처리에 쓰지 마세요*. 좋은 습관이 아닙니다. grep처럼 라인 기반 커맨드 라인 도구는 주석 처리된 " -"코드가 비활성화되었는지를 인식하지 못합니다. 주석 처리할 모든 줄의 적당히 들여쓴 위치에다 해시를 붙이는 편이 좋습니다. 에디터에 " -"이런 작업을 쉽게 해주는 기능이 있을 것입니다. 주석 처리/해제하는 단축키를 배울 필요가 있습니다. " +"*세따옴표를 코드의 주석 처리에 쓰지 마세요*. 좋은 습관이 아닙니다. grep처럼 라인 기반 커맨드 라인 도구는 주석 처리된 코드가 " +"비활성화되었는지를 인식하지 못합니다. 주석 처리할 모든 줄의 적당히 들여쓴 위치에다 해시를 붙이는 편이 좋습니다. 에디터에 이런 작업을 " +"쉽게 해주는 기능이 있을 것입니다. 주석 처리/해제하는 단축키를 배울 필요가 있습니다. " #: ../../writing/documentation.rst:139 msgid "Docstrings and Magic" @@ -251,8 +245,8 @@ msgstr "독스트링(Docstrings)과 마법" #: ../../writing/documentation.rst:141 msgid "" -"Some tools use docstrings to embed more-than-documentation behavior, such" -" as unit test logic. Those can be nice, but you won't ever go wrong with " +"Some tools use docstrings to embed more-than-documentation behavior, such as" +" unit test logic. Those can be nice, but you won't ever go wrong with " "vanilla \"here's what this does.\"" msgstr "" "어떤 도구는 단위 테스트 로직처럼 문서 이상의 동작을 시키기 위해 독스트링을 이용합니다. 이런 도구들은 멋지지만, 절대 고장나지 " @@ -260,26 +254,25 @@ msgstr "" #: ../../writing/documentation.rst:145 msgid "" -"Tools like Sphinx_ will parse your docstrings as reStructuredText and " -"render it correctly as HTML. This makes it very easy to embed snippets of" -" example code in a project's documentation." +"Tools like Sphinx_ will parse your docstrings as reStructuredText and render" +" it correctly as HTML. This makes it very easy to embed snippets of example " +"code in a project's documentation." msgstr "" -"Sphinx_ 같은 툴은 당신의 독스트링을 reStructuredText로 파싱해서 HTML로 정확히 만들어줍니다. 이 방법은 " -"프로젝트 문서에 예제 코드의 스니펫을 아주 간단히 집어넣을 수 있도록 해줍니다. " +"Sphinx_ 같은 툴은 당신의 독스트링을 reStructuredText로 파싱해서 HTML로 정확히 만들어줍니다. 이 방법은 프로젝트 " +"문서에 예제 코드의 스니펫을 아주 간단히 집어넣을 수 있도록 해줍니다. " #: ../../writing/documentation.rst:149 -#, fuzzy msgid "" "Additionally, Doctest_ will read all embedded docstrings that look like " "input from the Python commandline (prefixed with \">>>\") and run them, " "checking to see if the output of the command matches the text on the " -"following line. This allows developers to embed real examples and usage " -"of functions alongside their source code. As a side effect, it also " -"ensures that their code is tested and works." +"following line. This allows developers to embed real examples and usage of " +"functions alongside their source code. As a side effect, it also ensures " +"that their code is tested and works." msgstr "" -"추가로 Doctest_ 는 파이썬 커맨드라인에서 삽입된 것 같은 모양(\">>>\" 가 앞에 붙음)의 모든 독스트링을 읽어 " -"실행하고, 결과값이 그 다음 줄에 쓰여진 것과 일치하는지 여부를 검사합니다. 이렇게해서 개발자는 그들의 소스 코드 옆에 실제 예시와" -" 함수의 사용예를 삽입할 수 있습니다. 추가적인 효과로는 이 코드는 테스트 되었으며 잘 돌아감을 확인할 수 있습니다. " +"추가로 Doctest_ 는 파이썬 커맨드라인에서 삽입된 것 같은 모양(\">>>\" 가 앞에 붙음)의 모든 독스트링을 읽어 실행하고, " +"결과값이 그 다음 줄에 쓰여진 것과 일치하는지 여부를 검사합니다. 이렇게해서 개발자는 그들의 소스 코드 옆에 실제 예시와 함수의 사용예를" +" 삽입할 수 있습니다. 추가적인 효과로는 이 코드는 테스트 되었으며 잘 돌아감을 확인할 수 있습니다. " #: ../../writing/documentation.rst:170 msgid "Docstrings versus Block comments" @@ -287,39 +280,35 @@ msgstr "독스트링(Docstrings) 대 블록 주석" #: ../../writing/documentation.rst:172 msgid "" -"These aren't interchangeable. For a function or class, the leading " -"comment block is a programmer's note. The docstring describes the " -"*operation* of the function or class:" +"These aren't interchangeable. For a function or class, the leading comment " +"block is a programmer's note. The docstring describes the *operation* of the" +" function or class:" msgstr "" "독스트링(Docstrings)과 블록 주석은 서로 바꿔쓸 수 없습니다. 함수나 클래스에서 맨 앞줄의 주석 블록은 개발자의 메모로 " "쓰입니다. 독스트링은 함수나 클래스의 *동작* 을 나타냅니다. " #: ../../writing/documentation.rst:183 -#, fuzzy msgid "" -"Unlike block comments, docstrings are built into the Python language " -"itself. This means you can use all of Python's powerful introspection " -"capabilities to access docstrings at runtime, compared with comments " -"which are optimized out. Docstrings are accessible from both the " -"`__doc__` dunder attribute for almost every Python object, as well as " -"with the built in `help()` function." +"Unlike block comments, docstrings are built into the Python language itself." +" This means you can use all of Python's powerful introspection capabilities " +"to access docstrings at runtime, compared with comments which are optimized " +"out. Docstrings are accessible from both the `__doc__` dunder attribute for " +"almost every Python object, as well as with the built in `help()` function." msgstr "" -"블록 주석과 달리 독스트링은 파이썬 언어 자체에 들어가 있습니다. 즉 최적화 단계에서 빼져버리는 주석과는 달리 런타임 중에도 " -"파이썬의 강력한 내부 기능을 사용하여 독스트링에 접근할 수 있다는 뜻입니다. 독스트링은 거의 모든 파이썬 오브젝트에 있는 속성인 " -"`__doc__` 뿐만 아니라 파이썬에 내장된 `help()` 함수를 사용하여 접근할 수 있습니다. " +"블록 주석과 달리 독스트링은 파이썬 언어 자체에 들어가 있습니다. 즉 최적화 단계에서 빼져버리는 주석과는 달리 런타임 중에도 파이썬의 " +"강력한 내부 기능을 사용하여 독스트링에 접근할 수 있다는 뜻입니다. 독스트링은 거의 모든 파이썬 오브젝트에 있는 속성인 `__doc__`" +" 뿐만 아니라 파이썬에 내장된 `help()` 함수를 사용하여 접근할 수 있습니다. " #: ../../writing/documentation.rst:189 -#, fuzzy msgid "" -"While block comments are usually used to explain *what* a section of code" -" is doing, or the specifics of an algorithm, docstrings are more intended" -" towards explaining other users of your code (or you in 6 months time) " -"*how* a particular function can be used and the general purpose of a " -"function, class, or module." +"While block comments are usually used to explain *what* a section of code is" +" doing, or the specifics of an algorithm, docstrings are more intended " +"towards explaining other users of your code (or you in 6 months time) *how* " +"a particular function can be used and the general purpose of a function, " +"class, or module." msgstr "" -"블럭 주석이 일반적으로 코드의 해당 부분이 *무슨* 일을 하는지나 알고리즘의 명세를 설명하는데 쓰이는 반면, 독스트링은 당신의 " -"코드와 특정한 함수가 *어떻게* 쓰이며 함수, 클래스, 모듈의 일반적인 목적이 무엇인지를 다른 사용자에게(혹은 6개월 후의 당신에게" -" 알려주기 위해 작성됩니다. " +"블럭 주석이 일반적으로 코드의 해당 부분이 *무슨* 일을 하는지나 알고리즘의 명세를 설명하는데 쓰이는 반면, 독스트링은 다른 사용자(혹은" +" 6개월 후의 당신)에게 특정한 함수가 *어떻게* 쓰이며 함수, 클래스, 모듈의 일반적인 목적이 무엇인지를 알려주기 위해 작성됩니다." #: ../../writing/documentation.rst:196 msgid "Writing Docstrings" @@ -327,64 +316,62 @@ msgstr "독스트링(Docstrings) 작성" #: ../../writing/documentation.rst:198 msgid "" -"Depending on the complexity of the function, method, or class being " -"written, a one-line docstring may be perfectly appropriate. These are " -"generally used for really obvious cases, such as::" +"Depending on the complexity of the function, method, or class being written," +" a one-line docstring may be perfectly appropriate. These are generally used" +" for really obvious cases, such as::" msgstr "" -"작성한 함수, 메서드, 클래스가 얼마나 복잡한지에 따라 다르겠지만 단 1줄의 독스트링이 가장 적절할 것입니다. 다음은 흔히 " -"쓰이면서도 아주 분명한 예시입니다:" +"작성한 함수, 메서드, 클래스가 얼마나 복잡한지에 따라 다르겠지만 단 1줄의 독스트링이 가장 적절할 것입니다. 다음은 흔히 쓰이면서도 " +"아주 분명한 예시입니다:" #: ../../writing/documentation.rst:206 msgid "" "The docstring should describe the function in a way that is easy to " "understand. For simple cases like trivial functions and classes, simply " "embedding the function's signature (i.e. `add(a, b) -> result`) in the " -"docstring is unnecessary. This is because with Python's `inspect` module," -" it is already quite easy to find this information if needed, and it is " -"also readily available by reading the source code." +"docstring is unnecessary. This is because with Python's `inspect` module, it" +" is already quite easy to find this information if needed, and it is also " +"readily available by reading the source code." msgstr "" -"독스트링은 이해하기 쉬운 방법으로 함수를 설명해야 합니다. 별 것도 아닌 함수나 클래스나 간단한 함수 구문(예를 들면 `add(a," -" b) -> result`) 에서는 독스트링이 필요하지 않습니다. 파이썬의 `inspect` 모듈이 이미 있기에 필요시 아주 빠르게" -" 원하는 정보를 찾을 수 있고 소스 코드도 손쉽게 읽을 수 있기 때문입니다. " +"독스트링은 이해하기 쉬운 방법으로 함수를 설명해야 합니다. 별 것도 아닌 함수나 클래스나 간단한 함수 구문(예를 들면 `add(a, b)" +" -> result`) 에서는 독스트링이 필요하지 않습니다. 파이썬의 `inspect` 모듈이 이미 있기에 필요시 아주 빠르게 원하는 " +"정보를 찾을 수 있고 소스 코드도 손쉽게 읽을 수 있기 때문입니다. " #: ../../writing/documentation.rst:213 msgid "" -"In larger or more complex projects however, it is often a good idea to " -"give more information about a function, what it does, any exceptions it " -"may raise, what it returns, or relevant details about the parameters." +"In larger or more complex projects however, it is often a good idea to give " +"more information about a function, what it does, any exceptions it may " +"raise, what it returns, or relevant details about the parameters." msgstr "" -"하지만 더 크고 복잡한 프로젝트라면 함수 정보, 이게 뭘 하는지, 어떤 예외를 발생시키는지, 무엇을 반환하는지, 파라미터에 관한 " -"연관 정보에 대하여 더 많이 설명하는 편이 좋은 경우도 많습니다. " +"하지만 더 크고 복잡한 프로젝트라면 함수 정보, 이게 뭘 하는지, 어떤 예외를 발생시키는지, 무엇을 반환하는지, 파라미터에 관한 연관 " +"정보에 대하여 더 많이 설명하는 편이 좋은 경우도 많습니다. " #: ../../writing/documentation.rst:217 -#, fuzzy msgid "" "For more detailed documentation of code a popular style used, is the one " -"used by the NumPy project, often called `NumPy style`_ docstrings. While " -"it can take up more lines than the previous example, it allows the " -"developer to include a lot more information about a method, function, or " -"class. ::" +"used by the NumPy project, often called `NumPy style`_ docstrings. While it " +"can take up more lines than the previous example, it allows the developer to" +" include a lot more information about a method, function, or class. ::" msgstr "" "코드 문서를 더 상세히 작성하고 싶은 경우, 가장 인기있는 스타일은 Numpy 프로젝트에서 쓰인 이른바 `Numpy style`_ " -"독스트링입니다. 앞선 예제의 독스트링이 이 스타일입니다. 이 스타일을 써서 개발자는 함수, 메소드, 클래스에 대한 더 많은 정보를 " -"추가할 수 있습니다. " +"독스트링입니다. 앞선 예제보다 줄 수가 더 많이 필요할 수 있지만, 이 스타일을 쓰면 개발자는 메소드, 함수, 클래스에 대한 더 많은 " +"정보를 추가할 수 있습니다. ::" #: ../../writing/documentation.rst:243 msgid "" "The `sphinx.ext.napoleon`_ plugin allows Sphinx to parse this style of " -"docstrings, making it easy to incorporate NumPy style docstrings into " -"your project." +"docstrings, making it easy to incorporate NumPy style docstrings into your " +"project." msgstr "" -"스핑크스에 `sphinx.ext.napoleon`_ 플러그인을 추가하면 이러한 스타일의 독스트링을 파싱하여 NumPy 스타일의 " -"독스트링을 당신의 프로젝트에 집어넣기 쉽게 해줍니다. " +"스핑크스에 `sphinx.ext.napoleon`_ 플러그인을 추가하면 이러한 스타일의 독스트링을 파싱하여 NumPy 스타일의 독스트링을" +" 당신의 프로젝트에 집어넣기 쉽게 해줍니다. " #: ../../writing/documentation.rst:247 msgid "" "At the end of the day, it doesn't really matter what style is used for " -"writing docstrings; their purpose is to serve as documentation for anyone" -" who may need to read or make changes to your code. As long as it is " -"correct, understandable, and gets the relevant points across then it has " -"done the job it was designed to do." +"writing docstrings; their purpose is to serve as documentation for anyone " +"who may need to read or make changes to your code. As long as it is correct," +" understandable, and gets the relevant points across then it has done the " +"job it was designed to do." msgstr "" #: ../../writing/documentation.rst:254 @@ -405,12 +392,12 @@ msgstr "" #: ../../writing/documentation.rst:268 msgid "" -"Pycco is a \"literate-programming-style documentation generator\" and is " -"a port of the node.js Docco_. It makes code into a side-by-side HTML code" -" and documentation." +"Pycco is a \"literate-programming-style documentation generator\" and is a " +"port of the node.js Docco_. It makes code into a side-by-side HTML code and " +"documentation." msgstr "" -"Pycco는 \"문학적 프로그래밍 스타일의 문서 생성기\" 이자, node.js Docco_ 의 파이썬 포팅입니다. 코드를 HTML" -" 코드와 문서가 나란히 있는 모습으로 만들어줍니다. " +"Pycco는 \"문학적 프로그래밍 스타일의 문서 생성기\" 이자, node.js Docco_ 의 파이썬 포팅입니다. 코드를 HTML " +"코드와 문서가 나란히 있는 모습으로 만들어줍니다. " #: ../../writing/documentation.rst:277 msgid "Ronn_" @@ -418,11 +405,11 @@ msgstr "" #: ../../writing/documentation.rst:276 msgid "" -"Ronn builds Unix manuals. It converts human readable textfiles to roff " -"for terminal display, and also to HTML for the web." +"Ronn builds Unix manuals. It converts human readable textfiles to roff for " +"terminal display, and also to HTML for the web." msgstr "" -"Ronn은 유닉스 매뉴얼을 빌드합니다. 사람이 읽을 수 있는 텍스트 파일을 roff로 변환하여 터미널에서 보여줄 수 있을 뿐만 " -"아니라 웹을 위해 HTML로도 바꿔줍니다. " +"Ronn은 유닉스 매뉴얼을 빌드합니다. 사람이 읽을 수 있는 텍스트 파일을 roff로 변환하여 터미널에서 보여줄 수 있을 뿐만 아니라 " +"웹을 위해 HTML로도 바꿔줍니다. " #: ../../writing/documentation.rst:282 msgid "Epydoc_" @@ -443,21 +430,12 @@ msgid "" msgstr "MkDocs은 마크다운으로 프로젝트 문서를 빌드하기 위하여 설계된 빠르고 단순한 정적 사이트 생성기입니다. " #~ msgid "" -#~ "At the end of the day, it " -#~ "doesn't really matter what style is " -#~ "used for writing docstrings, their " -#~ "purpose is to serve as documentation " -#~ "for anyone who may need to read" -#~ " or make changes to your code. " -#~ "As long as it is correct, " -#~ "understandable and gets the relevant " -#~ "points across then it has done the" -#~ " job it was designed to do." +#~ "At the end of the day, it doesn't really matter what style is used for " +#~ "writing docstrings, their purpose is to serve as documentation for anyone " +#~ "who may need to read or make changes to your code. As long as it is correct," +#~ " understandable and gets the relevant points across then it has done the job" +#~ " it was designed to do." #~ msgstr "" -#~ "마지막으로 덧붙이겠습니다. 사실 어떤 스타일로 독스트링을 " -#~ "작성하느냐는 그다지 중요하지 않습니다. 독스트링의 목적은 " -#~ "코드를 읽거나 바꿔야 하는 사람들에게 도움을 주는 " -#~ "문서가 되는 것입니다. 정확하고, 이해하기 쉽고, 관련된" -#~ " 여러 사항에 대한 정보만 있다면, 그 소임은 " -#~ "모두 이룬 것입니다. " - +#~ "마지막으로 덧붙이겠습니다. 사실 어떤 스타일로 독스트링을 작성하느냐는 그다지 중요하지 않습니다. 독스트링의 목적은 코드를 읽거나 바꿔야 " +#~ "하는 사람들에게 도움을 주는 문서가 되는 것입니다. 정확하고, 이해하기 쉽고, 관련된 여러 사항에 대한 정보만 있다면, 그 소임은 모두 " +#~ "이룬 것입니다. " diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.mo b/docs/locale/ko/LC_MESSAGES/writing/logging.mo index e62da70ec37c8b069198a9f3b3d9651b78fec734..254416d2bec702a48fc66baa62cf6da5ba527178 100644 GIT binary patch delta 2914 zcmaKte{36P8OPsbg)&B(Wn(L28+*5PV~x@)2?$2Ewp0~jMX*iUgg_wqF80~E^?c{u zoiid;vK!JVi;bGr@#-)qc*CiaDKIBCttWW`#19D}5Pu*f#;6egApE{3fwn&x}%9s$)G z7<&X<0c+r!;3zn=hq3R0O)v{S@d3sLz~6)G;8pN#aPEVQEi#s2r}r}UAU+IzDCEQ7 z19*>s&wyvaQ{X?rSHN%G$QVr6dmuU7`(egD3T}dTfWHE%kiUYz1>Xg)g1@G4?O823`c0ZVwe1-OpGD@!2svd=Us0I6j^0ml&MUGRSJQ}-}- zbO;YmbH*-%@q4ie8}CNcli**#FN2>%HdKiN9s+*^!j`>tpzvnjuRs5gt|Sy5O}n0* z7A+?QqjhB=C5Udy|^QQ?~0G6Q*9M^*>lR*MIcWCv0nYc$_Eg zm=QOknrGOS%N_mMwBhJn<53tTbne+O*STw_ov7aUMgQr(%<%A&j!mXLm$WIJifNwC zqqY?{5@{!J$Df-tOr1Mv%QCFQ2v55};4YrFq7;yi)6=+0sbWnD%@xydJ>62tZ}`Zu zRYMZdQ@S^(FhxKj0aUI%b@yFAq`B?a!stf{|#)P9e(|^k@ zxxL;g>?^tl-MFhwhyE#b^f;*1(vk?Pl6o1EFVd9{*{Z6-ziLC0nC@wY>GC-A+P1|@ z61i$5nH7BQb>RICgeI;YHmWP;_C7D|*^Z%^Y6LmjiN=M!)(siedrmi}kRZfHJS~;t zk4}1C${jy^cyuiMs#v;rRE>;Kr?j*;2`?U|1y+t8M-we-5{whJ9ouOe(u6m&JEy2> zN;mCPQn$PjN*Og`crzH0Ub+_FPWAl*aNUFsLqZo>DICq!lPPo(q0F$mHV%j0RnXC~ zf+5C!jvOqEj}{IcUNRm{g{~#3I2=V(;p$c_9D3*-7<9K#*If_WG$+RGw3kYI^l3ux zj!TSBP{(l+ca^PMQwFAv%2wFZShOvq=ov{GSsBTxaek# zJVhhh*?Pk-Hf6C5Z|h-rrSXr!1N~nb9+oSs-6H@09pe|*P!nZF0onz*Jj=zU4azpR zT=?c~cN9(x-8vR%LQ9?crp#4#DY0F6cr68Y64W`?Xx{P?PDJmPk;~96r~rpbUR;1O z@RgO7mMpDt|E0WG{h?n(5~VqrD^njJy}Y+OfhbG)Vw;^g*g7Wg&K(7@@*$SR!t38k1O#S&s%Kq~es_n%#$&Omo?piqI z!AJBPQeUG~i2AzNDqcT< z@Lr3BBgYXc6zX+(wj|CWncyIc@76~!F&h*d=ao)&*lC)Mt*SrY3a*9T3z81LU24m6 zo4O>gU?5(gqmtqNQVE9=hForyApEX_f`H=XW$vFZ%PK0rT*hp4JuuMd~co7u@57CPt>QO{*0}opVDk2jPqTVX{P2<5o!I0$hJij-d-_sbsEY#}l zq3eVv_V;Ue$v@8`NAw8!63oEa0MR}88V*7$NOTL{g>7(ui0CHF!3Xd&{0`?@i00vy zRYcoibam4j9YD~J0R`fvYxsE^Z@^BNT|=}P7NA$80pGw`ScfOWL@%MRmgog+z&-F; zE75NF6DHumI)DFhh#|7!L#{@22|*sWOGb!POk7+~^aHNIVYs}3=o^gk{tesO{ToK% z3dWznQS86dLG%mxCse%+e(WNO!|+C;KA42KJmukASb#fEA?WY+E6hW$#TVcZ4txsZ z@arZb9`aj=o?|{9B^rkx;1QTaTf9PNU=lutz3_d^5dyEAYH+|^3|d?*l}a()WD};M z+50GKF-c>RYRjf3*-BMTFj3Wu6|=(jmTcRwgmk*7*rm$p)RbOMAC%Riq^128BjO}8 zOued{k^NH)WYScLoyGZBQdG2Jf@!j3s^^(xF-s{M>JHfpD;DOMYLd?3BCIazEhy4o?T&1Npym}WFnD>FFE{4lf2k@;zE$bH8bIH%kdaTYoz-I>n5K(igqUVOPa|6jLbr2BTz Nor^7m+@5%y`vW~-;KTp` diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.po b/docs/locale/ko/LC_MESSAGES/writing/logging.po index cc1272b56..f96e85642 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/logging.po +++ b/docs/locale/ko/LC_MESSAGES/writing/logging.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: AHN YOUNG SEON \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: KOREAN \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -27,19 +27,18 @@ msgstr "로그" #: ../../writing/logging.rst:9 msgid "" -"The :mod:`logging` module has been a part of Python's Standard Library " -"since version 2.3. It is succinctly described in :pep:`282`. The " -"documentation is notoriously hard to read, except for the `basic logging " -"tutorial`_." +"The :mod:`logging` module has been a part of Python's Standard Library since" +" version 2.3. It is succinctly described in :pep:`282`. The documentation " +"is notoriously hard to read, except for the `basic logging tutorial`_." msgstr "" -":mod:`logging` 모듈은 2.3 버전 이래로 파이썬의 표준 라이브러리였습니다. 이에 관해서는 :pep:`282` 을 보시면" -" 간략히 써져 있습니다. 그 문서는 읽기 어렵기로 악명이 높지만, 그래도 `basic logging tutorial`_ 은 그나마" -" 낫습니다. " +":mod:`logging` 모듈은 2.3 버전 이래로 파이썬의 표준 라이브러리였습니다. 이에 관해서는 :pep:`282` 을 보시면 " +"간략히 써져 있습니다. 그 문서는 읽기 어렵기로 악명이 높지만, 그래도 `basic logging tutorial`_ 은 그나마 " +"낫습니다. " #: ../../writing/logging.rst:13 msgid "" -"As an alternative, `loguru `_ provides " -"an approach for logging, nearly as simple as using a simple ``print`` " +"As an alternative, `loguru `_ provides an " +"approach for logging, nearly as simple as using a simple ``print`` " "statement." msgstr "" @@ -50,11 +49,11 @@ msgstr "로그를 남기는데에는 2가지 목적이 있습니다: " #: ../../writing/logging.rst:17 msgid "" "**Diagnostic logging** records events related to the application's " -"operation. If a user calls in to report an error, for example, the logs " -"can be searched for context." +"operation. If a user calls in to report an error, for example, the logs can " +"be searched for context." msgstr "" -"**진단용 로그** 는 어플리케이션의 동작과 관련된 이벤트를 기록합니다. 예를 들어 사용자가 오류 보고서를 남기면, 그 로그를 해당" -" 에러와 관련된 상황을 확인하는데 쓸 수 있습니다. " +"**진단용 로그** 는 어플리케이션의 동작과 관련된 이벤트를 기록합니다. 예를 들어 사용자가 오류 보고서를 남기면, 그 로그를 해당 " +"에러와 관련된 상황을 확인하는데 쓸 수 있습니다. " #: ../../writing/logging.rst:20 msgid "" @@ -62,8 +61,8 @@ msgid "" "transactions can be extracted and combined with other user details for " "reports or to optimize a business goal." msgstr "" -"**감사용 로그** 는 비지니스 분석에 필요한 이벤트를 기록합니다. 사용자가 무슨 동작을 했는지 알아낼 수 있으며, 다른 사용자와는" -" 무슨 동작을 했는지도 상세하게 알 수 있습니다. 이를 통해 보고서를 작성하거나 업무적으로 최적화를 할 수 있습니다. " +"**감사용 로그** 는 비지니스 분석에 필요한 이벤트를 기록합니다. 사용자가 무슨 동작을 했는지 알아낼 수 있으며, 다른 사용자와는 무슨" +" 동작을 했는지도 상세하게 알 수 있습니다. 이를 통해 보고서를 작성하거나 업무적으로 최적화를 할 수 있습니다. " #: ../../writing/logging.rst:27 msgid "... or Print?" @@ -72,8 +71,8 @@ msgstr "... Print는?" #: ../../writing/logging.rst:29 msgid "" "The only time that ``print`` is a better option than logging is when the " -"goal is to display a help statement for a command line application. Other" -" reasons why logging is better than ``print``:" +"goal is to display a help statement for a command line application. Other " +"reasons why logging is better than ``print``:" msgstr "" "``print`` 가 logging보다 좋은 경우는 커맨드라인 어플리케이션에서 help 구문을 화면에 보여줄 때 뿐입니다. " "logging이 ``print`` 보다 좋은 이유입니다: " @@ -81,17 +80,16 @@ msgstr "" #: ../../writing/logging.rst:33 msgid "" "The `log record`_, which is created with every logging event, contains " -"readily available diagnostic information such as the file name, full " -"path, function, and line number of the logging event." +"readily available diagnostic information such as the file name, full path, " +"function, and line number of the logging event." msgstr "" -"`log record`_ 는 로그 남기는 이벤트가 발생할 때마다 만들어지는데, 여기에는 로그 남기는 이벤트의 파일명과 경로, 함수," -" 몇 행에서 문제가 발생했는지 등의 정보가 들어있어 문제를 확인하기에 편리합니다. " +"`log record`_ 는 로그 남기는 이벤트가 발생할 때마다 만들어지는데, 여기에는 로그 남기는 이벤트의 파일명과 경로, 함수, 몇 " +"행에서 문제가 발생했는지 등의 정보가 들어있어 문제를 확인하기에 편리합니다. " #: ../../writing/logging.rst:36 msgid "" -"Events logged in included modules are automatically accessible via the " -"root logger to your application's logging stream, unless you filter them " -"out." +"Events logged in included modules are automatically accessible via the root " +"logger to your application's logging stream, unless you filter them out." msgstr "" "내장된 모듈에서 발생한 이벤트들도 로그가 남는데, 이 로그들은 루트 로그 기록기를 통하여 어플리케이션의 로그 스트림으로 보낼 수 " "있습니다. 필터링해서 걸러내지만 않는다면 말입니다. " @@ -115,11 +113,10 @@ msgid "" "tutorial`_. Because the *user*, not the library, should dictate what " "happens when a logging event occurs, one admonition bears repeating:" msgstr "" -"`라이브러리에 로그 설정`_ 하려면 `로그 남기기 튜토리얼`_ 을 보시면 됩니다. 로그를 남기는 이벤트가 발생하면 그게 무슨 일인지" -" 알아내야 하는 건 라이브러리가 아니라 *사용자* 입니다. 따라서 반복적으로 경보를 보내야합니다. " +"`라이브러리에 로그 설정`_ 하려면 `로그 남기기 튜토리얼`_ 을 보시면 됩니다. 로그를 남기는 이벤트가 발생하면 그게 무슨 일인지 " +"알아내야 하는 건 라이브러리가 아니라 *사용자* 입니다. 따라서 반복적으로 경보를 보내야합니다. " #: ../../writing/logging.rst:53 -#, fuzzy msgid "" "It is strongly advised that you do not add any handlers other than " "NullHandler to your library’s loggers." @@ -127,41 +124,37 @@ msgstr "당신의 라이브러리에 NullHandler 이외의 다른 로그 남기 #: ../../writing/logging.rst:57 msgid "" -"Best practice when instantiating loggers in a library is to only create " -"them using the ``__name__`` global variable: the :mod:`logging` module " -"creates a hierarchy of loggers using dot notation, so using ``__name__`` " -"ensures no name collisions." +"Best practice when instantiating loggers in a library is to only create them" +" using the ``__name__`` global variable: the :mod:`logging` module creates a" +" hierarchy of loggers using dot notation, so using ``__name__`` ensures no " +"name collisions." msgstr "" "라이브러리에서 로그 기록기를 인스턴스화 하는 유일한 방법은 ``__name__`` 전역 변수를 사용해서 만드는 방법 뿐입니다. " -":mod:`logging` 모듈은 . 을 사용해서 로그 기록기의 계층 구조를 만들기 때문에 ``__name__`` 을 사용해야 " -"충돌을 막을 수 있습니다. " +":mod:`logging` 모듈은 . 을 사용해서 로그 기록기의 계층 구조를 만들기 때문에 ``__name__`` 을 사용해야 충돌을 " +"막을 수 있습니다. " #: ../../writing/logging.rst:62 -#, fuzzy msgid "" -"Here is an example of the best practice from the `requests source`_ -- " -"place this in your ``__init__.py``:" +"Here is an example of the best practice from the `requests source`_ -- place" +" this in your ``__init__.py``:" msgstr "" -"`requests의 소스`_ 에서 가져온 훌륭한 예시를 보여드리겠습니다. 이걸 당신의 ``__init__.py`` 에 두시면 " -"됩니다. " +"`requests의 소스`_ 에서 가져온 훌륭한 예시를 보여드리겠습니다. 이걸 당신의 ``__init__.py`` 에 두시면 됩니다. " #: ../../writing/logging.rst:73 msgid "Logging in an Application" msgstr "어플리케이션에서의 로그 남기기" #: ../../writing/logging.rst:75 -#, fuzzy msgid "" -"The `twelve factor app `_, an authoritative " -"reference for good practice in application development, contains a " -"section on `logging best practice `_. It " -"emphatically advocates for treating log events as an event stream, and " -"for sending that event stream to standard output to be handled by the " -"application environment." +"The `twelve factor app `_, an authoritative reference " +"for good practice in application development, contains a section on `logging" +" best practice `_. It emphatically advocates for " +"treating log events as an event stream, and for sending that event stream to" +" standard output to be handled by the application environment." msgstr "" -"`멋진 앱을 만들기 위한 12가지 `_ 는 어플리케이션 개발을 위한 좋은 습관을 들이기에 " -"참고할만 합니다. `로그를 남기는 방법 `_ 에 관한 섹션도 있는데, 여기서는 로그 " -"이벤트를 이벤트 스트림으로 취급하여 어플리케이션 환경에서 조작할 수 있는 표준적인 산출물로 만들 것을 강력하게 추천합니다. " +"`멋진 앱을 만들기 위한 12가지 `_ 는 어플리케이션 개발을 위한 좋은 습관을 들이기에 참고할만" +" 합니다. `로그를 남기는 방법 `_ 에 관한 섹션도 있는데, 여기서는 로그 이벤트를 " +"이벤트 스트림으로 취급하여 어플리케이션 환경이 처리할 수 있도록 표준 출력으로 보낼 것을 강력하게 추천합니다." #: ../../writing/logging.rst:83 msgid "There are at least three ways to configure a logger:" @@ -172,22 +165,18 @@ msgid "Using an INI-formatted file:" msgstr "INI 포맷의 파일을 사용하는 방법: " #: ../../writing/logging.rst:86 -#, fuzzy msgid "" -"**Pro**: possible to update configuration while running, using the " -"function :func:`logging.config.listen` to listen on a socket." +"**Pro**: possible to update configuration while running, using the function " +":func:`logging.config.listen` to listen on a socket." msgstr "" -"**이렇게 하자**: 소켓에 함수 :func:`logging.config.listen` 를 사용해서 어플리케이션이 실행 중일때도 " -"설정 변경이 반영될 수 있도록 한다." +"**장점**: :func:`logging.config.listen` 함수로 소켓을 리스닝하여 어플리케이션 실행 중에도 설정을 갱신할 수 " +"있습니다." #: ../../writing/logging.rst:88 -#, fuzzy msgid "" "**Con**: less control (e.g. custom subclassed filters or loggers) than " "possible when configuring a logger in code." -msgstr "" -"**이렇게 하지 마세요**: 코드에 로그를 설정할 때 (*예를 들면* 직접 만든 서브클래스나 로그에) 할 수 있는 설정도 하지 " -"않는다." +msgstr "**단점**: 코드로 로거를 설정할 때보다 제어할 수 있는 범위가 적습니다(예: 직접 서브클래스로 만든 필터나 로거)." #: ../../writing/logging.rst:93 msgid "Using a dictionary or a JSON-formatted file:" @@ -195,9 +184,9 @@ msgstr "딕셔너리나 JSON 포맷 파일을 사용하는 방법: " #: ../../writing/logging.rst:91 msgid "" -"**Pro**: in addition to updating while running, it is possible to load " -"from a file using the :mod:`json` module, in the standard library since " -"Python 2.6." +"**Pro**: in addition to updating while running, it is possible to load from " +"a file using the :mod:`json` module, in the standard library since Python " +"2.6." msgstr "" "**이렇게 하자**: 어플리케이션 실행 중에도 업데이트를 할 수 있을 뿐만 아니라, 파이썬 2.6부터는 표준 라이브러리에서 " ":mod:`json` 모듈을 사용하여 파일에서 설정을 불러올 수도 있다." @@ -215,23 +204,21 @@ msgid "**Pro**: complete control over the configuration." msgstr "**이렇게 하자**: 모든 설정을 완벽하게 한다." #: ../../writing/logging.rst:97 -#, fuzzy msgid "**Con**: modifications require a change to the source code." -msgstr "**이렇게 하지 마세요**: 소스코드에서 설정 수정이 필요하다." +msgstr "**단점**: 수정하려면 소스코드를 변경해야 합니다." #: ../../writing/logging.rst:101 msgid "Example Configuration via an INI File" msgstr "INI 파일로 설정하는 예시" #: ../../writing/logging.rst:103 -#, fuzzy msgid "" -"Let us say that the file is named ``logging_config.ini``. More details " -"for the file format are in the `logging configuration`_ section of the " -"`logging tutorial`_." +"Let us say that the file is named ``logging_config.ini``. More details for " +"the file format are in the `logging configuration`_ section of the `logging " +"tutorial`_." msgstr "" -"파일명은 ``logging_config.ini`` 로 합시다. 파일 포맷에 대한 자세한 설명은 `로그 튜토리얼`_ 의 `로그 " -"설정`_ 을 보시면 됩니다. " +"파일명은 ``logging_config.ini`` 로 합시다. 파일 포맷에 대한 자세한 설명은 `로그 튜토리얼`_ 의 `로그 설정`_ 을" +" 보시면 됩니다. " #: ../../writing/logging.rst:132 msgid "Then use :meth:`logging.config.fileConfig` in the code:" @@ -247,10 +234,9 @@ msgid "" ":pep:`391` contains a list of the mandatory and optional elements in the " "configuration dictionary." msgstr "" -"파이썬 2.7부터는 딕셔너리를 사용해서 상세한 설정을 할 수 있습니다. :pep:`391` 을 보시면 설정 딕셔너리에 반드시 넣어야" -" 하는 요소와 그렇지 않은 요소를 확인할 수 있습니다. " +"파이썬 2.7부터는 딕셔너리를 사용해서 상세한 설정을 할 수 있습니다. :pep:`391` 을 보시면 설정 딕셔너리에 반드시 넣어야 하는" +" 요소와 그렇지 않은 요소를 확인할 수 있습니다. " #: ../../writing/logging.rst:180 msgid "Example Configuration Directly in Code" msgstr "코드에 바로 설정하는 예시" - diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index 4b10d8ea17ccb207f9a2350cb1895ff41b5cfa32..08575b41e3ec54ffc2a872f23f3a30d36e3191c7 100644 GIT binary patch literal 56245 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 Z@1-T-d#}6~-~Nxj)~zZU{pOU^KLH*2$4>wN diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 75ec31a99..276529f9c 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: YoungSeon.Ahn \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -27,38 +27,36 @@ msgstr "프로젝트 구성하기" #: ../../writing/structure.rst:9 msgid "" -"By \"structure\" we mean the decisions you make concerning how your " -"project best meets its objective. We need to consider how to best " -"leverage Python's features to create clean, effective code. In practical " -"terms, \"structure\" means making clean code whose logic and dependencies" -" are clear as well as how the files and folders are organized in the " -"filesystem." +"By \"structure\" we mean the decisions you make concerning how your project " +"best meets its objective. We need to consider how to best leverage Python's " +"features to create clean, effective code. In practical terms, \"structure\" " +"means making clean code whose logic and dependencies are clear as well as " +"how the files and folders are organized in the filesystem." msgstr "" -"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미합니다. 우리는 깔끔하고 " -"효율적인 코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있습니다. 일반적으로 \"구성\"이란 로직과 의존성이 " -"깔끔한 코드를 만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제입니다." +"여기서 \"구성\"이란 어떻게 하면 목표한 바에 가장 부합하도록 프로젝트를 수행하기 위한 의사결정을 의미합니다. 우리는 깔끔하고 효율적인" +" 코드라는 파이썬의 특성을 극대화 할 수 있는 방법을 고민할 필요가 있습니다. 일반적으로 \"구성\"이란 로직과 의존성이 깔끔한 코드를 " +"만드는 것을 의미할 뿐만 아니라, 파일시스템에 어떻게 파일과 폴더들을 구성하느냐의 문제입니다." #: ../../writing/structure.rst:16 msgid "" -"Which functions should go into which modules? How does data flow through " -"the project? What features and functions can be grouped together and " -"isolated? By answering questions like these you can begin to plan, in a " -"broad sense, what your finished product will look like." +"Which functions should go into which modules? How does data flow through the" +" project? What features and functions can be grouped together and isolated? " +"By answering questions like these you can begin to plan, in a broad sense, " +"what your finished product will look like." msgstr "" "어느 모듈에 어느 기능이 들어가야 할까요? 프로젝트에서 데이터는 어덯게 흘러가야 할까요? 어떤 특징과 기능이 통합되거나 분리되어야 " "할까요? 이러한 질문에 답함으로써 프로젝트의 계획을 시작할 수 있고, 더 나아가 최종적인 제품이 어떤 모습일지를 그릴 수 있습니다." #: ../../writing/structure.rst:21 -#, fuzzy msgid "" "In this section, we take a closer look at Python's modules and import " "systems as they are the central elements to enforcing structure in your " -"project. We then discuss various perspectives on how to build code which " -"can be extended and tested reliably." +"project. We then discuss various perspectives on how to build code which can" +" be extended and tested reliably." msgstr "" -"이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것입니다. 이 2가지가 프로젝트를 위한 강력한 구조를 만들기 위한" -" 핵심적인 요소이기 때문입니다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양환 " -"관점에서 검토할 것입니다." +"이 섹션에서 우리는 파이썬의 모듈과 임포트 시스템을 자세히 살펴볼 것입니다. 이 2가지가 프로젝트를 위한 강력한 구조를 만들기 위한 " +"핵심적인 요소이기 때문입니다. 그런 다음, 확장하기 쉽고 확실하게 테스트 할 수 있는 코드를 짜기 위한 방법에 관하여 다양한 관점에서 " +"검토할 것입니다." #: ../../writing/structure.rst:29 msgid "Structure of the Repository" @@ -69,11 +67,10 @@ msgid "It's Important." msgstr "중요합니다." #: ../../writing/structure.rst:34 -#, fuzzy msgid "" -"Just as Code Style, API Design, and Automation are essential for a " -"healthy development cycle. Repository structure is a crucial part of your" -" project's `architecture " +"Just as Code Style, API Design, and Automation are essential for a healthy " +"development cycle. Repository structure is a crucial part of your project's " +"`architecture " "`__." msgstr "" "코딩 스타일, API 디자인, 자동화처럼 건강한 개발 사이클에 필수적인 요소들처럼, 저장소의 구조도 프로젝트의 `아키텍처 " @@ -82,8 +79,8 @@ msgstr "" #: ../../writing/structure.rst:39 msgid "" -"When a potential user or contributor lands on your repository's page, " -"they see a few things:" +"When a potential user or contributor lands on your repository's page, they " +"see a few things:" msgstr "당신이 만든 프로젝트의 저장소 웹페이지에 처음으로 상륙한 잠재적 사용자나 공헌자는 이런 것들을 보게 될 것입니다. " #: ../../writing/structure.rst:42 @@ -107,26 +104,23 @@ msgstr "스크롤을 내리고 내리고 나서야 프로젝트의 README 파일 #: ../../writing/structure.rst:49 msgid "" "If your repo is a massive dump of files or a nested mess of directories, " -"they might look elsewhere before even reading your beautiful " -"documentation." +"they might look elsewhere before even reading your beautiful documentation." msgstr "" -"당신의 저장소가 엄청나게 많은 파일들과 디렉토리로 꼬여있다면, 방문자들은 금방 떠나버리고 말 것입니다. 아무리 아름다운 문서가 " -"있다고 해도 말입니다. " +"당신의 저장소가 엄청나게 많은 파일들과 디렉토리로 꼬여있다면, 방문자들은 금방 떠나버리고 말 것입니다. 아무리 아름다운 문서가 있다고 " +"해도 말입니다. " #: ../../writing/structure.rst:53 msgid "Dress for the job you want, not the job you have." msgstr "원하는 바가 있다면 바로 그 원하는 바인 것처럼 행동하라." #: ../../writing/structure.rst:55 -#, fuzzy msgid "" -"Of course, first impressions aren't everything. You and your colleagues " -"will spend countless hours working with this repository, eventually " -"becoming intimately familiar with every nook and cranny. The layout is " -"important." +"Of course, first impressions aren't everything. You and your colleagues will" +" spend countless hours working with this repository, eventually becoming " +"intimately familiar with every nook and cranny. The layout is important." msgstr "" -"물론 첫인상이 전부라는 말은 아닙니다. 당신과 동료들은 저장소에 올려진 프로젝트를 위해 수없이 많은 날들을 지세웠을 것입니다. " -"그러다보니 어느새 저장소의 구석구석에 이미 친숙해져있을 것입니다. 그래도 모양새는 중요합니다. " +"물론 첫인상이 전부라는 말은 아닙니다. 당신과 동료들은 저장소에 올려진 프로젝트를 위해 수없이 많은 날들을 지새웠을 것입니다. 그러다보니" +" 어느새 저장소의 구석구석에 이미 친숙해져있을 것입니다. 그래도 모양새는 중요합니다." #: ../../writing/structure.rst:60 msgid "Sample Repository" @@ -143,7 +137,8 @@ msgstr "" msgid "" "This repository is `available on GitHub " "`__." -msgstr "이 저장소는 `깃허브에서 볼 수 있습니다 `__." +msgstr "" +"이 저장소는 `깃허브에서 볼 수 있습니다 `__." #: ../../writing/structure.rst:81 msgid "Let's get into some specifics." @@ -171,18 +166,19 @@ msgstr "관심있는 코드" #: ../../writing/structure.rst:93 msgid "" -"Your module package is the core focus of the repository. It should not be" -" tucked away:" +"Your module package is the core focus of the repository. It should not be " +"tucked away:" msgstr "모듈 패키지는 저장소의 핵심입니다. 숨겨놓으면 안됩니다: " #: ../../writing/structure.rst:100 msgid "" -"If your module consists of only a single file, you can place it directly " -"in the root of your repository:" +"If your module consists of only a single file, you can place it directly in " +"the root of your repository:" msgstr "모듈 안에 단 하나의 파일밖에 없다면, 저장소의 최상위 폴더에 바로 두어도 좋습니다. " #: ../../writing/structure.rst:107 -msgid "Your library does not belong in an ambiguous src or python subdirectory." +msgid "" +"Your library does not belong in an ambiguous src or python subdirectory." msgstr "라이브러리를 애매한 소스나 파이썬 하위 디렉토리에 두면 안됩니다. " #: ../../writing/structure.rst:110 @@ -199,26 +195,26 @@ msgstr "법적 공방" #: ../../writing/structure.rst:120 msgid "" -"This is arguably the most important part of your repository, aside from " -"the source code itself. The full license text and copyright claims should" -" exist in this file." +"This is arguably the most important part of your repository, aside from the " +"source code itself. The full license text and copyright claims should exist " +"in this file." msgstr "소스 코드를 외에 프로젝트 저장소의 가장 중요한 부분입니다. 라이선스 문서 전문과 저작권이 반드시 파일에 들어가야 합니다. " #: ../../writing/structure.rst:124 msgid "" -"If you aren't sure which license you should use for your project, check " -"out `choosealicense.com `_." +"If you aren't sure which license you should use for your project, check out " +"`choosealicense.com `_." msgstr "" "어떤 라이선스를 써야할지 모르겠다면 `choosealicense.com `_ 를 " "확인하세요." #: ../../writing/structure.rst:127 -#, fuzzy msgid "" "Of course, you are also free to publish code without a license, but this " "would prevent many people from potentially using or contributing to your " "code." -msgstr "라이선스 없이 코드가 배포되어도 상관없을 수도 있습니다. 하지만 그랬다가는 사람들이 당신의 코드를 사용하기를 꺼릴 것입니다. " +msgstr "" +"물론 라이선스 없이 코드를 배포해도 됩니다. 하지만 그랬다가는 많은 사람들이 당신의 코드를 사용하거나 기여하기를 꺼릴 수 있습니다." #: ../../writing/structure.rst:131 msgid "Setup.py" @@ -252,24 +248,22 @@ msgstr "개발 의존성" #: ../../writing/structure.rst:153 msgid "" -"A `pip requirements file `__ should be placed at the root of the repository. " -"It should specify the dependencies required to contribute to the project:" -" testing, building, and generating documentation." +"A `pip requirements file " +"`__ should be " +"placed at the root of the repository. It should specify the dependencies " +"required to contribute to the project: testing, building, and generating " +"documentation." msgstr "" -"`pip 필수 파일 `__ 은 반드시 저장소의 최상위 폴더에 두어야 합니다. 이 파일은 프로젝트에 기여하기 위한 작업들, 즉 테스트, 빌드," -" 문서 생성을 위해 필요한 의존성에 대하여 명시해야 합니다. " +"`pip 필수 파일 `__" +" 은 반드시 저장소의 최상위 폴더에 두어야 합니다. 이 파일은 프로젝트에 기여하기 위한 작업들, 즉 테스트, 빌드, 문서 생성을 위해 " +"필요한 의존성에 대하여 명시해야 합니다. " #: ../../writing/structure.rst:159 -#, fuzzy msgid "" -"If your project has no development dependencies, or if you prefer setting" -" up a development environment via ``setup.py``, this file may be " -"unnecessary." +"If your project has no development dependencies, or if you prefer setting up" +" a development environment via ``setup.py``, this file may be unnecessary." msgstr "" -"프로젝트에 개발 의존성이 없거나, 아니면 ``setup.py`` 를 통해 개발 환경을 설치하는 편을 좋아한다면 이 파일은 " -"불필요합니다. " +"프로젝트에 개발 의존성이 없거나, 아니면 ``setup.py`` 를 통해 개발 환경을 설치하는 편을 좋아한다면 이 파일은 불필요합니다. " #: ../../writing/structure.rst:164 msgid "Documentation" @@ -308,16 +302,17 @@ msgid "Starting out, a small test suite will often exist in a single file:" msgstr "프로젝트를 시작할 때, 보통 하나의 파일에 간단한 테스트 도구를 만들 것입니다." #: ../../writing/structure.rst:193 -msgid "Once a test suite grows, you can move your tests to a directory, like so:" +msgid "" +"Once a test suite grows, you can move your tests to a directory, like so:" msgstr "테스트 도구가 커지면 이런 폴더를 만들어서 테스트 파일을 옮기면 됩니다. " #: ../../writing/structure.rst:201 msgid "" -"Obviously, these test modules must import your packaged module to test " -"it. You can do this a few ways:" +"Obviously, these test modules must import your packaged module to test it. " +"You can do this a few ways:" msgstr "" -"물론 이런 테스트 모듈들은 프로젝트의 패키징된 모듈들을 임포트해서 테스트를 수행합니다. 테스트를 수행하는데에는 몇 가지 방법이 " -"있습니다. " +"물론 이런 테스트 모듈들은 프로젝트의 패키징된 모듈들을 임포트해서 테스트를 수행합니다. 테스트를 수행하는데에는 몇 가지 방법이 있습니다." +" " #: ../../writing/structure.rst:204 msgid "Expect the package to be installed in site-packages." @@ -332,16 +327,15 @@ msgstr "패키지 경로를 잘 찾기 위해 간단한(하지만 명확한) 경 #: ../../writing/structure.rst:208 msgid "" "I highly recommend the latter. Requiring a developer to run ``setup.py " -"develop`` to test an actively changing codebase also requires them to " -"have an isolated environment setup for each instance of the codebase." +"develop`` to test an actively changing codebase also requires them to have " +"an isolated environment setup for each instance of the codebase." msgstr "" #: ../../writing/structure.rst:213 -#, fuzzy msgid "" -"To give the individual tests import context, create a " -"``tests/context.py`` file:" -msgstr "각각의 테스트마다 별도의 임포트 설정을 주고 싶다면 tests/context.py 파일을 이렇게 작성하세요. " +"To give the individual tests import context, create a ``tests/context.py`` " +"file:" +msgstr "각각의 테스트마다 별도의 임포트 설정을 주고 싶다면 ``tests/context.py`` 파일을 이렇게 작성하세요." #: ../../writing/structure.rst:224 msgid "Then, within the individual test modules, import the module like so:" @@ -353,14 +347,13 @@ msgstr "이렇게 하면 설치 방법과 상관없이 항상 생각한 대로 #: ../../writing/structure.rst:232 msgid "" -"Some people will assert that you should distribute your tests within your" -" module itself -- I disagree. It often increases complexity for your " -"users; many test suites often require additional dependencies and runtime" -" contexts." +"Some people will assert that you should distribute your tests within your " +"module itself -- I disagree. It often increases complexity for your users; " +"many test suites often require additional dependencies and runtime contexts." msgstr "" -"어떤 사람들은 테스트 파일을 반드시 테스트 하려는 모듈 자체에 넣고 배포를 해야한다고 주장합니다. 하지만 저는 이에 동의하지 " -"않습니다. 그렇게 하면 사용자 입장에서 볼 때 프로젝트의 모듈이 복잡해집니다. 그리고 추가적인 의존성 관계와 실행 환경이 필요한 " -"테스트 도구가 많기 때문입니다. " +"어떤 사람들은 테스트 파일을 반드시 테스트 하려는 모듈 자체에 넣고 배포를 해야한다고 주장합니다. 하지만 저는 이에 동의하지 않습니다. " +"그렇게 하면 사용자 입장에서 볼 때 프로젝트의 모듈이 복잡해집니다. 그리고 추가적인 의존성 관계와 실행 환경이 필요한 테스트 도구가 많기" +" 때문입니다. " #: ../../writing/structure.rst:238 msgid "Makefile" @@ -375,15 +368,14 @@ msgid "Generic management tasks." msgstr "전반적인 관리 작업" #: ../../writing/structure.rst:248 -#, fuzzy msgid "" "If you look at most of my projects or any Pocoo project, you'll notice a " -"Makefile lying around. Why? These projects aren't written in C... In " -"short, make is an incredibly useful tool for defining generic tasks for " -"your project." +"Makefile lying around. Why? These projects aren't written in C... In short, " +"make is an incredibly useful tool for defining generic tasks for your " +"project." msgstr "" -"Makefile은 지금 이 프로젝트와 다른 Pocoo 프로젝트에도 항상 있습니다. 왜 그럴까요? 이 프로젝트들은 C로 작성되지 " -"않았기 때문입니다... 즉 make는 당신의 프로젝트를 관리하는 작업들을 알려주는 엄청나게 유용한 도구입니다. " +"Makefile은 지금 이 프로젝트와 다른 Pocoo 프로젝트에도 항상 있습니다. 왜 그럴까요? 이 프로젝트들은 C로 작성되지 않았기 " +"때문입니다... 즉 make는 당신의 프로젝트를 관리하는 작업들을 알려주는 엄청나게 유용한 도구입니다. " #: ../../writing/structure.rst:253 msgid "**Sample Makefile:**" @@ -394,8 +386,8 @@ msgid "" "Other generic management scripts (e.g. ``manage.py`` or ``fabfile.py``) " "belong at the root of the repository as well." msgstr "" -"다른 관리 작업 스크립트(``manage.py`` 또는 ``fabfile.py``) 들도 Makefile과 마찬가지로 저장소의 " -"최상위 디렉토리에 두세요. " +"다른 관리 작업 스크립트(``manage.py`` 또는 ``fabfile.py``) 들도 Makefile과 마찬가지로 저장소의 최상위 " +"디렉토리에 두세요. " #: ../../writing/structure.rst:269 msgid "Regarding Django Applications" @@ -403,17 +395,17 @@ msgstr "장고 어플리케이션에 대하여" #: ../../writing/structure.rst:271 msgid "" -"I've noticed a new trend in Django applications since the release of " -"Django 1.4. Many developers are structuring their repositories poorly due" -" to the new bundled application templates." +"I've noticed a new trend in Django applications since the release of Django " +"1.4. Many developers are structuring their repositories poorly due to the " +"new bundled application templates." msgstr "" -"장고 1.4 버전의 릴리즈 이후로 장고 어플리케이션에 새로운 유행이 불고 있습니다. 많은 개발자들이 자신들의 저장소를 지저분하게 " -"구성하고 있습니다. 1.4 버전에 포함된 어플리케이션 템플릿 때문입니다. " +"장고 1.4 버전의 릴리즈 이후로 장고 어플리케이션에 새로운 유행이 불고 있습니다. 많은 개발자들이 자신들의 저장소를 지저분하게 구성하고" +" 있습니다. 1.4 버전에 포함된 어플리케이션 템플릿 때문입니다. " #: ../../writing/structure.rst:275 msgid "" -"How? Well, they go to their bare and fresh repository and run the " -"following, as they always have:" +"How? Well, they go to their bare and fresh repository and run the following," +" as they always have:" msgstr "어떻게 지저분하게 하길래? 음, 이런 개발자들은 자신의 정리 안 된 저장소에서 대체로 이런 명령을 실행합니다. " #: ../../writing/structure.rst:282 @@ -430,8 +422,8 @@ msgid "" "Unnecessary nesting doesn't help anybody (unless they're nostalgic for " "monolithic SVN repos)." msgstr "" -"상위 폴더와 하위 폴더의 이름이 같으니 개발 도구도 혼란스러워하고 개발자들도 혼란스러워하게 됩니다. 불필요한 폴더 감싸기는 (SVN" -" 저장소를 그리워하는게 아니라면)도움이 안됩니다. " +"상위 폴더와 하위 폴더의 이름이 같으니 개발 도구도 혼란스러워하고 개발자들도 혼란스러워하게 됩니다. 불필요한 폴더 감싸기는 (SVN " +"저장소를 그리워하는게 아니라면)도움이 안됩니다. " #: ../../writing/structure.rst:298 msgid "Let's do it properly:" @@ -452,33 +444,32 @@ msgstr "코드 구성이 핵심" #: ../../writing/structure.rst:322 msgid "" "Thanks to the way imports and modules are handled in Python, it is " -"relatively easy to structure a Python project. Easy, here, means that you" -" do not have many constraints and that the module importing model is easy" -" to grasp. Therefore, you are left with the pure architectural task of " -"crafting the different parts of your project and their interactions." +"relatively easy to structure a Python project. Easy, here, means that you do" +" not have many constraints and that the module importing model is easy to " +"grasp. Therefore, you are left with the pure architectural task of crafting " +"the different parts of your project and their interactions." msgstr "" -"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽습니다. 여기서 쉽다는 말은 제약이 많지 않고, " -"모듈을 불러오는 방식이 이해하기 쉽다는 뜻입니다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을" -" 하면 됩니다." +"파이썬의 임포트 방식과 잘 만들어진 모듈 덕분에 파이썬 프로젝트의 구성은 비교적 쉽습니다. 여기서 쉽다는 말은 제약이 많지 않고, 모듈을" +" 불러오는 방식이 이해하기 쉽다는 뜻입니다. 따라서 프로젝트의 서로 다른 파트와 그 사이의 상호작용을 다듬는 아키텍처 작업만을 하면 " +"됩니다." #: ../../writing/structure.rst:329 msgid "" -"Easy structuring of a project means it is also easy to do it poorly. Some" -" signs of a poorly structured project include:" +"Easy structuring of a project means it is also easy to do it poorly. Some " +"signs of a poorly structured project include:" msgstr "" "프로젝트를 구성하기 쉽다는 말은 또한 엉망이 되기도 쉽다는 뜻입니다. 프로젝트가 엉망으로 구성되었음을 알 수 있는 신호를 몇 가지 " "찾아보았습니다. " #: ../../writing/structure.rst:333 -#, fuzzy msgid "" -"Multiple and messy circular dependencies: If the classes Table and Chair " -"in :file:`furn.py` need to import Carpenter from :file:`workers.py` to " -"answer a question such as ``table.isdoneby()``, and if conversely the " -"class Carpenter needs to import Table and Chair to answer the question " -"``carpenter.whatdo()``, then you have a circular dependency. In this case" -" you will have to resort to fragile hacks such as using import statements" -" inside your methods or functions." +"Multiple and messy circular dependencies: If the classes Table and Chair in " +":file:`furn.py` need to import Carpenter from :file:`workers.py` to answer a" +" question such as ``table.isdoneby()``, and if conversely the class " +"Carpenter needs to import Table and Chair to answer the question " +"``carpenter.whatdo()``, then you have a circular dependency. In this case " +"you will have to resort to fragile hacks such as using import statements " +"inside your methods or functions." msgstr "" "복잡한 순환 참조: ``책상.누가 만들었나()`` 같은 질문에 답하려면 :file:`가구.py` 의 탁자와 의자가 " ":file:`작업자.py` 에서 목수를 불러와야 하는데, 반대로 ``목수.뭐하니()`` 같은 질문에 답하려면 목수가 책상과 의자를 " @@ -486,59 +477,53 @@ msgstr "" "난도질스러운 방법에 의존하는 수 밖에 없습니다." #: ../../writing/structure.rst:342 -#, fuzzy msgid "" -"Hidden coupling: Each and every change in Table's implementation breaks " -"20 tests in unrelated test cases because it breaks Carpenter's code, " -"which requires very careful surgery to adapt to the change. This means " -"you have too many assumptions about Table in Carpenter's code or the " -"reverse." +"Hidden coupling: Each and every change in Table's implementation breaks 20 " +"tests in unrelated test cases because it breaks Carpenter's code, which " +"requires very careful surgery to adapt to the change. This means you have " +"too many assumptions about Table in Carpenter's code or the reverse." msgstr "" -"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 합니다. 책상의 코드 변경이 목수의" -" 코드를 무너뜨리기 때문입니다. 이럴 때 코드 변경을 하려면 아주 신중하게 수술을 해야합니다. 이 말인즉, 목수의 코드 안에 있는 " -"책상의 코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻입니다." +"숨겨진 연결고리: 책상을 구현하는 코드의 모든 변경이 책상과 관련없는 다른 테스트들을 안돌아가게 합니다. 책상의 코드 변경이 목수의 " +"코드를 무너뜨리기 때문입니다. 이럴 때 코드 변경을 하려면 아주 신중하게 수술을 해야합니다. 이 말인즉, 목수의 코드 안에 있는 책상의 " +"코드를 변경하거나 그 반대의 경우에 아주 많은 경우의 수를 상정해야만 한다는 뜻입니다." #: ../../writing/structure.rst:348 -#, fuzzy msgid "" "Heavy usage of global state or context: Instead of explicitly passing " -"``(height, width, type, wood)`` to each other, Table and Carpenter rely " -"on global variables that can be modified and are modified on the fly by " +"``(height, width, type, wood)`` to each other, Table and Carpenter rely on " +"global variables that can be modified and are modified on the fly by " "different agents. You need to scrutinize all access to these global " -"variables in order to understand why a rectangular table became a square," -" and discover that remote template code is also modifying this context, " +"variables in order to understand why a rectangular table became a square, " +"and discover that remote template code is also modifying this context, " "messing with the table dimensions." msgstr "" -"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우입니다. 목수가 언제든" -" 아무나 바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생깁니다. 어쩌다가 이런 일이 " -"벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 샘플 코드가 변수를 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 " -"것입니다." +"전역 구문의 과다 사용: ``(높이, 너비, 타입, 나무)`` 같은 말로 대상을 명확하게 정의하지 않는 경우입니다. 목수가 언제든 " +"아무나 바꿀 수 있는 전역 변수를 사용하기 시작하면, 원형 책상이 사각 책상으로 되어버리는 경우가 생깁니다. 어쩌다가 이런 일이 " +"벌어졌는지를 조사하기 위해 꼼꼼히 살피다 보면, 엉뚱한 샘플 코드가 변수를 변경하고 책상의 모양을 바꾸고 있다는 사실을 발견할 것입니다." #: ../../writing/structure.rst:357 -#, fuzzy msgid "" -"Spaghetti code: multiple pages of nested if clauses and for loops with a " -"lot of copy-pasted procedural code and no proper segmentation are known " -"as spaghetti code. Python's meaningful indentation (one of its most " -"controversial features) makes it very hard to maintain this kind of code." -" The good news is that you might not see too much of it." +"Spaghetti code: multiple pages of nested if clauses and for loops with a lot" +" of copy-pasted procedural code and no proper segmentation are known as " +"spaghetti code. Python's meaningful indentation (one of its most " +"controversial features) makes it very hard to maintain this kind of code. " +"The good news is that you might not see too much of it." msgstr "" -"스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 " -"나눠지지도 않은 코드를 스파게티 코드라고 합니다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 " -"복잡하고 어지러운 코드는 유지 보수하기가 어렵습니다. 다행히 이런 난장판을 많이 볼 일은 없을 것입니다." +"스파게티 코드: 복사 & 붙여넣기가 몇 페이지나 계속되고, 그 안에서 if조건문과 for반복문이 어지럽게 반복되며, 적절하게 나눠지지도 " +"않은 코드를 스파게티 코드라고 합니다. 파이썬의 (가장 논란이 분분한 특징일)들여쓰기에는 의미가 있기 때문에 이런 복잡하고 어지러운 " +"코드는 유지 보수하기가 어렵습니다. 다행히 이런 난장판을 많이 볼 일은 없을 것입니다." #: ../../writing/structure.rst:364 -#, fuzzy msgid "" -"Ravioli code is more likely in Python: it consists of hundreds of similar" -" little pieces of logic, often classes or objects, without proper " -"structure. If you never can remember, if you have to use FurnitureTable, " -"AssetTable or Table, or even TableNew for your task at hand, then you " -"might be swimming in ravioli code." +"Ravioli code is more likely in Python: it consists of hundreds of similar " +"little pieces of logic, often classes or objects, without proper structure. " +"If you never can remember, if you have to use FurnitureTable, AssetTable or " +"Table, or even TableNew for your task at hand, then you might be swimming in" +" ravioli code." msgstr "" -"라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있습니다. 구조화도 되어있지 않으면서 수 백개의 " -"비슷한 로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 합니다. 식탁을 써야하는지, 탁자를 " -"써야하는지, 그도 아니면 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것입니다." +"라비올리 코드: 파이썬에는 스파게티 코드보다도 라비올리 코드를 더 자주 볼 수 있습니다. 구조화도 되어있지 않으면서 수 백개의 비슷한 " +"로직이나 작은 클래스, 또는 오브젝트로 이루어져 있는 코드를 라비올리 코드라고 합니다. 식탁을 써야하는지, 탁자를 써야하는지, 그도 " +"아니면 새 책상이 필요한건지 도무지 기억할 수 없는 순간, 당신은 라비올리 코드 속에서 헤엄치고 있을 것입니다." #: ../../writing/structure.rst:373 msgid "Modules" @@ -546,156 +531,144 @@ msgstr "모듈" #: ../../writing/structure.rst:375 msgid "" -"Python modules are one of the main abstraction layers available and " -"probably the most natural one. Abstraction layers allow separating code " -"into parts holding related data and functionality." +"Python modules are one of the main abstraction layers available and probably" +" the most natural one. Abstraction layers allow separating code into parts " +"holding related data and functionality." msgstr "" -"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운 모습입니다. 추상 레이어는 코드를 기능 " -"파트와 데이터 저장 파트로 나눌 수 있도록 해줍니다." +"파이썬 모듈은 사용 가능한 주요 추상 레이어 중 하나이자, 추상 레이어의 가장 자연스러운 모습입니다. 추상 레이어는 코드를 기능 파트와 " +"데이터 저장 파트로 나눌 수 있도록 해줍니다." #: ../../writing/structure.rst:379 msgid "" -"For example, a layer of a project can handle interfacing with user " -"actions, while another would handle low-level manipulation of data. The " -"most natural way to separate these two layers is to regroup all " -"interfacing functionality in one file, and all low-level operations in " -"another file. In this case, the interface file needs to import the low-" -"level file. This is done with the ``import`` and ``from ... import`` " -"statements." +"For example, a layer of a project can handle interfacing with user actions, " +"while another would handle low-level manipulation of data. The most natural " +"way to separate these two layers is to regroup all interfacing functionality" +" in one file, and all low-level operations in another file. In this case, " +"the interface file needs to import the low-level file. This is done with the" +" ``import`` and ``from ... import`` statements." msgstr "" -"예를 들어 프로젝트의 레이어 중 하나는 사용자 인터페이스를 담당하고, 다른 하나는 저수준의 데이터 처리를 담당할 수도 있다. 이 두" -" 레이어를 분리시키는 가장 자연스러운 방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각의 파일에 넣는 것입니다." -" 이런 경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 합니다. 이는 ``import`` 와 ``from ... " -"import`` 구문으로 가능합니다." +"예를 들어 프로젝트의 레이어 중 하나는 사용자 인터페이스를 담당하고, 다른 하나는 저수준의 데이터 처리를 담당할 수도 있다. 이 두 " +"레이어를 분리시키는 가장 자연스러운 방법은 인터페이스 기능과 저수준의 데이터 처리를 담당하는 기능을 각각의 파일에 넣는 것입니다. 이런 " +"경우에 인터페이스 파일은 데이터 처리 파일을 불러와야 합니다. 이는 ``import`` 와 ``from ... import`` 구문으로" +" 가능합니다." #: ../../writing/structure.rst:386 -#, fuzzy msgid "" -"As soon as you use `import` statements, you use modules. These can be " -"either built-in modules such as `os` and `sys`, third-party modules you " -"have installed in your environment, or your project's internal modules." +"As soon as you use `import` statements, you use modules. These can be either" +" built-in modules such as `os` and `sys`, third-party modules you have " +"installed in your environment, or your project's internal modules." msgstr "" -"`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있습니다. 이는 내장 모듈인`os`, `sys`, 프로젝트에 포함시킨 " -"모듈과 따로 설치한 서드파티 모듈도 마찬가지입니다." +"`import` 구문을 사용하는 즉시 해당 모듈을 불러올 수 있습니다. 이는 내장 모듈인`os`, `sys`, 프로젝트에 포함시킨 모듈과" +" 따로 설치한 서드파티 모듈도 마찬가지입니다." #: ../../writing/structure.rst:390 -#, fuzzy msgid "" -"To keep in line with the style guide, keep module names short, lowercase," -" and be sure to avoid using special symbols like the dot (.) or question " -"mark (?). A file name like :file:`my.spam.py` is the one you should " -"avoid! Naming this way will interfere with the way Python looks for " -"modules." +"To keep in line with the style guide, keep module names short, lowercase, " +"and be sure to avoid using special symbols like the dot (.) or question mark" +" (?). A file name like :file:`my.spam.py` is the one you should avoid! " +"Naming this way will interfere with the way Python looks for modules." msgstr "" "이 책의 스타일 안내서처럼 하려면, 모듈의 이름은 소문자로 짧게 짓고, 점(.)이나 물음표(?) 같은 특수 문자의 사용을 지양해야 " "합니다. 그러니까 :file:`my.spam.py` 같은 이름으로 만들면 안됩니다! 파이썬이 모듈을 찾는 걸 방해할겁니다. " #: ../../writing/structure.rst:395 msgid "" -"In the case of `my.spam.py` Python expects to find a :file:`spam.py` file" -" in a folder named :file:`my` which is not the case. There is an `example" -" `_ of how the dot" -" notation should be used in the Python docs." +"In the case of `my.spam.py` Python expects to find a :file:`spam.py` file in" +" a folder named :file:`my` which is not the case. There is an `example " +"`_ of how the dot " +"notation should be used in the Python docs." msgstr "" -"`my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` 이라는 이름의 " -"파일을 찾습니다. 이렇게 하면 안됩니다. 아래 글을 참조하세요. 파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한 `예시 " +"`my.spam.py` 의 경우, 파이썬은 :file:`my` 라는 이름의 폴더에서 :file:`spam.py` 이라는 이름의 파일을" +" 찾습니다. 이렇게 하면 안됩니다. 아래 글을 참조하세요. 파이썬 문서에서 점(.) 표시가 어떻게 사용되는지에 대한 `예시 " "`_ " #: ../../writing/structure.rst:400 msgid "" "If you like, you could name your module :file:`my_spam.py`, but even our " -"trusty friend the underscore, should not be seen that often in module " -"names. However, using other characters (spaces or hyphens) in module " -"names will prevent importing (- is the subtract operator). Try to keep " -"module names short so there is no need to separate words. And, most of " -"all, don't namespace with underscores; use submodules instead." +"trusty friend the underscore, should not be seen that often in module names." +" However, using other characters (spaces or hyphens) in module names will " +"prevent importing (- is the subtract operator). Try to keep module names " +"short so there is no need to separate words. And, most of all, don't " +"namespace with underscores; use submodules instead." msgstr "" #: ../../writing/structure.rst:413 -#, fuzzy msgid "" "Aside from some naming restrictions, nothing special is required for a " -"Python file to be a module. But you need to understand the import " -"mechanism in order to use this concept properly and avoid some issues." +"Python file to be a module. But you need to understand the import mechanism " +"in order to use this concept properly and avoid some issues." msgstr "" -"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없습니다. 하지만 모듈이라는 개념을 잘 사용하고" -" 문제를 발생시키지 않기 위해서는, 모듈을 불러오는 방법을 이해할 필요가 있습니다." +"몇 가지 이름 짓기 규칙 외에는 파이썬 모듈을 만들기 위해 달리 특별히 필요한 것은 없습니다. 하지만 모듈이라는 개념을 잘 사용하고 " +"문제를 발생시키지 않기 위해서는, 모듈을 불러오는 방법을 이해할 필요가 있습니다." #: ../../writing/structure.rst:417 -#, fuzzy msgid "" "Concretely, the ``import modu`` statement will look for the proper file, " -"which is :file:`modu.py` in the same directory as the caller, if it " -"exists. If it is not found, the Python interpreter will search for " -":file:`modu.py` in the \"path\" recursively and raise an ImportError " -"exception when it is not found." +"which is :file:`modu.py` in the same directory as the caller, if it exists." +" If it is not found, the Python interpreter will search for :file:`modu.py`" +" in the \"path\" recursively and raise an ImportError exception when it is " +"not found." msgstr "" "구체적으로 살펴봅시다. ``import modu`` 구문이 있으면 이는 호출자로서 같은 디렉토리 안에서 적절한 파일, 즉 " -":file:`modu.py` 라는 파일을 찾습니다. 만약 해당 파일이 발견되지 않는다면 파이썬 인터프리터는 " -":file:`modu.py` 파일을 \"path\" 에서 재귀적으로 찾습니다. 그래도 발견되지 않으면 ImportError " -"exception을 띄웁니다." +":file:`modu.py` 라는 파일을 찾습니다. 만약 해당 파일이 발견되지 않는다면 파이썬 인터프리터는 :file:`modu.py`" +" 파일을 \"path\" 에서 재귀적으로 찾습니다. 그래도 발견되지 않으면 ImportError exception을 띄웁니다." #: ../../writing/structure.rst:422 -#, fuzzy msgid "" "When :file:`modu.py` is found, the Python interpreter will execute the " -"module in an isolated scope. Any top-level statement in :file:`modu.py` " -"will be executed, including other imports if any. Function and class " -"definitions are stored in the module's dictionary." +"module in an isolated scope. Any top-level statement in :file:`modu.py` will" +" be executed, including other imports if any. Function and class definitions" +" are stored in the module's dictionary." msgstr "" -"일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행합니다. :file:`modu.py` " -"모듈 안의 모든 최상위 구문이 실행됩니다. 불러온 다른 모듈이 있다면 그것도 함께 실행됩니다. 함수와 클래스 정의는 모듈의 " -"디렉토리에 저장됩니다." +"일단 :file:`modu.py` 이 발견되면, 파이썬 인터프리터는 독립적으로 그 모듈을 실행합니다. :file:`modu.py` 모듈 " +"안의 모든 최상위 구문이 실행됩니다. 불러온 다른 모듈이 있다면 그것도 함께 실행됩니다. 함수와 클래스 정의는 모듈의 디렉토리에 " +"저장됩니다." #: ../../writing/structure.rst:427 msgid "" -"Then, the module's variables, functions, and classes will be available to" -" the caller through the module's namespace, a central concept in " -"programming that is particularly helpful and powerful in Python." +"Then, the module's variables, functions, and classes will be available to " +"the caller through the module's namespace, a central concept in programming " +"that is particularly helpful and powerful in Python." msgstr "" -"그런 다음에야 모듈의 변수와 함수, 그리고 클래스를 사용할 수 있게 됩니다. 여기서 호출자는 모듈의 " -"네임스페이스(namespace)를 통해 이것들을 사용합니다. 모듈의 네임스페이스(namespace)는 아주 유용하고 강력하게 " -"사용되는 파이썬 프로그래밍의 핵심 개념입니다. " +"그런 다음에야 모듈의 변수와 함수, 그리고 클래스를 사용할 수 있게 됩니다. 여기서 호출자는 모듈의 네임스페이스(namespace)를 " +"통해 이것들을 사용합니다. 모듈의 네임스페이스(namespace)는 아주 유용하고 강력하게 사용되는 파이썬 프로그래밍의 핵심 개념입니다." +" " #: ../../writing/structure.rst:431 msgid "" -"In many languages, an ``include file`` directive is used by the " -"preprocessor to take all code found in the file and 'copy' it into the " -"caller's code. It is different in Python: the included code is isolated " -"in a module namespace, which means that you generally don't have to worry" -" that the included code could have unwanted effects, e.g. override an " -"existing function with the same name." +"In many languages, an ``include file`` directive is used by the preprocessor" +" to take all code found in the file and 'copy' it into the caller's code. It" +" is different in Python: the included code is isolated in a module " +"namespace, which means that you generally don't have to worry that the " +"included code could have unwanted effects, e.g. override an existing " +"function with the same name." msgstr "" -"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와 " -"호출자에 '복사'해 넣는 명령어로 사용됩니다. 하지만 파이썬에서는 다릅니다. 모듈에 포함된 코드는 " -"네임스페이스(namespace)에서 독립적으로 실행됩니다. 이는 일반적으로 모듈에 포함된 코드가 오작동을 하는 경우가 없다는 " -"뜻입니다. " +"많은 언어에서 ``include file`` 지시문은 전처리장치(preprocessor)가 해당 파일의 모든 코드를 가져와 호출자에 " +"'복사'해 넣는 명령어로 사용됩니다. 하지만 파이썬에서는 다릅니다. 모듈에 포함된 코드는 네임스페이스(namespace)에서 독립적으로 " +"실행됩니다. 이는 일반적으로 모듈에 포함된 코드가 오작동을 하는 경우가 없다는 뜻입니다. " #: ../../writing/structure.rst:437 -#, fuzzy msgid "" "It is possible to simulate the more standard behavior by using a special " -"syntax of the import statement: ``from modu import *``. This is generally" -" considered bad practice. **Using** ``import *`` **makes the code harder " -"to read and makes dependencies less compartmentalized**." +"syntax of the import statement: ``from modu import *``. This is generally " +"considered bad practice. **Using** ``import *`` **makes the code harder to " +"read and makes dependencies less compartmentalized**." msgstr "" -"모듈을 불러오는 특별한 구문인 ``from modu import *`` 를 써서 파이썬이 어떻게 작동하는지 확인해봅시다. 일반적으로" -" 이러한 구문은 잘못된 습관입니다. **Using** ``import *`` ** 구문은 코드를 읽기 어렵게 만들고, 코드의 독립성" -" 여부를 판단하기 어렵게 합니다**." +"임포트 구문의 특수 문법인 ``from modu import *`` 를 사용하면 보다 표준적인 동작을 흉내낼 수 있습니다. 일반적으로 " +"이러한 구문은 잘못된 습관으로 여겨집니다. **``import *`` 를 사용하면** **코드를 읽기 어렵게 만들고, 의존성을 분리하기 " +"어렵게 합니다**." #: ../../writing/structure.rst:442 -#, fuzzy msgid "" -"Using ``from modu import func`` is a way to pinpoint the function you " -"want to import and put it in the local namespace. While much less harmful" -" than ``import *`` because it shows explicitly what is imported in the " -"local namespace, its only advantage over a simpler ``import modu`` is " -"that it will save a little typing." +"Using ``from modu import func`` is a way to pinpoint the function you want " +"to import and put it in the local namespace. While much less harmful than " +"``import *`` because it shows explicitly what is imported in the local " +"namespace, its only advantage over a simpler ``import modu`` is that it will" +" save a little typing." msgstr "" -"``from modu import func`` 구문은 모듈에서 딱 내가 원하는 함수만 불러와 전역 네임스페이스(global " -"namespace)에 넣어둘 수 있는 좋은 방법입니다. 뿐만 아니라 이 구문은 전역 네임스페이스(global namespace)에서" -" 무엇을 불러올지를 명확히 보여주기 때문에 ``import *`` 구문보다 덜 해롭습다. 단순히 ``import *`` 구문을 " -"사용하는 것은 단지 타이핑을 덜 한다는 이점 뿐입니다." +"``from modu import func`` 구문은 모듈에서 원하는 함수만 골라서 로컬 네임스페이스(local namespace)에 " +"넣는 방법입니다. 로컬 네임스페이스에 무엇이 임포트되는지 명시적으로 보여주기 때문에 ``import *`` 보다 훨씬 덜 해롭습니다. " +"다만 더 단순한 ``import modu`` 와 비교하면 타이핑이 조금 줄어든다는 이점이 있을 뿐입니다." #: ../../writing/structure.rst:448 msgid "**Very bad**" @@ -710,21 +683,19 @@ msgid "**Best**" msgstr "**Best**" #: ../../writing/structure.rst:473 -#, fuzzy msgid "" "As mentioned in the :ref:`code_style` section, readability is one of the " -"main features of Python. Readability means to avoid useless boilerplate " -"text and clutter; therefore some efforts are spent trying to achieve a " -"certain level of brevity. But terseness and obscurity are the limits " -"where brevity should stop. Being able to tell immediately where a class " -"or function comes from, as in the ``modu.func`` idiom, greatly improves " -"code readability and understandability in all but the simplest single " -"file projects." -msgstr "" -":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나입니다. 가독성이란 쓸데없이 긴 본문과" -" 잡동사니들을 피한다는 뜻입니다. 그러므로 어느 수준까지는 간결성을 얻고자 하는 노력이 필요합니다. 그러나 너무 간결한 나머지 " -"모호해서는 안됩니다. ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은 코드의 가독성과 " -"이해용이성을 크게 높여줍니다. 단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇습니다." +"main features of Python. Readability means to avoid useless boilerplate text" +" and clutter; therefore some efforts are spent trying to achieve a certain " +"level of brevity. But terseness and obscurity are the limits where brevity " +"should stop. Being able to tell immediately where a class or function comes " +"from, as in the ``modu.func`` idiom, greatly improves code readability and " +"understandability in all but the simplest single file projects." +msgstr "" +":ref:`code_style` 섹션에서 언급한 것처럼, 가독성은 파이썬의 주요 특징 중 하나입니다. 가독성이란 쓸데없이 긴 본문과 " +"잡동사니들을 피한다는 뜻입니다. 그러므로 어느 수준까지는 간결성을 얻고자 하는 노력이 필요합니다. 그러나 너무 간결한 나머지 모호해서는 " +"안됩니다. ``modu.func`` 처럼 클래스와 함수가 어디에서 왔는지 즉각 알려주는 구문은 코드의 가독성과 이해용이성을 크게 " +"높여줍니다. 단 하나의 파일만 있는 아주 간단한 프로젝트가 아닌 한 그렇습니다." #: ../../writing/structure.rst:484 msgid "Packages" @@ -732,8 +703,8 @@ msgstr "패키지" #: ../../writing/structure.rst:486 msgid "" -"Python provides a very straightforward packaging system, which is simply " -"an extension of the module mechanism to a directory." +"Python provides a very straightforward packaging system, which is simply an " +"extension of the module mechanism to a directory." msgstr "파이썬은 아주 간단한 패키지 만들기 시스템을 제공합니다. 이 시스템은 단순히 파이썬 모듈 구조를 디렉토리로 확장한 것입니다." #: ../../writing/structure.rst:489 @@ -744,144 +715,136 @@ msgid "" ":file:`__init__.py` file, which is used to gather all package-wide " "definitions." msgstr "" -":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식됩니다. 패키지의 여러 다른 모듈들은 일반적인 " -"모듈과 비슷한 방법으로 불러와집니다. 그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 " -"특별합니다.이 파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰입니다." +":file:`__init__.py` 가 있는 모든 디렉토리는 파이썬 패키지로 인식됩니다. 패키지의 여러 다른 모듈들은 일반적인 모듈과 " +"비슷한 방법으로 불러와집니다. 그러나 패키지는 일반 모듈과는 달리 :file:`__init__.py` 가 있다는 점이 특별합니다.이 " +"파일은 패키지 전체의 모든 정의를 모아두는 용도로 쓰입니다." #: ../../writing/structure.rst:494 msgid "" -"A file :file:`modu.py` in the directory :file:`pack/` is imported with " -"the statement ``import pack.modu``. This statement will look for " -":file:`__init__.py` file in :file:`pack` and execute all of its top-level" -" statements. Then it will look for a file named :file:`pack/modu.py` and " +"A file :file:`modu.py` in the directory :file:`pack/` is imported with the " +"statement ``import pack.modu``. This statement will look for " +":file:`__init__.py` file in :file:`pack` and execute all of its top-level " +"statements. Then it will look for a file named :file:`pack/modu.py` and " "execute all of its top-level statements. After these operations, any " -"variable, function, or class defined in :file:`modu.py` is available in " -"the pack.modu namespace." +"variable, function, or class defined in :file:`modu.py` is available in the " +"pack.modu namespace." msgstr "" #: ../../writing/structure.rst:502 -#, fuzzy msgid "" -"A commonly seen issue is adding too much code to :file:`__init__.py` " -"files. When the project complexity grows, there may be sub-packages and " -"sub-sub-packages in a deep directory structure. In this case, importing a" -" single item from a sub-sub-package will require executing all " -":file:`__init__.py` files met while traversing the tree." +"A commonly seen issue is adding too much code to :file:`__init__.py` files. " +"When the project complexity grows, there may be sub-packages and sub-sub-" +"packages in a deep directory structure. In this case, importing a single " +"item from a sub-sub-package will require executing all :file:`__init__.py` " +"files met while traversing the tree." msgstr "" -"흔히 보는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우입니다. 프로젝트가 복잡해질수록 디렉토리 " -"구조 깊숙히 서브-패키지와 서브-서브-패키지가 있을 수 있습니다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 불러오려고" -" 했더니 패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 실행하게 될 때가 있습니다." +"흔히 보는 문제는 :file:`__init__.py` 파일에 너무 많은 코드를 붙이는 경우입니다. 프로젝트가 복잡해질수록 디렉토리 구조 " +"깊숙히 서브-패키지와 서브-서브-패키지가 있을 수 있습니다. 이런 경우에는 서브-서브-패키지 안에 있는 단 한 줄을 불러오려고 했더니 " +"패키지 디렉토리를 가로지르며 만나게 되는 모든 :file:`__init__.py` 파일을 실행하게 될 때가 있습니다." #: ../../writing/structure.rst:508 -#, fuzzy msgid "" -"Leaving an :file:`__init__.py` file empty is considered normal and even " -"good practice, if the package's modules and sub-packages do not need to " -"share any code." +"Leaving an :file:`__init__.py` file empty is considered normal and even good" +" practice, if the package's modules and sub-packages do not need to share " +"any code." msgstr "" -"따라서 패키지의 모듈과 서브-패키지에서 코드를 서로 공유할 필요가 없다면 :file:`__init__.py` 은 빈 파일로 " -"남겨두는게 일반적일 뿐만 아니라 좋은 습관입니다." +"따라서 패키지의 모듈과 서브-패키지에서 코드를 서로 공유할 필요가 없다면 :file:`__init__.py` 은 빈 파일로 남겨두는게 " +"일반적일 뿐만 아니라 좋은 습관입니다." #: ../../writing/structure.rst:512 msgid "" "Lastly, a convenient syntax is available for importing deeply nested " -"packages: ``import very.deep.module as mod``. This allows you to use " -"`mod` in place of the verbose repetition of ``very.deep.module``." +"packages: ``import very.deep.module as mod``. This allows you to use `mod` " +"in place of the verbose repetition of ``very.deep.module``." msgstr "" -"마지막으로 패키지 안쪽 깊숙히를 불러올 수 있는 편리한 구문이 있습니다. ``import very.deep.module as " -"mod`` 입니다. 이 구문은 ``very.deep.module``같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를" -" 사용할 수 있게 해줍니다. " +"마지막으로 패키지 안쪽 깊숙히를 불러올 수 있는 편리한 구문이 있습니다. ``import very.deep.module as mod``" +" 입니다. 이 구문은 ``very.deep.module``같은 장황한 구문을 반복하는 대신에 `mod` 만으로 패키지를 사용할 수 " +"있게 해줍니다. " #: ../../writing/structure.rst:519 msgid "Object-oriented programming" msgstr "객체지향 프로그래밍" #: ../../writing/structure.rst:521 -#, fuzzy msgid "" -"Python is sometimes described as an object-oriented programming language." -" This can be somewhat misleading and requires further clarifications." +"Python is sometimes described as an object-oriented programming language. " +"This can be somewhat misleading and requires further clarifications." msgstr "파이썬은 종종 객체지향 프로그래밍 언어로 묘사됩니다. 이는 다소 오해의 여지가 있기에 명확히 할 필요가 있습니다." #: ../../writing/structure.rst:524 -#, fuzzy msgid "" -"In Python, everything is an object, and can be handled as such. This is " -"what is meant when we say, for example, that functions are first-class " -"objects. Functions, classes, strings, and even types are objects in " -"Python: like any object, they have a type, they can be passed as function" -" arguments, and they may have methods and properties. In this " -"understanding, Python can be considered as an object-oriented language." +"In Python, everything is an object, and can be handled as such. This is what" +" is meant when we say, for example, that functions are first-class objects. " +"Functions, classes, strings, and even types are objects in Python: like any " +"object, they have a type, they can be passed as function arguments, and they" +" may have methods and properties. In this understanding, Python can be " +"considered as an object-oriented language." msgstr "" -"파이썬에서 모든 것은 객체입니다. 그리고 객체처럼 다룰 수 있습니다. 이 말인즉 함수는 일급 객체라고 말하는 것과 같은 의미입니다." -" 클래스, 문자열, 심지어 타입도 파이썬에서는 객체입니다. 다른 객체처럼 파이썬의 객체도 타입이 있고 함수 인자값을 받을 수 " -"있습니다. 메소드와 속성을 가질 수도 있습니다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것입니다. " +"파이썬에서 모든 것은 객체입니다. 그리고 객체처럼 다룰 수 있습니다. 이 말인즉 함수는 일급 객체라고 말하는 것과 같은 의미입니다. " +"함수, 클래스, 문자열, 심지어 타입까지도 파이썬에서는 객체입니다. 다른 객체와 마찬가지로 타입을 가지며, 함수 인자로 전달될 수 있고," +" 메소드와 속성을 가질 수도 있습니다. 이러한 점을 고려하여 파이썬을 객체지향 언어라고 하는 것입니다." #: ../../writing/structure.rst:531 -#, fuzzy msgid "" -"However, unlike Java, Python does not impose object-oriented programming " -"as the main programming paradigm. It is perfectly viable for a Python " -"project to not be object-oriented, i.e. to use no or very few class " -"definitions, class inheritance, or any other mechanisms that are specific" -" to object-oriented programming languages." +"However, unlike Java, Python does not impose object-oriented programming as " +"the main programming paradigm. It is perfectly viable for a Python project " +"to not be object-oriented, i.e. to use no or very few class definitions, " +"class inheritance, or any other mechanisms that are specific to object-" +"oriented programming languages." msgstr "" -"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 있지 않습니다. 객체지향으로 만들지 않은 파이썬" -" 프로젝트도 완벽하게 실행 가능합니다. 즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있습니다. 클래스 상속이나 " -"객체지향 프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지입니다." +"하지만 자바와는 달리 파이썬은 객체지향 프로그래밍을 프로그래밍 패러다임으로 도입하고 있지 않습니다. 객체지향으로 만들지 않은 파이썬 " +"프로젝트도 완벽하게 실행 가능합니다. 즉 클래스를 정의하지 않거나 거의 정의하지 않아도 사용할 수 있습니다. 클래스 상속이나 객체지향 " +"프로그래밍의 다른 특징적인 방법을 사용하지 않아도 마찬가지입니다." #: ../../writing/structure.rst:537 -#, fuzzy msgid "" -"Moreover, as seen in the modules_ section, the way Python handles modules" -" and namespaces gives the developer a natural way to ensure the " -"encapsulation and separation of abstraction layers, both being the most " -"common reasons to use object-orientation. Therefore, Python programmers " -"have more latitude as to not use object-orientation, when it is not " -"required by the business model." +"Moreover, as seen in the modules_ section, the way Python handles modules " +"and namespaces gives the developer a natural way to ensure the encapsulation" +" and separation of abstraction layers, both being the most common reasons to" +" use object-orientation. Therefore, Python programmers have more latitude as" +" to not use object-orientation, when it is not required by the business " +"model." msgstr "" -"게다가 modules_ 섹션에서 볼 수 있듯이 파이썬이 모듈과 네임스페이스(namespace)를 다루는 방식은 개발자로 하여금 " -"자연스럽게 캡슐화와 추상 레이어의 분리를 가능하게 해줍니다. 캡슐화와 추상 레이어의 분리는 둘 다 객체지향을 사용하는 가장 일반적인" -" 이유입니다. 그러므로 파이썬 프로그래머는 비지니스 모델이 굳이 객체지향을 필요로 하지 않는다면 거기에 얽메이지 않아도 됩니다." +"게다가 modules_ 섹션에서 볼 수 있듯이 파이썬이 모듈과 네임스페이스(namespace)를 다루는 방식은 개발자로 하여금 자연스럽게" +" 캡슐화와 추상 레이어의 분리를 가능하게 해줍니다. 캡슐화와 추상 레이어의 분리는 둘 다 객체지향을 사용하는 가장 일반적인 이유입니다. " +"그러므로 파이썬 프로그래머는 비즈니스 모델이 굳이 객체지향을 필요로 하지 않는다면 거기에 얽매이지 않아도 됩니다." #: ../../writing/structure.rst:544 -#, fuzzy msgid "" "There are some reasons to avoid unnecessary object-orientation. Defining " "custom classes is useful when we want to glue some state and some " -"functionality together. The problem, as pointed out by the discussions " -"about functional programming, comes from the \"state\" part of the " -"equation." +"functionality together. The problem, as pointed out by the discussions about" +" functional programming, comes from the \"state\" part of the equation." msgstr "" -"불필요한 객체지향을 피해야 할 이유는 많습니다. 어떤 상태와 기능은 한데 모아두는 편이 더 유용할 때가 있습니다. 이럴 때는 사용자" -" 정의 클래스를 정의해서 쓰면 편리합니다. 문제는 함수형 프로그래밍의 문제점으로 지적되는 것처럼 \"상태\" 를 대입할 때 " -"발생합니다." +"불필요한 객체지향을 피해야 할 이유는 많습니다. 어떤 상태와 기능은 한데 모아두는 편이 더 유용할 때가 있습니다. 이럴 때는 사용자 정의" +" 클래스를 정의해서 쓰면 편리합니다. 문제는 함수형 프로그래밍의 문제점으로 지적되는 것처럼 \"상태\" 를 대입할 때 발생합니다." #: ../../writing/structure.rst:549 -#, fuzzy msgid "" "In some architectures, typically web applications, multiple instances of " -"Python processes are spawned as a response to external requests that " -"happen simultaneously. In this case, holding some state in instantiated " -"objects, which means keeping some static information about the world, is " -"prone to concurrency problems or race conditions. Sometimes, between the " +"Python processes are spawned as a response to external requests that happen " +"simultaneously. In this case, holding some state in instantiated objects, " +"which means keeping some static information about the world, is prone to " +"concurrency problems or race conditions. Sometimes, between the " "initialization of the state of an object (usually done with the " -"``__init__()`` method) and the actual use of the object state through one" -" of its methods, the world may have changed, and the retained state may " -"be outdated. For example, a request may load an item in memory and mark " -"it as read by a user. If another request requires the deletion of this " -"item at the same time, the deletion may actually occur after the first " -"process loaded the item, and then we have to mark a deleted object as " -"read." -msgstr "" -"어떤 아키텍쳐, 보통 웹 어플리케이션에서는 파이썬 프로세스에 복수의 인스턴스가 발생합니다. 동시에 발생하는 외부의 요청에 응답하기 " -"위해서입니다. 이런 경우에는 구문의 실행이 멈춰져 예정된 오브젝트가 됩니다. 즉 어떤 고정된 정보를 계속 잡고 있는 것입니다. " -"이때문에 동시성의 문제나 경합 상황이 발생하기 쉽습니다." +"``__init__()`` method) and the actual use of the object state through one of" +" its methods, the world may have changed, and the retained state may be " +"outdated. For example, a request may load an item in memory and mark it as " +"read by a user. If another request requires the deletion of this item at the" +" same time, the deletion may actually occur after the first process loaded " +"the item, and then we have to mark a deleted object as read." +msgstr "" +"어떤 아키텍쳐, 보통 웹 어플리케이션에서는 동시에 발생하는 외부 요청에 응답하기 위해 파이썬 프로세스의 인스턴스가 여러 개 생성됩니다. " +"이런 경우 인스턴스화된 객체에 상태를 보관하는 것, 즉 세계에 대한 정적인 정보를 유지하는 것은 동시성 문제나 경합 상황(race " +"condition)을 일으키기 쉽습니다. 객체 상태의 초기화(보통 ``__init__()`` 메소드로 이루어짐)와 메소드를 통해 그 " +"상태를 실제로 사용하는 시점 사이에 세계가 바뀔 수 있고, 보관해둔 상태가 시대에 뒤떨어진 것이 될 수 있습니다. 예를 들어 어떤 요청이" +" 아이템을 메모리에 로드해서 사용자가 읽음으로 표시한다고 합시다. 다른 요청이 동시에 이 아이템의 삭제를 요구하면, 첫 프로세스가 " +"아이템을 로드한 이후에 삭제가 실제로 일어날 수 있고, 결과적으로 이미 삭제된 객체를 읽음으로 표시하게 됩니다." #: ../../writing/structure.rst:561 msgid "" -"This and other issues led to the idea that using stateless functions is a" -" better programming paradigm." +"This and other issues led to the idea that using stateless functions is a " +"better programming paradigm." msgstr "" "이 문제 뿐만 아니라 다른 설명하지 않은 문제들이 발생하기도 합니다. 이 때문에 상태없는 함수가 더 나은 프로그래밍 패러다임으로 " "생각되기도 한다." @@ -891,22 +854,20 @@ msgid "" "Another way to say the same thing is to suggest using functions and " "procedures with as few implicit contexts and side-effects as possible. A " "function's implicit context is made up of any of the global variables or " -"items in the persistence layer that are accessed from within the " -"function. Side-effects are the changes that a function makes to its " -"implicit context. If a function saves or deletes data in a global " -"variable or in the persistence layer, it is said to have a side-effect." +"items in the persistence layer that are accessed from within the function. " +"Side-effects are the changes that a function makes to its implicit context. " +"If a function saves or deletes data in a global variable or in the " +"persistence layer, it is said to have a side-effect." msgstr "" -"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와 프로시저를 사용하는 것입니다. 전역 변수를" -" 아무렇게나 사용하거나, 함수 내부에 있는 퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해집니다. 여기서 부작용이란 함수가" -" 함수를 둘러싼 맥락을 바꿔버리는 변화를 의미합니다. 만약 함수가 퍼시스턴스 레이어에 있는 데이터나 전역 변수에 있는 데이터를 " -"날려버리거나 저장해 버린다면, 이런 것을 부작용이라 부릅니다. " +"위 문제를 피하기 위한 또다른 방법은 가능한 한 모호한 문맥과 부작용을 최소화 한 함수와 프로시저를 사용하는 것입니다. 전역 변수를 " +"아무렇게나 사용하거나, 함수 내부에 있는 퍼시스턴스 레이어의 항목을 남용하면 함수의 의미가 모호해집니다. 여기서 부작용이란 함수가 함수를" +" 둘러싼 맥락을 바꿔버리는 변화를 의미합니다. 만약 함수가 퍼시스턴스 레이어에 있는 데이터나 전역 변수에 있는 데이터를 날려버리거나 " +"저장해 버린다면, 이런 것을 부작용이라 부릅니다. " #: ../../writing/structure.rst:572 -#, fuzzy msgid "" -"Carefully isolating functions with context and side-effects from " -"functions with logic (called pure functions) allows the following " -"benefits:" +"Carefully isolating functions with context and side-effects from functions " +"with logic (called pure functions) allows the following benefits:" msgstr "함수가 잘 분리되어 있고 부작용도 없는 순수 함수라면 다음과 같은 장점이 있습니다." #: ../../writing/structure.rst:575 @@ -922,10 +883,9 @@ msgid "" msgstr "순수 함수는 수정하거나 최적화 작업이 필요할 때 쉽게 수정 및 변경할 수 있습니다." #: ../../writing/structure.rst:581 -#, fuzzy msgid "" -"Pure functions are easier to test with unit tests: There is less need for" -" complex context setup and data cleaning afterwards." +"Pure functions are easier to test with unit tests: There is less need for " +"complex context setup and data cleaning afterwards." msgstr "순수 함수는 단위 테스트를 하기 쉽습니다. 즉, 복잡한 테스트 셋업 작업과 데이터 삭제 작업에 손이 덜 갑니다." #: ../../writing/structure.rst:584 @@ -934,23 +894,22 @@ msgstr "순수 함수는 다루기 쉽고, 기능을 더하기도 쉽고, 없애 #: ../../writing/structure.rst:586 msgid "" -"In summary, pure functions are more efficient building blocks than " -"classes and objects for some architectures because they have no context " -"or side-effects." +"In summary, pure functions are more efficient building blocks than classes " +"and objects for some architectures because they have no context or side-" +"effects." msgstr "" -"한마디로, 많은 아키텍처에서 순수한 함수는 가장 효율적인 건축 자재입니다. 클래스나 오브젝트보다 낫습니다. 순수한함수는 어떤 " -"컨텍스트나 부작용도 없기 때문입니다. " +"한마디로, 많은 아키텍처에서 순수한 함수는 가장 효율적인 건축 자재입니다. 클래스나 오브젝트보다 낫습니다. 순수한함수는 어떤 컨텍스트나 " +"부작용도 없기 때문입니다. " #: ../../writing/structure.rst:589 msgid "" -"Obviously, object-orientation is useful and even necessary in many cases," -" for example when developing graphical desktop applications or games, " -"where the things that are manipulated (windows, buttons, avatars, " -"vehicles) have a relatively long life of their own in the computer's " -"memory." +"Obviously, object-orientation is useful and even necessary in many cases, " +"for example when developing graphical desktop applications or games, where " +"the things that are manipulated (windows, buttons, avatars, vehicles) have a" +" relatively long life of their own in the computer's memory." msgstr "" -"분명히 객체지향은 유용합니다. 그리고 꼭 필요한 경우가 많습니다. 예를 들면 데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼," -" 아바타, 탈것이 있는 게임같은 경우에 그렇습니다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문입니다." +"분명히 객체지향은 유용합니다. 그리고 꼭 필요한 경우가 많습니다. 예를 들면 데스크톱 어플리케이션이라든가, 조작 가능한 창, 버튼, " +"아바타, 탈것이 있는 게임같은 경우에 그렇습니다. 이런 것들은 컴퓨터의 메모리에 비교적 오랫동안 남아있기 때문입니다." #: ../../writing/structure.rst:597 msgid "Decorators" @@ -959,34 +918,32 @@ msgstr "데코레이터" #: ../../writing/structure.rst:599 msgid "" "The Python language provides a simple yet powerful syntax called " -"'decorators'. A decorator is a function or a class that wraps (or " -"decorates) a function or a method. The 'decorated' function or method " -"will replace the original 'undecorated' function or method. Because " -"functions are first-class objects in Python, this can be done 'manually'," -" but using the @decorator syntax is clearer and thus preferred." +"'decorators'. A decorator is a function or a class that wraps (or decorates)" +" a function or a method. The 'decorated' function or method will replace the" +" original 'undecorated' function or method. Because functions are first-" +"class objects in Python, this can be done 'manually', but using the " +"@decorator syntax is clearer and thus preferred." msgstr "" -"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있습니다. 데코레이터는 함수나 메소드를 감싸는(데코레이트 하는) " -"함수나 클래스입니다. '데코레이트 된' 함수나 메소드는 원래의 '데코레이트 되지 않은' 함수나 메소드를 대체합니다. 함수는 " -"파이썬에서 일급 객체이기 때문입니다. 이 작업은 '수작업'으로도 가능하지만 @decorator 문법을 쓰면 깔끔하게 쓸 수 " -"있습니다. 그래서 많이들 씁니다." +"파이썬 언어에는 데코레이터라는 이름의 단순하지만 강력한 문법이 있습니다. 데코레이터는 함수나 메소드를 감싸는(데코레이트 하는) 함수나 " +"클래스입니다. '데코레이트 된' 함수나 메소드는 원래의 '데코레이트 되지 않은' 함수나 메소드를 대체합니다. 함수는 파이썬에서 일급 " +"객체이기 때문입니다. 이 작업은 '수작업'으로도 가능하지만 @decorator 문법을 쓰면 깔끔하게 쓸 수 있습니다. 그래서 많이들 " +"씁니다." #: ../../writing/structure.rst:622 -#, fuzzy msgid "" "This mechanism is useful for separating concerns and avoiding external " -"unrelated logic 'polluting' the core logic of the function or method. A " -"good example of a piece of functionality that is better handled with " -"decoration is `memoization " -"`__ or caching: you " -"want to store the results of an expensive function in a table and use " -"them directly instead of recomputing them when they have already been " -"computed. This is clearly not part of the function logic." -msgstr "" -"이 방법은 외부의 관련없는 로직이 함수나 메소드의 핵심 로직을 오염시키는 사태를 피할 수 있기 때문에 유용합니다. 데코레이션을 써서" -" 다루는 편이 좋은 기능으로 예를 들면 " +"unrelated logic 'polluting' the core logic of the function or method. A good" +" example of a piece of functionality that is better handled with decoration " +"is `memoization `__ or " +"caching: you want to store the results of an expensive function in a table " +"and use them directly instead of recomputing them when they have already " +"been computed. This is clearly not part of the function logic." +msgstr "" +"이 방법은 외부의 관련없는 로직이 함수나 메소드의 핵심 로직을 오염시키는 사태를 피할 수 있기 때문에 유용합니다. 데코레이션을 써서 " +"다루는 편이 좋은 기능으로 예를 들면 " "`메모이제이션`__ 과 캐싱을 들 수 " -"있습니다. 무거운 함수의 결과값을 테이블에 저장한 다음, 이미 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 " -"것입니다. 물론 이런 것은 함수 자체의 로직과는 별개입니다. " +"있습니다. 무거운 함수의 결과값을 테이블에 저장한 다음, 이미 처리가 끝난 그 결과값을 재처리 없이 바로 쓸 수 있도록 하는 것입니다. " +"물론 이런 것은 함수 자체의 로직과는 별개입니다. " #: ../../writing/structure.rst:633 msgid "Context Managers" @@ -995,30 +952,29 @@ msgstr "컨텍스트 관리자" #: ../../writing/structure.rst:635 msgid "" "A context manager is a Python object that provides extra contextual " -"information to an action. This extra information takes the form of " -"running a callable upon initiating the context using the ``with`` " -"statement, as well as running a callable upon completing all the code " -"inside the ``with`` block. The most well known example of using a context" -" manager is shown here, opening on a file:" +"information to an action. This extra information takes the form of running a" +" callable upon initiating the context using the ``with`` statement, as well " +"as running a callable upon completing all the code inside the ``with`` " +"block. The most well known example of using a context manager is shown here," +" opening on a file:" msgstr "" -"컨텍스트 관리자는 동작에 추가적인 컨텍스트 정보를 추가하는 파이썬 오브젝트입니다. 이 추가 정보는 ``with`` 구문으로 " -"컨텍스트를 새로 열면서 함수를 실행하는 형태로 만들어집니다. 마찬가지로 ``with`` 블럭 안의 모든 코드를 종료시킬 때도 함수를" -" 실행합니다. 컨텍스트 관리자를 사용하는 가장 유명한 예시는 이렇습니다. 파일을 열고: " +"컨텍스트 관리자는 동작에 추가적인 컨텍스트 정보를 추가하는 파이썬 오브젝트입니다. 이 추가 정보는 ``with`` 구문으로 컨텍스트를 " +"새로 열면서 함수를 실행하는 형태로 만들어집니다. 마찬가지로 ``with`` 블럭 안의 모든 코드를 종료시킬 때도 함수를 실행합니다. " +"컨텍스트 관리자를 사용하는 가장 유명한 예시는 이렇습니다. 파일을 열고: " #: ../../writing/structure.rst:646 msgid "" "Anyone familiar with this pattern knows that invoking ``open`` in this " -"fashion ensures that ``f``'s ``close`` method will be called at some " -"point. This reduces a developer's cognitive load and makes the code " -"easier to read." +"fashion ensures that ``f``'s ``close`` method will be called at some point. " +"This reduces a developer's cognitive load and makes the code easier to read." msgstr "" -"이런 식의 패턴에 익숙한 사람은 이런 방식으로 ``open`` 을 실행하면 ``f`` 의 ``close`` 메소드가 언젠가는 반드시" -" 실행됨을 잘 알 것입니다. " +"이런 식의 패턴에 익숙한 사람은 이런 방식으로 ``open`` 을 실행하면 ``f`` 의 ``close`` 메소드가 언젠가는 반드시 " +"실행됨을 잘 알 것입니다. " #: ../../writing/structure.rst:650 msgid "" -"There are two easy ways to implement this functionality yourself: using a" -" class or using a generator. Let's implement the above functionality " +"There are two easy ways to implement this functionality yourself: using a " +"class or using a generator. Let's implement the above functionality " "ourselves, starting with the class approach:" msgstr "" "이런 기능을 직접 구현하는 2가지 쉬운 방법이 있습니다: 클래스를 사용하거나, 생성자를 사용하는 것입니다. 먼저 클래스를 사용하는 " @@ -1026,85 +982,80 @@ msgstr "" #: ../../writing/structure.rst:669 msgid "" -"This is just a regular Python object with two extra methods that are used" -" by the ``with`` statement. CustomOpen is first instantiated and then its" -" ``__enter__`` method is called and whatever ``__enter__`` returns is " -"assigned to ``f`` in the ``as f`` part of the statement. When the " -"contents of the ``with`` block is finished executing, the ``__exit__`` " -"method is then called." +"This is just a regular Python object with two extra methods that are used by" +" the ``with`` statement. CustomOpen is first instantiated and then its " +"``__enter__`` method is called and whatever ``__enter__`` returns is " +"assigned to ``f`` in the ``as f`` part of the statement. When the contents " +"of the ``with`` block is finished executing, the ``__exit__`` method is then" +" called." msgstr "" "위 예시는 ``with`` 에서 사용될 2개의 추가 메소드가 있는 일반적인 파이썬 오브젝트입니다. CustomOpen 은 먼저 " -"인스턴스화되고, 그 다음에 ``__enter__`` 메소드가 호출됩니다. 그리고 ``__enter__`` 함수가 리턴하는 ``as" -" f`` 구문 안의 모든 결과값들이 ``f`` 에 할당됩니다. ``with`` 블럭 안의 구문들이 모두 수행된 후에는 " +"인스턴스화되고, 그 다음에 ``__enter__`` 메소드가 호출됩니다. 그리고 ``__enter__`` 함수가 리턴하는 ``as " +"f`` 구문 안의 모든 결과값들이 ``f`` 에 할당됩니다. ``with`` 블럭 안의 구문들이 모두 수행된 후에는 " "``__exit__`` 메소드가 호출됩니다. " #: ../../writing/structure.rst:675 -#, fuzzy msgid "" "And now the generator approach using Python's own `contextlib " "`_:" msgstr "" -"그러면 이번에는 파이썬의 `contextlib " -"`_ 를 써서 생성자로 위의 기능을 " -"구현해봅시다:" +"이번에는 파이썬의 `contextlib `_ " +"를 써서 제너레이터(generator)로 같은 기능을 구현해봅시다:" #: ../../writing/structure.rst:693 msgid "" -"This works in exactly the same way as the class example above, albeit " -"it's more terse. The ``custom_open`` function executes until it reaches " -"the ``yield`` statement. It then gives control back to the ``with`` " -"statement, which assigns whatever was ``yield``'ed to `f` in the ``as f``" -" portion. The ``finally`` clause ensures that ``close()`` is called " -"whether or not there was an exception inside the ``with``." +"This works in exactly the same way as the class example above, albeit it's " +"more terse. The ``custom_open`` function executes until it reaches the " +"``yield`` statement. It then gives control back to the ``with`` statement, " +"which assigns whatever was ``yield``'ed to `f` in the ``as f`` portion. The " +"``finally`` clause ensures that ``close()`` is called whether or not there " +"was an exception inside the ``with``." msgstr "" -"이렇게 해도 위의 클래스 예시와 똑같이 동작합니다. 물론 이 방법이 더 간결합니다. ``custom_open`` 함수는 " -"``yield`` 구문에 닿을 때까지 실행됩니다. 그 다음 ``with`` 구문에게 제어권을 넘깁니다. ``as f`` 안에서 어떤" -" ``yield`` 가 `f` 에 할당되든 상관없습니다. ``finally`` 명령은 ``with`` 안에서 예외현상이 발생하든 " -"말든 반드시 ``close()`` 를 실행합니다. " +"이렇게 해도 위의 클래스 예시와 똑같이 동작합니다. 물론 이 방법이 더 간결합니다. ``custom_open`` 함수는 ``yield``" +" 구문에 닿을 때까지 실행됩니다. 그 다음 ``with`` 구문에게 제어권을 넘깁니다. ``as f`` 안에서 어떤 ``yield`` 가" +" `f` 에 할당되든 상관없습니다. ``finally`` 명령은 ``with`` 안에서 예외현상이 발생하든 말든 반드시 " +"``close()`` 를 실행합니다. " #: ../../writing/structure.rst:700 msgid "" -"Since the two approaches appear the same, we should follow the Zen of " -"Python to decide when to use which. The class approach might be better if" -" there's a considerable amount of logic to encapsulate. The function " -"approach might be better for situations where we're dealing with a simple" -" action." +"Since the two approaches appear the same, we should follow the Zen of Python" +" to decide when to use which. The class approach might be better if there's " +"a considerable amount of logic to encapsulate. The function approach might " +"be better for situations where we're dealing with a simple action." msgstr "" "둘 중 어느 방법을 사용하든 결과는 마찬가지이기 때문에, 우리는 파이썬 선(禪)에 따라 어떤 때 어느 것을 쓸지 선택해야 합니다. " -"클래스를 쓰는 방법은 캡슐화해야하는 대량의 로직이 있을 때 좋습니다. 생성자를 쓰는 방법은 간단한 동작을 다룰 때 좋은 방법입니다." -" " +"클래스를 쓰는 방법은 캡슐화해야하는 대량의 로직이 있을 때 좋습니다. 생성자를 쓰는 방법은 간단한 동작을 다룰 때 좋은 방법입니다. " #: ../../writing/structure.rst:708 msgid "Dynamic typing" msgstr "동적 타이핑" #: ../../writing/structure.rst:710 -#, fuzzy msgid "" -"Python is dynamically typed, which means that variables do not have a " -"fixed type. In fact, in Python, variables are very different from what " -"they are in many other languages, specifically statically-typed " -"languages. Variables are not a segment of the computer's memory where " -"some value is written, they are 'tags' or 'names' pointing to objects. It" -" is therefore possible for the variable 'a' to be set to the value 1, " -"then the value 'a string', to a function." +"Python is dynamically typed, which means that variables do not have a fixed " +"type. In fact, in Python, variables are very different from what they are in" +" many other languages, specifically statically-typed languages. Variables " +"are not a segment of the computer's memory where some value is written, they" +" are 'tags' or 'names' pointing to objects. It is therefore possible for the" +" variable 'a' to be set to the value 1, then the value 'a string', to a " +"function." msgstr "" -"파이썬은 동적 타이핑이 되는 언어라고 불립니다. 이 말은 변수가 고정된 타입을 가지고 있지 않다는 뜻입니다. 사실 파이썬의 변수는 " -"다른 수많은 언어, 특히 정적 타입 언어의 변수와는 아주 다릅니다. 파이썬의 변수는 어떤 값이 쓰여지면 '태그'나 '이름'이 그 " -"객체를 가리키는 컴퓨터 메모리의 한 조각이 아닙니다. 그렇기 때문에 변수 'a'가 값 1을 가진 다음, 값 'a string'을 " -"가지고, 또 함수가 될 수도 있는 것입니다. " +"파이썬은 동적 타이핑이 되는 언어라고 불립니다. 이 말은 변수가 고정된 타입을 가지고 있지 않다는 뜻입니다. 사실 파이썬의 변수는 다른 " +"수많은 언어, 특히 정적 타입 언어의 변수와는 아주 다릅니다. 파이썬의 변수는 어떤 값이 쓰인 컴퓨터 메모리의 한 조각이 아니라, 객체를" +" 가리키는 '태그' 또는 '이름'입니다. 그렇기 때문에 변수 'a'가 값 1을 가졌다가, 'a string' 이라는 값을 가졌다가, 또 " +"함수가 될 수도 있는 것입니다." #: ../../writing/structure.rst:717 msgid "" "The dynamic typing of Python is often considered to be a weakness, and " -"indeed it can lead to complexities and hard-to-debug code. Something " -"named 'a' can be set to many different things, and the developer or the " -"maintainer needs to track this name in the code to make sure it has not " -"been set to a completely unrelated object." +"indeed it can lead to complexities and hard-to-debug code. Something named " +"'a' can be set to many different things, and the developer or the maintainer" +" needs to track this name in the code to make sure it has not been set to a " +"completely unrelated object." msgstr "" "동적 타이핑은 종종 파이썬의 약점으로 여겨지기도 합니다. 실제로 동적 타이핑은 코드를 복잡하게 만들고 디버깅하기 어렵게 만듭니다. " -"'a'라는 이름이 너무나 많은 것이 될 수 있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 무관한 " -"객체인지를 확인하기 위해 코드 전체를 뒤져야 합니다." +"'a'라는 이름이 너무나 많은 것이 될 수 있기 때문에 개발자나 유지보수 담당자는 이 이름이 어떻게 쓰이는지, 문제와 무관한 객체인지를 " +"확인하기 위해 코드 전체를 뒤져야 합니다." #: ../../writing/structure.rst:723 msgid "Some guidelines help to avoid this issue:" @@ -1124,41 +1075,39 @@ msgid "**Good**" msgstr "**좋은 예**" #: ../../writing/structure.rst:745 -#, fuzzy msgid "" -"Using short functions or methods helps to reduce the risk of using the " -"same name for two unrelated things." +"Using short functions or methods helps to reduce the risk of using the same " +"name for two unrelated things." msgstr "메소드나 함수를 짧게 쓰는 방법은 같은 이름을 상관없는 것들에게 붙이는 위험을 줄일 수 있습니다." #: ../../writing/structure.rst:748 msgid "" -"It is better to use different names even for things that are related, " -"when they have a different type:" +"It is better to use different names even for things that are related, when " +"they have a different type:" msgstr "관련된 것이라고 해도 다른 타입을 가진다면 다른 이름을 붙이는 편이 좋습니다. " #: ../../writing/structure.rst:759 msgid "" -"There is no efficiency gain when reusing names: the assignments will have" -" to create new objects anyway. However, when the complexity grows and " -"each assignment is separated by other lines of code, including 'if' " -"branches and loops, it becomes harder to ascertain what a given " -"variable's type is." +"There is no efficiency gain when reusing names: the assignments will have to" +" create new objects anyway. However, when the complexity grows and each " +"assignment is separated by other lines of code, including 'if' branches and " +"loops, it becomes harder to ascertain what a given variable's type is." msgstr "" -"한 번 쓴 이름을 재활용 하는 것은 비효율적입니다. 대입문은 반드시 새로운 객체를 만들어야 합니다. 하지만 너무 복잡해지고, " -"'if' 분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 변수가 어떤 타입인지 확인하기 어려워집니다. " +"한 번 쓴 이름을 재활용 하는 것은 비효율적입니다. 대입문은 반드시 새로운 객체를 만들어야 합니다. 하지만 너무 복잡해지고, 'if' " +"분기와 반복절이 들어가서 코드가 여러 줄로 쪼개지면 변수가 어떤 타입인지 확인하기 어려워집니다. " #: ../../writing/structure.rst:765 msgid "" "Some coding practices, like functional programming, recommend never " "reassigning a variable. In Java this is done with the `final` keyword. " "Python does not have a `final` keyword and it would be against its " -"philosophy anyway. However, it may be a good discipline to avoid " -"assigning to a variable more than once, and it helps in grasping the " -"concept of mutable and immutable types." +"philosophy anyway. However, it may be a good discipline to avoid assigning " +"to a variable more than once, and it helps in grasping the concept of " +"mutable and immutable types." msgstr "" -"함수형 프로그래밍의 코딩 습관처럼 재할당이 불가능한 변수의 사용을 추천합니다. 자바에서는 `final` 키워드로 가능합니다. " -"파이썬은 `final` 키워드가 없고, 이러한 방법은 파이썬의 철학에 반하는 일입니다. 하지만 변수를 한 번 이상 재할당하지 않는 " -"것은 좋은 습관이며, 가변 타입과 불변 타입을 이해하는데 도움이 될 것입니다." +"함수형 프로그래밍의 코딩 습관처럼 재할당이 불가능한 변수의 사용을 추천합니다. 자바에서는 `final` 키워드로 가능합니다. 파이썬은 " +"`final` 키워드가 없고, 이러한 방법은 파이썬의 철학에 반하는 일입니다. 하지만 변수를 한 번 이상 재할당하지 않는 것은 좋은 " +"습관이며, 가변 타입과 불변 타입을 이해하는데 도움이 될 것입니다." #: ../../writing/structure.rst:774 msgid "Mutable and immutable types" @@ -1181,18 +1130,17 @@ msgstr "" #: ../../writing/structure.rst:783 msgid "" -"Immutable types provide no method for changing their content. For " -"instance, the variable x set to the integer 6 has no \"increment\" " -"method. If you want to compute x + 1, you have to create another integer " -"and give it a name." +"Immutable types provide no method for changing their content. For instance, " +"the variable x set to the integer 6 has no \"increment\" method. If you want" +" to compute x + 1, you have to create another integer and give it a name." msgstr "" "불변 타입은 자체적으로 내용을 바꾸는 메소드를 제공하지 않습니다. 예를 들면 integer 6으로 설정된 변수 x에는 " "\"increment\" 가 없습니다. 만약 x에 1을 더하고 싶다면 다른 integer 변수를 만들어서 이름을 부여해야 합니다. " #: ../../writing/structure.rst:796 msgid "" -"One consequence of this difference in behavior is that mutable types are " -"not \"stable\", and therefore cannot be used as dictionary keys." +"One consequence of this difference in behavior is that mutable types are not" +" \"stable\", and therefore cannot be used as dictionary keys." msgstr "이러한 차이 때문에 가변 타입은 \"안정적\" 이지 못해서 딕셔너리 키로 쓸 수 없습니다." #: ../../writing/structure.rst:800 @@ -1201,54 +1149,51 @@ msgid "" "immutable types for things that are fixed in nature helps to clarify the " "intent of the code." msgstr "" -"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, 원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 코드의 " -"목적을 명확히 하는데 도움이 됩니다. " +"원래부터 가변적인 것에는 가변 타입을 적절히 사용하고, 원래부터 변하지 않는 것에는 불변 타입을 적절히 사용하는 방법이 코드의 목적을 " +"명확히 하는데 도움이 됩니다. " #: ../../writing/structure.rst:804 msgid "" -"For example, the immutable equivalent of a list is the tuple, created " -"with ``(1, 2)``. This tuple is a pair that cannot be changed in-place, " -"and can be used as a key for a dictionary." +"For example, the immutable equivalent of a list is the tuple, created with " +"``(1, 2)``. This tuple is a pair that cannot be changed in-place, and can be" +" used as a key for a dictionary." msgstr "" -"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능합니다. 튜를은 ``(1, 2)`` 로 만들 수 있습니다. 튜플은 내부적으로 " -"변경이 불가능하기 때문에 딕셔너리의 키로 사용할 수 있습니다. " +"예를 들면, 튜플은 리스트와 비슷하지만 변경이 불가능합니다. 튜를은 ``(1, 2)`` 로 만들 수 있습니다. 튜플은 내부적으로 변경이 " +"불가능하기 때문에 딕셔너리의 키로 사용할 수 있습니다. " #: ../../writing/structure.rst:808 msgid "" -"One peculiarity of Python that can surprise beginners is that strings are" -" immutable. This means that when constructing a string from its parts, " -"appending each part to the string is inefficient because the entirety of " -"the string is copied on each append. Instead, it is much more efficient " -"to accumulate the parts in a list, which is mutable, and then glue " -"(``join``) the parts together when the full string is needed. List " -"comprehensions are usually the fastest and most idiomatic way to do this." +"One peculiarity of Python that can surprise beginners is that strings are " +"immutable. This means that when constructing a string from its parts, " +"appending each part to the string is inefficient because the entirety of the" +" string is copied on each append. Instead, it is much more efficient to " +"accumulate the parts in a list, which is mutable, and then glue (``join``) " +"the parts together when the full string is needed. List comprehensions are " +"usually the fastest and most idiomatic way to do this." msgstr "" #: ../../writing/structure.rst:845 -#, fuzzy msgid "" "One final thing to mention about strings is that using ``join()`` is not " "always best. In the instances where you are creating a new string from a " -"pre-determined number of strings, using the addition operator is actually" -" faster. But in cases like above or in cases where you are adding to an " +"pre-determined number of strings, using the addition operator is actually " +"faster. But in cases like above or in cases where you are adding to an " "existing string, using ``join()`` should be your preferred method." msgstr "" -"문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것입니다. 문자열이 몇 개 있을지 미리 " -"정해져 있는 상태에서 새로운 문자열을 만들 때는 더하기 연산자를 쓰는 편이 실제로 더 빠릅니다. 하지만 문자열이 몇 개 있을지 " -"정해져 있지 않거나, 이미 만들어진 문자열에 추가로 문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것입니다. " +"문자열에 대해 마지막으로 말할 것은 ``join()`` 을 쓰는게 항상 좋지는 않다는 것입니다. 문자열이 몇 개 있을지 미리 정해져 " +"있는 상태에서 새로운 문자열을 만들 때는 더하기 연산자를 쓰는 편이 실제로 더 빠릅니다. 하지만 문자열이 몇 개 있을지 정해져 있지 " +"않거나, 이미 만들어진 문자열에 추가로 문자열을 더할 때는 ``join()`` 을 쓰는 편을 선호하게 될 것입니다. " #: ../../writing/structure.rst:861 -#, fuzzy msgid "" -"You can also use the :ref:`% ` formatting " -"operator to concatenate a pre-determined number of strings besides " -":py:meth:`str.join` and ``+``. However, :pep:`3101` discourages the usage" -" of the ``%`` operator in favor of the :py:meth:`str.format` method." +"You can also use the :ref:`% ` formatting operator" +" to concatenate a pre-determined number of strings besides " +":py:meth:`str.join` and ``+``. However, :pep:`3101` discourages the usage of" +" the ``%`` operator in favor of the :py:meth:`str.format` method." msgstr "" -":py:meth:`str.join` 과 ``+`` 외에도 포맷 연산자 :ref:`% ` 를 써서 미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있습니다. 하지만 :pep:`3101` 에 " -"따르면 ``%`` 연산자는 사용하지 말 것을 권장하고 있으며 :py:meth:`str.format` 를 대신 쓸 것을 권장하고 " -"있습니다. " +":py:meth:`str.join` 과 ``+`` 외에도 포맷 연산자 :ref:`% ` 를" +" 써서 미리 정해진 숫자의 문자열에 붙이는 방법을 쓸 수도 있습니다. 하지만 :pep:`3101` 에 따르면 ``%`` 연산자는 " +"사용하지 말 것을 권장하고 있으며 :py:meth:`str.format` 를 대신 쓸 것을 권장하고 있습니다. " #: ../../writing/structure.rst:878 msgid "Vendorizing Dependencies" @@ -1263,89 +1208,57 @@ msgid "Further Reading" msgstr "더 알아보기" #: ../../writing/structure.rst:891 -#, fuzzy msgid "http://docs.python.org/3/library/" -msgstr "http://docs.python.org/2/library/" +msgstr "http://docs.python.org/3/library/" #: ../../writing/structure.rst:892 -#, fuzzy msgid "https://diveintopython3.net/" -msgstr "http://www.diveintopython.net/toc/index.html" +msgstr "https://diveintopython3.net/" #~ msgid "" -#~ "**tl;dr**: This is what `Kenneth Reitz" -#~ " `_ recommends." +#~ "**tl;dr**: This is what `Kenneth Reitz `_ " +#~ "recommends." #~ msgstr "3줄 요약 필수(tl;dr): `Kenneth Reitz `_ 의 말입니다. " #~ msgid "" -#~ "I highly recommend the latter. Requiring" -#~ " a developer to run `setup.py " -#~ "`__ develop to test an " -#~ "actively changing codebase also requires " -#~ "them to have an isolated environment " -#~ "setup for each instance of the " -#~ "codebase." +#~ "I highly recommend the latter. Requiring a developer to run `setup.py " +#~ "`__ develop to test an actively changing codebase also " +#~ "requires them to have an isolated environment setup for each instance of the" +#~ " codebase." #~ msgstr "" -#~ "후자를 강력 추천합니다. 계속 변경되고 있는 코드를 " -#~ "테스트하기 위해 `setup.py `__ 를 " -#~ "실행해야만 한다면, 변경 중인 코드의 각 시점마다 " -#~ "독립된 환경 설정을 해야만 합니다. " +#~ "후자를 강력 추천합니다. 계속 변경되고 있는 코드를 테스트하기 위해 `setup.py `__ 를 실행해야만" +#~ " 한다면, 변경 중인 코드의 각 시점마다 독립된 환경 설정을 해야만 합니다. " #~ msgid "" -#~ "If you'd like you could name your" -#~ " module :file:`my_spam.py`, but even our" -#~ " friend the underscore should not be" -#~ " seen often in module names." +#~ "If you'd like you could name your module :file:`my_spam.py`, but even our " +#~ "friend the underscore should not be seen often in module names." #~ msgstr "" -#~ ":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 " -#~ "가능합니다. 하지만 우리의 친구 밑줄(_)은 모듈 이름으로는" -#~ " 자주 쓰이지 않습니다." +#~ ":file:`my_spam.py` 처럼 모듈 이름을 짓는 것도 가능합니다. 하지만 우리의 친구 밑줄(_)은 모듈 이름으로는 자주 쓰이지 " +#~ "않습니다." #~ msgid "" -#~ "A file :file:`modu.py` in the directory" -#~ " :file:`pack/` is imported with the " -#~ "statement ``import pack.modu``. This statement" -#~ " will look for an :file:`__init__.py` " -#~ "file in :file:`pack`, execute all of " -#~ "its top-level statements. Then it " -#~ "will look for a file named " -#~ ":file:`pack/modu.py` and execute all of " -#~ "its top-level statements. After these" -#~ " operations, any variable, function, or " -#~ "class defined in :file:`modu.py` is " -#~ "available in the pack.modu namespace." +#~ "A file :file:`modu.py` in the directory :file:`pack/` is imported with the " +#~ "statement ``import pack.modu``. This statement will look for an " +#~ ":file:`__init__.py` file in :file:`pack`, execute all of its top-level " +#~ "statements. Then it will look for a file named :file:`pack/modu.py` and " +#~ "execute all of its top-level statements. After these operations, any " +#~ "variable, function, or class defined in :file:`modu.py` is available in the " +#~ "pack.modu namespace." #~ msgstr "" -#~ ":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 " -#~ "``import pack.modu`` 구문으로 불러와집니다. 이 구문은" -#~ " :file:`pack` 에서 :file:`__init__.py` 파일을 " -#~ "찾습니다. 그리고 해당 패키지의 모든 상위 구문을 " -#~ "실행합니다. 이 작업 후에 :file:`modu.py` 파일에 " -#~ "정의된 모든 변수나 함수, 클래스를 pack.modu " +#~ ":file:`pack/` 디렉토리의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로 불러와집니다. " +#~ "이 구문은 :file:`pack` 에서 :file:`__init__.py` 파일을 찾습니다. 그리고 해당 패키지의 모든 상위 구문을 " +#~ "실행합니다. 이 작업 후에 :file:`modu.py` 파일에 정의된 모든 변수나 함수, 클래스를 pack.modu " #~ "네임스페이스(namespace)에서 쓸 수 있습니다." #~ msgid "" -#~ "One peculiarity of Python that can " -#~ "surprise beginners is that strings are" -#~ " immutable. This means that when " -#~ "constructing a string from its parts," -#~ " it is much more efficient to " -#~ "accumulate the parts in a list, " -#~ "which is mutable, and then glue " -#~ "('join') the parts together when the " -#~ "full string is needed. One thing " -#~ "to notice, however, is that list " -#~ "comprehensions are better and faster " -#~ "than constructing a list in a loop" -#~ " with calls to ``append()``." +#~ "One peculiarity of Python that can surprise beginners is that strings are " +#~ "immutable. This means that when constructing a string from its parts, it is " +#~ "much more efficient to accumulate the parts in a list, which is mutable, and" +#~ " then glue ('join') the parts together when the full string is needed. One " +#~ "thing to notice, however, is that list comprehensions are better and faster " +#~ "than constructing a list in a loop with calls to ``append()``." #~ msgstr "" -#~ "초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 " -#~ "변경 불가능하다는 점입니다. 이는 문자열의 일부를 다시 " -#~ "만들고 싶을 때, 애시당초 리스트로 만들어서 그 " -#~ "일부를 변경하는 편이 효율적이라는 뜻입니다. 리스트는 변경" -#~ " 가능하고, 전체 문자열이 필요하면 ('join')을 사용하여" -#~ " 한데 이어 붙일 수 있기 때문입니다. 하지만 " -#~ "한가지 알아둬야 할 점은 반복문에서 ``append()`` " -#~ "메소드를 호출해 리스트를 만드는 것보다 리스트 " -#~ "컴프리헨션(list comprehension)을 쓰는 편이 더 좋고" -#~ " 빠르다는 것입니다." - +#~ "초보자가 깜짝 놀랄만한 파이썬의 특이한 점은 문자열이 변경 불가능하다는 점입니다. 이는 문자열의 일부를 다시 만들고 싶을 때, 애시당초 " +#~ "리스트로 만들어서 그 일부를 변경하는 편이 효율적이라는 뜻입니다. 리스트는 변경 가능하고, 전체 문자열이 필요하면 ('join')을 " +#~ "사용하여 한데 이어 붙일 수 있기 때문입니다. 하지만 한가지 알아둬야 할 점은 반복문에서 ``append()`` 메소드를 호출해 리스트를" +#~ " 만드는 것보다 리스트 컴프리헨션(list comprehension)을 쓰는 편이 더 좋고 빠르다는 것입니다." diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.mo b/docs/locale/ko/LC_MESSAGES/writing/tests.mo index bc0383352a6cc336b88083612ff60b78e4205f20..59f940f95ad4a6f5a10c24f0c09bddc21f242fcb 100644 GIT binary patch delta 2530 zcmd6mU2GIp6vqz*1T82KMN1K{g$UMm3o6P-X{rxmF+~EAKrpe>-D!7ZcV?NHrEG$3 zQ?{gRTPWEswAx);+#i!o~SLH~EQUp)BkCY#@! zd(S=R-2XYZDLAq(d}G0kIN?`>|6=@GrwMEFH)lH0X_#}tL2w9s3{+f4>%vZ0xkougXh41K%}5^^N4-`FN3$iB%Eg= zKOIp(SA_~_&Mww=*uneeaQ0+SdZ%-2G4?j zfG?vT$tgoh;soH(vLuvF4)(>pTYf45QR5jqjCk&<6tMa8XFhE zuVDZAB>D|r%ExWM{peE>_E#1VZG&A=NQ4+P074}C34{y%3XXzHAkRJEy^yOI=jMU= zVEM|-`o2}r{~9U}uOjLOw>(Sq4G#SN90mrCm!8i^e`ifb`lV|#(r*Wa^asIR;2>BE z&R<8Qfm=Z#{YB6jI`DPaS3x0t!FnPw^()t-=XLnFj0GWm85$jXVe!KBNR~1?b}f5D zc%y8ZidxNrhU{Uc#%grMu}#@<=+-YU3l(HS_+`_pd3G|d>^6hCoc@09P}ZyEntL~D zFqmIbLrgQhvd(IxkbzoEFRSq?Zm-D5+>$DauTrXU)X4zL)HU49G+3pKdYag*OW2c# z9oIleEV?wk`tBoCVQTv(ePR4(hL}I6YPo0@(yLQCCbNpMoE5mGA6j_U#YS>2g+*jE zP^&Q<70`uA5#Si`DQ=YRVg8`cR0>76(Kblvl<${JU2)3>+p9?Eg`vP-W@Vep3Jo)a zuklclsc0&zQhc(DL_)|Wq2bUrT&3wu3Yr>1IkP2Hk=4D5uBm>f^O7o6%g(2BE$joalP+1@kR98#q9Rto9tuahc|*G$ zZyW7zVmx`2M?Miox|8w50ORLdtyqWEJJ9c`rdWICL4Hk&}wY38dEOD!^mRw^;rFJo`^8J zEn=OnAFrmam%q~k!|EBYgeTe%t<5?T5j9!q0R&;sUpIx3oVSt zBO+O1xIlc`bt${PnfJGeNTdCIc3!+^JX+mH{8JR$fE0Jtn2zKt(_iu96^ff7BR_U@ zyu?TfH-o{C_cH59I|Q6^8-DJT9UZc|Qp}D+&xye4+l9s1|Kk@}zE&z7{cH&R6%B*D zR_9sXcb*?_;gOCh&rtM$H>T`khsK&@we*ZPHg;z1P4P6H3F$)%PTBDe%(%jMG-V&C z<%waZnT~*%t|n&z6L4_Qj$Lg}fLnHc?C;FC=;mFLLcfgWzRwCHM=t2<%u) zGy|>xuY;kLGyO!Lf-ejZO@jw; z4h?W&mS`9SFM;UTN;@WioopnT?V~}a^ z4EWN0M4uslcq4749wh#@F|~BnCaA@WaZrJ8gU-_Kd^%|__ypoX&{=vc-&oZAY+G!F zu`(<%Um9zeDzc)lI965Z`^@SZ3wT&#;s_5SUzjW_R4mgXQra?G7A%mV47fj^;0g%t zm629reG{mO+7)TaVgf0ih^$m0v$aSt9!@Y{wRzla_2=tH+xNx0Ymq`#BMseHGHDox zzJlhEQ!PuB_XQ-@RE1Tww1T-I4D@izxE3tpng_xPEuTi;LJglARneYE4(R z3+JbGvJF;BPv-tMU!=KbW$eL8jtl|s!NURrN2)4xv4RcMOHM@Yhhnf|Y4w4g{JK}U;8Cp?t!_KuybVaqCOWK!Bnv~HRj#;g6FN(^mpi0Oph8LtS zZH>v070}|(Uh#>;JoM1scp~IlD${sl@$`bm*`#cL;v7S&NXKHWpm@*p^^6FD!;es JV0}D4^E*N#NGkvU diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.po b/docs/locale/ko/LC_MESSAGES/writing/tests.po index 1d2316b57..0e251bf98 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/tests.po +++ b/docs/locale/ko/LC_MESSAGES/writing/tests.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: AHN YOUNG SEON \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: KOREAN \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -30,14 +30,13 @@ msgid "Testing your code is very important." msgstr "코드 테스트는 아주 중요합니다." #: ../../writing/tests.rst:11 -#, fuzzy msgid "" -"Getting used to writing testing code and running this code in parallel is" -" now considered a good habit. Used wisely, this method helps to define " -"your code's intent more precisely and have a more decoupled architecture." +"Getting used to writing testing code and running this code in parallel is " +"now considered a good habit. Used wisely, this method helps to define your " +"code's intent more precisely and have a more decoupled architecture." msgstr "" -"테스트 코드를 능숙하게 작성하고 이 코드를 패러랠하게 돌리는 것은 이제 좋은 습관으로 인정받고 있습니다. 이 방법을 현명하게 " -"사용하면 코드의 의도를 보다 명확히하는데 좋을 뿐 아니라, 아키텍처의 결합도를 낮출 수 있습니다. " +"테스트 코드를 능숙하게 작성하고 이 코드를 패러랠하게 돌리는 것은 이제 좋은 습관으로 인정받고 있습니다. 이 방법을 현명하게 사용하면 " +"코드의 의도를 보다 명확히하는데 좋을 뿐 아니라, 아키텍처의 결합도를 낮출 수 있습니다. " #: ../../writing/tests.rst:15 msgid "Some general rules of testing:" @@ -45,107 +44,104 @@ msgstr "테스트의 일반 원칙 몇 가지:" #: ../../writing/tests.rst:17 msgid "" -"A testing unit should focus on one tiny bit of functionality and prove it" -" correct." +"A testing unit should focus on one tiny bit of functionality and prove it " +"correct." msgstr "테스트 유닛은 각 기능의 가장 작은 단위에 집중하여, 해당 기능이 정확히 동작하는지를 증명해야 합니다. " #: ../../writing/tests.rst:20 msgid "" "Each test unit must be fully independent. Each test must be able to run " -"alone, and also within the test suite, regardless of the order that they " -"are called. The implication of this rule is that each test must be loaded" -" with a fresh dataset and may have to do some cleanup afterwards. This is" -" usually handled by :meth:`setUp()` and :meth:`tearDown()` methods." +"alone, and also within the test suite, regardless of the order that they are" +" called. The implication of this rule is that each test must be loaded with " +"a fresh dataset and may have to do some cleanup afterwards. This is usually " +"handled by :meth:`setUp()` and :meth:`tearDown()` methods." msgstr "" -"각 테스트 유닛은 반드시 독립적이어야 합니다. 각 테스트는 혼자서도 실행 가능해야하고, 테스트 슈트로도 실행 가능해야 합니다. 이 " -"때, 호출되는 순서와 무관하게 잘 동작해야 합니다. 이 규칙이 뜻하는 바, 새로운 데이터셋으로 각각의 테스트를 로딩해야 하고, 그 " -"실행 결과는 꼭 삭제해야합니다. 보통 :meth:`setUp()` 과 :meth:`tearDown()` 메소드로 이런 작업을 " -"합니다. " +"각 테스트 유닛은 반드시 독립적이어야 합니다. 각 테스트는 혼자서도 실행 가능해야하고, 테스트 슈트로도 실행 가능해야 합니다. 이 때, " +"호출되는 순서와 무관하게 잘 동작해야 합니다. 이 규칙이 뜻하는 바, 새로운 데이터셋으로 각각의 테스트를 로딩해야 하고, 그 실행 결과는" +" 꼭 삭제해야합니다. 보통 :meth:`setUp()` 과 :meth:`tearDown()` 메소드로 이런 작업을 합니다. " #: ../../writing/tests.rst:26 msgid "" -"Try hard to make tests that run fast. If one single test needs more than " -"a few milliseconds to run, development will be slowed down or the tests " -"will not be run as often as is desirable. In some cases, tests can't be " -"fast because they need a complex data structure to work on, and this data" -" structure must be loaded every time the test runs. Keep these heavier " -"tests in a separate test suite that is run by some scheduled task, and " -"run all other tests as often as needed." +"Try hard to make tests that run fast. If one single test needs more than a " +"few milliseconds to run, development will be slowed down or the tests will " +"not be run as often as is desirable. In some cases, tests can't be fast " +"because they need a complex data structure to work on, and this data " +"structure must be loaded every time the test runs. Keep these heavier tests " +"in a separate test suite that is run by some scheduled task, and run all " +"other tests as often as needed." msgstr "" -"테스트가 빠르게 돌 수 있도록 만들기 위해 노력해야 합니다. 테스트 하나가 실행하는데 몇 밀리세컨드 이상의 시간이 걸린다면, 개발" -" 속도가 느려지거나 테스트가 충분히 자주 수행되지 못할 것입니다. 테스트에 필요한 데이터 구조가 너무 복잡하고, 테스트를 하려면 " -"매번 이 복잡한 데이터를 불러와야 해서 테스트를 빠르게 만들 수 없는 경우도 있습니다. 이럴 때는 무거운 테스트는 따로 분리하여 " -"별도의 테스트 슈트를 만들어 두고 스케쥴 작업을 걸어두면 됩니다. 그리고 그 외의 다른 모든 테스트는 필요한 만큼 자주 수행하면 " -"됩니다. " +"테스트가 빠르게 돌 수 있도록 만들기 위해 노력해야 합니다. 테스트 하나가 실행하는데 몇 밀리세컨드 이상의 시간이 걸린다면, 개발 " +"속도가 느려지거나 테스트가 충분히 자주 수행되지 못할 것입니다. 테스트에 필요한 데이터 구조가 너무 복잡하고, 테스트를 하려면 매번 이 " +"복잡한 데이터를 불러와야 해서 테스트를 빠르게 만들 수 없는 경우도 있습니다. 이럴 때는 무거운 테스트는 따로 분리하여 별도의 테스트 " +"슈트를 만들어 두고 스케쥴 작업을 걸어두면 됩니다. 그리고 그 외의 다른 모든 테스트는 필요한 만큼 자주 수행하면 됩니다. " #: ../../writing/tests.rst:34 msgid "" -"Learn your tools and learn how to run a single test or a test case. Then," -" when developing a function inside a module, run this function's tests " +"Learn your tools and learn how to run a single test or a test case. Then, " +"when developing a function inside a module, run this function's tests " "frequently, ideally automatically when you save the code." msgstr "" -"지금 사용하고 있는 툴이 개별 테스트나 테스트 케이스를 어떻게 수행하는지 배우셔야 합니다. 모듈 안에 들어있는 함수를 개발하고 " -"있다면, 그 함수의 테스트를 자주, 가능하다면 코드를 저장할 때마다 자동으로 돌려야 합니다. " +"지금 사용하고 있는 툴이 개별 테스트나 테스트 케이스를 어떻게 수행하는지 배우셔야 합니다. 모듈 안에 들어있는 함수를 개발하고 있다면, " +"그 함수의 테스트를 자주, 가능하다면 코드를 저장할 때마다 자동으로 돌려야 합니다. " #: ../../writing/tests.rst:38 msgid "" "Always run the full test suite before a coding session, and run it again " -"after. This will give you more confidence that you did not break anything" -" in the rest of the code." +"after. This will give you more confidence that you did not break anything in" +" the rest of the code." msgstr "" -"그날의 코딩을 시작하기 전에 항상 풀 테스트 슈트를 돌려야 합니다. 끝난 후에도 마찬가지입니다. 이 작업은 당신이 다른 코드를 " -"망가뜨리지 않았다는 더 큰 자신감을 심어줄 것입니다. " +"그날의 코딩을 시작하기 전에 항상 풀 테스트 슈트를 돌려야 합니다. 끝난 후에도 마찬가지입니다. 이 작업은 당신이 다른 코드를 망가뜨리지" +" 않았다는 더 큰 자신감을 심어줄 것입니다. " #: ../../writing/tests.rst:42 msgid "" "It is a good idea to implement a hook that runs all tests before pushing " "code to a shared repository." -msgstr "모두가 공유하는 저장소에다가 코드를 집어넣기 전에 자동으로 모든 테스트를 수행하도록 하는 훅을 구현하는 것도 좋은 생각입니다. " +msgstr "" +"모두가 공유하는 저장소에다가 코드를 집어넣기 전에 자동으로 모든 테스트를 수행하도록 하는 훅을 구현하는 것도 좋은 생각입니다. " #: ../../writing/tests.rst:45 msgid "" -"If you are in the middle of a development session and have to interrupt " -"your work, it is a good idea to write a broken unit test about what you " -"want to develop next. When coming back to work, you will have a pointer " -"to where you were and get back on track faster." +"If you are in the middle of a development session and have to interrupt your" +" work, it is a good idea to write a broken unit test about what you want to " +"develop next. When coming back to work, you will have a pointer to where you" +" were and get back on track faster." msgstr "" -"지금 한창 개발 중인데 그만두고 잠시 다른 일을 해야한다면, 다음에 개발할 부분에다가 일부러 고장난 유닛 테스트를 작성하는 것도 " -"좋은 생각입니다. " +"지금 한창 개발 중인데 그만두고 잠시 다른 일을 해야한다면, 다음에 개발할 부분에다가 일부러 고장난 유닛 테스트를 작성하는 것도 좋은 " +"생각입니다. " #: ../../writing/tests.rst:50 msgid "" "The first step when you are debugging your code is to write a new test " "pinpointing the bug. While it is not always possible to do, those bug " -"catching tests are among the most valuable pieces of code in your " -"project." +"catching tests are among the most valuable pieces of code in your project." msgstr "" -"코드를 디버깅할 때 가장 먼저 시작할 일은 버그를 찝어내는 새로운 테스트를 작성하는 것입니다. 이런 일이 언제나 가능한 것은 " -"아니지만, 이런 버그 잡이 테스트들이야말로 당신의 프로젝트에서 가장 가치있는 코드 조각이 될 것입니다. " +"코드를 디버깅할 때 가장 먼저 시작할 일은 버그를 찝어내는 새로운 테스트를 작성하는 것입니다. 이런 일이 언제나 가능한 것은 아니지만, " +"이런 버그 잡이 테스트들이야말로 당신의 프로젝트에서 가장 가치있는 코드 조각이 될 것입니다. " #: ../../writing/tests.rst:54 msgid "" -"Use long and descriptive names for testing functions. The style guide " -"here is slightly different than that of running code, where short names " -"are often preferred. The reason is testing functions are never called " -"explicitly. ``square()`` or even ``sqr()`` is ok in running code, but in " -"testing code you would have names such as ``test_square_of_number_2()``, " -"``test_square_negative_number()``. These function names are displayed " -"when a test fails, and should be as descriptive as possible." +"Use long and descriptive names for testing functions. The style guide here " +"is slightly different than that of running code, where short names are often" +" preferred. The reason is testing functions are never called explicitly. " +"``square()`` or even ``sqr()`` is ok in running code, but in testing code " +"you would have names such as ``test_square_of_number_2()``, " +"``test_square_negative_number()``. These function names are displayed when a" +" test fails, and should be as descriptive as possible." msgstr "" -"테스트 함수에는 길고 서술적인 이름을 사용하셔야 합니다. 테스트에서의 스타일 안내서는 짧은 이름을 보다 선호하는 다른 일반적인 " -"코드와는 조금 다릅니다. 테스트 함수는 절대 직접 호출되지 않기 때문입니다. 실제로 돌아가는 코드에서는 ``square()`` " -"라든가 심지어 ``sqr()`` 조차도 괜찮습니다. 하지만 테스트 코드에서는 ``test_square_of_number_2()``," -" ``test_square_negative_number()`` 같은 이름을 붙여야 합니다. 이런 함수명들은 테스트가 실패할 때나 " -"보입니다. 그러니 반드시 가능한 한 서술적인 이름을 붙여야 합니다. " +"테스트 함수에는 길고 서술적인 이름을 사용하셔야 합니다. 테스트에서의 스타일 안내서는 짧은 이름을 보다 선호하는 다른 일반적인 코드와는 " +"조금 다릅니다. 테스트 함수는 절대 직접 호출되지 않기 때문입니다. 실제로 돌아가는 코드에서는 ``square()`` 라든가 심지어 " +"``sqr()`` 조차도 괜찮습니다. 하지만 테스트 코드에서는 ``test_square_of_number_2()``, " +"``test_square_negative_number()`` 같은 이름을 붙여야 합니다. 이런 함수명들은 테스트가 실패할 때나 보입니다." +" 그러니 반드시 가능한 한 서술적인 이름을 붙여야 합니다. " #: ../../writing/tests.rst:62 msgid "" -"When something goes wrong or has to be changed, and if your code has a " -"good set of tests, you or other maintainers will rely largely on the " -"testing suite to fix the problem or modify a given behavior. Therefore " -"the testing code will be read as much as or even more than the running " -"code. A unit test whose purpose is unclear is not very helpful in this " -"case." +"When something goes wrong or has to be changed, and if your code has a good " +"set of tests, you or other maintainers will rely largely on the testing " +"suite to fix the problem or modify a given behavior. Therefore the testing " +"code will be read as much as or even more than the running code. A unit test" +" whose purpose is unclear is not very helpful in this case." msgstr "" "무언가 잘못되었거나 뜯어고쳐야만 할 경우, 괜찮은 코드에 테스트 셋이 있다면 당신이나 다른 유지보수 담당자들은 오류를 수정하거나 " "프로그램의 동작을 수정할 때 필시 그 테스트 슈트에 전적으로 의지할 것입니다. " @@ -154,35 +150,33 @@ msgstr "" msgid "" "Another use of the testing code is as an introduction to new developers. " "When someone will have to work on the code base, running and reading the " -"related testing code is often the best thing that they can do to start. " -"They will or should discover the hot spots, where most difficulties " -"arise, and the corner cases. If they have to add some functionality, the " -"first step should be to add a test to ensure that the new functionality " -"is not already a working path that has not been plugged into the " -"interface." +"related testing code is often the best thing that they can do to start. They" +" will or should discover the hot spots, where most difficulties arise, and " +"the corner cases. If they have to add some functionality, the first step " +"should be to add a test to ensure that the new functionality is not already " +"a working path that has not been plugged into the interface." msgstr "" -"테스트 코드의 또다른 사용 방법은 새로운 개발자들을 위한 안내서로 쓰는 방법입니다. 이미 만들어져 있는 코드에서 작업해야할 경우, " -"관련 테스트 코드를 돌려보고 읽어보는 것이야말로 가장 좋은 시작점일 경우가 많습니다. 이렇게 테스트 코드를 돌려보면 어느 지점이 " -"문제인지, 수정하기 어려운 곳은 어디일지, 막다른 골목은 어디일지를 발견하게 됩니다. 몇 가지 기능을 추가해야 한다면 가장 먼저 " -"해야할 일은, 그 새로운 기능이 아직 돌아가지 않음을 확인할 수 있는 테스트를 붙여넣는 것입니다. " +"테스트 코드의 또다른 사용 방법은 새로운 개발자들을 위한 안내서로 쓰는 방법입니다. 이미 만들어져 있는 코드에서 작업해야할 경우, 관련 " +"테스트 코드를 돌려보고 읽어보는 것이야말로 가장 좋은 시작점일 경우가 많습니다. 이렇게 테스트 코드를 돌려보면 어느 지점이 문제인지, " +"수정하기 어려운 곳은 어디일지, 막다른 골목은 어디일지를 발견하게 됩니다. 몇 가지 기능을 추가해야 한다면 가장 먼저 해야할 일은, 그 " +"새로운 기능이 아직 돌아가지 않음을 확인할 수 있는 테스트를 붙여넣는 것입니다. " #: ../../writing/tests.rst:81 msgid "The Basics" msgstr "기본" #: ../../writing/tests.rst:85 -#, fuzzy msgid "unittest" -msgstr "Unittest" +msgstr "unittest" #: ../../writing/tests.rst:87 msgid "" -":mod:`unittest` is the batteries-included test module in the Python " -"standard library. Its API will be familiar to anyone who has used any of " -"the JUnit/nUnit/CppUnit series of tools." +":mod:`unittest` is the batteries-included test module in the Python standard" +" library. Its API will be familiar to anyone who has used any of the " +"JUnit/nUnit/CppUnit series of tools." msgstr "" -":mod:`unittest` 는 파이썬 표준 라이브러리 중 아주 유용한 테스트 모듈입니다. JUnit/nUnit/CppUnit " -"시리즈와 같은 툴을 써본 사람이라면 :mod:`unittest` 의 API에도 익숙할 것입니다. " +":mod:`unittest` 는 파이썬 표준 라이브러리 중 아주 유용한 테스트 모듈입니다. JUnit/nUnit/CppUnit 시리즈와 " +"같은 툴을 써본 사람이라면 :mod:`unittest` 의 API에도 익숙할 것입니다. " #: ../../writing/tests.rst:91 msgid "" @@ -191,14 +185,16 @@ msgid "" msgstr "테스트 케이스를 만드려면 :class:`unittest.TestCase` 를 상속받는 하위 클래스를 만들어야 합니다. " #: ../../writing/tests.rst:104 -msgid "As of Python 2.7 unittest also includes its own test discovery mechanisms." +msgid "" +"As of Python 2.7 unittest also includes its own test discovery mechanisms." msgstr "파이썬 2.7부터는 unittest도 자체적인 테스트 탐색 매커니즘이 생겼습니다. " #: ../../writing/tests.rst:106 msgid "" "`unittest in the standard library documentation " "`_" -msgstr "`표준 라이브러리 문서의 unittest `_" +msgstr "" +"`표준 라이브러리 문서의 unittest `_" #: ../../writing/tests.rst:110 msgid "Doctest" @@ -207,23 +203,23 @@ msgstr "Doctest" #: ../../writing/tests.rst:112 msgid "" "The :mod:`doctest` module searches for pieces of text that look like " -"interactive Python sessions in docstrings, and then executes those " -"sessions to verify that they work exactly as shown." +"interactive Python sessions in docstrings, and then executes those sessions " +"to verify that they work exactly as shown." msgstr "" -":mod:`doctest` 모듈은 독스트링 안에 대화형 파이썬 세션처럼 보이는 텍스트가 있는지를 검색한 후, 해당 세션들을 실행하여" -" 텍스트에 써진대로 정확히 동작하는지를 확인합니다. " +":mod:`doctest` 모듈은 독스트링 안에 대화형 파이썬 세션처럼 보이는 텍스트가 있는지를 검색한 후, 해당 세션들을 실행하여 " +"텍스트에 써진대로 정확히 동작하는지를 확인합니다. " #: ../../writing/tests.rst:116 msgid "" -"Doctests have a different use case than proper unit tests: they are " -"usually less detailed and don't catch special cases or obscure regression" -" bugs. They are useful as an expressive documentation of the main use " -"cases of a module and its components. However, doctests should run " -"automatically each time the full test suite runs." +"Doctests have a different use case than proper unit tests: they are usually " +"less detailed and don't catch special cases or obscure regression bugs. They" +" are useful as an expressive documentation of the main use cases of a module" +" and its components. However, doctests should run automatically each time " +"the full test suite runs." msgstr "" -"doctest는 다른 단위 테스트와는 사용 방법이 다릅니다: doctest는 일반적으로 상세하지 않고 특이한 케이스나 회귀 " -"테스트에서의 버그를 잡아내지도 못합니다. 하지만 각 모듈과 그 컴포넌트의 주된 사용법을 알려주는 문서로써는 아주 유용합니다. " -"doctest는 전체 테스트 슈트를 실행할 때마다 자동으로 돌려야 합니다. " +"doctest는 다른 단위 테스트와는 사용 방법이 다릅니다: doctest는 일반적으로 상세하지 않고 특이한 케이스나 회귀 테스트에서의 " +"버그를 잡아내지도 못합니다. 하지만 각 모듈과 그 컴포넌트의 주된 사용법을 알려주는 문서로써는 아주 유용합니다. doctest는 전체 " +"테스트 슈트를 실행할 때마다 자동으로 돌려야 합니다. " #: ../../writing/tests.rst:122 msgid "A simple doctest in a function:" @@ -231,12 +227,12 @@ msgstr "함수에서 doctest를 돌리는 간단한 예시:" #: ../../writing/tests.rst:141 msgid "" -"When running this module from the command line as in ``python " -"module.py``, the doctests will run and complain if anything is not " -"behaving as described in the docstrings." +"When running this module from the command line as in ``python module.py``, " +"the doctests will run and complain if anything is not behaving as described " +"in the docstrings." msgstr "" -"커맨드 라인에서 ``python module.py`` 를 쳐서 해당 모듈을 실행하면 doctest가 실행되고, 무언가 " -"doctest에 기술한대로 동작하지 않는 경우에는 경고를 해줍니다. " +"커맨드 라인에서 ``python module.py`` 를 쳐서 해당 모듈을 실행하면 doctest가 실행되고, 무언가 doctest에 " +"기술한대로 동작하지 않는 경우에는 경고를 해줍니다. " #: ../../writing/tests.rst:148 msgid "Tools" @@ -254,15 +250,14 @@ msgstr "py.test는 보일러플레이트가 없는 파이썬 표준 unittest의 #: ../../writing/tests.rst:160 msgid "" -"Despite being a fully-featured and extensible test tool, it boasts a " -"simple syntax. Creating a test suite is as easy as writing a module with " -"a couple of functions:" +"Despite being a fully-featured and extensible test tool, it boasts a simple " +"syntax. Creating a test suite is as easy as writing a module with a couple " +"of functions:" msgstr "" -"모든 기능을 갖추지는 않았습니다. 확장 가능한 테스트 도구도 아닙니다. 하지만 단순한 신텍스를 자랑합니다. 테스트 슈트를 만드는 " -"것은 함수 몇 개가 있는 모듈 하나를 작성하는 것 만큼이나 간단합니다. " +"모든 기능을 갖추지는 않았습니다. 확장 가능한 테스트 도구도 아닙니다. 하지만 단순한 신텍스를 자랑합니다. 테스트 슈트를 만드는 것은 " +"함수 몇 개가 있는 모듈 하나를 작성하는 것 만큼이나 간단합니다. " #: ../../writing/tests.rst:173 -#, fuzzy msgid "and then running the `py.test` command:" msgstr "그리고 명령창에서 `py.test` 를 실행하면 됩니다. " @@ -273,9 +268,8 @@ msgid "" msgstr "unittest 모듈로 같은 기능을 구현하기 위해 필요한 것보다 훨씬 덜 작업해도 됩니다! " #: ../../writing/tests.rst:198 -#, fuzzy msgid "`py.test `_" -msgstr "`py.test `_" +msgstr "`py.test `_" #: ../../writing/tests.rst:202 msgid "Hypothesis" @@ -283,54 +277,47 @@ msgstr "" #: ../../writing/tests.rst:204 msgid "" -"Hypothesis is a library which lets you write tests that are parameterized" -" by a source of examples. It then generates simple and comprehensible " -"examples that make your tests fail, letting you find more bugs with less " -"work." +"Hypothesis is a library which lets you write tests that are parameterized by" +" a source of examples. It then generates simple and comprehensible examples" +" that make your tests fail, letting you find more bugs with less work." msgstr "" #: ../../writing/tests.rst:212 msgid "" -"For example, testing lists of floats will try many examples, but report " -"the minimal example of each bug (distinguished exception type and " -"location):" +"For example, testing lists of floats will try many examples, but report the " +"minimal example of each bug (distinguished exception type and location):" msgstr "" #: ../../writing/tests.rst:228 msgid "" -"Hypothesis is practical as well as very powerful and will often find bugs" -" that escaped all other forms of testing. It integrates well with " -"py.test, and has a strong focus on usability in both simple and advanced " -"scenarios." +"Hypothesis is practical as well as very powerful and will often find bugs " +"that escaped all other forms of testing. It integrates well with py.test, " +"and has a strong focus on usability in both simple and advanced scenarios." msgstr "" #: ../../writing/tests.rst:232 -#, fuzzy msgid "`hypothesis `_" -msgstr "`nose `_" +msgstr "`hypothesis `_" #: ../../writing/tests.rst:236 msgid "tox" msgstr "tox" #: ../../writing/tests.rst:238 -#, fuzzy msgid "" -"tox is a tool for automating test environment management and testing " -"against multiple interpreter configurations." +"tox is a tool for automating test environment management and testing against" +" multiple interpreter configurations." msgstr "tox는 자동화된 테스트 환경 관리와 다양한 인터프리터 설정 하에서의 테스트를 위한 도구입니다. " #: ../../writing/tests.rst:245 -#, fuzzy msgid "" -"tox allows you to configure complicated multi-parameter test matrices via" -" a simple INI-style configuration file." +"tox allows you to configure complicated multi-parameter test matrices via a " +"simple INI-style configuration file." msgstr "tox는 간단한 ini 스타일의 설정 파일을 통해 복잡한 멀티 파라미터 테스트 메트릭을 설정할 수 있도록 해줍니다. " #: ../../writing/tests.rst:248 -#, fuzzy msgid "`tox `_" -msgstr "`nose `_" +msgstr "`tox `_" #: ../../writing/tests.rst:252 msgid "mock" @@ -338,8 +325,8 @@ msgstr "mock" #: ../../writing/tests.rst:254 msgid "" -":mod:`unittest.mock` is a library for testing in Python. As of Python " -"3.3, it is available in the `standard library " +":mod:`unittest.mock` is a library for testing in Python. As of Python 3.3, " +"it is available in the `standard library " "`_." msgstr "" ":mod:`unittest.mock` 은 파이썬의 테스트 라이브러리입니다. 파이썬 3.3부터는 `표준 라이브러리 " @@ -351,8 +338,8 @@ msgstr "예전 버전의 파이썬에서:" #: ../../writing/tests.rst:264 msgid "" -"It allows you to replace parts of your system under test with mock " -"objects and make assertions about how they have been used." +"It allows you to replace parts of your system under test with mock objects " +"and make assertions about how they have been used." msgstr "" "를 하면 mock 오브젝트로 시스템의 테스트 파트를 변경할 수 있습니다. 그리고 테스트가 어떻게 쓰일지에 대한 단정문을 만들 수 " "있습니다. " @@ -364,15 +351,14 @@ msgstr "이렇게 메소드를 몽키 패치할 수도 있습니다: " #: ../../writing/tests.rst:278 msgid "" "To mock classes or objects in a module under test, use the ``patch`` " -"decorator. In the example below, an external search system is replaced " -"with a mock that always returns the same result (but only for the " -"duration of the test)." +"decorator. In the example below, an external search system is replaced with " +"a mock that always returns the same result (but only for the duration of the" +" test)." msgstr "" -"테스트하는 모듈에서 모의 클래스나 모의 객체를 만들 경우에는 ``patch`` 데코레이터를 사용하세요. 아래의 예시에서는 언제나 " -"같은 결과값을 내는(아무튼 테스트 중에는) 모의 객체가 외부 검색 시스템 하나 대신 쓰였습니다. " +"테스트하는 모듈에서 모의 클래스나 모의 객체를 만들 경우에는 ``patch`` 데코레이터를 사용하세요. 아래의 예시에서는 언제나 같은 " +"결과값을 내는(아무튼 테스트 중에는) 모의 객체가 외부 검색 시스템 하나 대신 쓰였습니다. " #: ../../writing/tests.rst:297 -#, fuzzy msgid "" "Mock has many other ways with which you can configure and control its " "behaviour." @@ -389,17 +375,12 @@ msgstr "`mock `_" #~ msgstr "nose는 테스트를 쉽게 하도록 unittest를 확장한 것입니다. " #~ msgid "" -#~ "nose provides automatic test discovery " -#~ "to save you the hassle of manually" -#~ " creating test suites. It also " -#~ "provides numerous plugins for features " -#~ "such as xUnit-compatible test output," -#~ " coverage reporting, and test selection." +#~ "nose provides automatic test discovery to save you the hassle of manually " +#~ "creating test suites. It also provides numerous plugins for features such as" +#~ " xUnit-compatible test output, coverage reporting, and test selection." #~ msgstr "" -#~ "nose는 자동으로 테스트를 발견합니다. 덕분에 수작업으로 " -#~ "테스트 슈트를 만드는 수고를 덜 수 있습니다. 또한" -#~ " xUnit 호환 테스트 결과, 코드 커버리지 보고서," -#~ " 선택 테스트와 같이 다양한 플러그인도 제공합니다. " +#~ "nose는 자동으로 테스트를 발견합니다. 덕분에 수작업으로 테스트 슈트를 만드는 수고를 덜 수 있습니다. 또한 xUnit 호환 테스트 " +#~ "결과, 코드 커버리지 보고서, 선택 테스트와 같이 다양한 플러그인도 제공합니다. " #~ msgid "`tox `_" #~ msgstr "`tox `_" @@ -408,39 +389,29 @@ msgstr "`mock `_" #~ msgstr "Unittest2" #~ msgid "" -#~ "unittest2 is a backport of Python " -#~ "2.7's unittest module which has an " -#~ "improved API and better assertions over" -#~ " the one available in previous " +#~ "unittest2 is a backport of Python 2.7's unittest module which has an " +#~ "improved API and better assertions over the one available in previous " #~ "versions of Python." #~ msgstr "" -#~ "unittest2는 향상된 API와 단정문을 가지고 있는 " -#~ "파이썬 2.7의 unittest의 백포트 버전입니다. 2.7 " -#~ "이전 버전의 파이썬에서 사용 가능합니다. " +#~ "unittest2는 향상된 API와 단정문을 가지고 있는 파이썬 2.7의 unittest의 백포트 버전입니다. 2.7 이전 버전의 " +#~ "파이썬에서 사용 가능합니다. " #~ msgid "If you're using Python 2.6 or below, you can install it with pip" #~ msgstr "파이썬 2.6이나 그 이전 버전을 사용하고 있다면 pip로 설치할 수 있습니다. " #~ msgid "" -#~ "You may want to import the module" -#~ " under the name unittest to make " -#~ "porting code to newer versions of " -#~ "the module easier in the future" -#~ msgstr "unittest라는 이름으로 모듈을 임포트하여 나중에 새로운 파이썬 버전의 모듈로 포팅하기 쉽도록 만들고 싶을 수도 있습니다. " +#~ "You may want to import the module under the name unittest to make porting " +#~ "code to newer versions of the module easier in the future" +#~ msgstr "" +#~ "unittest라는 이름으로 모듈을 임포트하여 나중에 새로운 파이썬 버전의 모듈로 포팅하기 쉽도록 만들고 싶을 수도 있습니다. " #~ msgid "" -#~ "This way if you ever switch to " -#~ "a newer Python version and no " -#~ "longer need the unittest2 module, you" -#~ " can simply change the import in " -#~ "your test module without the need " -#~ "to change any other code." +#~ "This way if you ever switch to a newer Python version and no longer need the" +#~ " unittest2 module, you can simply change the import in your test module " +#~ "without the need to change any other code." #~ msgstr "" -#~ "이 방법을 쓰면 나중에 새로운 버전의 파이썬으로 " -#~ "바꾸거나 unittest2 모듈이 더이상 필요하지 않더라도, " -#~ "코드 수정 없이 테스트 모듈의 임포트를 변경할 수" -#~ " 있습니다. " +#~ "이 방법을 쓰면 나중에 새로운 버전의 파이썬으로 바꾸거나 unittest2 모듈이 더이상 필요하지 않더라도, 코드 수정 없이 테스트 " +#~ "모듈의 임포트를 변경할 수 있습니다. " #~ msgid "`unittest2 `_" #~ msgstr "`unittest2 `_" - From 7c35ea86e5e9e7070bc8d70941e5401ab062920c Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:04:44 +0900 Subject: [PATCH 076/117] Translate writing/logging.po (1 entry: loguru alternative) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/writing/logging.mo | Bin 9468 -> 9804 bytes docs/locale/ko/LC_MESSAGES/writing/logging.po | 2 ++ 2 files changed, 2 insertions(+) diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.mo b/docs/locale/ko/LC_MESSAGES/writing/logging.mo index 254416d2bec702a48fc66baa62cf6da5ba527178..4d9a66ac5c2c999ad0086885db612aca360758b9 100644 GIT binary patch delta 929 zcmb8sT}TvB7zW_i|E$ck)c!kW3Bu}<1c9YDR$yombk~JD+O%%%&JMG)MiH%<#^MS^ zxMa%;6~?+CWp0XWjB?GT{$xwL|ta|jvLf%1Bd5)-<A*p*^%c4=AFG^e+8MlQf(U zd=oQ{lVF_@O-Y5lz zng6f}@KQf_(M&(lA5@fOZmO&t_{R7Yy+fNTcr#odAK7_Gm#IN-ZUK(6@MRujh4K70 zU@x89o_VG(w32ZFcXf-_&|dnSj?%`RydAnk-_vDULuYnn4zxrY85i#cPSkUuHg>9L zj{r*OXeBUBr}qFaInc+|TWBrc<2b!Y?YDnTYw0h_5^z+f8nP2PAxROESC=(K(mma> zL%6(tcTfw8!(F^cGPwHea<7Y*DWc|%!npeyHGWMx96-J5Ox)nk<{5G z&iOULA#RW2b_hk5H18!L1w_E(Q@yg?3kLX0NUNC&rd%#n^C-H@B?7vn%RX7r>r$Wd zI!Z$3V2>3ITk%=*e*8bTW)2JqGcsm{9(7&FFw+^;ca5REbt%55Qwk+NVZViT~FuoI3r^d%kndd*1V1b$olr!>Q&a(TeH$ba#{y{kKMwv`5&4 zBlw0**cUA|;06Zq0X;Zrme%k9C$KX{O2k{-#xQ>3v_)E!#x-V@N|~_7My$sYVjm9T z6#DTUH?hYiu|>aV9B7S`(s3Vi@B)oOUho=!FpQV+(i!d~NCAo*;#Q~R*JF}Y$A|S~ zsRr-Rjkc7?LAA(Ub>SEreb|Xlc4>uqcN&M`IksXoxB0?RG+xM`A$?#FmvJ>S@*6QFyVbI2b71`XDc$hL=7|4~JxPT5k!a2OhNgT|Rw(t#kP0dsG4X$E24irQRnMdQ7 zonSS2e$a_kg;KMfL3fdKi2V*0v9N%wUVO%OEaNstB_mjgyU1QWxkBxxV0384(rXXR IW*;a10V32-oB#j- diff --git a/docs/locale/ko/LC_MESSAGES/writing/logging.po b/docs/locale/ko/LC_MESSAGES/writing/logging.po index f96e85642..5938de8d3 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/logging.po +++ b/docs/locale/ko/LC_MESSAGES/writing/logging.po @@ -41,6 +41,8 @@ msgid "" "approach for logging, nearly as simple as using a simple ``print`` " "statement." msgstr "" +"대안으로, `loguru `_ 는 단순한 ``print`` 구문을 사용하는 " +"것만큼이나 간단한 로깅 방법을 제공합니다." #: ../../writing/logging.rst:15 msgid "Logging serves two purposes:" From 6d546ddd839af734dd7926d08103e66a0c511f67 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:04:55 +0900 Subject: [PATCH 077/117] Translate writing/reading.po (Todo label) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/writing/reading.mo | Bin 5183 -> 5206 bytes docs/locale/ko/LC_MESSAGES/writing/reading.po | 105 ++++++++---------- 2 files changed, 49 insertions(+), 56 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.mo b/docs/locale/ko/LC_MESSAGES/writing/reading.mo index a913c1db21fcdef0526c68a2b3e8741964112a0c..a228efd6810cae9edfc076e43f83e4ccd74bdf27 100644 GIT binary patch delta 322 zcmYk$J4gdT6ouiF>?ZNGCfP1(v1O{Dy{IXyZLES8qDUZ`G5COh7#0x>2qIx^Bw}lq zu$3T)y_iNU6|q%&LD7G)ap3aZ8P1)VoBU(G@#NZpSi{s9brfy>tuOj0@J&^yR!s8o z2lvpAO9o|0E^MHU`&c4#h&}eN94=y*keZlHN;^_RXEb*N-ITP8&wbJZfrWv;2POui zl+?j<93PTSv4PU>r$7AN37{gpzs&hV?k*+YnOPtGcH=q7Q&2~Qy;`Y2*F|C?2 w9d@nTM9wRgtKMXNv#?aI&Y113HDfA;WwSmNp7g(1srTT*duv~ZHRnG03yOs~{r~^~ delta 316 zcmYk$J4*vm5QgDzFA3gOV@eTRtx~175>tqcsRN>*tP2TlvZ$M2nglfnTUi7xgO=7? zS*eYMcxl8^&|1+Spx_&9JTN>nXU-hvId_?Bzhv!WaU5cj==6(!=bgO&;DgvC4h(4z zKe2^drWE2AW^v7umg()_BlUwVtzs`F#rTa4JWNY>hT8fe*=OK(KzgE49QylsW>|Ek zGwk8?h;)KiIDsWLK4NYg4K&B3Ciiwmy1*8m2iyUbx}AQ8O7e y>Si}~=8_xhIyIFqlxyx%*zk*fsS=gLdQ=F4`NisbCCGbWH8~x8wUXGmPyYhO#5>Ud diff --git a/docs/locale/ko/LC_MESSAGES/writing/reading.po b/docs/locale/ko/LC_MESSAGES/writing/reading.po index 9ac8e91a7..74a1f0523 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/reading.po +++ b/docs/locale/ko/LC_MESSAGES/writing/reading.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: YoungSeon.Ahn LoveMeWithoutAll@Gmail.com\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: Korean \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -34,105 +34,98 @@ msgstr "위대한 파이썬 프로그래머가 되기 위한 비밀 중 하나 #: ../../writing/reading.rst:12 msgid "" "Excellent code typically follows the guidelines outlined in " -":ref:`code_style`, and does its best to express a clear and concise " -"intent to the reader." +":ref:`code_style`, and does its best to express a clear and concise intent " +"to the reader." msgstr "" -"탁월한 코드란 문자 그대로 :ref:`code_style` 의 가이드라인을 따르는 것이며, 명쾌하고 간결하게 코드의 의도를 독자에게" -" 표현하기 위해 최선을 다하는 것입니다. " +"탁월한 코드란 문자 그대로 :ref:`code_style` 의 가이드라인을 따르는 것이며, 명쾌하고 간결하게 코드의 의도를 독자에게 " +"표현하기 위해 최선을 다하는 것입니다. " #: ../../writing/reading.rst:16 msgid "" -"Included below is a list of recommended Python projects for reading. Each" -" one of these projects is a paragon of Python coding." +"Included below is a list of recommended Python projects for reading. Each " +"one of these projects is a paragon of Python coding." msgstr "아래에 삽입한 목록은 읽어보시길 추천하는 파이썬 프로젝트들입니다. 각각의 프로젝트는 파이썬 코딩의 모범입니다. " #: ../../writing/reading.rst:19 msgid "" -"`Howdoi `_ Howdoi is a code search " -"tool, written in Python." +"`Howdoi `_ Howdoi is a code search tool, " +"written in Python." msgstr "" "`Howdoi `_ Howdoi는 파이썬으로 쓰여진 코드를 검색하는 " "도구입니다. " #: ../../writing/reading.rst:22 msgid "" -"`Flask `_ Flask is a microframework " -"for Python based on Werkzeug and Jinja2. It's intended for getting " -"started very quickly and was developed with best intentions in mind." +"`Flask `_ Flask is a microframework for " +"Python based on Werkzeug and Jinja2. It's intended for getting started very " +"quickly and was developed with best intentions in mind." msgstr "" -"`Flask `_ Flask는 Werkzeug와 Jinja2를 " -"기반으로 하는 파이썬 마이크로 프레임워크입니다. 아주 빠르게 시작할 수 있도록 만들어졌으며, 이러한 취지에 따라 개발되었습니다. " +"`Flask `_ Flask는 Werkzeug와 Jinja2를 기반으로 " +"하는 파이썬 마이크로 프레임워크입니다. 아주 빠르게 시작할 수 있도록 만들어졌으며, 이러한 취지에 따라 개발되었습니다. " #: ../../writing/reading.rst:27 msgid "" -"`Diamond `_ Diamond is a " -"Python daemon that collects metrics and publishes them to Graphite or " -"other backends. It is capable of collecting CPU, memory, network, I/O, " -"load, and disk metrics. Additionally, it features an API for implementing" -" custom collectors for gathering metrics from almost any source." +"`Diamond `_ Diamond is a Python " +"daemon that collects metrics and publishes them to Graphite or other " +"backends. It is capable of collecting CPU, memory, network, I/O, load, and " +"disk metrics. Additionally, it features an API for implementing custom " +"collectors for gathering metrics from almost any source." msgstr "" -"`Diamond `_ Diamond는 Graphite나" -" 다른 백엔드에 지표를 수집하고 퍼블리싱하는 파이썬 데몬입니다. CPU, 메모리, 네트워크, I/O, 로드, 디스크 지표를 수집할 " -"수 있습니다. 추가적으로 거의 어느 소스에서라도 지표를 수집하는 커스텀 수집기를 구현하기 위한 API가 특장점입니다." +"`Diamond `_ Diamond는 Graphite나 다른" +" 백엔드에 지표를 수집하고 퍼블리싱하는 파이썬 데몬입니다. CPU, 메모리, 네트워크, I/O, 로드, 디스크 지표를 수집할 수 " +"있습니다. 추가적으로 거의 어느 소스에서라도 지표를 수집하는 커스텀 수집기를 구현하기 위한 API가 특장점입니다." #: ../../writing/reading.rst:34 msgid "" -"`Werkzeug `_ Werkzeug started as a" -" simple collection of various utilities for WSGI applications and has " -"become one of the most advanced WSGI utility modules. It includes a " -"powerful debugger, full-featured request and response objects, HTTP " -"utilities to handle entity tags, cache control headers, HTTP dates, " -"cookie handling, file uploads, a powerful URL routing system, and a bunch" -" of community-contributed addon modules." +"`Werkzeug `_ Werkzeug started as a " +"simple collection of various utilities for WSGI applications and has become " +"one of the most advanced WSGI utility modules. It includes a powerful " +"debugger, full-featured request and response objects, HTTP utilities to " +"handle entity tags, cache control headers, HTTP dates, cookie handling, file" +" uploads, a powerful URL routing system, and a bunch of community-" +"contributed addon modules." msgstr "" -"`Werkzeug `_ Werkzeug는 WSGI " -"어플리케이션을 위한 간단한 유틸리티 모음집으로 시작되었습니다. 하지만 이제는 가장 발전한 WSGI 유틸리티 모듈 중 하나가 " -"되었습니다. 강력한 디버거, 리퀘스트와 리스폰스 오브젝트의 모든 기능을 갖추었으며, 엔티티 태그를 조작할 HTTP 유틸리티와 캐시" -" 컨트롤 헤더, HTTP dates, 쿠키 조작, 파일 업로드, 강력한 URL 라우팅 시스템, 그리고 커뮤니티에서 기여한 애드온 " -"모듈 꾸러미가 포함되어 있습니다." +"`Werkzeug `_ Werkzeug는 WSGI 어플리케이션을 " +"위한 간단한 유틸리티 모음집으로 시작되었습니다. 하지만 이제는 가장 발전한 WSGI 유틸리티 모듈 중 하나가 되었습니다. 강력한 디버거," +" 리퀘스트와 리스폰스 오브젝트의 모든 기능을 갖추었으며, 엔티티 태그를 조작할 HTTP 유틸리티와 캐시 컨트롤 헤더, HTTP " +"dates, 쿠키 조작, 파일 업로드, 강력한 URL 라우팅 시스템, 그리고 커뮤니티에서 기여한 애드온 모듈 꾸러미가 포함되어 있습니다." #: ../../writing/reading.rst:42 msgid "" "`Requests `_ Requests is an " "Apache2 Licensed HTTP library, written in Python, for human beings." msgstr "" -"`Requests `_ Requests는 파이썬으로 " -"작성된 Apache2 라이선스의 HTTP 라이브러리입니다. 인류를 위해 만들었습니다. " +"`Requests `_ Requests는 파이썬으로 작성된 " +"Apache2 라이선스의 HTTP 라이브러리입니다. 인류를 위해 만들었습니다. " #: ../../writing/reading.rst:46 msgid "" -"`Tablib `_ Tablib is a format-" -"agnostic tabular dataset library, written in Python." +"`Tablib `_ Tablib is a format-agnostic " +"tabular dataset library, written in Python." msgstr "" -"`Tablib `_ Tablib은 포맷에 구속받지 않는 tabular" -" 데이터셋 라이브러리입니다. 파이썬으로 작성했습니다." +"`Tablib `_ Tablib은 포맷에 구속받지 않는 tabular " +"데이터셋 라이브러리입니다. 파이썬으로 작성했습니다." #: ../../writing/reading.rst:50 ../../writing/reading.rst:52 msgid "Todo" -msgstr "" +msgstr "할 일" #: ../../writing/reading.rst:50 msgid "" -"Include code examples of exemplary code from each of the projects listed." -" Explain why it is excellent code. Use complex examples." +"Include code examples of exemplary code from each of the projects listed. " +"Explain why it is excellent code. Use complex examples." msgstr "리스트에 올라간 프로젝트의 코드 샘플 추가 필요왜 좋은 코드인지 복잡한 예를 들어 설명할 것" #: ../../writing/reading.rst:52 msgid "" -"Explain techniques to rapidly identify data structures and algorithms and" -" determine what the code is doing." +"Explain techniques to rapidly identify data structures and algorithms and " +"determine what the code is doing." msgstr "데이터 구조와 알고리즘을 빠르게 식별하고 코드가 뭘 하고 있는지 파악하는 기술을 설명할 것" #~ msgid "" -#~ "One of the core tenets behind the" -#~ " design of Python is creating " -#~ "readable code. The motivation behind " -#~ "this design is simple: The number " -#~ "one thing that Python programmers do " -#~ "is read code." +#~ "One of the core tenets behind the design of Python is creating readable " +#~ "code. The motivation behind this design is simple: The number one thing that" +#~ " Python programmers do is read code." #~ msgstr "" -#~ "파이썬 디자인의 기저에 깔린 핵심 교리 중 하나는" -#~ " 가독성 좋은 코드 만들기입니다. 이유는 단순합니다: " -#~ "파이썬 프로그래머가 가장 많이 하는 일이 바로 코드" -#~ " 읽기이기 때문입니다. " - +#~ "파이썬 디자인의 기저에 깔린 핵심 교리 중 하나는 가독성 좋은 코드 만들기입니다. 이유는 단순합니다: 파이썬 프로그래머가 가장 많이 하는" +#~ " 일이 바로 코드 읽기이기 때문입니다. " From 1f598dad50e5eb7f1e248415a48c3606ee88635f Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:05:12 +0900 Subject: [PATCH 078/117] Translate notes/license.po (License title and CC BY-NC-SA notice) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/notes/license.mo | Bin 759 -> 835 bytes docs/locale/ko/LC_MESSAGES/notes/license.po | 9 ++++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/notes/license.mo b/docs/locale/ko/LC_MESSAGES/notes/license.mo index 3beae4d4829db82f146eed16751e6ad92fac48f7..4ffca334d74ead4386b5eb9d7cc73e2b2f3c6e0b 100644 GIT binary patch delta 268 zcmey)dYEm3iD)z<1H(@S1_mA=4rO9scmSl6HhTIqDn{m)=A{Rx=I1FmX5=Z@R2J(c zX5=~KmzLz@=V$9B=jTq|z&Nem&_d6Ei{bU$J#Xf2dDF7sP1h0zAWPxR)Q;CpK!G{0 zyQU~4ylq_bdfA#c(-ga+zy`x9r&F&?ySL}JStV7|=f`&KqCcc?B;qAmZZ@TB` zzTVmLW=11Wz3%J&nQwpwFWm5I$!UsjP(o@Lh}mpi%R%YQxuRb zpLoE;C?z#DMK3$wE+Jk4Xr;pIDI0()6hQ8qwes!M1qyFEW+=Rw*YT!n>+9~0*WF9> F7y!Lni\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -13,7 +13,7 @@ msgstr "" #: ../../notes/license.rst:3 msgid "License" -msgstr "" +msgstr "라이선스" #: ../../notes/license.rst:5 msgid "" @@ -21,3 +21,6 @@ msgid "" "ShareAlike 3.0 Unported license `_." msgstr "" +"이 안내서는 `크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 3.0 Unported 라이선스 " +"`_ 에 따라 이용할 수 " +"있습니다." From 6fcb1f6352ecf8b47acc7113a3e6746322121a9b Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:05:28 +0900 Subject: [PATCH 079/117] Translate starting/install/linux.po (2 entries: Python 3 ref, python2 install) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/starting/install/linux.mo | Bin 5671 -> 6334 bytes .../ko/LC_MESSAGES/starting/install/linux.po | 4 +++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo b/docs/locale/ko/LC_MESSAGES/starting/install/linux.mo index 7b541425974d64a59ab2ead5e68053dec2b02123..c9e54a33a80b99b69a275e6e787c30533bce700f 100644 GIT binary patch delta 993 zcmZXQUr1A77{*^sOGEpkT+7EA**FASZu`tiT>S2RQE+U1v}p^>#CsV%xOjkzVkcZ_de%&pZCj{UL5j&ZmEkC zo>r{gSOsIV?&+-|I*iqa)r<3BEzuS5J@^jn+pzNAt~#Rc*mr{#kn4%IfmcBloCb|X z^&5#6!CT;CB0u$PB07o#0rrFY8;E4k2krpBf}`M1a2z3&MxyiJkIgU!&o&WVMEz|u z(Oq!w7NTF^8*m@^ax2jh=)Qqz?DuS63HBPCFh=@>k0&S$w7>*x!d1KiKY)I41}VnD z)}2I;z6B#Dj{;vdg1c zhlgdCgZsxcr{dx+#;aF$c}I^`i(T!gdq;aLGnU$b|CHjBE=#J3eX{0c%_*@%ReXkl zTXB1bt*Wezu`;-3XJU^sBC%ceXsUe4tI3MXgEOzq$yN`alcSX zy=4};Vkw`3R)mUTVRq(P)1u$lWdeF8`mb?l4!=9x_x*hPR2!Hxl|( zNKY<{`2d%4^CB65d|7`6Z7x@y%9f)sL^TrqP1|W$iC|WwRzvHtgz(=iu(%V3Il@Oo zx_~KxI8Ea(}qaTq@fV0KxH1dEi4%m%w>7~U9agYs_G4;ScEYanyq#* Llb%1={JY@~Xr*!~ delta 337 zcmYk%u}eZx6vy%3d%o(4rlsOigCGr&4T1!UOG~Q`frE>eN4 zw!?FuIHUf-7EUA53hp`5AvVxlJjPpWEl5uoS(M7y!@A^YPI5q_x+G=r9*?n)9rL&= zHSs0N#h8sr*X&=!r48I%mUigZ&UX#D>A8~Fl7ytkO diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po index f6b9c4be8..4cebb2e49 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/linux.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/linux.po @@ -28,7 +28,7 @@ msgstr "리눅스에 파이썬 2 설치하기" #: ../../starting/install/linux.rst:11 msgid "" "Check out our :ref:`guide for installing Python 3 on Linux`." -msgstr "" +msgstr ":ref:`리눅스에 파이썬 3을 설치하는 안내서` 를 참고하세요." #: ../../starting/install/linux.rst:13 msgid "" @@ -48,6 +48,8 @@ msgid "" "as Fedora, don't come with Python 2 pre-installed. You can install the " "``python2`` package with your distribution package manager:" msgstr "" +"하지만 파이썬 3의 인기가 높아지면서, 페도라와 같은 일부 배포판에는 파이썬 2가 사전 설치되어 있지 않습니다. 배포판의 패키지 매니저를" +" 사용하여 ``python2`` 패키지를 설치할 수 있습니다:" #: ../../starting/install/linux.rst:30 msgid "" From 41dd3a5bf416fd8646e34a0309f23982156e977c Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:05:43 +0900 Subject: [PATCH 080/117] Translate starting/which-python.po (3 bare URL entries) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/starting/which-python.mo | Bin 12849 -> 12800 bytes .../ko/LC_MESSAGES/starting/which-python.po | 250 ++++++++---------- 2 files changed, 115 insertions(+), 135 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/which-python.mo b/docs/locale/ko/LC_MESSAGES/starting/which-python.mo index 706084d5852912bb73be6df8af76ed4e811c12df..87f6fcb2240f1d4e99e8995a115a2e1be3c1e442 100644 GIT binary patch delta 480 zcmXZYPbkA-9LMp`5KWW|w*33aCjT~;lr(H1m!BzdkfLQX!hZReE<&bi4)hX>$-@sb3 zt3-Oh5Pqa{sdR*SWl|&Sl6XyiDVMVGphC)`euBB=Q$sq&D@>m|R{6J1RZ6IvMoyK~ zf+m`{j`etlS@@0VAIc?JaE$#}=t;j;*9)F2mQFayj#zzxNGHumAu6 delta 545 zcmX}oPe_w-9LMp`P?8OUK+KJbo-zODHXlWZwN1rRf{jGfL$?Qgn4{;}6VEm~#S?TY zf(9KrbkKu^2M@+Ndz0!Kgy^9Tg3-CN(0eUBJiLCN@9)R=_x(N3)<3TA?}UO^A?aP8 z^jy+#OzOft+@}5sN60JJr0*EuuU5V;y~o@QDb2Z4JRtYnlrG^n?4*8-5%Ld1`hdT& z)wdCEpEDB*beE0W326$SVgZ|Y3)N2}7{k_uCVF^;4{%{Xvhgj3@f?@1Yp{L6L%c$^ zkT=T5EWX4dejW^@7fjSUBu!J;8kWA`Pdvk2orrWre8^PYkb-Yd6wV#x08(zI; zInGSUwaQLv&2#gSf>kNit&*KF9(flbxolf*t72peg&C)u^88Xhvgp)(%Sq0AzFW;0 pmB;^LHD}&2+RNN{q\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -31,12 +31,12 @@ msgstr "파이썬 현황(3 & 2)" #: ../../starting/which-python.rst:16 msgid "" -"When choosing a Python interpreter, one looming question is always " -"present: \"Should I choose Python 2 or Python 3\"? The answer is a bit " -"more subtle than one might think." +"When choosing a Python interpreter, one looming question is always present: " +"\"Should I choose Python 2 or Python 3\"? The answer is a bit more subtle " +"than one might think." msgstr "" -"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오릅니다. \"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\" 답은 생각처럼" -" 간단하지 않습니다." +"파이썬 인터프리터를 고를 때면 항상 한가지 문제가 떠오릅니다. \"파이썬2를 써야할까 아니면 파이썬3를 써야할까?\" 답은 생각처럼 " +"간단하지 않습니다." #: ../../starting/which-python.rst:21 msgid "The basic gist of the state of things is as follows:" @@ -51,7 +51,8 @@ msgid "Python 3 is ready for the production deployment of applications today." msgstr "파이썬3는 현재 어플리케이션 운영 배포를 위한 준비가 모두 되어 있습니다." #: ../../starting/which-python.rst:25 -msgid "Python 2 reached the end of its life on January 1, 2020 [#pep373_eol]_." +msgid "" +"Python 2 reached the end of its life on January 1, 2020 [#pep373_eol]_." msgstr "파이썬2는 2020년 1월 1일부로 생을 마감했습니다 [#pep373_eol]_." #: ../../starting/which-python.rst:26 @@ -65,15 +66,14 @@ msgstr "추천" #: ../../starting/which-python.rst:34 msgid "" "The use of **Python 3** is *highly* recommended over Python 2. Consider " -"upgrading your applications and infrastructure if you find yourself " -"*still* using Python 2 in production today. If you are using Python 3, " +"upgrading your applications and infrastructure if you find yourself *still* " +"using Python 2 in production today. If you are using Python 3, " "congratulations — you are indeed a person of excellent taste. —*Kenneth " "Reitz*" msgstr "" -"파이썬2 대신 **파이썬3** 의 사용을 *강력* 추천합니다. " -"*아직도* 파이썬2를 운영 환경에서 사용하고 있다면, " -"당신의 어플리케이션과 인프라스트럭쳐를 업그레이드 하는 것을 고려해보세요. " -"이미 파이썬3를 사용하고 있다면, 축하드립니다. 당신은 훌륭한 취향을 가진 사람이에요. —*케네스 레이츠*" +"파이썬2 대신 **파이썬3** 의 사용을 *강력* 추천합니다. *아직도* 파이썬2를 운영 환경에서 사용하고 있다면, 당신의 어플리케이션과" +" 인프라스트럭쳐를 업그레이드 하는 것을 고려해보세요. 이미 파이썬3를 사용하고 있다면, 축하드립니다. 당신은 훌륭한 취향을 가진 " +"사람이에요. —*케네스 레이츠*" #: ../../starting/which-python.rst:37 msgid "I'll be blunt:" @@ -85,12 +85,11 @@ msgstr "새 파이썬 어플리케이션에는 파이썬3를 쓰세요." #: ../../starting/which-python.rst:40 msgid "" -"If you're learning Python for the first time, familiarizing yourself with" -" Python 2.7 will be very useful, but not more useful than learning Python" -" 3." +"If you're learning Python for the first time, familiarizing yourself with " +"Python 2.7 will be very useful, but not more useful than learning Python 3." msgstr "" -"파이썬을 처음 배우는 분이시라면, 파이썬2.7에 익숙해지는 것은 아주 유용합니다. " -"하지만 파이썬3를 배우는 데에는 더이상 유용하지 않습니다." +"파이썬을 처음 배우는 분이시라면, 파이썬2.7에 익숙해지는 것은 아주 유용합니다. 하지만 파이썬3를 배우는 데에는 더이상 유용하지 " +"않습니다." #: ../../starting/which-python.rst:42 msgid "Learn both. They are both \"Python\"." @@ -106,21 +105,19 @@ msgid "" "newest Python 3.x, since every version brings new and improved standard " "library modules, security and bug fixes." msgstr "" -"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면, 최신 버젼의 파이썬3.x 사용을 추천합니다. 모든 버젼이" -" 새롭고 향상된 표준 라이브러리 모듈과 보안, 그리고 버그 수정을 제공하고 있기 때문입니다. " +"파이썬 인터프리터를 고르는 중이라면, 그리고 따로 생각이 있는게 아니라면, 최신 버젼의 파이썬3.x 사용을 추천합니다. 모든 버젼이 " +"새롭고 향상된 표준 라이브러리 모듈과 보안, 그리고 버그 수정을 제공하고 있기 때문입니다. " #: ../../starting/which-python.rst:53 msgid "" -"Given such, only use Python 2 if you have a strong reason to, such as a " -"pre-existing code-base, a Python 2 exclusive library, " -"simplicity/familiarity, or, of course, you absolutely love and are " -"inspired by Python 2. No harm in that." +"Given such, only use Python 2 if you have a strong reason to, such as a pre-" +"existing code-base, a Python 2 exclusive library, simplicity/familiarity, " +"or, of course, you absolutely love and are inspired by Python 2. No harm in " +"that." msgstr "" -"그러하니 파이썬2를 써야만 하는 중요한 이유가 있는 게 아니라면, " -"그러니까 코드 베이스가 이미 있다거나, 파이썬2에서만 돌아가는 라이브러리가 있다거나, " -"단순성과 친숙함 때문이거나, 파이썬2를 절대적으로 사랑하거나 파이썬2에 감동받았다거나 " -"하는 이유 때문이라면 파이썬2를 쓰셔도 됩니다. " -"해롭지 않아요." +"그러하니 파이썬2를 써야만 하는 중요한 이유가 있는 게 아니라면, 그러니까 코드 베이스가 이미 있다거나, 파이썬2에서만 돌아가는 " +"라이브러리가 있다거나, 단순성과 친숙함 때문이거나, 파이썬2를 절대적으로 사랑하거나 파이썬2에 감동받았다거나 하는 이유 때문이라면 " +"파이썬2를 쓰셔도 됩니다. 해롭지 않아요." #: ../../starting/which-python.rst:58 msgid "`Further Reading `_" @@ -128,15 +125,15 @@ msgstr "`더 읽을 거리 `_" #: ../../starting/which-python.rst:60 msgid "" -"It is possible to `write code that works on Python 2.6, 2.7, and Python 3" -" `_. This ranges from " -"trivial to hard depending upon the kind of software you are writing; if " -"you're a beginner there are far more important things to worry about." +"It is possible to `write code that works on Python 2.6, 2.7, and Python 3 " +"`_. This ranges from trivial" +" to hard depending upon the kind of software you are writing; if you're a " +"beginner there are far more important things to worry about." msgstr "" "파이썬 2.6, 2.7, 3에서 모두 돌아가는 코드를 작성하는 것도 `가능합니다 " -"`_. 이 안내서는 " -"사소한 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있습니다. 초보자라면 반드시 " -"신경써야할 대단히 중요한 사항들도 있습니다." +"`_. 이 안내서는 사소한" +" 것들로부터 시작해 당신이 작성하고 있는 소프트웨어의 종류에 따른 어려운 문제까지 다루고 있습니다. 초보자라면 반드시 신경써야할 대단히 " +"중요한 사항들도 있습니다." #: ../../starting/which-python.rst:69 msgid "Implementations" @@ -144,12 +141,12 @@ msgstr "구현" #: ../../starting/which-python.rst:71 msgid "" -"When people speak of *Python* they often mean not just the language but " -"also the CPython implementation. *Python* is actually a specification for" -" a language that can be implemented in many different ways." +"When people speak of *Python* they often mean not just the language but also" +" the CPython implementation. *Python* is actually a specification for a " +"language that can be implemented in many different ways." msgstr "" -"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을 의미할 때가 많습니다. *파이썬* 은 실제로 다양한 " -"방법으로 구현될 수 있는 언어를 위한 명세서입니다." +"사람들이 파이썬을 이야기할 때는 *파이썬* 뿐만 아니라 CPython 구현을 의미할 때가 많습니다. *파이썬* 은 실제로 다양한 방법으로" +" 구현될 수 있는 언어를 위한 명세서입니다." #: ../../starting/which-python.rst:76 msgid "CPython" @@ -158,28 +155,26 @@ msgstr "CPython" #: ../../starting/which-python.rst:78 msgid "" "`CPython `_ is the reference implementation of " -"Python, written in C. It compiles Python code to intermediate bytecode " -"which is then interpreted by a virtual machine. CPython provides the " -"highest level of compatibility with Python packages and C extension " -"modules." +"Python, written in C. It compiles Python code to intermediate bytecode which" +" is then interpreted by a virtual machine. CPython provides the highest " +"level of compatibility with Python packages and C extension modules." msgstr "" -"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스로서, 파이썬 코드를 가상 " -"머신에 의해 해석되는 중간 바이트코드로 컴파일합니다. CPython은 파이썬 패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 " -"제공합니다. " +"`CPython `_ 은 C로 작성된 파이썬 구현의 리퍼런스로서, 파이썬 코드를 가상 머신에 " +"의해 해석되는 중간 바이트코드로 컴파일합니다. CPython은 파이썬 패키지와 C언어의 확장 모듈간에 최고 레벨의 호환성을 제공합니다. " #: ../../starting/which-python.rst:83 msgid "" "If you are writing open source Python code and want to reach the widest " -"possible audience, targeting CPython is best. To use packages which rely " -"on C extensions to function, CPython is your only implementation option." +"possible audience, targeting CPython is best. To use packages which rely on " +"C extensions to function, CPython is your only implementation option." msgstr "" -"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고입니다. C언어 확장 기능을 쓰는 " -"패키지를 사용하려면 CPython이 유일한 구현 방법입니다." +"오픈 소스 파이썬 코드를 작성 중이고 폭넓은 사용자 기반을 갖고 싶다면 CPython이 최고입니다. C언어 확장 기능을 쓰는 패키지를 " +"사용하려면 CPython이 유일한 구현 방법입니다." #: ../../starting/which-python.rst:87 msgid "" -"All versions of the Python language are implemented in C because CPython " -"is the reference implementation." +"All versions of the Python language are implemented in C because CPython is " +"the reference implementation." msgstr "파이선 언어의 모든 버전은 C언어로 구현됩니다. CPython이 파이썬 구현의 리퍼런스이기 때문입니다." #: ../../starting/which-python.rst:91 @@ -189,28 +184,28 @@ msgstr "PyPy" #: ../../starting/which-python.rst:93 msgid "" "`PyPy `_ is a Python interpreter implemented in a " -"restricted statically-typed subset of the Python language called RPython." -" The interpreter features a just-in-time compiler and supports multiple " -"back-ends (C, CLI, JVM)." +"restricted statically-typed subset of the Python language called RPython. " +"The interpreter features a just-in-time compiler and supports multiple back-" +"ends (C, CLI, JVM)." msgstr "" -"`PyPy `_ 는 파이썬 언어의 정적 타입으로만 구현된 파이썬 인터프리터로서 통칭 " -"RPython이라 불립니다. 이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 " -"지원한다는 것입니다." +"`PyPy `_ 는 파이썬 언어의 정적 타입으로만 구현된 파이썬 인터프리터로서 통칭 RPython이라 " +"불립니다. 이 인터프리터의 특징은 just-in-time 컴파일러와 복수의 백엔드(C, CLI, JVM)를 지원한다는 것입니다." #: ../../starting/which-python.rst:97 msgid "" "PyPy aims for maximum compatibility with the reference CPython " "implementation while improving performance." -msgstr "PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 유지하는 동시에 그 성능을 향상시키는 것입니다. " +msgstr "" +"PyPy의 목표는 파이썬의 리퍼런스 구현 방법인 CPython과 최대한의 호환성을 유지하는 동시에 그 성능을 향상시키는 것입니다. " #: ../../starting/which-python.rst:100 msgid "" -"If you are looking to increase performance of your Python code, it's " -"worth giving PyPy a try. On a suite of benchmarks, it's currently `over 5" -" times faster than CPython `_." +"If you are looking to increase performance of your Python code, it's worth " +"giving PyPy a try. On a suite of benchmarks, it's currently `over 5 times " +"faster than CPython `_." msgstr "" -"만약 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 가치가 있습니다. 벤치마크에서 PyPy는 " -"CPython보다 `5배나 빨랐습니다 `_." +"만약 파이썬 코드의 성능을 향상시키고자 한다면, PyPy은 한 번 써볼만한 가치가 있습니다. 벤치마크에서 PyPy는 CPython보다 " +"`5배나 빨랐습니다 `_." #: ../../starting/which-python.rst:104 msgid "" @@ -224,20 +219,20 @@ msgstr "Jython" #: ../../starting/which-python.rst:109 msgid "" -"`Jython `_ is a Python implementation that " -"compiles Python code to Java bytecode which is then executed by the JVM " -"(Java Virtual Machine). Additionally, it is able to import and use any " -"Java class like a Python module." +"`Jython `_ is a Python implementation that compiles " +"Python code to Java bytecode which is then executed by the JVM (Java Virtual" +" Machine). Additionally, it is able to import and use any Java class like a " +"Python module." msgstr "" -"`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 JVM(자바 가상 " -"머신)에서 실행시키는 파이썬 구현입니다. 뿐만 아니라 Jython은 자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있습니다." +"`Jython `_ 은 파이썬 코드를 자바 바이트코드로 만들어 JVM(자바 가상 머신)에서 " +"실행시키는 파이썬 구현입니다. 뿐만 아니라 Jython은 자바 클래스를 파이썬 모듈처럼 불러와서 사용할 수 있습니다." #: ../../starting/which-python.rst:114 msgid "" "If you need to interface with an existing Java codebase or have other " -"reasons to need to write Python code for the JVM, Jython is the best " -"choice." -msgstr "자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면, Jython은 최고의 선택이 될 것입니다." +"reasons to need to write Python code for the JVM, Jython is the best choice." +msgstr "" +"자바 코드베이스를 끌어다 쓸 필요가 있거나 파이썬 코드를 JVM에서 돌릴 필요가 있다면, Jython은 최고의 선택이 될 것입니다." #: ../../starting/which-python.rst:117 msgid "Jython currently supports up to Python 2.7. [#jython_ver]_" @@ -249,30 +244,29 @@ msgstr "IronPython" #: ../../starting/which-python.rst:122 msgid "" -"`IronPython `_ is an implementation of Python " -"for the .NET framework. It can use both Python and .NET framework " -"libraries, and can also expose Python code to other languages in the .NET" -" framework." +"`IronPython `_ is an implementation of Python for " +"the .NET framework. It can use both Python and .NET framework libraries, and" +" can also expose Python code to other languages in the .NET framework." msgstr "" -"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현입니다. 파이썬과 닷넷" -" 프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있습니다. " +"`IronPython `_ 은 닷넷 프레임워크를 위한 파이썬 구현입니다. 파이썬과 닷넷 " +"프레임워크 라이브러리 둘 다 쓸 수 있고, 파이썬 코드를 닷넷 프레임워크의 다른 언어로 바꿀 수 있습니다. " #: ../../starting/which-python.rst:126 msgid "" -"`Python Tools for Visual Studio `_ " -"integrates IronPython directly into the Visual Studio development " -"environment, making it an ideal choice for Windows developers." +"`Python Tools for Visual Studio `_ integrates " +"IronPython directly into the Visual Studio development environment, making " +"it an ideal choice for Windows developers." msgstr "" "`Python Tools for Visual Studio `_ 는 " "IronPython을 직접 비쥬얼 스튜디오 개발 환경으로 통합할 수 있습니다. 이는 Windows 개발자들에게 좋은 선택입니다." #: ../../starting/which-python.rst:130 msgid "" -"IronPython supports Python 2.7. [#iron_ver]_ IronPython 3 [#iron_ver3]_ " -"is being developed, but is not ready for use as of September 2020." +"IronPython supports Python 2.7. [#iron_ver]_ IronPython 3 [#iron_ver3]_ is " +"being developed, but is not ready for use as of September 2020." msgstr "" -"IronPython은 파이썬2.7을 지원합니다. [#iron_ver]_ IronPython 3 [#iron_ver3]_ 는" -"개발 중입니다. 하지만 2020년 9월까지는 사용 불가입니다." +"IronPython은 파이썬2.7을 지원합니다. [#iron_ver]_ IronPython 3 [#iron_ver3]_ 는개발 중입니다." +" 하지만 2020년 9월까지는 사용 불가입니다." #: ../../starting/which-python.rst:134 msgid "PythonNet" @@ -280,28 +274,28 @@ msgstr "PythonNet" #: ../../starting/which-python.rst:136 msgid "" -"`Python for .NET `_ is a package which " -"provides near seamless integration of a natively installed Python " -"installation with the .NET Common Language Runtime (CLR). This is the " -"inverse approach to that taken by IronPython (see above), to which it is " -"more complementary than competing with." +"`Python for .NET `_ is a package which provides" +" near seamless integration of a natively installed Python installation with " +"the .NET Common Language Runtime (CLR). This is the inverse approach to " +"that taken by IronPython (see above), to which it is more complementary than" +" competing with." msgstr "" -"`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 닷넷 공통 " -"언어 런타임(CLR)을 말끔하게 통합시켜주는 패키지입니다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다" -" 상호 보완적입니다." +"`Python for .NET `_ 은 순정 버젼의 파이썬 설치본과 닷넷 공통 언어 " +"런타임(CLR)을 말끔하게 통합시켜주는 패키지입니다. 이는 위의 IronPython이 취한 방식을 역으로 접근한 것으로, 보다 상호 " +"보완적입니다." #: ../../starting/which-python.rst:142 msgid "" -"In conjunction with Mono, pythonnet enables native Python installations " -"on non-Windows operating systems, such as OS X and Linux, to operate " -"within the .NET framework. It can be run in addition to IronPython " -"without conflict." +"In conjunction with Mono, pythonnet enables native Python installations on " +"non-Windows operating systems, such as OS X and Linux, to operate within the" +" .NET framework. It can be run in addition to IronPython without conflict." msgstr "" -"Mono와 함께 사용하면 pythonnet OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 " -"프레임워크 안에서 수행될 수 있도록 해줍니다. IronPython과 같이 사용해도 충돌하지 않습니다." +"Mono와 함께 사용하면 pythonnet OS X와 리눅스처럼 비Windows 운영체제에 설치된 순정 버젼의 파이썬을 닷넷 프레임워크 " +"안에서 수행될 수 있도록 해줍니다. IronPython과 같이 사용해도 충돌하지 않습니다." #: ../../starting/which-python.rst:147 -msgid "Pythonnet is compatible with Python 2.7 and 3.5-3.8. [#pythonnet_ver1]_" +msgid "" +"Pythonnet is compatible with Python 2.7 and 3.5-3.8. [#pythonnet_ver1]_" msgstr "Pythonnet은 파이썬2.7과 3.5-3.8 버전과 호환됩니다. [#pythonnet_ver1]_" #: ../../starting/which-python.rst:149 @@ -314,15 +308,15 @@ msgstr "https://hg.python.org/jython/file/412a8f9445f7/NEWS" #: ../../starting/which-python.rst:153 msgid "https://ironpython.net/download/" -msgstr "" +msgstr "https://ironpython.net/download/" #: ../../starting/which-python.rst:155 msgid "https://github.com/IronLanguages/ironpython3" -msgstr "" +msgstr "https://github.com/IronLanguages/ironpython3" #: ../../starting/which-python.rst:157 msgid "https://pythonnet.github.io/" -msgstr "" +msgstr "https://pythonnet.github.io/" #: ../../starting/which-python.rst:159 msgid "https://www.python.org/dev/peps/pep-0373/#id2" @@ -332,14 +326,13 @@ msgstr "https://www.python.org/dev/peps/pep-0373/#id2" #~ msgstr "파이썬2.7이 *오랫동안* 표준이었다." #~ msgid "" -#~ "Python 3 introduced major changes to " -#~ "the language, which many developers are" +#~ "Python 3 introduced major changes to the language, which many developers are" #~ " unhappy with." #~ msgstr "파이썬3에 있었던 상당한 변화 때문에 파이썬3를 좋아하지 않는 개발자들이 많다." #~ msgid "" -#~ "Python 2.7 will receive necessary " -#~ "security updates until 2020 [#pep373_eol]_." +#~ "Python 2.7 will receive necessary security updates until 2020 " +#~ "[#pep373_eol]_." #~ msgstr "파이썬2.7은 2020년까지는 필수 보안 업데이트를 받을 것이다. [#pep373_eol]_." #~ msgid "Python 3 is continually evolving, like Python 2 did in years past." @@ -373,45 +366,33 @@ msgstr "https://www.python.org/dev/peps/pep-0373/#id2" #~ msgstr "파이썬2를 사랑하고 파이썬3의 미래에 대해 비관적일 때." #~ msgid "" -#~ "The stability requirements of your " -#~ "software would be improved by a " -#~ "language and runtime that never changes." +#~ "The stability requirements of your software would be improved by a language " +#~ "and runtime that never changes." #~ msgstr "절대 변하지 않는 언어와 런타임으로 소프트웨어의 안정성을 향상시키겠다." #~ msgid "Software that you depend on requires it." #~ msgstr "사용하는 소프트웨어가 파이썬2를 사용한다면." #~ msgid "" -#~ "Given such, only use Python 2 if" -#~ " you have a strong reason to, " -#~ "such as a Python 2 exclusive " -#~ "library which has no adequate Python " -#~ "3 ready alternative, or you (like " -#~ "me) absolutely love and are inspired " -#~ "by Python 2." +#~ "Given such, only use Python 2 if you have a strong reason to, such as a " +#~ "Python 2 exclusive library which has no adequate Python 3 ready alternative," +#~ " or you (like me) absolutely love and are inspired by Python 2." #~ msgstr "" -#~ "하지만 파이썬3에서는 적절히 쓸 수 있는 다른 " -#~ "대안이 없고, 오로지 파이썬2에서만 돌아가는 라이브러리라든가 " -#~ "아니면 파이썬 2를 너무나도 사랑한다면(나처럼), 파이썬2를 " -#~ "사용할 수밖에 없을 것입니다." +#~ "하지만 파이썬3에서는 적절히 쓸 수 있는 다른 대안이 없고, 오로지 파이썬2에서만 돌아가는 라이브러리라든가 아니면 파이썬 2를 너무나도 " +#~ "사랑한다면(나처럼), 파이썬2를 사용할 수밖에 없을 것입니다." #~ msgid "" -#~ "Check out `Can I Use Python 3? " -#~ "`_ to see if any" -#~ " software you're depending on will " -#~ "block your adoption of Python 3." +#~ "Check out `Can I Use Python 3? `_ to see if any" +#~ " software you're depending on will block your adoption of Python 3." #~ msgstr "" -#~ "`Can I Use Python 3? " -#~ "`_ 에서 확인해보시면, 당신이 " -#~ "사용 중인 소프트웨어가 파이썬3를 사용할 수 없게 " -#~ "만드는 장애물이 있지 않은가 알 수 있습니다. " +#~ "`Can I Use Python 3? `_ 에서 확인해보시면, 당신이 사용 중인 " +#~ "소프트웨어가 파이썬3를 사용할 수 없게 만드는 장애물이 있지 않은가 알 수 있습니다. " #~ msgid "IronPython supports Python 2.7. [#iron_ver]_" #~ msgstr "IronPython은 파이썬 2.7을 지원합니다. [#iron_ver]_" #~ msgid "" -#~ "Pythonnet supports from Python 2.6 up" -#~ " to Python 3.5. [#pythonnet_ver1]_ " +#~ "Pythonnet supports from Python 2.6 up to Python 3.5. [#pythonnet_ver1]_ " #~ "[#pythonnet_ver2]_" #~ msgstr "Pythonnet은 파이썬 2.3부터 2.7버젼까지 지원합니다. [#pythonnet_ver]_" @@ -420,4 +401,3 @@ msgstr "https://www.python.org/dev/peps/pep-0373/#id2" #~ msgid "https://ci.appveyor.com/project/TonyRoberts/pythonnet-480xs" #~ msgstr "https://ci.appveyor.com/project/TonyRoberts/pythonnet-480xs" - From 1f060b01bc7f801407f4014177d9fa659af90826 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:06:01 +0900 Subject: [PATCH 081/117] Translate starting/install/osx.po (4 entries: Python 3 ref, Xcode CLI, python@2 keg, executable name) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/starting/install/osx.mo | Bin 8590 -> 9609 bytes .../ko/LC_MESSAGES/starting/install/osx.po | 147 +++++++++--------- 2 files changed, 74 insertions(+), 73 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install/osx.mo index 14924c8f8dddfd5c4ef0fd5512aae449eff56ae2..032a0ec745f7ca83f234d9f1833a0d4bdcd78861 100644 GIT binary patch delta 1411 zcmZ{hUuYav6vodsN!!@k)R?GIsi!emlr>nRK7{^BsYr@{S}|%sEIZx3yE|ldChp9d zM9{76ikob-kH`Ogk5kUmsd{GcY-wI~#2;!Shes|Jstm44%n=|L! z`Ws5nlmc#@n)iD2_PMK=d}^AHhS2k2Vo) z0~f&8!7stx;G-Lf954n>gFl0(z*jaAeG{NG1vV4igCE~E6YT=8f-2s26VZ0C8*G8l zesDK38?GfS6~}>e+$uf;688%>Nn%Em%v@O5Iv9oCtHcW z2&9RA!iVZ`3a9=;K~p=?i-_rVqFaGMuml=lFW7tsQ5k$3tbo6PMR2x*r~}jK!6>^B zKaFuJCc(Yn45$qK0Pcs*RmHvdxNis102qbsPf@VUL@QuyC(*B9SLd3e#(U8K>N>zj zz=5vnYk^CFXjn_xfXNVO+W%b@3U$+=sDF!QB=c`H zz4r_cizHf4U|!Lru;XoH=a$?H z$K5lfAj^|kkY%PUFBiQ+iC3#tIhWzp%5nGHqIaU~p31mq=GJ%Wezd}Ft}JsXtz4A3 zd9Sb}3oGmuK6Z0iWO~V)oP>gWXHix^Y5gPc!rCg;rsT{NU(a%n5~?c~Rd=$Gbx$nG zOzB@MWu+=Bwbd%*iZWA^v(xzx+J4VJ)xI??b7k-S@wIzbl6LdELI+vv2c! zezjI%w=n50*3eAwdIbt@xChmKLo@;8(O{b>LI delta 467 zcmYk&%PT}-9LDkI48t7v`*n;_N)noq{G*o@19?8wIEuwo%ACApkf z5etP9TS+XeCh`Zc@f8bi{ra5eeShaY?|E0+R+|@}QzF;J$e_H`?N9hO<_)Qfynut$ zJ+(}gMo0Kyrj>JlJd!S(NYn9;7`u*NJ-M7DtSnxu@wW@XG#UQ z5+iNXxEm|YVP~8a#4Ak0K)iH=E$E{^iPH>Yd7{+Iyv^<>5XR*IC${01*?;yzaM zeYK}c2TUwuwo9twDhkQnS-;L=9eESkOOII3hHrnC\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -26,41 +26,42 @@ msgid "Installing Python 2 on Mac OS X" msgstr "맥 OS X에 파이썬 2 설치하기" #: ../../starting/install/osx.rst:11 -msgid "Check out our :ref:`guide for installing Python 3 on OS X`." -msgstr "" +msgid "" +"Check out our :ref:`guide for installing Python 3 on OS X`." +msgstr ":ref:`OS X에 파이썬 3을 설치하는 안내서` 를 참고하세요." #: ../../starting/install/osx.rst:13 msgid "" -"**Mac OS X comes with Python 2.7 out of the box between versions 10.8 and" -" 12.3.**" +"**Mac OS X comes with Python 2.7 out of the box between versions 10.8 and " +"12.3.**" msgstr "**맥 OS X 10.8부터 12.3 사이의 버전에는 파이썬 2.7이 딸려옵니다.**" #: ../../starting/install/osx.rst:15 msgid "" -"If your Mac OS X version is between the above versions, you do not need " -"to install or configure anything else to use Python. Having said that, I " -"would strongly recommend that you install the tools and libraries " -"described in the next section before you start building Python " -"applications for real-world use. In particular, you should always install" -" Setuptools, as it makes it much easier for you to install and manage " -"other third-party Python libraries." +"If your Mac OS X version is between the above versions, you do not need to " +"install or configure anything else to use Python. Having said that, I would " +"strongly recommend that you install the tools and libraries described in the" +" next section before you start building Python applications for real-world " +"use. In particular, you should always install Setuptools, as it makes it " +"much easier for you to install and manage other third-party Python " +"libraries." msgstr "" "맥 OS X 버전이 위의 범위에 해당한다면 파이썬을 사용하기 위해 달리 설치하거나 설정을 할 필요는 없습니다. 그렇기는 해도 실제로 " "사용할 파이썬 어플리케이션을 만들기 전에 이 안내서에서 앞으로 설명할 툴과 라이브러리들을 먼저 설치할 것을 강력 추천합니다. 특히 " -"Setuptools는 반드시 설치해야 합니다. Setuptools가 있으면 다른 파이썬 서드파티 라이브러리들을 훨씬 쉽게 설치하고 " -"관리할 수 있습니다." +"Setuptools는 반드시 설치해야 합니다. Setuptools가 있으면 다른 파이썬 서드파티 라이브러리들을 훨씬 쉽게 설치하고 관리할" +" 수 있습니다." #: ../../starting/install/osx.rst:22 msgid "" -"The version of Python that ships with OS X is great for learning, but " -"it's not good for development. The version shipped with OS X may be out " -"of date from the `official current Python release " +"The version of Python that ships with OS X is great for learning, but it's " +"not good for development. The version shipped with OS X may be out of date " +"from the `official current Python release " "`_, which is considered the " "stable production version." msgstr "" -"OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. OS X에 딸려온 버전은 `공식 최신 " -"파이썬 릴리즈 `_ 보다 구버전일 수 있습니다. 이 " -"릴리즈가 안정적인 프로덕션 버전으로 간주됩니다." +"OS X에 포함된 파이썬의 버전은 학습에는 최고입니다. 하지만 개발하기에는 좋지 않습니다. OS X에 딸려온 버전은 `공식 최신 파이썬 " +"릴리즈 `_ 보다 구버전일 수 있습니다. 이 릴리즈가 " +"안정적인 프로덕션 버전으로 간주됩니다." #: ../../starting/install/osx.rst:30 msgid "Doing it Right" @@ -72,63 +73,63 @@ msgstr "진짜 파이썬을 설치해보자!" #: ../../starting/install/osx.rst:34 msgid "" -"Before installing Python, you'll need to install a C compiler. The " -"fastest way is to install the Xcode Command Line Tools by running " -"``xcode-select --install``. You can also download the full version of " -"`Xcode `_ from the Mac App Store, or " -"the minimal but unofficial `OSX-GCC-Installer " +"Before installing Python, you'll need to install a C compiler. The fastest " +"way is to install the Xcode Command Line Tools by running ``xcode-select " +"--install``. You can also download the full version of `Xcode " +"`_ from the Mac App Store, or the " +"minimal but unofficial `OSX-GCC-Installer " "`_ package." msgstr "" -"파이썬을 설치하기 전에 C 컴파일러를 설치해야 합니다. 이를 위해서는 Xcode Command Line Tools을 설치하는 방법이" -" 가장 빠릅니다. ``xcode-select --install`` 을 돌리시면 됩니다. 맥 앱스토어에서 `Xcode " -"`_ 의 풀 버전을 다운로드 받을 수도 있습니다. 비공식 버전이지만 " -"아주 작은 `OSX-GCC-Installer `_ 의 풀 버전을 다운로드 받을 수도 있습니다. 비공식 버전이지만 아주" +" 작은 `OSX-GCC-Installer `_ 패키지를 설치해도 됩니다." #: ../../starting/install/osx.rst:43 msgid "" -"If you already have Xcode installed, do not install OSX-GCC-Installer. In" -" combination, the software can cause issues that are difficult to " -"diagnose." +"If you already have Xcode installed, do not install OSX-GCC-Installer. In " +"combination, the software can cause issues that are difficult to diagnose." msgstr "" -"이미 XCode를 설치했다면, OSX-GCC-Installer는 설치하지 마세요. 두 개를 함께 설치하면 원인을 밝히기 어려운 문제를" -" 일으킬 수 있습니다." +"이미 XCode를 설치했다면, OSX-GCC-Installer는 설치하지 마세요. 두 개를 함께 설치하면 원인을 밝히기 어려운 문제를 " +"일으킬 수 있습니다." #: ../../starting/install/osx.rst:48 msgid "" "If you perform a fresh install of Xcode, you will also need to add the " "commandline tools by running ``xcode-select --install`` on the terminal." msgstr "" +"Xcode를 새로 설치한 경우에는 터미널에서 ``xcode-select --install`` 을 실행하여 커맨드라인 툴도 함께 설치해야 " +"합니다." #: ../../starting/install/osx.rst:52 msgid "" -"While OS X comes with a large number of Unix utilities, those familiar " -"with Linux systems will notice one key component missing: a decent " -"package manager. `Homebrew `_ fills this void." +"While OS X comes with a large number of Unix utilities, those familiar with " +"Linux systems will notice one key component missing: a decent package " +"manager. `Homebrew `_ fills this void." msgstr "" -"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 요소 하나가 빠져있다는 사실을 알아차릴 " -"것입니다. 바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를" -" 채워줍니다." +"OS X는 많은 UNIX 유틸리티를 갖고 있지만, 리눅스에 정통한 사람이라면 중요한 요소 하나가 빠져있다는 사실을 알아차릴 것입니다. " +"바로 훌륭한 패키지 매니저가 없다는 것입니다. 하지만 `Homebrew `_ 가 그 빈자리를 채워줍니다." #: ../../starting/install/osx.rst:56 msgid "" -"To `install Homebrew `_, open :file:`Terminal` " -"or your favorite OS X terminal emulator and run" +"To `install Homebrew `_, open :file:`Terminal` or " +"your favorite OS X terminal emulator and run" msgstr "" -"`Homebrew `_ 를 설치하려면 :file:`터미널` 을 열거나 마음에 드는 OSX" -" 터미널 에뮬레이터를 열고 아래 코드를 실행하면 됩니다." +"`Homebrew `_ 를 설치하려면 :file:`터미널` 을 열거나 마음에 드는 OSX " +"터미널 에뮬레이터를 열고 아래 코드를 실행하면 됩니다." #: ../../starting/install/osx.rst:63 msgid "" -"The script will explain what changes it will make and prompt you before " -"the installation begins. Once you've installed Homebrew, insert the " -"Homebrew directory at the top of your :envvar:`PATH` environment " -"variable. You can do this by adding the following line at the bottom of " -"your :file:`~/.profile` file" +"The script will explain what changes it will make and prompt you before the " +"installation begins. Once you've installed Homebrew, insert the Homebrew " +"directory at the top of your :envvar:`PATH` environment variable. You can do" +" this by adding the following line at the bottom of your :file:`~/.profile` " +"file" msgstr "" "이 스크립트는 설치가 시작되기 전에 설치로 인해 변경되는 것들과 명령어를 알려줍니다. Homebrew가 설치됐으면 Homebrew " -"디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣으세요. :file:`~/.profile` 파일의 마지막 줄에 다음과" -" 같이 덧붙이면 됩니다." +"디렉토리를 :envvar:`PATH` 환경 변수의 최상단에 넣으세요. :file:`~/.profile` 파일의 마지막 줄에 다음과 같이" +" 덧붙이면 됩니다." #: ../../starting/install/osx.rst:73 msgid "Now, we can install Python 2.7:" @@ -136,15 +137,17 @@ msgstr "이제 우리는 파이썬 2.7을 설치할 수 있습니다." #: ../../starting/install/osx.rst:79 msgid "" -"Because ``python@2`` is a \"keg\", we need to update our ``PATH`` again, " -"to point at our new installation:" -msgstr "" +"Because ``python@2`` is a \"keg\", we need to update our ``PATH`` again, to " +"point at our new installation:" +msgstr "``python@2`` 는 \"keg\"이므로, 새로 설치한 곳을 가리키도록 ``PATH`` 를 다시 갱신해야 합니다:" #: ../../starting/install/osx.rst:85 msgid "" "Homebrew names the executable ``python2`` so that you can still run the " "system Python via the executable ``python``." msgstr "" +"Homebrew는 실행 파일의 이름을 ``python2`` 로 짓기 때문에, ``python`` 실행 파일로는 여전히 시스템 파이썬을 " +"실행할 수 있습니다." #: ../../starting/install/osx.rst:97 msgid "Setuptools & Pip" @@ -156,20 +159,19 @@ msgstr "Homebrew는 Setuptools 과 ``pip`` 를 설치해줍니다." #: ../../starting/install/osx.rst:101 msgid "" -"Setuptools enables you to download and install any compliant Python " -"software over a network (usually the Internet) with a single command " +"Setuptools enables you to download and install any compliant Python software" +" over a network (usually the Internet) with a single command " "(``easy_install``). It also enables you to add this network installation " "capability to your own Python software with very little work." msgstr "" "Setuptools는 네트워크 상에서(보통은 인터넷) 단 한 줄의 명령어(``easy_install``)로 파이썬 소프트웨어를 " -"다운로드받고 설치할 수 있도록 해줍니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다." -" " +"다운로드받고 설치할 수 있도록 해줍니다. 또한 최소한의 작업으로 당신이 만든 파이썬 소프트웨어의 네트워크 설치를 가능하게 해줍니다. " #: ../../starting/install/osx.rst:106 msgid "" -"``pip`` is a tool for easily installing and managing Python packages, " -"that is recommended over ``easy_install``. It is superior to " -"``easy_install`` in `several ways `_, and is " "actively maintained." msgstr "" @@ -183,20 +185,20 @@ msgstr "Virtual Environments" #: ../../starting/install/osx.rst:121 msgid "" -"A Virtual Environment (commonly referred to as a 'virtualenv') is a tool " -"to keep the dependencies required by different projects in separate " -"places, by creating virtual Python environments for them. It solves the " -"\"Project X depends on version 1.x but, Project Y needs 4.x\" dilemma, " -"and keeps your global site-packages directory clean and manageable." +"A Virtual Environment (commonly referred to as a 'virtualenv') is a tool to " +"keep the dependencies required by different projects in separate places, by " +"creating virtual Python environments for them. It solves the \"Project X " +"depends on version 1.x but, Project Y needs 4.x\" dilemma, and keeps your " +"global site-packages directory clean and manageable." msgstr "" "Virtual Environment(보통 'virtualenv'로 부릅니다)는 각 프로젝트마다 파이썬 가상 환경을 만들어 서로 다른 " -"프로젝트가 필요로 하는 의존성을 별도의 위치에 분리해주는 툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트 Y는 " -"버전 4.x가 필요한\" 난국을 해결해주고, 전역 site-packages 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." +"프로젝트가 필요로 하는 의존성을 별도의 위치에 분리해주는 툴입니다. 이는 \"프로젝트 X는 버전 1.x를 쓰는데, 프로젝트 Y는 버전 " +"4.x가 필요한\" 난국을 해결해주고, 전역 site-packages 디렉토리를 깨끗하게 관리할 수 있도록 해줍니다." #: ../../starting/install/osx.rst:126 msgid "" -"For example, you can work on a project which requires Django 1.10 while " -"also maintaining a project which requires Django 1.8." +"For example, you can work on a project which requires Django 1.10 while also" +" maintaining a project which requires Django 1.8." msgstr "예를 들면 장고 1.10을 쓰는 프로젝트에서 일하면서, 장고 1.8을 사용하는 프로젝트를 유지보수 할 수 있도록 해줍니다." #: ../../starting/install/osx.rst:129 @@ -211,8 +213,8 @@ msgstr "" #: ../../starting/install/osx.rst:133 msgid "" "This page is a remixed version of `another guide " -"`_, " -"which is available under the same license." +"`_, which" +" is available under the same license." msgstr "" "이 페이지는 `다른 안내서 `_ 를 재배열한 버전입니다. 라이선스는 동일합니다." @@ -222,4 +224,3 @@ msgstr "" #~ msgid "This will take a minute or two." #~ msgstr "1~2분 정도 걸릴 것입니다." - From 071d02c17e9cf96814fa261338a4144f6ed00ccc Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:06:20 +0900 Subject: [PATCH 082/117] Translate writing/tests.po (4 entries: Hypothesis section) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/writing/tests.mo | Bin 15442 -> 16912 bytes docs/locale/ko/LC_MESSAGES/writing/tests.po | 8 +++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.mo b/docs/locale/ko/LC_MESSAGES/writing/tests.mo index 59f940f95ad4a6f5a10c24f0c09bddc21f242fcb..f54fd38a5c404496798c63c23fa2275d8ad6758b 100644 GIT binary patch delta 2256 zcmZ9LZERCj7{{N=6y)83uM<2F&<)EJK}Z%5Atr)|G4Men#(3M^ZWr3#a_=ppM(kcX zQnrFyMx|TYIb!D+E?ViPMHfD(31SotF)=0vL!wc8&gJV2pZuSDJBBQ2e&?L~oagyJ z|L5$=;huyiezm$PP54`n-^2Kgd*p8B@5Na}XR+N4PJsV{kANRn5$yplgCBt_?j*W_ zyFY+0VE^rGqL;uWbBOYw55y78zMJTI#4Q2?9*WZ|bBRvk!-aW7kAr*X6D?k5@r{&~RZfchRJ+Kl~;hlrj6H`Ne5 z0qzIu!2$41@DlhKxCS=+z&&6U>eB=k(wZ;8-QZUsT&BgaAp$N14}zT_T%;-RZ7Bq8 zeFGf9Jg$M;nLEZ+D~L{D|0*~I{sj)+0oPW#h2L3?`#8S_#;ZLI0$*Cv5$d& zf;DwSR}kpIT(*EegUChIUZSV*eFG?++rO4*9rjUhAvl7zzr*=wu%QIDJxNpq8`i-Y ze7_Fv#eVsE_>bCTtS7n;><8r=D1c?~H}Ed-;s#iZirW1S} zJPyjyltKA#a~*646WiR;%-&v{JF9I@+)_@DG=y06zFMb){sA_LSsyi zvKB+LR3^JHAxN>9VyG;l7)nUBR6~0Ug?%wxH}$CDR~>zoUg{a!=`;~$O=?&*6ibbp z%+zF~jyk^{iWq9M8a6c_j;1|u%Y>8zsuW;UY6lc8=#{b@H>I+Gh7LnIeK0;(l1EAVP)t;2{+aNAwoe2t;v!e9l<(fTf1r{7!18Z`JfG5p=8I zs`Suc0o@2WBdyHXZCDFiYLjfXQpV90iPg)XU0$b1GfKlT%h2&K0=hqnEMXQk6`vN= ztQgb6%!d-UdZjcTQo??eH~nf@F*MyQ4$c3%CZ0+1;Yr5(^5VU5Cc5(?nW=SNSe?ja z82@lgbmi@?k_@stQ|`u2XL)y?kK#fy!$(etTq_fqr0CAdFo|~)b~=Lqk&tUID;L@r zKbI(fUJ|Ez7*Dm@Y3Ezlo|8;WWW~`Ga>|00G$W~6x#}-5yQ5VMc9x6Cn@x!G8Gbs; z$`fO}C@Y9lV|9!d$IHbbJ3Y#~laSR=RBBIonrB|;EraA;DCY=eD2ZldHanH#xk>&> z$xamP{*$~1N7J1;{S5Ys#HV(8NOsG_V6uEJ#iafZCXugi!Lph-`r_}8K?URO8T5Qx zg6_PXIs>`x#f((JyU&PZR-WOK$c-bP+>{DT92*k@aCXMej+|3p8s=qUs7>0GEgECsr*jMt{jDN@+%@agSMJCf$%}yk#+62P2)a2! z=V=U#I@QPdXu*pP@_e|&_}Mc&-Z#YTOxo^nMtIY_asfJz_KEY^%IsY?dte+B5SLEy zj?Rh>R(aqM2a7YzJ~|;M+5-hnE!VBA^SIhG@>yo`G8XogOS_K!@7&SU+k=-TM%ex{sUBna47cz%a|aTn5cT~;sTNmp9P^VT9`zQlFm4Ik zEJc--EEUtyl_DL*N&Jipn8?5}mvq;(r%J6@bWnPSF|5PJG$|LKVg@eY30%Wz{EIB1 z>2&E6&f^yxW^e-QtJh5j3q8Ocym^S1F(8z=_l5e7LF(pg=`=n@KfcFO{DWci9hM65 zA-156grdwN&Yyd*hT4mSs1Cf%`ntnI2W}&&sL>-u%!l9{^#=R0g-?j*4EFQ8F?@wT z@hbZ1ZjE@^A#t(J_OI)W1%$ z-#F{zZ!p3>`RNaoNY|;urzGB?=SWCeM~3Jd?qV+S?8gJd6=YsI`miS8w0D+~|1w`5 zEt4j&?yU5I2|vzrU>G=C?nJ*`;Y9DPbfRxS6a77G#wo1Ej0@5&tVa|54DKB|yg|K$ vCi;>p$(;H?6^EgRhj|)I^w)xRD6Tun4!g1}`%>B)kNvTD$g*Gfo812ZEqZZa diff --git a/docs/locale/ko/LC_MESSAGES/writing/tests.po b/docs/locale/ko/LC_MESSAGES/writing/tests.po index 0e251bf98..937feebf4 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/tests.po +++ b/docs/locale/ko/LC_MESSAGES/writing/tests.po @@ -273,7 +273,7 @@ msgstr "`py.test `_" #: ../../writing/tests.rst:202 msgid "Hypothesis" -msgstr "" +msgstr "Hypothesis" #: ../../writing/tests.rst:204 msgid "" @@ -281,12 +281,16 @@ msgid "" " a source of examples. It then generates simple and comprehensible examples" " that make your tests fail, letting you find more bugs with less work." msgstr "" +"Hypothesis는 예시 소스로 파라미터화된 테스트를 작성할 수 있게 해주는 라이브러리입니다. 그러고 나서 테스트를 실패하게 하는 " +"단순하고 이해하기 쉬운 예시를 생성해서, 적은 노력으로 더 많은 버그를 찾을 수 있도록 도와줍니다." #: ../../writing/tests.rst:212 msgid "" "For example, testing lists of floats will try many examples, but report the " "minimal example of each bug (distinguished exception type and location):" msgstr "" +"예를 들어 실수(float)의 리스트를 테스트한다면 수많은 예시를 시도하면서도, 각 버그에 대해서는 최소한의 예시만(예외 타입과 위치로 " +"구별하여) 보고합니다:" #: ../../writing/tests.rst:228 msgid "" @@ -294,6 +298,8 @@ msgid "" "that escaped all other forms of testing. It integrates well with py.test, " "and has a strong focus on usability in both simple and advanced scenarios." msgstr "" +"Hypothesis는 매우 강력하면서도 실용적이며, 다른 모든 형태의 테스트가 놓친 버그를 자주 찾아냅니다. py.test와 잘 " +"통합되며, 단순한 시나리오와 고급 시나리오 모두에서 사용성에 큰 비중을 두고 있습니다." #: ../../writing/tests.rst:232 msgid "`hypothesis `_" From 48a59d94a1e02d35beb750c82bc26d4d41065890 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:06:33 +0900 Subject: [PATCH 083/117] Translate scenarios/db.po (5 library/section headers) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/db.mo | Bin 8010 -> 7962 bytes docs/locale/ko/LC_MESSAGES/scenarios/db.po | 249 +++++++++------------ 2 files changed, 107 insertions(+), 142 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.mo b/docs/locale/ko/LC_MESSAGES/scenarios/db.mo index 150178e365050ca400c2288d6422c08fe74fcb92..5fedae01f89a06535667e417cb0572b3f116cd2f 100644 GIT binary patch delta 261 zcmX?QH_L9qllo9b1_m)c28JjG28JAd1_m}DeH=&&0qJv4`XP`$2;_eO(yl;yn*akt z1d#p%q>lpWP(g@#X`m*Memx+~4x~+iG#8Mz1=5^A+5<@U0_h+i?FY2?fe?cm1JFzc zeGvu*H=uw$kiG__+e8@{UIN8q#TgiafqZufpk^RFTatkx9Y{ZsVqnmemBo6A8F>!*r6oD}`Pq8O`MGwJpYq91R_8BZ MGPKw{gMSl002dG}<^TWy delta 309 zcmbPbcgk+UlloRh1_m)c28JjG28KEO3=C{Q`a6&o0@DAWw4eY3!$BZl1xULB>1RMX z0!Zr!GB6wk(yc%mq~04yfb_=!X?7r;3Z%J!bS{wQ1kx2ix)(?{0ck&=y#m4vZVW&> z7~(}37~FsY`9S&_klrTB!0-|%-Yd?)5Des(OE55a0O`|`3=HW&T11+GVILC%LyZgr z1JLaZ)|*!{^6(lsdiW_s`iJ_tD+Igx`zhE|7V9NuP*mgMB;XX_>B=h|`kB<7`; zCZ?xaDP-qQzRoAF6p&L|l$fLImS2=xY^9J_0Ol6k8d@trn6?I!zw#9_nr+VD-^339 DMLs;f diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.po b/docs/locale/ko/LC_MESSAGES/scenarios/db.po index 5dffff7cf..6e13ea156 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/db.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/db.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: AHN YOUNG SEON \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -27,64 +27,61 @@ msgstr "데이터베이스" #: ../../scenarios/db.rst:11 msgid "DB-API" -msgstr "" +msgstr "DB-API" #: ../../scenarios/db.rst:13 msgid "" "The Python Database API (DB-API) defines a standard interface for Python " -"database access modules. It's documented in :pep:`249`. Nearly all Python" -" database modules such as `sqlite3`, `psycopg`, and `mysql-python` " -"conform to this interface." +"database access modules. It's documented in :pep:`249`. Nearly all Python " +"database modules such as `sqlite3`, `psycopg`, and `mysql-python` conform to" +" this interface." msgstr "" -"파이썬 데이베이스 API (DB-API)는 파이썬 데이터베이스 접근 모듈을 위한 표준 인터페이스를 정의합니다. " -":pep:`249` 에 문서화가 되어 있습니다. `sqlite3`, `psycopg`, 그리고 `mysql-python` 와 " -"같이 거의 모든 파이썬 데이터베이스 모듈이 이 인터페이스를 따릅니다." +"파이썬 데이베이스 API (DB-API)는 파이썬 데이터베이스 접근 모듈을 위한 표준 인터페이스를 정의합니다. :pep:`249` 에 " +"문서화가 되어 있습니다. `sqlite3`, `psycopg`, 그리고 `mysql-python` 와 같이 거의 모든 파이썬 데이터베이스" +" 모듈이 이 인터페이스를 따릅니다." #: ../../scenarios/db.rst:18 msgid "" "Tutorials that explain how to work with modules that conform to this " "interface can be found `here " -"`__ " -"and `here " -"`__." +"`__ and " +"`here " +"`__." msgstr "" -"이 모듈이 어떻게 이 인터페이스를 따라 동작하는지 확인하고 싶으시다면 아래 튜토리얼을 확인해보세요. " -"`요것 " -"`__ " -"과 `이것 " -"`__." +"이 모듈이 어떻게 이 인터페이스를 따라 동작하는지 확인하고 싶으시다면 아래 튜토리얼을 확인해보세요. `요것 " +"`__ 과 " +"`이것 " +"`__." #: ../../scenarios/db.rst:25 msgid "SQLAlchemy" -msgstr "" +msgstr "SQLAlchemy" #: ../../scenarios/db.rst:27 msgid "" "`SQLAlchemy `_ is a commonly used database " -"toolkit. Unlike many database libraries it not only provides an ORM layer" -" but also a generalized API for writing database-agnostic code without " -"SQL." +"toolkit. Unlike many database libraries it not only provides an ORM layer " +"but also a generalized API for writing database-agnostic code without SQL." msgstr "" -"`SQLAlchemy `_ 는 일반적으로 사용되는 데이터베이스 툴킷입니다. " -"다른 데이터베이스 라이브러리와 달리 ORM 레이어를 제공할 뿐만 아니라 SQL 없이도 데이터베이스와 무관하게 " -"코드를 작성할 수 있도록 일반화 된 API를 제공합니다." +"`SQLAlchemy `_ 는 일반적으로 사용되는 데이터베이스 툴킷입니다. 다른 " +"데이터베이스 라이브러리와 달리 ORM 레이어를 제공할 뿐만 아니라 SQL 없이도 데이터베이스와 무관하게 코드를 작성할 수 있도록 일반화 " +"된 API를 제공합니다." #: ../../scenarios/db.rst:38 msgid "Records" -msgstr "" +msgstr "Records" #: ../../scenarios/db.rst:40 msgid "" "`Records `_ is minimalist SQL " -"library, designed for sending raw SQL queries to various databases. Data " -"can be used programmatically or exported to a number of useful data " -"formats." +"library, designed for sending raw SQL queries to various databases. Data can" +" be used programmatically or exported to a number of useful data formats." msgstr "" "`Records `_ 는 미니멀리스트 SQL 라이브러리입니다. " -"다양한 데이터베이스에 raw SQL 쿼리를 날릴 수 있도록 디자인되었습니다. " -"데이터는 프로그래밍방식으로 사용될 수도 있고 여러 유용한 데이터 포맷응로도 추출할 수 있습니다. " +"다양한 데이터베이스에 raw SQL 쿼리를 날릴 수 있도록 디자인되었습니다. 데이터는 프로그래밍방식으로 사용될 수도 있고 여러 유용한 " +"데이터 포맷응로도 추출할 수 있습니다. " #: ../../scenarios/db.rst:48 msgid "Also included is a command-line tool for exporting SQL data." @@ -92,17 +89,16 @@ msgstr "SQL 데이터를 추출할 수 있는 커맨드라인 도구를 포함 #: ../../scenarios/db.rst:53 msgid "PugSQL" -msgstr "" +msgstr "PugSQL" #: ../../scenarios/db.rst:55 msgid "" -"`PugSQL `_ is a simple Python interface for " -"organizing and using parameterized, handwritten SQL. It is an anti-ORM " -"that is philosophically lo-fi, but it still presents a clean interface in" -" Python." +"`PugSQL `_ is a simple Python interface for organizing " +"and using parameterized, handwritten SQL. It is an anti-ORM that is " +"philosophically lo-fi, but it still presents a clean interface in Python." msgstr "" -"`PugSQL `_ 은 파라미터를 집어넣어 SQL을 직접 작성하기 위한 " -"간단한 파이썬 인터페이스입니다. ORM은 절대 아니지만 파이썬으로 깔끔한 인터페이스를 제공합니다. " +"`PugSQL `_ 은 파라미터를 집어넣어 SQL을 직접 작성하기 위한 간단한 파이썬 " +"인터페이스입니다. ORM은 절대 아니지만 파이썬으로 깔끔한 인터페이스를 제공합니다. " #: ../../scenarios/db.rst:66 msgid "Django ORM" @@ -113,18 +109,17 @@ msgid "" "The Django ORM is the interface used by `Django " "`_ to provide database access." msgstr "" -"쟝고 ORM은 `Django " -"`_ 가 데이터베이스에 접근하기 위해 사용하는 인터페이스입니다. " +"쟝고 ORM은 `Django `_ 가 데이터베이스에 접근하기 위해 사용하는 " +"인터페이스입니다. " #: ../../scenarios/db.rst:71 msgid "" -"It's based on the idea of `models `_, an abstraction that makes it easier to manipulate " -"data in Python." +"It's based on the idea of `models " +"`_, an abstraction " +"that makes it easier to manipulate data in Python." msgstr "" -"이는 `모델 `_ , 즉 파이썬으로 데이터를 조직하기 쉽게 해주는 추상화라는 아이디어에 " -"기반하고 있습니다." +"이는 `모델 `_ , 즉 파이썬으로 " +"데이터를 조직하기 쉽게 해주는 추상화라는 아이디어에 기반하고 있습니다." #: ../../scenarios/db.rst:75 msgid "The basics:" @@ -140,12 +135,10 @@ msgstr "모델의 각 속성은 데이터베이스의 필드를 나타낸다." #: ../../scenarios/db.rst:79 msgid "" -"Django gives you an automatically-generated database-access API; see " -"`Making queries " -"`__." +"Django gives you an automatically-generated database-access API; see `Making" +" queries `__." msgstr "" -"쟝고는 자동으로 만들어진 데이터베이스 엑세스 API를 제공합니다. " -"`Making queries " +"쟝고는 자동으로 만들어진 데이터베이스 엑세스 API를 제공합니다. `Making queries " "`__ 문서를 확인하세요." #: ../../scenarios/db.rst:85 @@ -159,25 +152,21 @@ msgid "" "supports SQLite, MySQL, and PostgreSQL by default. The `model layer " "`_ is similar to that of the Django ORM and it has `SQL-like " -"methods `_ to query data. While SQLite, MySQL, and PostgreSQL " -"are supported out-of-the-box, there is a `collection of add-ons " -"`_" -" available." -msgstr "" -"`peewee `_ 는 파이썬 2.6 이상을 지원하면서 " -"3.2 이상도 지원하는 가벼운 ORM입니다. " -"SQLite, MySQL, 그리고 PostgreSQL을 기본적으로 지원합니다. " -"`model layer " -"`_ 는는 쟝고 ORM과과 비슷합니다다. " -"`SQL 비스무리한 메소드 " -"`_ 로로 데이터를를 쿼리할 수도도 있습니다. " -"SQLite, MySQL, PostgreSQL을 기본 지원하며 " -"`다양한 애드온 " -"`_ 도 " -"사용 가능합니다." +"methods " +"`_ to query data. While SQLite, MySQL, and PostgreSQL are supported " +"out-of-the-box, there is a `collection of add-ons " +"`_ " +"available." +msgstr "" +"`peewee `_ 는 파이썬 2.6 이상을 지원하면서 3.2 " +"이상도 지원하는 가벼운 ORM입니다. SQLite, MySQL, 그리고 PostgreSQL을 기본적으로 지원합니다. `model " +"layer `_ 는는 쟝고 ORM과과 비슷합니다다. `SQL 비스무리한 메소드 " +"`_ 로로 데이터를를 쿼리할 수도도 있습니다. SQLite, MySQL, PostgreSQL을 기본 지원하며 `다양한 애드온 " +"`_ " +"도 사용 가능합니다." #: ../../scenarios/db.rst:100 msgid "PonyORM" @@ -185,103 +174,79 @@ msgstr "포니ORM(PonyORM)" #: ../../scenarios/db.rst:102 msgid "" -"`PonyORM `_ is an ORM that takes a different " -"approach to querying the database. Instead of writing an SQL-like " -"language or boolean expressions, Python's generator syntax is used. " -"There's also a graphical schema editor that can generate PonyORM entities" -" for you. It supports Python 2.6+ and Python 3.3+ and can connect to " -"SQLite, MySQL, PostgreSQL, and Oracle." -msgstr "" -"`PonyORM `_ 은 데이터베이스 쿼리를 위한 새로운 접근방식을 취하는 ORM입니다. " -"SQL과 비슷한 언어나 불리언 표현식을 작성하는 대신, 파이썬의 제너레이터 구문을 사용합니다. " -"PonyORM 엔티티를 생성할 수 있는는 그래픽 스키마 편집기도 제공합니다. " -"파이썬 2.6 이상과 파이썬 3.3 이상을 지원하고 SQLite, MySQL, PostgreSQL, Oracle에 연결할 수 있습니다." +"`PonyORM `_ is an ORM that takes a different approach " +"to querying the database. Instead of writing an SQL-like language or boolean" +" expressions, Python's generator syntax is used. There's also a graphical " +"schema editor that can generate PonyORM entities for you. It supports Python" +" 2.6+ and Python 3.3+ and can connect to SQLite, MySQL, PostgreSQL, and " +"Oracle." +msgstr "" +"`PonyORM `_ 은 데이터베이스 쿼리를 위한 새로운 접근방식을 취하는 ORM입니다. SQL과 " +"비슷한 언어나 불리언 표현식을 작성하는 대신, 파이썬의 제너레이터 구문을 사용합니다. PonyORM 엔티티를 생성할 수 있는는 그래픽 " +"스키마 편집기도 제공합니다. 파이썬 2.6 이상과 파이썬 3.3 이상을 지원하고 SQLite, MySQL, PostgreSQL, " +"Oracle에 연결할 수 있습니다." #: ../../scenarios/db.rst:111 msgid "SQLObject" -msgstr "" +msgstr "SQLObject" #: ../../scenarios/db.rst:113 msgid "" -"`SQLObject `_ is yet another ORM. It supports " -"a wide variety of databases: common database systems like MySQL, " -"PostgreSQL, and SQLite and more exotic systems like SAP DB, SyBase, and " -"Microsoft SQL Server. It only supports Python 2 from Python 2.6 upwards." +"`SQLObject `_ is yet another ORM. It supports a " +"wide variety of databases: common database systems like MySQL, PostgreSQL, " +"and SQLite and more exotic systems like SAP DB, SyBase, and Microsoft SQL " +"Server. It only supports Python 2 from Python 2.6 upwards." msgstr "" -"`SQLObject `_ 도 또다른 ORM입니다. 다양한 " -"데이터베이스를 지원합니다. MySQL, PostgreSQL, SQLite처럼 일반적인 데이터베이스 뿐만 아니라 " -"SAP DB, SyBase, Microsoft SQL Server 같은 기묘한 데이터베이스 시스템도. 지원합니다." -"파이썬 2.6 이상의 파이썬2를 지원합니다다." +"`SQLObject `_ 도 또다른 ORM입니다. 다양한 데이터베이스를 지원합니다. " +"MySQL, PostgreSQL, SQLite처럼 일반적인 데이터베이스 뿐만 아니라 SAP DB, SyBase, Microsoft SQL" +" Server 같은 기묘한 데이터베이스 시스템도. 지원합니다.파이썬 2.6 이상의 파이썬2를 지원합니다다." #~ msgid "" #~ msgstr "" #~ msgid "" -#~ "The Python Database API (DB-API) " -#~ "defines a standard interface for Python" -#~ " database access modules. It's documented" -#~ " in :pep:`249`. Nearly all Python " -#~ "database modules such as `sqlite3`, " -#~ "`psycopg` and `mysql-python` conform to" -#~ " this interface." +#~ "The Python Database API (DB-API) defines a standard interface for Python " +#~ "database access modules. It's documented in :pep:`249`. Nearly all Python " +#~ "database modules such as `sqlite3`, `psycopg` and `mysql-python` conform to " +#~ "this interface." #~ msgstr "" #~ msgid "" -#~ "`Records `_ is" -#~ " minimalist SQL library, designed for " -#~ "sending raw SQL queries to various " -#~ "databases. Data can be used " -#~ "programmatically, or exported to a " -#~ "number of useful data formats." +#~ "`Records `_ is minimalist SQL " +#~ "library, designed for sending raw SQL queries to various databases. Data can" +#~ " be used programmatically, or exported to a number of useful data formats." #~ msgstr "" #~ msgid "" -#~ "The Django ORM is the interface " -#~ "used by `Django `_ " -#~ "to provide database access." +#~ "The Django ORM is the interface used by `Django " +#~ "`_ to provide database access." #~ msgstr "" #~ msgid "" -#~ "`peewee `_ is" -#~ " another ORM with a focus on " -#~ "being lightweight with support for " -#~ "Python 2.6+ and 3.2+ which supports " -#~ "SQLite, MySQL and Postgres by default." -#~ " The `model layer " -#~ "`_ is similar to that " -#~ "of the Django ORM and it has " -#~ "`SQL-like methods " -#~ "`_ to query data. While" -#~ " SQLite, MySQL and Postgres are " -#~ "supported out-of-the-box, there is" -#~ " a `collection of add-ons " -#~ "`_" -#~ " available." +#~ "`peewee `_ is another ORM with a " +#~ "focus on being lightweight with support for Python 2.6+ and 3.2+ which " +#~ "supports SQLite, MySQL and Postgres by default. The `model layer " +#~ "`_ is similar to that of the Django ORM and it has `SQL-like " +#~ "methods " +#~ "`_ to query data. While SQLite, MySQL and Postgres are supported out-" +#~ "of-the-box, there is a `collection of add-ons " +#~ "`_ " +#~ "available." #~ msgstr "" #~ msgid "" -#~ "`PonyORM `_ is an ORM " -#~ "that takes a different approach to " -#~ "querying the database. Instead of " -#~ "writing an SQL-like language or " -#~ "boolean expressions, Python's generator syntax" -#~ " is used. There's also an graphical" -#~ " schema editor that can generate " -#~ "PonyORM entities for you. It supports" -#~ " Python 2.6+ and Python 3.3+ and " -#~ "can connect to SQLite, MySQL, Postgres" -#~ " & Oracle" +#~ "`PonyORM `_ is an ORM that takes a different approach " +#~ "to querying the database. Instead of writing an SQL-like language or boolean" +#~ " expressions, Python's generator syntax is used. There's also an graphical " +#~ "schema editor that can generate PonyORM entities for you. It supports Python" +#~ " 2.6+ and Python 3.3+ and can connect to SQLite, MySQL, Postgres & Oracle" #~ msgstr "" #~ msgid "" -#~ "`SQLObject `_ is yet " -#~ "another ORM. It supports a wide " -#~ "variety of databases: Common database " -#~ "systems MySQL, Postgres and SQLite and" -#~ " more exotic systems like SAP DB, " -#~ "SyBase and MSSQL. It only supports " -#~ "Python 2 from Python 2.6 upwards." +#~ "`SQLObject `_ is yet another ORM. It supports a " +#~ "wide variety of databases: Common database systems MySQL, Postgres and " +#~ "SQLite and more exotic systems like SAP DB, SyBase and MSSQL. It only " +#~ "supports Python 2 from Python 2.6 upwards." #~ msgstr "" - From 37dceb9530df499a022cd3667023e16036fe4e69 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:07:05 +0900 Subject: [PATCH 084/117] Translate writing/structure.po (6 entries: tl;dr, modules, immutable strings) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/writing/structure.mo | Bin 56245 -> 60312 bytes .../ko/LC_MESSAGES/writing/structure.po | 18 +++++++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.mo b/docs/locale/ko/LC_MESSAGES/writing/structure.mo index 08575b41e3ec54ffc2a872f23f3a30d36e3191c7..48d1ecb56beff500871e3de8f80d2764694249f8 100644 GIT binary patch delta 6347 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 BtcU;r diff --git a/docs/locale/ko/LC_MESSAGES/writing/structure.po b/docs/locale/ko/LC_MESSAGES/writing/structure.po index 276529f9c..3b3ba216f 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/structure.po +++ b/docs/locale/ko/LC_MESSAGES/writing/structure.po @@ -132,6 +132,9 @@ msgid "" "`__." msgstr "" +"**요약**: `Kenneth Reitz가 2013년에 권장한 방식 " +"`__ 입니다." #: ../../writing/structure.rst:64 msgid "" @@ -287,7 +290,7 @@ msgstr "테스트 도구" #: ../../writing/structure.rst:179 msgid "*For advice on writing your tests, see* :doc:`/writing/tests`." -msgstr "" +msgstr "*테스트 작성에 대한 조언은* :doc:`/writing/tests` *를 참고하세요.*" #: ../../writing/structure.rst:1 msgid "``./test_sample.py`` or ``./tests``" @@ -330,6 +333,8 @@ msgid "" "develop`` to test an actively changing codebase also requires them to have " "an isolated environment setup for each instance of the codebase." msgstr "" +"후자를 강력히 추천합니다. 활발히 변경되는 코드베이스를 테스트하기 위해 개발자에게 ``setup.py develop`` 을 실행하라고 " +"요구한다면, 코드베이스의 각 인스턴스마다 격리된 환경을 셋업하도록 요구하는 셈이 됩니다." #: ../../writing/structure.rst:213 msgid "" @@ -591,6 +596,9 @@ msgid "" "short so there is no need to separate words. And, most of all, don't " "namespace with underscores; use submodules instead." msgstr "" +"원한다면 모듈 이름을 :file:`my_spam.py` 처럼 지을 수도 있지만, 우리의 믿음직한 친구 언더스코어조차 모듈 이름에서는 자주" +" 보여서는 안 됩니다. 그렇다고 모듈 이름에 다른 문자(공백이나 하이픈)를 쓰면 임포트가 불가능해집니다(-는 빼기 연산자입니다). 단어를" +" 구분할 필요가 없도록 모듈 이름은 짧게 유지하세요. 무엇보다도, 언더스코어로 네임스페이스를 만들지 말고 서브모듈을 사용하세요." #: ../../writing/structure.rst:413 msgid "" @@ -729,6 +737,10 @@ msgid "" "variable, function, or class defined in :file:`modu.py` is available in the " "pack.modu namespace." msgstr "" +":file:`pack/` 디렉토리 안의 :file:`modu.py` 파일은 ``import pack.modu`` 구문으로 임포트됩니다. " +"이 구문은 :file:`pack` 안의 :file:`__init__.py` 파일을 찾아 그 안의 모든 최상위 구문을 실행합니다. 그런 " +"다음 :file:`pack/modu.py` 라는 파일을 찾아 그 안의 모든 최상위 구문을 실행합니다. 이러한 작업이 끝나면 " +":file:`modu.py` 에 정의된 모든 변수, 함수, 클래스는 pack.modu 네임스페이스에서 사용할 수 있게 됩니다." #: ../../writing/structure.rst:502 msgid "" @@ -1171,6 +1183,10 @@ msgid "" "the parts together when the full string is needed. List comprehensions are " "usually the fastest and most idiomatic way to do this." msgstr "" +"초보자를 놀라게 할 수 있는 파이썬의 특이점 하나는 문자열이 불변(immutable)이라는 점입니다. 즉, 여러 조각으로부터 문자열을 " +"만들 때, 각 조각을 문자열에 덧붙이는 방식은 비효율적입니다. 덧붙일 때마다 문자열 전체가 복사되기 때문입니다. 그 대신, " +"가변(mutable)인 리스트에 조각들을 모아두었다가, 완전한 문자열이 필요해졌을 때 그 조각들을 한꺼번에 붙이는(``join``) 편이" +" 훨씬 효율적입니다. 일반적으로 이를 위한 가장 빠르고 관용적인 방법은 리스트 컴프리헨션입니다." #: ../../writing/structure.rst:845 msgid "" From a2c59bd1da6dd7825fcda698a05720342f24ac4a Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:07:21 +0900 Subject: [PATCH 085/117] Translate writing/documentation.po (6 entries: tool names and docstring style note) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/writing/documentation.mo | Bin 18770 -> 19641 bytes .../ko/LC_MESSAGES/writing/documentation.po | 12 +++++++----- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.mo b/docs/locale/ko/LC_MESSAGES/writing/documentation.mo index aa3706585a8d3e30bc8ce5077adc4bcbaf39e208..ceeff0861eb76a6d45f0360b92724a6d40151992 100644 GIT binary patch delta 1740 zcmZ9Kdu&rx9LK+714Lvn9`aNVC{CaOL~!7EZ7>9*Vtm9HjkC0et*pCux%YNhUmLEI zv7!S_x_zP z-_1F7AgAt!iFpz5Q^ema{x0Mw>BeVwF7OV;x5;|m&C1Kl9V4@JjRG2Y|1p_60$4K| zsHVJb3=pP$Klvf$Rbzo6GEII@9=i=F$w3`sUoAzzpP zOeW8eg1ku56<5gz$-Dx9xlv4(lIzGq7Vs8XLivM}FKuIARKv zh+9b(iDr^twDFI&=p)}F&yZ{u-rE_JtRi0_XG{e+6hz1qo7=OrW{=e z{7D8EF#!Wvi-AhA@qU0c;mQ(#wPM@@z*%wu`3;#So5*uZ0oI1i%YgZ$LGoFkV;Kj& zfrq11s1;lx)#JHJYE0neVqc>C6<_BV%1f8ij$FMW`}j6Il=Ztv_R{VWsouoSVt`vg zgv_jt{EYG$Qmv$ACD+V2Z7Vtdi&Pw0mEGO;)f9N~I>~2&H`V~3lC9)5vV1MDU$F%E zn*5#Yr2XfmTpy{g2Y#V`M;Y)d8DMwkso(Z6M@_EW1o+9JM}WI{KX1yTz>7R=BGvAC zNX&0NKWA#9EO&TJU5O>EN-3n~75di9(d!PngwGOQU7A{VSd(TP*){|r_!xeNK@&9dcY7K-76Q05>xnfW@lU$ z&bmChVMveV5&_LC4byUKUiTKibO|0rg|rxeO&ii*Dr?=EC2Dk^My1WQGo zqn9W8Cojku`J}FC<%#d6Xk#ZB@+r#*c&vaSy-&-Rt;ELJ)%hD!C*rBW6mEBPyKJ`|Q?syL(7D9j8uQLLd=j6KpMG)bL?>^(jY&L)yC_Ox3TaXo+)_6t z@F&)KSRt&MDP6_8m|#MiXw&NW%Pi>@4$y5s9`s4a;}n$6VFmDJffU5Yg%Xq0?;@!h zU2~Z^`SmzP{9qnk5Z~~#ti)#*NWHjkVS2*8fOMU$c!np)?=Mc*f5!L3PfBSLd&*de z={%@wG0RJ$Z;8ZQG>DJz8xCRbQt1q~@R9ItxyvPufNIJ`L*0;{-_+W So5M9p!%WnEFwB$T66aqV5{nH0 diff --git a/docs/locale/ko/LC_MESSAGES/writing/documentation.po b/docs/locale/ko/LC_MESSAGES/writing/documentation.po index 4fa8a20d6..6bd98b52d 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/writing/documentation.po @@ -177,7 +177,7 @@ msgstr "" #: ../../writing/documentation.rst:94 msgid "reStructuredText" -msgstr "" +msgstr "reStructuredText" #: ../../writing/documentation.rst:96 msgid "" @@ -373,6 +373,8 @@ msgid "" " understandable, and gets the relevant points across then it has done the " "job it was designed to do." msgstr "" +"결국 독스트링을 어떤 스타일로 작성하느냐는 그리 중요하지 않습니다. 독스트링의 목적은 당신의 코드를 읽거나 수정해야 할 누군가를 위한 " +"문서로 기능하는 것입니다. 정확하고 이해하기 쉬우며 관련 핵심을 전달하는 한, 독스트링은 본래 설계된 역할을 다한 것입니다." #: ../../writing/documentation.rst:254 msgid "For further reading on docstrings, feel free to consult :pep:`257`" @@ -388,7 +390,7 @@ msgstr "황야에 외롭게 서 있는 도구들도 있습니다. 그냥 :ref:`s #: ../../writing/documentation.rst:270 msgid "Pycco_" -msgstr "" +msgstr "Pycco_" #: ../../writing/documentation.rst:268 msgid "" @@ -401,7 +403,7 @@ msgstr "" #: ../../writing/documentation.rst:277 msgid "Ronn_" -msgstr "" +msgstr "Ronn_" #: ../../writing/documentation.rst:276 msgid "" @@ -413,7 +415,7 @@ msgstr "" #: ../../writing/documentation.rst:282 msgid "Epydoc_" -msgstr "" +msgstr "Epydoc_" #: ../../writing/documentation.rst:282 msgid "Epydoc is discontinued. Use :ref:`sphinx-ref` instead." @@ -421,7 +423,7 @@ msgstr "Epydoc은 끝장났습니다. 대신 :ref:`sphinx-ref` 를 쓰세요. " #: ../../writing/documentation.rst:288 msgid "MkDocs_" -msgstr "" +msgstr "MkDocs_" #: ../../writing/documentation.rst:287 msgid "" From 0de31b2f92a294f1e29da7ac997ae14eea469146 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:07:53 +0900 Subject: [PATCH 086/117] Translate starting/install/win.po (7 entries: Python 3 ref, pip/setuptools install) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/starting/install/win.mo | Bin 6443 -> 8488 bytes .../ko/LC_MESSAGES/starting/install/win.po | 15 +++++++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.mo b/docs/locale/ko/LC_MESSAGES/starting/install/win.mo index 0eee8e1a6bcde5530abe7f1c1465648f451a96f0..7ac773548496bbba759b905f024ebdaea853f1c3 100644 GIT binary patch delta 2345 zcmbVMU2Icj82&bX)hW0LXyoTjybzMDO*RaH5E3B9$PHW&jlp0K?df*p?3|PH!>oy( z2_2d1$Tquf9kiri7s`)Gp&OQDTo}ADF&ZztBWfgK?D@`xw_N#rr|mkBcww`zPru*y zd7t-vcD<)`!2P9jWrpFi0b?`9w_>vFqqZ@&6Jr45JB-Wij2*$gx{|TInBN6{g88FW zjBN#ew3@L$fiu7e&|SmWdf;!sAAx@Z+wjIWYZ*gem)(1ov0d1B?>RgUoCJOa+}Xj{ zZs6}g1-SWn##STXS>Q{UpL>C^1Hj9`V_5$K=m7U4S|0*@{UT$>vA+$6V_5$bn8W-5 zGJOp=w2`qLZ7yR){20c<51Z;tkG{;c;i7sik_7Ekhl;lV#&5+*t)J-w71{34Qo$0Y$OaNq?>(VNco{0 zwZpAL`yw9%Y$Ad{>w;p0jKm>B3MqP6*23rpNE^oC5IZU~#a|#gimMxepfSf3?IN;o zl(jB2LPljPeS7Uyw^?q4>Y_+oS5HCz@{uLF<xQhM z5gQ#S`g6cQ6QZR}N2?rrX62gIbwj14&J729c|J)zS>$)JekSXUP7%+Hc&F!iGWQfC zkvF$Uyj-nS3OLP^RepXdR5`x>^>)|KO6U=5@DNoG0F2;@~#bg zg*$wD-n*0|KU?)@v))7y+PhZr(gpIz#&~|7pSwZ)?3h25^hc}wLJ1d$7jpg=BZ9J* zD)RH<1uvcJLevhC0e%#6wVUPimUWxl>_iZAAtxTmbAF{(Q;h>7kBImHQhHxBmlnx$5%( delta 312 zcmYk#ze~bF7{~F?o#v0sFcp;$3!=6bX$e}s{sS#;3K9g;AJ7t%6tuN{u_*{jBCzcS zX=n?fAzC8PA)|<>f1pLdceQlz@Ve(d&)r>?+Qr6mGT0Prn#xm0Kh3{2WWQph5#C|Z zN^3X_NV}Y^PDlmpU;>};0YA_%+X+c$^w$w-3#(Bn#QiR&rH1Y&r4qp_RtOej(l+i- zNp&9hj!T>LHC{hq?si66z>VbJhldy;KgJ#APg7Exd^RHuu#3y&7unwr^_Y`9&OcF} unfJX!${m<5>u!R5<6gq=*7swr^SOA~?WLEjE9aU4|1E#TV8-vjx&05tUg diff --git a/docs/locale/ko/LC_MESSAGES/starting/install/win.po b/docs/locale/ko/LC_MESSAGES/starting/install/win.po index 35c77bc68..ab8b9925d 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install/win.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install/win.po @@ -29,7 +29,7 @@ msgstr "Windows에 파이썬 2 설치하기" msgid "" "Check out our :ref:`guide for installing Python 3 on " "Windows`." -msgstr "" +msgstr ":ref:`Windows에 파이썬 3을 설치하는 안내서` 를 참고하세요." #: ../../starting/install/win.rst:13 msgid "" @@ -85,7 +85,7 @@ msgstr "``powershell`` 에서 간단하게 실행할 수도 있습니다." #: ../../starting/install/win.rst:45 msgid "This is also an option during the installation process." -msgstr "" +msgstr "이것은 설치 과정 중에도 선택할 수 있는 옵션입니다." #: ../../starting/install/win.rst:47 msgid "" @@ -112,6 +112,9 @@ msgid "" "`_ and `pip " "`_." msgstr "" +"가장 중요한 파이썬 서드파티 패키지를 2개 뽑으라면 `setuptools " +"`_ 와 `pip " +"`_ 입니다." #: ../../starting/install/win.rst:62 msgid "" @@ -120,16 +123,18 @@ msgid "" "network installation capability to your own Python software with very little" " work." msgstr "" +"한번 설치하고 나면 단 한 줄의 명령어로 호환되는 모든 파이썬 소프트웨어 제품을 다운로드, 설치, 제거할 수 있습니다. 또한 최소한의 " +"작업으로 당신이 만든 파이썬 소프트웨어에 네트워크 설치 기능을 추가할 수 있습니다." #: ../../starting/install/win.rst:66 msgid "" "Python 2.7.9 and later (on the python2 series), and Python 3.4 and later " "include pip by default." -msgstr "" +msgstr "(python2 계열의) 파이썬 2.7.9 이후 버전과 파이썬 3.4 이후 버전에는 기본으로 pip이 포함되어 있습니다." #: ../../starting/install/win.rst:69 msgid "To see if pip is installed, open a command prompt and run" -msgstr "" +msgstr "pip이 설치되어 있는지 확인하려면, 명령 프롬프트를 열고 다음을 실행하세요" #: ../../starting/install/win.rst:75 msgid "" @@ -137,6 +142,8 @@ msgid "" "`_ - this will automatically " "install the latest version of setuptools." msgstr "" +"pip을 설치하려면, `pip 공식 설치 안내서 `_ 를 " +"따르세요. 이 안내서를 따르면 setuptools의 최신 버전도 자동으로 설치됩니다." #: ../../starting/install/win.rst:80 msgid "Virtual Environments" From 9975efaa05bdc51c1db1124100848933973f4b82 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:08:10 +0900 Subject: [PATCH 087/117] Translate scenarios/json.po (7 entries: JSON parsing intro) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/json.mo | Bin 1361 -> 1509 bytes docs/locale/ko/LC_MESSAGES/scenarios/json.po | 66 ++++++++----------- 2 files changed, 29 insertions(+), 37 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/json.mo b/docs/locale/ko/LC_MESSAGES/scenarios/json.mo index d2c3a66cc4f2187e635f06d76ad35c0996c011e0..b855d24d3525319468a3fa6f91099dbcbe49b49d 100644 GIT binary patch delta 700 zcmaJ;%}x_h6uyFP%8K{`hlNWfx-r=BR}&;LOh5=leO|{g(MLw!1R3d_{;mBSPE| zLfE51TxI;qIL>&+SYZ6lxWIE0e3|8c{hAPW89yAi=SJ>5Hp_;-R5A_7tr{@>^0`)A zHRjFoiw)CU*PfW0vzdI+(91==H2JVp+{{8gS6FzYe13joO*5bAvv21{pH^;7 zX*V;1ydL^*k`oK0Wl{53+CEU-0XnEt;}n~9Y#wFB{iO$m^fQ=pk|^w-;C9F&vKHdU z801bM?a$J7fqCRvNjHWhY?D_73?e$%rFT7^X8G$%IqCW!?G82F)MoGJ?FxFa$`o06 z7~rP>8?7NGZaHZNFUI#SeyOrAsC4Aj2H7repn)>|hxFf6uSeTK1+Zn)>lW7P%AMU9 zsBt745gQIHI{juez|cXfdVZBk{6~QsQjUK%Qbg=lW!w2(dheHJB{NT*zXiXTY^_ H&Rj+SO4u-! diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/json.po b/docs/locale/ko/LC_MESSAGES/scenarios/json.po index 9d6ae8e46..d1ffa4e6a 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/json.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/json.po @@ -15,7 +15,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -24,76 +24,68 @@ msgstr "" #: ../../scenarios/json.rst:4 msgid "JSON" -msgstr "" +msgstr "JSON" #: ../../scenarios/json.rst:8 msgid "" -"The `json `_ library can " -"parse JSON from strings or files. The library parses JSON into a Python " -"dictionary or list. It can also convert Python dictionaries or lists into" -" JSON strings." +"The `json `_ library can parse " +"JSON from strings or files. The library parses JSON into a Python dictionary" +" or list. It can also convert Python dictionaries or lists into JSON " +"strings." msgstr "" +"`json `_ 라이브러리는 문자열이나 파일로부터 " +"JSON을 파싱할 수 있습니다. 이 라이브러리는 JSON을 파이썬 딕셔너리나 리스트로 파싱합니다. 반대로 파이썬 딕셔너리나 리스트를 " +"JSON 문자열로 변환할 수도 있습니다." #: ../../scenarios/json.rst:15 msgid "Parsing JSON" -msgstr "" +msgstr "JSON 파싱하기" #: ../../scenarios/json.rst:17 msgid "Take the following string containing JSON data:" -msgstr "" +msgstr "JSON 데이터를 포함한 다음과 같은 문자열이 있다고 합시다:" #: ../../scenarios/json.rst:23 msgid "It can be parsed like this:" -msgstr "" +msgstr "이렇게 파싱할 수 있습니다:" #: ../../scenarios/json.rst:30 msgid "and can now be used as a normal dictionary:" -msgstr "" +msgstr "이제 일반적인 딕셔너리처럼 사용할 수 있습니다:" #: ../../scenarios/json.rst:37 msgid "You can also convert the following to JSON:" -msgstr "" +msgstr "다음과 같이 JSON으로 변환할 수도 있습니다:" #~ msgid "" -#~ "The `json `_" -#~ " library can parse JSON from strings" -#~ " or files. The library parses JSON" -#~ " into a Python dictionary or list." -#~ " It can also convert Python " -#~ "dictionaries or lists into JSON strings." +#~ "The `json `_ library can parse " +#~ "JSON from strings or files. The library parses JSON into a Python dictionary" +#~ " or list. It can also convert Python dictionaries or lists into JSON " +#~ "strings." #~ msgstr "" #~ msgid "simplejson" #~ msgstr "" #~ msgid "" -#~ "The JSON library was added to " -#~ "Python in version 2.6. If you're " -#~ "using an earlier version of Python, " -#~ "the `simplejson " -#~ "`_ library " -#~ "is available via PyPI." +#~ "The JSON library was added to Python in version 2.6. If you're using an " +#~ "earlier version of Python, the `simplejson " +#~ "`_ library is available via " +#~ "PyPI." #~ msgstr "" #~ msgid "" -#~ "simplejson mimics the json standard " -#~ "library. It is available so that " -#~ "developers that use older versions of" -#~ " Python can use the latest features" -#~ " available in the json lib." +#~ "simplejson mimics the json standard library. It is available so that " +#~ "developers that use older versions of Python can use the latest features " +#~ "available in the json lib." #~ msgstr "" #~ msgid "" -#~ "You can start using simplejson when " -#~ "the json library is not available " -#~ "by importing simplejson under a " -#~ "different name:" +#~ "You can start using simplejson when the json library is not available by " +#~ "importing simplejson under a different name:" #~ msgstr "" #~ msgid "" -#~ "After importing simplejson as json, the" -#~ " above examples will all work as " -#~ "if you were using the standard " -#~ "json library." +#~ "After importing simplejson as json, the above examples will all work as if " +#~ "you were using the standard json library." #~ msgstr "" - From 5fd71288381c130eeb7be05dd8e35143a2e18d2b Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:08:28 +0900 Subject: [PATCH 088/117] Translate dev/virtualenvs.po (7 entries: virtualenvwrapper commands and tools) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo | Bin 23684 -> 23624 bytes docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po | 576 ++++++++---------- 2 files changed, 249 insertions(+), 327 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.mo index d0f8f77a838e2704ffbe8f4753454af9478c97e3..1c7dbae922497af8c08b6623e4d07977aa2c54a9 100644 GIT binary patch delta 784 zcmXZaT}V@L7{~G7M%hJ}`4UtRJEiGJH`C_QayBc>nZ4RrS@eQ}N^UdCViKK_Q9@ME zp^!)jvIq*6Y3aI*0)^=1qKhuVtMH=fMK{q!)c3G1#^?P0&;NPOIsctx+A%%lc>dmL zh8*~OYmXGe7OymoX}p4im6D5ni#AGc$R$-$80T;~2CAiRxEG^Xu}Pv;_izQy zAR{!3Uog)nUB&M{nd;=Cw?^vX2A|R1Shrc)gFTqSN!);4wUQriV=>NPABquuz6`cmwkqq+A@qGx!w87_?@aw3GZX zD3x=AqDFq?;0|duhLOWmAAZFVd_vy^ny!>0j$Bz*_k88ucEpvvkfb5TCzl{*ux&42R;sEm2HEc*uj@x)@QY?aa29W&|^XT7JoW5Ia; zx!!pEw6`N3ZLqd@T-HTTpR=mgn)lqboaF^YnFq9L=PMjm({)AA=Lt<XTJ!<`u>)u zlmmU}pfGkon!styp@%6}{Ue@0+abOHgZLCp9Kz%L5Z9RV8ds20hYSD4I9hq?f4+eu z^gX~k)+le6w3xy?{-$x^sI&;@k4XmpKx@Fs?!p(O@)^5XhPySHiVxH~5`F*TfUl;( aQCRw_%@%jRt=7Ejo-)7LC-N^n8TVg4t&fuc diff --git a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po index 5011a6a29..8de285d93 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po +++ b/docs/locale/ko/LC_MESSAGES/dev/virtualenvs.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: YoungSeon.Ahn \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -31,30 +31,27 @@ msgstr "이 튜토리얼은 Python 패키지 설치 및 사용을 안내합니 #: ../../dev/virtualenvs.rst:10 msgid "" -"It will show you how to install and use the necessary tools and make " -"strong recommendations on best practices. Keep in mind that Python is " -"used for a great many different purposes, and precisely how you want to " -"manage your dependencies may change based on how you decide to publish " -"your software. The guidance presented here is most directly applicable to" -" the development and deployment of network services (including web " -"applications), but is also very well suited to managing development and " -"testing environments for any kind of project." -msgstr "" -"필요한 도구를 설치 및 사용하고 best practice의 강력한 " -"권장 사항을 제시하는 방법을 알려드릴게요. " -"Python은 매우 다양한 용도로 사용되며, 소프트웨어 퍼블리싱 방법에 따라 종속성을 " -"관리하는 방법이 달라질 수 있습니다. 여기에 제시된 지침은 " -"네트워크 서비스(웹 애플리케이션 포함)의 개발과 배포에 가장 직접적으로 " -"적용되지만, 모든 종류의 프로젝트에 대한 개발 및 테스트 환경 관리에도 매우 적합합니다." +"It will show you how to install and use the necessary tools and make strong " +"recommendations on best practices. Keep in mind that Python is used for a " +"great many different purposes, and precisely how you want to manage your " +"dependencies may change based on how you decide to publish your software. " +"The guidance presented here is most directly applicable to the development " +"and deployment of network services (including web applications), but is also" +" very well suited to managing development and testing environments for any " +"kind of project." +msgstr "" +"필요한 도구를 설치 및 사용하고 best practice의 강력한 권장 사항을 제시하는 방법을 알려드릴게요. Python은 매우 다양한 " +"용도로 사용되며, 소프트웨어 퍼블리싱 방법에 따라 종속성을 관리하는 방법이 달라질 수 있습니다. 여기에 제시된 지침은 네트워크 서비스(웹" +" 애플리케이션 포함)의 개발과 배포에 가장 직접적으로 적용되지만, 모든 종류의 프로젝트에 대한 개발 및 테스트 환경 관리에도 매우 " +"적합합니다." #: ../../dev/virtualenvs.rst:18 msgid "" -"This guide is written for Python 3, however, these instructions should " -"work fine on Python 2.7—if you are still using it, for some reason." +"This guide is written for Python 3, however, these instructions should work " +"fine on Python 2.7—if you are still using it, for some reason." msgstr "" -"이 안내서 파이썬3를 대상으로 작성되었습니다. " -"하지만 이 안내사항은 파이썬 2.7에서도 잘 적용됩니다. " -"어떤 이유에서든 아직도 그걸 쓰고 있다면 말이지요." +"이 안내서 파이썬3를 대상으로 작성되었습니다. 하지만 이 안내사항은 파이썬 2.7에서도 잘 적용됩니다. 어떤 이유에서든 아직도 그걸 쓰고" +" 있다면 말이지요." #: ../../dev/virtualenvs.rst:23 msgid "Make sure you've got Python & pip" @@ -62,21 +59,20 @@ msgstr "Python과 pip가 있는지 확인하기" #: ../../dev/virtualenvs.rst:25 msgid "" -"Before you go any further, make sure you have Python and that it's " -"available from your command line. You can check this by simply running:" +"Before you go any further, make sure you have Python and that it's available" +" from your command line. You can check this by simply running:" msgstr "" -"더 진행하기 전에 파이썬이 설치되어 있는지, 커맨드라인에서 사용할 수 있는지 확인하십시오. " -"이 기능은 간단히 아래 명령어를 실행하기만 하면 확인할 수 있습니다." +"더 진행하기 전에 파이썬이 설치되어 있는지, 커맨드라인에서 사용할 수 있는지 확인하십시오. 이 기능은 간단히 아래 명령어를 실행하기만 " +"하면 확인할 수 있습니다." #: ../../dev/virtualenvs.rst:32 msgid "" -"You should get some output like ``3.6.2``. If you do not have Python, " -"please install the latest 3.x version from `python.org`_ or refer to the " +"You should get some output like ``3.6.2``. If you do not have Python, please" +" install the latest 3.x version from `python.org`_ or refer to the " "`Installing Python`_ section of this guide." msgstr "" -"``3.6.2`` 같은 출력이 나와야 합니다. " -"파이썬이 없는 경우, `python.org`_ 에서 최신 3.x 버전을 설치하거나 " -"이 가이드의 `Installing Python`_ 섹션을 참조하십시오." +"``3.6.2`` 같은 출력이 나와야 합니다. 파이썬이 없는 경우, `python.org`_ 에서 최신 3.x 버전을 설치하거나 이 " +"가이드의 `Installing Python`_ 섹션을 참조하십시오." #: ../../dev/virtualenvs.rst:36 msgid "If you're newcomer and you get an error like this:" @@ -84,35 +80,30 @@ msgstr "초심자이고 이런 에러가 나왔다면: " #: ../../dev/virtualenvs.rst:45 msgid "" -"It's because this command is intended to be run in a *shell* (also called" -" a *terminal* or *console*). See the Python for Beginners `getting " -"started tutorial`_ for an introduction to using your operating system's " -"shell and interacting with Python." +"It's because this command is intended to be run in a *shell* (also called a " +"*terminal* or *console*). See the Python for Beginners `getting started " +"tutorial`_ for an introduction to using your operating system's shell and " +"interacting with Python." msgstr "" -"이 명령은 *셸* ( *터미널* 또는 *콘솔* 이라고도 함)에서 실행되도록 " -"되어 있기 때문입니다. 운영 체제의 셸 사용 및 Python과의 상호 작용에 대한 자세한 내용은 " -"`getting started tutorial`_ 자습서를 참조하십시오." +"이 명령은 *셸* ( *터미널* 또는 *콘솔* 이라고도 함)에서 실행되도록 되어 있기 때문입니다. 운영 체제의 셸 사용 및 " +"Python과의 상호 작용에 대한 자세한 내용은 `getting started tutorial`_ 자습서를 참조하십시오." #: ../../dev/virtualenvs.rst:50 msgid "" -"Additionally, you'll need to make sure you have `pip`_ available. You can" -" check this by running:" -msgstr "" -"추가로 `pip`_ 가 동작하는지 확인해야 할 필요가 있을겁니다. " -"아래 명령어로 확인할 수 있습니다: " +"Additionally, you'll need to make sure you have `pip`_ available. You can " +"check this by running:" +msgstr "추가로 `pip`_ 가 동작하는지 확인해야 할 필요가 있을겁니다. 아래 명령어로 확인할 수 있습니다: " #: ../../dev/virtualenvs.rst:57 msgid "" -"If you installed Python from source, with an installer from " -"`python.org`_, or via `Homebrew`_ you should already have pip. If you're " -"on Linux and installed using your OS package manager, you may have to " -"`install pip `_ separately." +"If you installed Python from source, with an installer from `python.org`_, " +"or via `Homebrew`_ you should already have pip. If you're on Linux and " +"installed using your OS package manager, you may have to `install pip " +"`_ separately." msgstr "" -"소스에서 Python을 설치하거나 `python.org`_ 의 설치 프로그램을 사용하거나 " -"`Homebrew`_ 를 통해 Python을 설치한 경우 " -"이미 pip이 있어야 합니다. " -"Linux 사용자이고 OS 패키지 관리자를 사용하여 설치한 경우 " -"`pip 설치 `_ 를 별도로 해야 할 수 있습니다." +"소스에서 Python을 설치하거나 `python.org`_ 의 설치 프로그램을 사용하거나 `Homebrew`_ 를 통해 Python을 " +"설치한 경우 이미 pip이 있어야 합니다. Linux 사용자이고 OS 패키지 관리자를 사용하여 설치한 경우 `pip 설치 " +"`_ 를 별도로 해야 할 수 있습니다." #: ../../dev/virtualenvs.rst:69 msgid "Installing Pipenv" @@ -120,17 +111,15 @@ msgstr "Pipenv 설치하기" #: ../../dev/virtualenvs.rst:71 msgid "" -"`Pipenv`_ is a dependency manager for Python projects. If you're familiar" -" with Node.js' `npm`_ or Ruby's `bundler`_, it is similar in spirit to " -"those tools. While `pip`_ can install Python packages, Pipenv is " -"recommended as it's a higher-level tool that simplifies dependency " -"management for common use cases." +"`Pipenv`_ is a dependency manager for Python projects. If you're familiar " +"with Node.js' `npm`_ or Ruby's `bundler`_, it is similar in spirit to those " +"tools. While `pip`_ can install Python packages, Pipenv is recommended as " +"it's a higher-level tool that simplifies dependency management for common " +"use cases." msgstr "" -"`Pipenv`_ 는 Python 프로젝트의 종속성 관리자입니다. " -"만약 여러분이 Node.js의 `npm`_이나 Ruby의 `bundler`_ 에 익숙하다면, " -"Pipenv는 그 도구들과 비슷한 사상으로 만들어졌습니다. " -"Pip은 Python 패키지를 설치할 수 있지만 " -"Pipenv는 일반적인 사용 사례에 대한 의존성 관리를 단순화하는 고급 도구로서 하용하기를 권장합합니다." +"`Pipenv`_ 는 Python 프로젝트의 종속성 관리자입니다. 만약 여러분이 Node.js의 `npm`_이나 Ruby의 " +"`bundler`_ 에 익숙하다면, Pipenv는 그 도구들과 비슷한 사상으로 만들어졌습니다. Pip은 Python 패키지를 설치할 수 " +"있지만 Pipenv는 일반적인 사용 사례에 대한 의존성 관리를 단순화하는 고급 도구로서 하용하기를 권장합합니다." #: ../../dev/virtualenvs.rst:77 msgid "Use ``pip`` to install Pipenv:" @@ -139,45 +128,42 @@ msgstr "``pip``로 Pipenv를 설치하자:" #: ../../dev/virtualenvs.rst:84 msgid "" "This does a `user installation`_ to prevent breaking any system-wide " -"packages. If ``pipenv`` isn't available in your shell after installation," -" you'll need to add the `user base`_'s binary directory to your ``PATH``." +"packages. If ``pipenv`` isn't available in your shell after installation, " +"you'll need to add the `user base`_'s binary directory to your ``PATH``." msgstr "" -"이렇게 하면 시스템 전체 패키지가 박살나지 않도록 `user installation`_ 를 수행할 수 있습니다. " -"설치 후 셸에서 ``pipenv`` 를 사용할 수 없는 경우 `user base`_ 의 바이너리 " -"디렉토리를 ``PATH`` 에 추가해야 합니다." +"이렇게 하면 시스템 전체 패키지가 박살나지 않도록 `user installation`_ 를 수행할 수 있습니다. 설치 후 셸에서 " +"``pipenv`` 를 사용할 수 없는 경우 `user base`_ 의 바이너리 디렉토리를 ``PATH`` 에 추가해야 합니다." #: ../../dev/virtualenvs.rst:88 msgid "" -"On Linux and macOS you can find the user base binary directory by running" -" ``python -m site --user-base`` and adding ``bin`` to the end. For " -"example, this will typically print ``~/.local`` (with ``~`` expanded to " -"the absolute path to your home directory) so you'll need to add " -"``~/.local/bin`` to your ``PATH``. You can set your ``PATH`` permanently " -"by `modifying ~/.profile`_." +"On Linux and macOS you can find the user base binary directory by running " +"``python -m site --user-base`` and adding ``bin`` to the end. For example, " +"this will typically print ``~/.local`` (with ``~`` expanded to the absolute " +"path to your home directory) so you'll need to add ``~/.local/bin`` to your " +"``PATH``. You can set your ``PATH`` permanently by `modifying ~/.profile`_." msgstr "" -"Linux 및 macOS에서는 ``python -m site --user-base`` 를 실행하고 끝에 ``bin`` 을 " -"추가하면 사용자 베이스 바이너리 디렉토리를 찾을 수 있습니다. " -"예를 들어, 일반적으로 ``~/.local`` 에서 ``~`` 는 홈 디렉토리의 절대 경로로 인식되므로 " -"``PATH`` 에 ~/.local/bin을 추가해야 합니다. " -"`~/.profile 를 수정하여`_ ``PATH`` 를 영구적으로 설정할 수 있습니다." +"Linux 및 macOS에서는 ``python -m site --user-base`` 를 실행하고 끝에 ``bin`` 을 추가하면 사용자" +" 베이스 바이너리 디렉토리를 찾을 수 있습니다. 예를 들어, 일반적으로 ``~/.local`` 에서 ``~`` 는 홈 디렉토리의 절대 " +"경로로 인식되므로 ``PATH`` 에 ~/.local/bin을 추가해야 합니다. `~/.profile 를 수정하여`_ ``PATH`` 를" +" 영구적으로 설정할 수 있습니다." #: ../../dev/virtualenvs.rst:95 msgid "" -"On Windows you can find the user base binary directory by running ``py -m" -" site --user-site`` and replacing ``site-packages`` with ``Scripts``. For" -" example, this could return " -"``C:\\Users\\Username\\AppData\\Roaming\\Python36\\site-packages`` so you" -" would need to set your ``PATH`` to include " -"``C:\\Users\\Username\\AppData\\Roaming\\Python36\\Scripts``. You can set" -" your user ``PATH`` permanently in the `Control Panel`_. You may need to " -"log out for the ``PATH`` changes to take effect." +"On Windows you can find the user base binary directory by running ``py -m " +"site --user-site`` and replacing ``site-packages`` with ``Scripts``. For " +"example, this could return " +"``C:\\Users\\Username\\AppData\\Roaming\\Python36\\site-packages`` so you " +"would need to set your ``PATH`` to include " +"``C:\\Users\\Username\\AppData\\Roaming\\Python36\\Scripts``. You can set " +"your user ``PATH`` permanently in the `Control Panel`_. You may need to log " +"out for the ``PATH`` changes to take effect." msgstr "" "윈도우즈에서 ``py -m site --user-site`` 를 실행하고 ``site-packages`` 를 ``Scripts`` 로 " -"바꾸면 사용자 베이스 바이너리 디렉토리를 찾을 수 있습니다. " -"예를 들어 ``C:\\Users\\Username\\AppData\\Roaming\\Python36\\site-packages`` 가 리턴하기 위하여 " -"``PATH`` 에 ``C:\\Users\\Username\\AppData\\Roaming\\Python36\\Scripts`` 를 추가해야 합니다. " -"`제어판`_ 에서 사용자 ``PATH`` 를 영구적으로 설정할 수 있습니다. " -"``PATH`` 변경 사항을 적용하려면 로그아웃해야 할 수도 있습니다." +"바꾸면 사용자 베이스 바이너리 디렉토리를 찾을 수 있습니다. 예를 들어 " +"``C:\\Users\\Username\\AppData\\Roaming\\Python36\\site-packages`` 가 리턴하기 " +"위하여 ``PATH`` 에 ``C:\\Users\\Username\\AppData\\Roaming\\Python36\\Scripts`` " +"를 추가해야 합니다. `제어판`_ 에서 사용자 ``PATH`` 를 영구적으로 설정할 수 있습니다. ``PATH`` 변경 사항을 적용하려면" +" 로그아웃해야 할 수도 있습니다." #: ../../dev/virtualenvs.rst:113 msgid "Installing packages for your project" @@ -186,26 +172,23 @@ msgstr "프로젝트에 패키지 설치하기" #: ../../dev/virtualenvs.rst:115 msgid "" "Pipenv manages dependencies on a per-project basis. To install packages, " -"change into your project's directory (or just an empty directory for this" -" tutorial) and run:" +"change into your project's directory (or just an empty directory for this " +"tutorial) and run:" msgstr "" -"Pipenv는 프로젝트별로 종속성을 관리합니다. " -"패키지를 설치하려면 프로젝트의 디렉터리(또는 이 튜토리얼의 빈 디렉터리만)로 " -"이동하여 다음 명령을 실행하십시오." +"Pipenv는 프로젝트별로 종속성을 관리합니다. 패키지를 설치하려면 프로젝트의 디렉터리(또는 이 튜토리얼의 빈 디렉터리만)로 이동하여 " +"다음 명령을 실행하십시오." #: ../../dev/virtualenvs.rst:124 msgid "" "Pipenv will install the excellent `Requests`_ library and create a " -"``Pipfile`` for you in your project's directory. The `Pipfile`_ is used " -"to track which dependencies your project needs in case you need to re-" -"install them, such as when you share your project with others. You should" -" get output similar to this (although the exact paths shown will vary):" +"``Pipfile`` for you in your project's directory. The `Pipfile`_ is used to " +"track which dependencies your project needs in case you need to re-install " +"them, such as when you share your project with others. You should get output" +" similar to this (although the exact paths shown will vary):" msgstr "" -"Pipenv가 멋진 `Requests`_ 라이브러릴 설치했습니다. " -"긜고 프로젝트 디렉터리에 ``Pipfile`` 을 만듭니다. ``Pipfile`` 은 프로젝트를 " -"다른 사용자와 공유할 때와 같이 프로젝트를 다시 설치해야 하는 경우 프로젝트에 " -"필요한 종속성을 추적하는 데 사용됩니다. " -"아래와 유사한 출력을 얻어야 합니다(표시된 정확한 경로는 다르지만)." +"Pipenv가 멋진 `Requests`_ 라이브러릴 설치했습니다. 긜고 프로젝트 디렉터리에 ``Pipfile`` 을 만듭니다. " +"``Pipfile`` 은 프로젝트를 다른 사용자와 공유할 때와 같이 프로젝트를 다시 설치해야 하는 경우 프로젝트에 필요한 종속성을 " +"추적하는 데 사용됩니다. 아래와 유사한 출력을 얻어야 합니다(표시된 정확한 경로는 다르지만)." #: ../../dev/virtualenvs.rst:163 msgid "Using installed packages" @@ -213,10 +196,9 @@ msgstr "설치된 패키지 사용하기" #: ../../dev/virtualenvs.rst:165 msgid "" -"Now that Requests is installed you can create a simple ``main.py`` file " -"to use it:" -msgstr "" -"이제 Requests가 설치되었으므로 간단한 ``main.py`` 파일을 작성하여 사용할 수 있습니다." +"Now that Requests is installed you can create a simple ``main.py`` file to " +"use it:" +msgstr "이제 Requests가 설치되었으므로 간단한 ``main.py`` 파일을 작성하여 사용할 수 있습니다." #: ../../dev/virtualenvs.rst:176 msgid "Then you can run this script using ``pipenv run``:" @@ -228,13 +210,12 @@ msgstr "아래와 비슷한 결과를 얻어야 합니다:" #: ../../dev/virtualenvs.rst:188 msgid "" -"Using ``$ pipenv run`` ensures that your installed packages are available" -" to your script. It's also possible to spawn a new shell that ensures all" -" commands have access to your installed packages with ``$ pipenv shell``." +"Using ``$ pipenv run`` ensures that your installed packages are available to" +" your script. It's also possible to spawn a new shell that ensures all " +"commands have access to your installed packages with ``$ pipenv shell``." msgstr "" -"``$ pipenv run`` 를 사용하면 설치된 패키지를 스크립트에서 사용할 수 있습니다. " -"또한 ``$ pipenv shell`` 을 사용하여 실행하는 모든 명령이 " -"설치된 패키지에 액세스할 수 있도록 하는 새 셸을 생성할 수도 있습니다." +"``$ pipenv run`` 를 사용하면 설치된 패키지를 스크립트에서 사용할 수 있습니다. 또한 ``$ pipenv shell`` 을 " +"사용하여 실행하는 모든 명령이 설치된 패키지에 액세스할 수 있도록 하는 새 셸을 생성할 수도 있습니다." #: ../../dev/virtualenvs.rst:194 msgid "Next steps" @@ -242,11 +223,8 @@ msgstr "다음 단계" #: ../../dev/virtualenvs.rst:196 msgid "" -"Congratulations, you now know how to install and use Python packages! ✨ 🍰" -" ✨" -msgstr "" -"축하해요! 이제 파이썬 패키지를 설치하고 사용하는 방법을 익혔습니다! ✨ 🍰" -" ✨" +"Congratulations, you now know how to install and use Python packages! ✨ 🍰 ✨" +msgstr "축하해요! 이제 파이썬 패키지를 설치하고 사용하는 방법을 익혔습니다! ✨ 🍰 ✨" #: ../../dev/virtualenvs.rst:201 msgid "Lower level: virtualenv" @@ -255,14 +233,12 @@ msgstr "하위계층: virtualenv" #: ../../dev/virtualenvs.rst:203 msgid "" "`virtualenv `_ is a tool to create " -"isolated Python environments. virtualenv creates a folder which contains " -"all the necessary executables to use the packages that a Python project " -"would need." +"isolated Python environments. virtualenv creates a folder which contains all" +" the necessary executables to use the packages that a Python project would " +"need." msgstr "" -"`virtualenv `_ 는 격리된 파이썬 환경을 만들기 " -"위한 도구이다. " -"virtualenv는 Python 프로젝트에 필요한 패키지를 사용하는 데 필요한 모든 " -"실행 파일이 포함된 폴더를 생성합니다." +"`virtualenv `_ 는 격리된 파이썬 환경을 만들기 위한 " +"도구이다. virtualenv는 Python 프로젝트에 필요한 패키지를 사용하는 데 필요한 모든 실행 파일이 포함된 폴더를 생성합니다." #: ../../dev/virtualenvs.rst:207 msgid "It can be used standalone, in place of Pipenv." @@ -286,45 +262,38 @@ msgstr "프로젝트에 가상 환경을 생성하자:" #: ../../dev/virtualenvs.rst:231 msgid "" -"``virtualenv venv`` will create a folder in the current directory which " -"will contain the Python executable files, and a copy of the ``pip`` " -"library which you can use to install other packages. The name of the " -"virtual environment (in this case, it was ``venv``) can be anything; " -"omitting the name will place the files in the current directory instead." +"``virtualenv venv`` will create a folder in the current directory which will" +" contain the Python executable files, and a copy of the ``pip`` library " +"which you can use to install other packages. The name of the virtual " +"environment (in this case, it was ``venv``) can be anything; omitting the " +"name will place the files in the current directory instead." msgstr "" -"``virtualenv venv`` 는 파이썬 실행 파일이 들어있는 현재 디렉토리에 " -"폴더를 하나 만들고 " -"``pip`` 라이브러리(다른 패키지를 설치하는 데 사용할)의 복사본을 만듭니다." -"가상 환경의 이름(여기서는 ``venv``)은 뭐든 가능합니다. 그리고 " -"이름을 생략하면 파일이 대신 현재 디렉토리에 배치됩니다." +"``virtualenv venv`` 는 파이썬 실행 파일이 들어있는 현재 디렉토리에 폴더를 하나 만들고 ``pip`` 라이브러리(다른 " +"패키지를 설치하는 데 사용할)의 복사본을 만듭니다.가상 환경의 이름(여기서는 ``venv``)은 뭐든 가능합니다. 그리고 이름을 생략하면" +" 파일이 대신 현재 디렉토리에 배치됩니다." #: ../../dev/virtualenvs.rst:238 msgid "" -"'venv' is the general convention used globally. As it is readily " -"available in ignore files (eg: .gitignore')" +"'venv' is the general convention used globally. As it is readily available " +"in ignore files (eg: .gitignore')" msgstr "" -"'venv' 는 전세계적으로 사용되는 일반적인 컨벤션입니다. " -"ignore 파일에서 쉽게 처리 가능합니다(예: .gitignore)." +"'venv' 는 전세계적으로 사용되는 일반적인 컨벤션입니다. ignore 파일에서 쉽게 처리 가능합니다(예: .gitignore)." #: ../../dev/virtualenvs.rst:240 msgid "" -"This creates a copy of Python in whichever directory you ran the command " -"in, placing it in a folder named :file:`venv`." -msgstr "" -"이렇게 하면 명령을 실행한 디렉터리에 Python의 복사본이 생성되어 :file:`venv` " -"라는 폴더에 저장됩니다." +"This creates a copy of Python in whichever directory you ran the command in," +" placing it in a folder named :file:`venv`." +msgstr "이렇게 하면 명령을 실행한 디렉터리에 Python의 복사본이 생성되어 :file:`venv` 라는 폴더에 저장됩니다." #: ../../dev/virtualenvs.rst:243 msgid "" -"You can also use the Python interpreter of your choice (like " -"``python2.7``)." -msgstr "" -"``python2.7`` 과 같은 Python 인터프리터를 선택해서 사용할 수도 있습니다." +"You can also use the Python interpreter of your choice (like ``python2.7``)." +msgstr "``python2.7`` 과 같은 Python 인터프리터를 선택해서 사용할 수도 있습니다." #: ../../dev/virtualenvs.rst:250 -msgid "or change the interpreter globally with an env variable in ``~/.bashrc``:" -msgstr "" -"아니면 ``~/.bashrc`` 로 전역 환경에서 인터프리터 환경 변수를 바꿀 수도 있습니다." +msgid "" +"or change the interpreter globally with an env variable in ``~/.bashrc``:" +msgstr "아니면 ``~/.bashrc`` 로 전역 환경에서 인터프리터 환경 변수를 바꿀 수도 있습니다." #: ../../dev/virtualenvs.rst:256 msgid "To begin using the virtual environment, it needs to be activated:" @@ -332,26 +301,24 @@ msgstr "가상 환경 사용을 시작하려면 가상 환경을 활성화해야 #: ../../dev/virtualenvs.rst:262 msgid "" -"The name of the current virtual environment will now appear on the left " -"of the prompt (e.g. ``(venv)Your-Computer:project_folder UserName$``) to " -"let you know that it's active. From now on, any package that you install " -"using pip will be placed in the ``venv`` folder, isolated from the global" -" Python installation." +"The name of the current virtual environment will now appear on the left of " +"the prompt (e.g. ``(venv)Your-Computer:project_folder UserName$``) to let " +"you know that it's active. From now on, any package that you install using " +"pip will be placed in the ``venv`` folder, isolated from the global Python " +"installation." msgstr "" -"현재 가상 환경의 이름이 프롬프트 왼쪽에 나타납니다" -"(예: ``(venv)Your-Computer:project_folder UserName$``)" -"이것이 가상환경이 활성화되어 있음을 알려 줍니다. " -"이제부터 pip을 사용하여 설치하는 모든 패키지는 " -"글로벌 Python 설치환경과 격리된 ``venv`` 폴더에 배치됩니다." +"현재 가상 환경의 이름이 프롬프트 왼쪽에 나타납니다(예: ``(venv)Your-Computer:project_folder " +"UserName$``)이것이 가상환경이 활성화되어 있음을 알려 줍니다. 이제부터 pip을 사용하여 설치하는 모든 패키지는 글로벌 " +"Python 설치환경과 격리된 ``venv`` 폴더에 배치됩니다." #: ../../dev/virtualenvs.rst:267 msgid "" -"For Windows, the same command mentioned in step 1 can be used to create a" -" virtual environment. However, activating the environment requires a " -"slightly different command." +"For Windows, the same command mentioned in step 1 can be used to create a " +"virtual environment. However, activating the environment requires a slightly" +" different command." msgstr "" -"윈도우즈의 경우 1단계에서 언급한 동일한 명령을 사용하여 가상 환경을 생성할 수 " -"있습니다. 그러나 가상상환경을 활성화하려면 약간 다른 명령이 필요합니다." +"윈도우즈의 경우 1단계에서 언급한 동일한 명령을 사용하여 가상 환경을 생성할 수 있습니다. 그러나 가상상환경을 활성화하려면 약간 다른 " +"명령이 필요합니다." #: ../../dev/virtualenvs.rst:269 msgid "Assuming that you are in your project directory:" @@ -363,42 +330,38 @@ msgstr "``pip`` 명령으로 패키지를 설치해봅시다: " #: ../../dev/virtualenvs.rst:281 msgid "" -"If you are done working in the virtual environment for the moment, you " -"can deactivate it:" -msgstr "" -"잠시 가상환경에서의 작업을 멈추려면 이렇게 비활성화 할 수도 있습니다: " +"If you are done working in the virtual environment for the moment, you can " +"deactivate it:" +msgstr "잠시 가상환경에서의 작업을 멈추려면 이렇게 비활성화 할 수도 있습니다: " #: ../../dev/virtualenvs.rst:288 msgid "" -"This puts you back to the system's default Python interpreter with all " -"its installed libraries." -msgstr "" -"이렇게 하면 설치된 모든 라이브러리와 함께 시스템의 기본 Python 인터프리터로 돌아갑니다." +"This puts you back to the system's default Python interpreter with all its " +"installed libraries." +msgstr "이렇게 하면 설치된 모든 라이브러리와 함께 시스템의 기본 Python 인터프리터로 돌아갑니다." #: ../../dev/virtualenvs.rst:291 msgid "" -"To delete a virtual environment, just delete its folder. (In this case, " -"it would be ``rm -rf venv``.)" -msgstr "" -"가상 환경을 삭제하려면 해당 폴더를 삭제하십시오. (이 경우, ``rm -rf venv``)" +"To delete a virtual environment, just delete its folder. (In this case, it " +"would be ``rm -rf venv``.)" +msgstr "가상 환경을 삭제하려면 해당 폴더를 삭제하십시오. (이 경우, ``rm -rf venv``)" #: ../../dev/virtualenvs.rst:294 msgid "" -"After a while, though, you might end up with a lot of virtual " -"environments littered across your system, and it's possible you'll forget" -" their names or where they were placed." +"After a while, though, you might end up with a lot of virtual environments " +"littered across your system, and it's possible you'll forget their names or " +"where they were placed." msgstr "" -"개발을 오래 하다보면 시스템 전체에 많은 가상 환경이 흩어져 있을 수 있습니다. " -"그러다보면 가상환경의 이름이나 위치가 기억나지 않을 수도 있습니다. " -"(역주: 그래서 어쩌라는 거임... 이름을 venv로 하는 게 좋다고?)" +"개발을 오래 하다보면 시스템 전체에 많은 가상 환경이 흩어져 있을 수 있습니다. 그러다보면 가상환경의 이름이나 위치가 기억나지 않을 수도" +" 있습니다. (역주: 그래서 어쩌라는 거임... 이름을 venv로 하는 게 좋다고?)" #: ../../dev/virtualenvs.rst:299 msgid "" -"Python has included venv module from version 3.3. For more details: `venv" -" `_." +"Python has included venv module from version 3.3. For more details: `venv " +"`_." msgstr "" -"파이썬3.3 버전부터는 venv 모듈을 포함하고 있다. 자세한 내용은 `venv" -" `_." +"파이썬3.3 버전부터는 venv 모듈을 포함하고 있다. 자세한 내용은 `venv " +"`_." #: ../../dev/virtualenvs.rst:302 msgid "Other Notes" @@ -408,45 +371,40 @@ msgstr "기타 참고 사항" msgid "" "Running ``virtualenv`` with the option ``--no-site-packages`` will not " "include the packages that are installed globally. This can be useful for " -"keeping the package list clean in case it needs to be accessed later. " -"[This is the default behavior for ``virtualenv`` 1.7 and later.]" +"keeping the package list clean in case it needs to be accessed later. [This " +"is the default behavior for ``virtualenv`` 1.7 and later.]" msgstr "" -"``--no-site-packages`` 옵션을 줘서 ``virtualenv`` 를 실행하면 " -"전역환경에 설치된 파이썬 패키지를 가져오지 않습니다. " -"나중에 다시 쓸 패키지 리스트를 깔끔하게 유지하는 데 유용합니다. " -"[``virtualenv`` 1.7 이후부터는 이게 기본 동작입니다.]" +"``--no-site-packages`` 옵션을 줘서 ``virtualenv`` 를 실행하면 전역환경에 설치된 파이썬 패키지를 가져오지 " +"않습니다. 나중에 다시 쓸 패키지 리스트를 깔끔하게 유지하는 데 유용합니다. [``virtualenv`` 1.7 이후부터는 이게 기본 " +"동작입니다.]" #: ../../dev/virtualenvs.rst:309 msgid "" -"In order to keep your environment consistent, it's a good idea to " -"\"freeze\" the current state of the environment packages. To do this, " -"run:" +"In order to keep your environment consistent, it's a good idea to \"freeze\"" +" the current state of the environment packages. To do this, run:" msgstr "" -"개발환경을 일관성 있게 유지하려면 개발환경 패키지의 현재 " -"상태를 \"freeze\" 하는 것이 좋습니다. 이렇게 하려면 다음을 실행합니다." +"개발환경을 일관성 있게 유지하려면 개발환경 패키지의 현재 상태를 \"freeze\" 하는 것이 좋습니다. 이렇게 하려면 다음을 " +"실행합니다." #: ../../dev/virtualenvs.rst:316 msgid "" -"This will create a :file:`requirements.txt` file, which contains a simple" -" list of all the packages in the current environment, and their " -"respective versions. You can see the list of installed packages without " -"the requirements format using ``pip list``. Later it will be easier for a" -" different developer (or you, if you need to re-create the environment) " -"to install the same packages using the same versions:" +"This will create a :file:`requirements.txt` file, which contains a simple " +"list of all the packages in the current environment, and their respective " +"versions. You can see the list of installed packages without the " +"requirements format using ``pip list``. Later it will be easier for a " +"different developer (or you, if you need to re-create the environment) to " +"install the same packages using the same versions:" msgstr "" -"그러면 :file:`requirements.txt` 파일이 생성됩니다. " -"이 파일에는 현재 환경의 모든 패키지와 해당 버전의 단순한 목록이 적혀있습니다." -"requirements 포맷을 쓰지 않더라도 ``pip list`` 로 ㅎ녀재 설치되어 있는 " -"패키지 목록을 확인할 수 있습니다. " -"이것이 나중에 다른 개발자가 동일한 버전을 사용하여 " -"동일한 패키지를 설치하는 작업(또는 환경을 다시 만들어야 하는 경우)을 더 쉽게 만들어줍니다." +"그러면 :file:`requirements.txt` 파일이 생성됩니다. 이 파일에는 현재 환경의 모든 패키지와 해당 버전의 단순한 목록이" +" 적혀있습니다.requirements 포맷을 쓰지 않더라도 ``pip list`` 로 ㅎ녀재 설치되어 있는 패키지 목록을 확인할 수 " +"있습니다. 이것이 나중에 다른 개발자가 동일한 버전을 사용하여 동일한 패키지를 설치하는 작업(또는 환경을 다시 만들어야 하는 경우)을 더" +" 쉽게 만들어줍니다." #: ../../dev/virtualenvs.rst:327 msgid "" -"This can help ensure consistency across installations, across " -"deployments, and across developers." -msgstr "" -"위 명령을 통해 설치본, 배포본 및 개발자 간에 개발환경의 일관성을 유지할 수 있습니다." +"This can help ensure consistency across installations, across deployments, " +"and across developers." +msgstr "위 명령을 통해 설치본, 배포본 및 개발자 간에 개발환경의 일관성을 유지할 수 있습니다." #: ../../dev/virtualenvs.rst:330 msgid "" @@ -454,8 +412,7 @@ msgid "" "control by adding it to the ignore list (see :ref:`Version Control " "Ignores`)." msgstr "" -"마지막으로 가상 환경 폴더를 ignore 목록에 추가하여 소스 컨트롤 도구에서 " -"제외해야 합니다(참고하세요 :ref:`버전 컨트롤 " +"마지막으로 가상 환경 폴더를 ignore 목록에 추가하여 소스 컨트롤 도구에서 제외해야 합니다(참고하세요 :ref:`버전 컨트롤 " "ignore`)." #: ../../dev/virtualenvs.rst:336 @@ -465,26 +422,25 @@ msgstr "virtualenvwrapper" #: ../../dev/virtualenvs.rst:338 msgid "" "`virtualenvwrapper " -"`_ " -"provides a set of commands which makes working with virtual environments " -"much more pleasant. It also places all your virtual environments in one " -"place." +"`_ provides a" +" set of commands which makes working with virtual environments much more " +"pleasant. It also places all your virtual environments in one place." msgstr "" "`virtualenvwrapper " -"`_ 는" -"가상 환경에서의 작업을 훨씬 더 즐겁게 해주는 일련의 명령을 제공합니다. " -"또한 모든 가상 환경을 한 곳에 배치합니다." +"`_ 는가상 환경에서의 " +"작업을 훨씬 더 즐겁게 해주는 일련의 명령을 제공합니다. 또한 모든 가상 환경을 한 곳에 배치합니다." #: ../../dev/virtualenvs.rst:342 ../../dev/virtualenvs.rst:354 msgid "To install (make sure **virtualenv** is already installed):" -msgstr "" -"설치하려면(**virtualenv** 가 먼저 설치되어 있는지부터 확인하시고):" +msgstr "설치하려면(**virtualenv** 가 먼저 설치되어 있는지부터 확인하시고):" #: ../../dev/virtualenvs.rst:350 msgid "" "(`Full virtualenvwrapper install instructions " "`_.)" msgstr "" +"(`virtualenvwrapper 전체 설치 안내 " +"`_.)" #: ../../dev/virtualenvs.rst:352 msgid "" @@ -496,7 +452,7 @@ msgstr "" #: ../../dev/virtualenvs.rst:360 msgid "In Windows, the default path for WORKON_HOME is %USERPROFILE%\\\\Envs" -msgstr "Windows에서는 WORKON_HOME 의 기본 path가 %USERPROFILE%\Envs 입니다." +msgstr "Windows에서는 WORKON_HOME 의 기본 path가 %USERPROFILE%\\Envs 입니다." #: ../../dev/virtualenvs.rst:365 msgid "Create a virtual environment:" @@ -513,11 +469,11 @@ msgstr "가상환경에서 작업하기:" #: ../../dev/virtualenvs.rst:379 msgid "" "Alternatively, you can make a project, which creates the virtual " -"environment, and also a project directory inside ``$WORKON_HOME``, which " -"is ``cd``-ed into when you ``workon project_folder``." +"environment, and also a project directory inside ``$WORKON_HOME``, which is " +"``cd``-ed into when you ``workon project_folder``." msgstr "" -"대신 가상환경을 생성하고, ``workon project_folder`` 명령을 하기 전의 위치인 " -"``$WORKON_HOME`` 디렉토리 안에 프로젝트 디렉토리를 생성할 수도 있습니다. " +"대신 가상환경을 생성하고, ``workon project_folder`` 명령을 하기 전의 위치인 ``$WORKON_HOME`` 디렉토리" +" 안에 프로젝트 디렉토리를 생성할 수도 있습니다. " #: ../../dev/virtualenvs.rst:387 msgid "" @@ -525,16 +481,16 @@ msgid "" "really helps when you have a lot of environments and have trouble " "remembering their names." msgstr "" -"**virtualenvwrapper** 는 환경 이름의 tab-자동완성 기능을 지원합니다. " -"이건 아주 많은 환경이 있고 각각의 이름을 기억하는게 힘들 때 아주 도움이 됩니다. " +"**virtualenvwrapper** 는 환경 이름의 tab-자동완성 기능을 지원합니다. 이건 아주 많은 환경이 있고 각각의 이름을 " +"기억하는게 힘들 때 아주 도움이 됩니다. " #: ../../dev/virtualenvs.rst:391 msgid "" -"``workon`` also deactivates whatever environment you are currently in, so" -" you can quickly switch between environments." +"``workon`` also deactivates whatever environment you are currently in, so " +"you can quickly switch between environments." msgstr "" -"``workon`` 은 현재 어느 디렉토리에서 작업하고 있든 가상환경을 비활성화 할 수 있습니다. " -"덕분에 환경 간 전환을 빠르게 할 수 있습니다." +"``workon`` 은 현재 어느 디렉토리에서 작업하고 있든 가상환경을 비활성화 할 수 있습니다. 덕분에 환경 간 전환을 빠르게 할 수 " +"있습니다." #: ../../dev/virtualenvs.rst:394 msgid "Deactivating is still the same:" @@ -550,7 +506,7 @@ msgstr "기타 유용한 명령어" #: ../../dev/virtualenvs.rst:410 msgid "``lsvirtualenv``" -msgstr "" +msgstr "``lsvirtualenv``" #: ../../dev/virtualenvs.rst:410 msgid "List all of the environments." @@ -558,28 +514,26 @@ msgstr "모든 환경의 목록을 보여준다." #: ../../dev/virtualenvs.rst:414 msgid "``cdvirtualenv``" -msgstr "" +msgstr "``cdvirtualenv``" #: ../../dev/virtualenvs.rst:413 msgid "" -"Navigate into the directory of the currently activated virtual " -"environment, so you can browse its :file:`site-packages`, for example." +"Navigate into the directory of the currently activated virtual environment, " +"so you can browse its :file:`site-packages`, for example." msgstr "" -"현재 활성화 된 가상 환경의 디렉토리로 이동한다. " -"그리하여 :file:`site-packages` 같은 것들을 확인할 수 있다." +"현재 활성화 된 가상 환경의 디렉토리로 이동한다. 그리하여 :file:`site-packages` 같은 것들을 확인할 수 있다." #: ../../dev/virtualenvs.rst:417 msgid "``cdsitepackages``" -msgstr "" +msgstr "``cdsitepackages``" #: ../../dev/virtualenvs.rst:417 msgid "Like the above, but directly into :file:`site-packages` directory." -msgstr "" -"위와 비슷하지만 :file:`site-packages` 디렉토리로 바로 이동한다." +msgstr "위와 비슷하지만 :file:`site-packages` 디렉토리로 바로 이동한다." #: ../../dev/virtualenvs.rst:420 msgid "``lssitepackages``" -msgstr "" +msgstr "``lssitepackages``" #: ../../dev/virtualenvs.rst:420 msgid "Shows contents of :file:`site-packages` directory." @@ -595,29 +549,28 @@ msgstr "" #: ../../dev/virtualenvs.rst:425 msgid "virtualenv-burrito" -msgstr "" +msgstr "virtualenv-burrito" #: ../../dev/virtualenvs.rst:427 msgid "" -"With `virtualenv-burrito `_, you can have a working virtualenv + virtualenvwrapper " -"environment in a single command." +"With `virtualenv-burrito `_," +" you can have a working virtualenv + virtualenvwrapper environment in a " +"single command." msgstr "" -"`virtualenv-burrito `_ 를 사용하면 명령어 한 방으로 " -"virtualenv 와 virtualenvwrapper 를 함께 사용할 수 있다." +"`virtualenv-burrito `_ 를 " +"사용하면 명령어 한 방으로 virtualenv 와 virtualenvwrapper 를 함께 사용할 수 있다." #: ../../dev/virtualenvs.rst:431 msgid "direnv" -msgstr "" +msgstr "direnv" #: ../../dev/virtualenvs.rst:432 msgid "" "When you ``cd`` into a directory containing a :file:`.env`, `direnv " "`_ automagically activates the environment." msgstr "" -":file:`.env` 가 있는 디렉토리로 ``cd`` 할 때 `direnv " -"`_ 는 자동으로 가상환경을 활성화한다. " +":file:`.env` 가 있는 디렉토리로 ``cd`` 할 때 `direnv `_ 는 자동으로 " +"가상환경을 활성화한다. " #: ../../dev/virtualenvs.rst:435 msgid "Install it on Mac OS X using ``brew``:" @@ -634,34 +587,26 @@ msgstr "리눅스라면 `direnv.net `_ 를 참고하자." #~ msgstr "" #~ msgid "" -#~ "A Virtual Environment is a tool to" -#~ " keep the dependencies required by " -#~ "different projects in separate places, " -#~ "by creating virtual Python environments " -#~ "for them. It solves the \"Project " -#~ "X depends on version 1.x but, " -#~ "Project Y needs 4.x\" dilemma, and " -#~ "keeps your global site-packages " +#~ "A Virtual Environment is a tool to keep the dependencies required by " +#~ "different projects in separate places, by creating virtual Python " +#~ "environments for them. It solves the \"Project X depends on version 1.x but," +#~ " Project Y needs 4.x\" dilemma, and keeps your global site-packages " #~ "directory clean and manageable." #~ msgstr "" #~ msgid "" -#~ "For example, you can work on a " -#~ "project which requires Django 1.10 while" -#~ " also maintaining a project which " -#~ "requires Django 1.8." +#~ "For example, you can work on a project which requires Django 1.10 while also" +#~ " maintaining a project which requires Django 1.8." #~ msgstr "" #~ msgid "virtualenv" #~ msgstr "" #~ msgid "" -#~ "`virtualenv `_ is" -#~ " a tool to create isolated Python " -#~ "environments. virtualenv creates a folder " -#~ "which contains all the necessary " -#~ "executables to use the packages that " -#~ "a Python project would need." +#~ "`virtualenv `_ is a tool to create " +#~ "isolated Python environments. virtualenv creates a folder which contains all" +#~ " the necessary executables to use the packages that a Python project would " +#~ "need." #~ msgstr "" #~ msgid "You can also use a Python interpreter of your choice." @@ -671,65 +616,46 @@ msgstr "리눅스라면 `direnv.net `_ 를 참고하자." #~ msgstr "" #~ msgid "" -#~ "The name of the current virtual " -#~ "environment will now appear on the " -#~ "left of the prompt (e.g. ``(venv" -#~ ")Your-Computer:your_project UserName$)`` to let" -#~ " you know that it's active. From " -#~ "now on, any package that you " -#~ "install using pip will be placed " -#~ "in the ``venv`` folder, isolated from" -#~ " the global Python installation." +#~ "The name of the current virtual environment will now appear on the left of " +#~ "the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to let you " +#~ "know that it's active. From now on, any package that you install using pip " +#~ "will be placed in the ``venv`` folder, isolated from the global Python " +#~ "installation." #~ msgstr "" #~ msgid "Install packages as usual, for example:" #~ msgstr "" #~ msgid "" -#~ "After a while, though, you might " -#~ "end up with a lot of virtual " -#~ "environments littered across your system, " -#~ "and its possible you'll forget their " -#~ "names or where they were placed." +#~ "After a while, though, you might end up with a lot of virtual environments " +#~ "littered across your system, and its possible you'll forget their names or " +#~ "where they were placed." #~ msgstr "" #~ msgid "" -#~ "Running ``virtualenv`` with the option " -#~ ":option:`--no-site-packages` will not " -#~ "include the packages that are installed" -#~ " globally. This can be useful for " -#~ "keeping the package list clean in " -#~ "case it needs to be accessed " -#~ "later. [This is the default behavior " -#~ "for ``virtualenv`` 1.7 and later.]" +#~ "Running ``virtualenv`` with the option :option:`--no-site-packages` will not" +#~ " include the packages that are installed globally. This can be useful for " +#~ "keeping the package list clean in case it needs to be accessed later. [This " +#~ "is the default behavior for ``virtualenv`` 1.7 and later.]" #~ msgstr "" #~ msgid "" -#~ "In order to keep your environment " -#~ "consistent, it's a good idea to " -#~ "\"freeze\" the current state of the " -#~ "environment packages. To do this, run" +#~ "In order to keep your environment consistent, it's a good idea to \"freeze\"" +#~ " the current state of the environment packages. To do this, run" #~ msgstr "" #~ msgid "" -#~ "This will create a :file:`requirements.txt`" -#~ " file, which contains a simple list" -#~ " of all the packages in the " -#~ "current environment, and their respective " -#~ "versions. You can see the list of" -#~ " installed packages without the " -#~ "requirements format using \"pip list\". " -#~ "Later it will be easier for a " -#~ "different developer (or you, if you " -#~ "need to re-create the environment) " -#~ "to install the same packages using " -#~ "the same versions:" +#~ "This will create a :file:`requirements.txt` file, which contains a simple " +#~ "list of all the packages in the current environment, and their respective " +#~ "versions. You can see the list of installed packages without the " +#~ "requirements format using \"pip list\". Later it will be easier for a " +#~ "different developer (or you, if you need to re-create the environment) to " +#~ "install the same packages using the same versions:" #~ msgstr "" #~ msgid "" -#~ "Lastly, remember to exclude the virtual" -#~ " environment folder from source control " -#~ "by adding it to the ignore list." +#~ "Lastly, remember to exclude the virtual environment folder from source " +#~ "control by adding it to the ignore list." #~ msgstr "" #~ msgid "In Windows, the default path for WORKON_HOME is %USERPROFILE%\\Envs" @@ -739,23 +665,19 @@ msgstr "리눅스라면 `direnv.net `_ 를 참고하자." #~ msgstr "" #~ msgid "" -#~ "Alternatively, you can make a project," -#~ " which creates the virtual environment, " -#~ "and also a project directory inside " -#~ "``$PROJECT_HOME``, which is ``cd`` -ed " -#~ "into when you ``workon myproject``." +#~ "Alternatively, you can make a project, which creates the virtual " +#~ "environment, and also a project directory inside ``$PROJECT_HOME``, which is" +#~ " ``cd`` -ed into when you ``workon myproject``." #~ msgstr "" #~ msgid "autoenv" #~ msgstr "" #~ msgid "" -#~ "When you ``cd`` into a directory " -#~ "containing a :file:`.env`, `autoenv " -#~ "`_ automagically " -#~ "activates the environment." +#~ "When you ``cd`` into a directory containing a :file:`.env`, `autoenv " +#~ "`_ automagically activates the " +#~ "environment." #~ msgstr "" #~ msgid "And on Linux:" #~ msgstr "" - From 7ba2c3db3d98b2f4c9f6009ca9886dcf8129137d Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:08:47 +0900 Subject: [PATCH 089/117] Translate notes/contribute.po (8 entries: contribute guide) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../locale/ko/LC_MESSAGES/notes/contribute.mo | Bin 1755 -> 1839 bytes .../locale/ko/LC_MESSAGES/notes/contribute.po | 21 ++++++++++-------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/notes/contribute.mo b/docs/locale/ko/LC_MESSAGES/notes/contribute.mo index bbf999cf44a75f110a9344b98e0a1250a5589908..e1771a9886f7d3d7abe47980edbf2d04a15a5d56 100644 GIT binary patch delta 748 zcmZWmOK%ck6#XjNCZ;wfuGEEB);Q|Ug=y4?lkb z$PCg*%Of<7fQSj*xN+~+e=zsXfAD@Vu_mt0_qg|*bI<*K;`5Rbz4>rXh_fLf7KIRR zjtX&uQD7ERof1suktM_7R0AY_t(nQ-;XeX&Eye4%iuo1zV3Y+1Mc zOWsaBT>+{XK-nCyamweU3{{4-Jv@{FznE^*cWe5`5+j?3!p46r{s(O;rdgD4vfkA4 zV2GK2xi~8P*u#-djs-Z-y#7HjKN|pSkEx}hVR?fFV8)V0scztztt#0Q+_B;DEEj$R z>~?U+DP26WoSscFD)WeFbg&?YoW>JuhS{hv3MThWzHyFHuk}s>r$YI!K^su3#S4O@ z8dX;U5qalsa*Ezy0-jqvEEjh-lP}_G;=*cbEgF-#`&AoV+pp)iP@aIA?^y*qZY0>M g9EpSWs}@;reeaS3t_4xW6Qc^Zqco(b2+ HHTg^cP6QS+ diff --git a/docs/locale/ko/LC_MESSAGES/notes/contribute.po b/docs/locale/ko/LC_MESSAGES/notes/contribute.po index 238d1b7e8..e4a8dd550 100644 --- a/docs/locale/ko/LC_MESSAGES/notes/contribute.po +++ b/docs/locale/ko/LC_MESSAGES/notes/contribute.po @@ -1,11 +1,11 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -13,12 +13,12 @@ msgstr "" #: ../../notes/contribute.rst:2 msgid "Contribute" -msgstr "" +msgstr "기여하기" #: ../../notes/contribute.rst:4 msgid "" "Python-guide is under active development, and contributors are welcome." -msgstr "" +msgstr "Python-guide는 활발히 개발 중이며, 기여자를 환영합니다." #: ../../notes/contribute.rst:6 msgid "" @@ -28,25 +28,28 @@ msgid "" "`Contributors List `_." msgstr "" +"기능 요청, 제안, 또는 버그 리포트가 있다면 GitHub_ 에 새 이슈를 열어주세요. 패치를 제출하려면 GitHub_ 에 풀 리퀘스트를" +" 보내주세요. 여러분의 변경 사항이 머지되고 나면 자동으로 `기여자 목록 " +"`_ 에 추가됩니다." #: ../../notes/contribute.rst:12 msgid "Style Guide" -msgstr "" +msgstr "스타일 안내서" #: ../../notes/contribute.rst:14 msgid "For all contributions, please follow the :ref:`guide-style-guide`." -msgstr "" +msgstr "모든 기여는 :ref:`guide-style-guide` 를 따라주세요." #: ../../notes/contribute.rst:19 msgid "Todo List" -msgstr "" +msgstr "할 일 목록" #: ../../notes/contribute.rst:21 msgid "" "If you'd like to contribute, there's plenty to do. Here's a short todo_ " "list." -msgstr "" +msgstr "기여하고 싶다면 할 일이 많이 있습니다. 짧은 todo_ 목록은 다음과 같습니다." #: ../../../TODO.rst:1 msgid "Establish \"use this\" vs \"alternatives are....\" recommendations" -msgstr "" +msgstr "\"이것을 사용하세요\" vs \"대안은...\" 권장 사항 정립" From 3b1b53dc1ac5738a2a53ba7472d9b2d782a4c7f2 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:09:06 +0900 Subject: [PATCH 090/117] Translate _themes/README.po (9 entries: krTheme Sphinx Style) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/_themes/README.mo | Bin 1723 -> 1975 bytes docs/locale/ko/LC_MESSAGES/_themes/README.po | 23 +++++++++++-------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/_themes/README.mo b/docs/locale/ko/LC_MESSAGES/_themes/README.mo index d5a10dd06f5b724cd2494ae8687babb26bfcc04e..5a2aecfe3547e41b784a3b66aed3735d449f8c7e 100644 GIT binary patch delta 958 zcmZuv&rj2E6#oh$iP3n_lc%pYvqPha2ZP4w#Yl`E z4F^`s z#+Z7Zu}g$+32zeS37^n^m+%3de+@Bqjqna#_6bJ`7YGN28M{aLZusl>-vc*Zs`JXs zn5-)NQBvXe7d2@zsXSEYvl&%QOH=A><>%mf?)F{j)`q~9bGT^QG9Co>s3K&gqg z860|4?9fq~K=%URfQ_2FzVl&L^Xm`XU zs5Eh%2KG^q__I`2n@^_Fsu=Y+GpVI%q$Hq#eRN}bd!e>{IB^_fCIdFaA-D5AT_{Y}hljAhukl1%krp8%`HyQ_;TC;ZEAf|CAH*KR9o2|x}FmTg{vNX ztO|+a*`z!xYaHy3aFc$*zJXSU>_02zwK}E6b%I)Vjaa@u`x9i?SQ9%2r55GP z!%uZ$iwC`>BkQSrmr{$aVaL_WkJh)^2U0;dO c1_q}V3HtwvSUg;_u&MKDu~s~aJ6;#|2Ru;^PXGV_ delta 127 zcmdnazngbLj$a@n1A{O#0|Ofa14Akc0|O6`&H>WWK)Mo0KLyfLfwT&cu4ZLm5CPH) zfOI2}-U_5WfwVbLvn7yjWZSsw2a|+bsE?0=pQEpoHtq>$0sz5j7lQx* diff --git a/docs/locale/ko/LC_MESSAGES/_themes/README.po b/docs/locale/ko/LC_MESSAGES/_themes/README.po index aa3a65a71..23277b348 100644 --- a/docs/locale/ko/LC_MESSAGES/_themes/README.po +++ b/docs/locale/ko/LC_MESSAGES/_themes/README.po @@ -1,11 +1,11 @@ -# +# msgid "" msgstr "" "Project-Id-Version: pythonguide 0.0.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-11-30 22:28\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -13,7 +13,7 @@ msgstr "" #: ../../_themes/README.rst:2 msgid "krTheme Sphinx Style" -msgstr "" +msgstr "krTheme Sphinx Style" #: ../../_themes/README.rst:4 msgid "" @@ -22,34 +22,39 @@ msgid "" "related projects. To use this style in your Sphinx documentation, follow " "this guide:" msgstr "" +"이 저장소에는 Kenneth Reitz가 자신의 프로젝트 대부분에서 사용하는 sphinx 스타일이 들어 있습니다. Mitsuhiko가 " +"Flask와 Flask 관련 프로젝트를 위해 만든 테마에서 파생된 것입니다. 여러분의 Sphinx 문서에서 이 스타일을 사용하려면 다음 " +"안내를 따르세요:" #: ../../_themes/README.rst:9 msgid "" "put this folder as _themes into your docs folder. Alternatively you can " "also use git submodules to check out the contents there." msgstr "" +"이 폴더를 _themes 라는 이름으로 여러분의 docs 폴더 안에 넣으세요. 또는 git 서브모듈을 사용하여 내용을 그곳에 체크아웃할 " +"수도 있습니다." #: ../../_themes/README.rst:12 msgid "add this to your :file:`conf.py`: ::" -msgstr "" +msgstr "여러분의 :file:`conf.py` 에 다음을 추가하세요: ::" #: ../../_themes/README.rst:18 msgid "The following themes exist:" -msgstr "" +msgstr "다음과 같은 테마가 있습니다:" #: ../../_themes/README.rst:21 msgid "the standard flask documentation theme for large projects" -msgstr "" +msgstr "대규모 프로젝트를 위한 표준 flask 문서 테마" #: ../../_themes/README.rst:24 msgid "" "small one-page theme. Intended to be used by very small addon libraries." -msgstr "" +msgstr "작은 단일 페이지 테마. 아주 작은 애드온 라이브러리에서 사용하기 위해 만들어졌습니다." #: ../../_themes/README.rst:21 msgid "**kr**" -msgstr "" +msgstr "**kr**" #: ../../_themes/README.rst:24 msgid "**kr_small**" -msgstr "" +msgstr "**kr_small**" From 963d0a7541a5581513c49dd844eab91ce2720e65 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:09:25 +0900 Subject: [PATCH 091/117] Translate scenarios/client.po (9 protocol/library labels) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../locale/ko/LC_MESSAGES/scenarios/client.mo | Bin 3832 -> 4542 bytes .../locale/ko/LC_MESSAGES/scenarios/client.po | 67 +++++++++--------- 2 files changed, 33 insertions(+), 34 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.mo b/docs/locale/ko/LC_MESSAGES/scenarios/client.mo index 9175ec7ae489cbf7489668125d041fcd3aafb405..cee1007afbe543cd0530f0b94ee90638ee0b94d8 100644 GIT binary patch delta 933 zcmeH@PiqrF7{=dCx0+D@w6=Is8Yw7<-L2rMHEjx|ji8uf1yRuKCPQ}G?9O)fT|;`w zHxQxpstDe^RF)ok@gn*SL@eq-5WMNpqt7Im7C(anFTZ(a-apUG@AGe_x?j)OJA^fc zIEQ#?#F2HyA{vLD25oQ=oB)@>F~kEz9y-hs3G5$(Mt>e6nuGohzK6arOmqzV0hYj@ z;5DKyP2+S92R?WadJv0@&GaRiu$F$xqEWol zNmzslRo2$3uXksx?4zZutTbfjy7z@vw^pgPr0QuXBKBCSsCYeKj+0r})nYRh2`7#g zUV{VCQ1!%-$`z5@@)$SneC-j{RwP$a|FEnnIY@n{u0nT1M3LY?3&~r9c7viWs&4D1 z7s;)ECLd{`J>QocZZ5=LQo)F7a1|Z-7Vi_Qg0dbJP93Wd5i01;a2oP@sVnId*hGRfF6-eIzVrw9_ zV}^)Tu`n=10Qrur3=FYAdKMc4g8)$N4|WCyc_7URw8#M{t_h@fGBOx4WN|VuWC8_L zxEUC30TuM|05OoC$qVGTWEPhcWhRxDq^2kYR~DC~<`!>uWi(*iT*s8gxcM#fZ^q3Z z*ch2)^c*wt6l`+x%TjYw%QH(d@=Hq+b8;Nga}zUjCbM#`-n^AFlX0^;_b$fGuXt>k KHtP%YGXengNi*F5 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/client.po b/docs/locale/ko/LC_MESSAGES/scenarios/client.po index 722199b25..b069ff222 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/client.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/client.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: YoungSeon.Ahn \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -27,7 +27,7 @@ msgstr "네트워크 어플리케이션" #: ../../scenarios/client.rst:11 msgid "HTTP" -msgstr "" +msgstr "HTTP" #: ../../scenarios/client.rst:13 msgid "" @@ -40,41 +40,41 @@ msgstr "" #: ../../scenarios/client.rst:18 msgid "Requests" -msgstr "" +msgstr "Requests" #: ../../scenarios/client.rst:20 msgid "" -"Python’s standard urllib2 module provides most of the HTTP capabilities " -"you need, but the API is thoroughly broken. It was built for a different " -"time — and a different web. It requires an enormous amount of work (even " -"method overrides) to perform the simplest of tasks." +"Python’s standard urllib2 module provides most of the HTTP capabilities you " +"need, but the API is thoroughly broken. It was built for a different time — " +"and a different web. It requires an enormous amount of work (even method " +"overrides) to perform the simplest of tasks." msgstr "" -"파이썬의 표준 urllib2 모듈은 필요한 HTTP의 기능 대부분을 지원하지만 API는 완전히 박살나 있습니다. 그것은 다른 시간과" -" 다른 웹을 위해 만들어졌습니다. 가장 간단한 작업을 수행하더라도 엄청난 양의 작업(메소드 재정의까지)이 필요합니다." +"파이썬의 표준 urllib2 모듈은 필요한 HTTP의 기능 대부분을 지원하지만 API는 완전히 박살나 있습니다. 그것은 다른 시간과 다른" +" 웹을 위해 만들어졌습니다. 가장 간단한 작업을 수행하더라도 엄청난 양의 작업(메소드 재정의까지)이 필요합니다." #: ../../scenarios/client.rst:25 msgid "" -"Requests takes all of the work out of Python HTTP — making your " -"integration with web services seamless. There’s no need to manually add " -"query strings to your URLs, or to form-encode your POST data. Keep-alive " -"and HTTP connection pooling are 100% automatic, powered by urllib3, which" -" is embedded within Requests." +"Requests takes all of the work out of Python HTTP — making your integration " +"with web services seamless. There’s no need to manually add query strings to" +" your URLs, or to form-encode your POST data. Keep-alive and HTTP connection" +" pooling are 100% automatic, powered by urllib3, which is embedded within " +"Requests." msgstr "" "Requests는 Python HTTP에서 모든 작업을 처리하므로 웹 서비스와 매끄럽게 통합할 수 있도록 해줍니다. URL에 쿼리 " -"문자열을 수동으로 추가하거나 POST 데이터를 폼 인코딩 할 필요가 없습니다. Requests에 포함된 urllib3에 의해 " -"구동되는 Keep-alive 및 HTTP 커넥션 풀링은 100% 자동입니다." +"문자열을 수동으로 추가하거나 POST 데이터를 폼 인코딩 할 필요가 없습니다. Requests에 포함된 urllib3에 의해 구동되는 " +"Keep-alive 및 HTTP 커넥션 풀링은 100% 자동입니다." #: ../../scenarios/client.rst:31 msgid "`Documentation `_" -msgstr "" +msgstr "`Documentation `_" #: ../../scenarios/client.rst:32 msgid "`PyPi `_" -msgstr "" +msgstr "`PyPi `_" #: ../../scenarios/client.rst:33 msgid "`GitHub `_" -msgstr "" +msgstr "`GitHub `_" #: ../../scenarios/client.rst:38 msgid "Distributed Systems" @@ -82,7 +82,7 @@ msgstr "분산 시스템" #: ../../scenarios/client.rst:42 msgid "ZeroMQ" -msgstr "" +msgstr "ZeroMQ" #: ../../scenarios/client.rst:44 msgid "" @@ -93,34 +93,33 @@ msgid "" "library is designed to have a familiar socket-style API." msgstr "" "ØMQ(ZeroMQ, 0MQ, ZMQ로도 씀)는 대규모 분산 환경 어플리케이션이나 동시성 어플리케이션을 위한 고성능 비동기 메시징 " -"라이브러리입니다. 메시지큐를 제공하지만 다른 메시징 미들웨어와는 달리 제로엠큐는 메시지 브로커 없이도 동작합니다. 그 라이브러리는 " -"소켓 스타일 API처럼 디자인되어 있습니다. " +"라이브러리입니다. 메시지큐를 제공하지만 다른 메시징 미들웨어와는 달리 제로엠큐는 메시지 브로커 없이도 동작합니다. 그 라이브러리는 소켓 " +"스타일 API처럼 디자인되어 있습니다. " #: ../../scenarios/client.rst:51 msgid "RabbitMQ" -msgstr "" +msgstr "RabbitMQ" #: ../../scenarios/client.rst:53 msgid "" "RabbitMQ is an open source message broker software that implements the " -"Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written" -" in the Erlang programming language and is built on the Open Telecom " -"Platform framework for clustering and failover. Client libraries to " -"interface with the broker are available for all major programming " -"languages." +"Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written in" +" the Erlang programming language and is built on the Open Telecom Platform " +"framework for clustering and failover. Client libraries to interface with " +"the broker are available for all major programming languages." msgstr "" "RabbitMQ는 Advanced Message Queuing Protocol (AMQP)를 구현한 오픈소스 메시지 브로커 " "소프트웨어입니다. 래빗MQ 서버는 얼랭 프로그래밍 언어로 개발되었고 클러스터링과 장애 복구를 위하여 Open Telecom " -"Platform 프레임워크에 기반하고 있습니다. 브로커와 인터페이스할 클라이언트 라이브러리는 모든 주요 프로그래밍 언어에 사용할 수" -" 있습니다." +"Platform 프레임워크에 기반하고 있습니다. 브로커와 인터페이스할 클라이언트 라이브러리는 모든 주요 프로그래밍 언어에 사용할 수 " +"있습니다." #: ../../scenarios/client.rst:59 msgid "`Homepage `_" -msgstr "" +msgstr "`Homepage `_" #: ../../scenarios/client.rst:60 msgid "`GitHub Organization `_" -msgstr "" +msgstr "`GitHub Organization `_" #~ msgid "" #~ msgstr "" @@ -128,6 +127,6 @@ msgstr "" #~ msgid "`PyPi `_" #~ msgstr "" -#~ msgid "`Documentation `_" +#~ msgid "" +#~ "`Documentation `_" #~ msgstr "" - From a2b5a369a77416a5db4b06f1122e2a20e1afe49b Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:09:38 +0900 Subject: [PATCH 092/117] Translate writing/license.po (9 license-name labels) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/writing/license.mo | Bin 4127 -> 4080 bytes docs/locale/ko/LC_MESSAGES/writing/license.po | 128 ++++++++---------- 2 files changed, 56 insertions(+), 72 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/license.mo b/docs/locale/ko/LC_MESSAGES/writing/license.mo index 6ce0bbb0a2453d2b5d34e4cb68cae78d5f1bd580..cc47727f9bc60dd55ed9eb5a9a82462b9226b065 100644 GIT binary patch delta 247 zcmbQQ@IijUnfg#h28I>v3=E143=ID`7#LK5v;rps!)_q$3Z&V9G$R)SgCvmV0Mg7r zS_w$A0%v3=E143=F!Q3=Aqj+8;>o2GS)!nhi)Ba4|4Q0%>y~%?zXi zfix?S4u#UuQ1L_{?G6-A1=1`)dM%I!8o{s$Nb>{fJwO_06~h@I-2|ksa53mHL;)G$ z+zbrIfb=FHy&Ona@-Q&80v)Ev%fPT5$Y0LKz_1@k$8WA=JjbT*=;5aj=^yIn9_;Gx zr(jcAte2RP=a64ol9QjGt(TmiYscl2n3rCfn4W5-kexp{lS5u9Ag8n_F-O-ezbLoZ nN+GWR%q_Mxv{ryHZ4D;3a}=_h=>a{fr8QZRM|QI;=VdkkXT&+i diff --git a/docs/locale/ko/LC_MESSAGES/writing/license.po b/docs/locale/ko/LC_MESSAGES/writing/license.po index 5ee804ad1..c558d7098 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/license.po +++ b/docs/locale/ko/LC_MESSAGES/writing/license.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: AHN YOUNGSEON \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -27,24 +27,23 @@ msgstr "라이선스 선택하기" #: ../../writing/license.rst:9 msgid "" -"Your source publication *needs* a license. In the US, unless a license is" -" specified, users have no legal right to download, modify, or distribute " -"the product. Furthermore, people can't contribute to your code unless you" -" tell them what rules to play by. Choosing a license is complicated, so " -"here are some pointers:" +"Your source publication *needs* a license. In the US, unless a license is " +"specified, users have no legal right to download, modify, or distribute the " +"product. Furthermore, people can't contribute to your code unless you tell " +"them what rules to play by. Choosing a license is complicated, so here are " +"some pointers:" msgstr "" -"소스코드를 공개하려면 라이선스가 *필요합니다*. 미국에서는 라이선스를 정하지 않으면 " -"사용자가 다운로드, 수정, 제품 배포를 할 수 없습니다. " -"뿐만 아니라 규칙을 정해 알리지 않는 한 다른 사람들이 코드에 기여할 수도 없습니다." -"라이선스 선택은 복잡합니다. 몇 가지 지침을 알려드릴게요: " +"소스코드를 공개하려면 라이선스가 *필요합니다*. 미국에서는 라이선스를 정하지 않으면 사용자가 다운로드, 수정, 제품 배포를 할 수 " +"없습니다. 뿐만 아니라 규칙을 정해 알리지 않는 한 다른 사람들이 코드에 기여할 수도 없습니다.라이선스 선택은 복잡합니다. 몇 가지 " +"지침을 알려드릴게요: " #: ../../writing/license.rst:14 msgid "" "Open source. There are plenty of `open source licenses " "`_ available to choose from." msgstr "" -"오픈소스. 수많은 `오픈소스 라이선스 `_ " -"를 선택할 수 있습니다." +"오픈소스. 수많은 `오픈소스 라이선스 `_ 를 선택할 수" +" 있습니다." #: ../../writing/license.rst:18 msgid "In general, these licenses tend to fall into one of two categories:" @@ -52,40 +51,39 @@ msgstr "보통 라이선스는 이 두 카테고리 중 하나에 속합니다:" #: ../../writing/license.rst:20 msgid "" -"licenses that focus more on the user's freedom to do with the software as" -" they please (these are the more permissive open source licenses such as " -"the MIT, BSD, and Apache)" +"licenses that focus more on the user's freedom to do with the software as " +"they please (these are the more permissive open source licenses such as the " +"MIT, BSD, and Apache)" msgstr "" -"기쁜 마음으로 사용자가 이 소프트웨어를 자유롭게 사용할 수 있도록 하는 데 보다 중점을 " -"둔 라이선스(MIT, BSD, Apache처럼 보다 관대한 라이선스)" +"기쁜 마음으로 사용자가 이 소프트웨어를 자유롭게 사용할 수 있도록 하는 데 보다 중점을 둔 라이선스(MIT, BSD, Apache처럼 " +"보다 관대한 라이선스)" #: ../../writing/license.rst:24 msgid "" -"licenses that focus more on making sure that the code itself — including " -"any changes made to it and distributed along with it — always remains " -"free (these are the less permissive free software licenses such as the " -"GPL and LGPL)" +"licenses that focus more on making sure that the code itself — including any" +" changes made to it and distributed along with it — always remains free " +"(these are the less permissive free software licenses such as the GPL and " +"LGPL)" msgstr "" -"코드를 항상 무료로 사용(변경과 배포 포함)할 수 있도록 하는 데 중점을 둔 라이선스" -"(GPL, LGPL처럼 덜 허용적인 자유 소프트웨어 라이선스)" +"코드를 항상 무료로 사용(변경과 배포 포함)할 수 있도록 하는 데 중점을 둔 라이선스(GPL, LGPL처럼 덜 허용적인 자유 소프트웨어 " +"라이선스)" #: ../../writing/license.rst:29 msgid "" -"The latter are less permissive in the sense that they don't permit " -"someone to add code to the software and distribute it without also " -"including the source code for their changes." +"The latter are less permissive in the sense that they don't permit someone " +"to add code to the software and distribute it without also including the " +"source code for their changes." msgstr "" -"후자는 소프트웨어에 코드를 수정하지 못 하게 하고, 수정한 소스코드를 포함하지 " -"않으면 배포를 할 수 없다는 점에서 덜 허용적인 라이선스입니다. " +"후자는 소프트웨어에 코드를 수정하지 못 하게 하고, 수정한 소스코드를 포함하지 않으면 배포를 할 수 없다는 점에서 덜 허용적인 " +"라이선스입니다. " #: ../../writing/license.rst:33 msgid "" "To help you choose one for your project, there's a `license chooser " "`_; **use it**." msgstr "" -"프로젝트의 라이선스를 선택하는 데 도움을 받고 싶다면 " -"`라이선스 선택기 " -"`_ 가 있습니다. **써보세요!**." +"프로젝트의 라이선스를 선택하는 데 도움을 받고 싶다면 `라이선스 선택기 `_ 가 " +"있습니다. **써보세요!**." #: ../../writing/license.rst:36 msgid "**More Permissive**" @@ -95,28 +93,27 @@ msgstr "**보다 자유로운 라이선스**" msgid "" "PSFL (Python Software Foundation License) -- for contributing to Python " "itself" -msgstr "" -"PSFL (Python Software Foundation License) -- 파이썬에 기여하기 위한 라이선스" +msgstr "PSFL (Python Software Foundation License) -- 파이썬에 기여하기 위한 라이선스" #: ../../writing/license.rst:39 msgid "MIT / BSD / ISC" -msgstr "" +msgstr "MIT / BSD / ISC" #: ../../writing/license.rst:41 msgid "MIT (X11)" -msgstr "" +msgstr "MIT (X11)" #: ../../writing/license.rst:42 msgid "New BSD" -msgstr "" +msgstr "New BSD" #: ../../writing/license.rst:43 msgid "ISC" -msgstr "" +msgstr "ISC" #: ../../writing/license.rst:45 msgid "Apache" -msgstr "" +msgstr "Apache" #: ../../writing/license.rst:47 msgid "**Less Permissive:**" @@ -124,64 +121,51 @@ msgstr "**덜 허용적인 라이선스**" #: ../../writing/license.rst:49 msgid "LGPL" -msgstr "" +msgstr "LGPL" #: ../../writing/license.rst:50 msgid "GPL" -msgstr "" +msgstr "GPL" #: ../../writing/license.rst:52 msgid "GPLv2" -msgstr "" +msgstr "GPLv2" #: ../../writing/license.rst:53 msgid "GPLv3" -msgstr "" +msgstr "GPLv3" #: ../../writing/license.rst:55 msgid "" -"A good overview of licenses with explanations of what one can, cannot, " -"and must do using a particular software can be found at `tl;drLegal " +"A good overview of licenses with explanations of what one can, cannot, and " +"must do using a particular software can be found at `tl;drLegal " "`_." msgstr "" -"`tl;drLegal `_ 에서 " -"특정 소프트웨어를 사용하여 무엇을 할 수 있고, 할 수 없는지에 대한 개괄적인 설명을 " -"보실 수 있습니다. " +"`tl;drLegal `_ 에서 특정 소프트웨어를 사용하여 무엇을 할 수 있고, 할 수 " +"없는지에 대한 개괄적인 설명을 보실 수 있습니다. " #~ msgid "" -#~ "Your source publication *needs* a " -#~ "license. In the US, if no license" -#~ " is specified, users have no legal" -#~ " right to download, modify, or " -#~ "distribute. Furthermore, people can't " -#~ "contribute to your code unless you " -#~ "tell them what rules to play by." -#~ " Choosing a license is complicated, " -#~ "so here are some pointers:" +#~ "Your source publication *needs* a license. In the US, if no license is " +#~ "specified, users have no legal right to download, modify, or distribute. " +#~ "Furthermore, people can't contribute to your code unless you tell them what " +#~ "rules to play by. Choosing a license is complicated, so here are some " +#~ "pointers:" #~ msgstr "" #~ msgid "" -#~ "licenses that focus more on the " -#~ "user's freedom to do with the " -#~ "software as they please (these are " -#~ "the more permissive open source licenses" -#~ " such as the MIT, BSD, & " -#~ "Apache)." +#~ "licenses that focus more on the user's freedom to do with the software as " +#~ "they please (these are the more permissive open source licenses such as the " +#~ "MIT, BSD, & Apache)." #~ msgstr "" #~ msgid "" -#~ "licenses that focus more on making " -#~ "sure that the code itself — " -#~ "including any changes made to it " -#~ "and distributed along with it — " -#~ "always remains free (these are the " -#~ "less permissive free software licenses " -#~ "such as the GPL and LGPL)." +#~ "licenses that focus more on making sure that the code itself — including any" +#~ " changes made to it and distributed along with it — always remains free " +#~ "(these are the less permissive free software licenses such as the GPL and " +#~ "LGPL)." #~ msgstr "" #~ msgid "" -#~ "To help you choose one for your" -#~ " project, there's a `license chooser " +#~ "To help you choose one for your project, there's a `license chooser " #~ "`_, **use it**." #~ msgstr "" - From b39051a5a2222e0c969b6c1f7274819371516c53 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:10:05 +0900 Subject: [PATCH 093/117] Translate intro/documentation.po (11 entries: official docs, RTD, pydoc) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/intro/documentation.mo | Bin 2175 -> 2278 bytes .../ko/LC_MESSAGES/intro/documentation.po | 64 +++++++++--------- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.mo b/docs/locale/ko/LC_MESSAGES/intro/documentation.mo index 2a08f2f11134b9b2565d1af125b7eab5f1f53596..36e16d66bbc6dff87487b19ae9f82fc83fec6b53 100644 GIT binary patch delta 982 zcmY*X&rcIk5PqhL24kXk4$p%prO|jH4IywqE{!q%NHoNx4K#&FyMS;YF=>^BEZs#( zwp$k1#U)v!C5@?c!EI>xKfD-E9`?;kJb5zF+3mK}%YK>JdGmeq&HTOo^Tx)Tm*W=* z`4u5#3^9I*kRC!v5kJ=ucS5Wne#iJLVhXWznUHbBKZyN^&#$y_74bI44kET9KfZiB zi9C2AEN0VBQbLxFOl9fd((7n)DmyGJF3bqRtLTJ~8S0HEv+2cTI@SL)mCVFweB|NS zvyrh;Iv9@+&rC;!`Sg(b`{G>g-azzjFNw|03+Z_*Ow2A#3KI#+3Ps8l1xyFlt6+*0 zL>n49*DT63g>tRzo$6tdZRmbE7#5dZ_NmI{8tkqxSz@vsrLd;M<_3rcWmOk}?KdfF zSZv?%jue`M+8Jmft261P!$S0U*73U81|C@?eZ&I(e zh0`O5OfF-kFQsb&Q-p1|EfWgIEqyW4Dj{C|7-Tbipzihb*K=#WCqZ;-v(GkiqSq9guss7T({I&fykW6Jd~Tqv z%Pe=2=OWe?8aP#$^co5r=GVm2ejX47B!eg;@=h@5^F! z7Y-z_-h$CYNnQOO=SCmJgFD&`Hr?_$NXRxX;m(68QEA)zb4x=nJLgED8wI1H%Vq1_l8jox{q&z{|kEP|L=^AO@tnfi#G}2uQC0(i?zuFp!R9 zXJGII(rbaV7Lfi9rIk1s7_@8Vx<+4*peZb)ikE=WYd#>dAYCsQxKDBX@LAg8n_F-O-ezbLoZ zN+GWR%q_Mxv{ryHZ4J15J$+qu!%~ZiGxPJT6b$tYxSaFzN>V4kWr<`l0`fNA5n%=Z D0I)n4 diff --git a/docs/locale/ko/LC_MESSAGES/intro/documentation.po b/docs/locale/ko/LC_MESSAGES/intro/documentation.po index 100a658d6..f31d4b4be 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/documentation.po +++ b/docs/locale/ko/LC_MESSAGES/intro/documentation.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,74 +23,74 @@ msgstr "" #: ../../intro/documentation.rst:5 msgid "Documentation" -msgstr "" +msgstr "문서" #: ../../intro/documentation.rst:12 msgid "Official Documentation" -msgstr "" +msgstr "공식 문서" #: ../../intro/documentation.rst:14 -msgid "The official Python Language and Library documentation can be found here:" -msgstr "" +msgid "" +"The official Python Language and Library documentation can be found here:" +msgstr "공식 파이썬 언어 및 라이브러리 문서는 여기에서 찾을 수 있습니다:" #: ../../intro/documentation.rst:16 msgid "`Python 2.x `_" -msgstr "" +msgstr "`파이썬 2.x `_" #: ../../intro/documentation.rst:17 msgid "`Python 3.x `_" -msgstr "" +msgstr "`파이썬 3.x `_" #: ../../intro/documentation.rst:22 msgid "Read the Docs" -msgstr "" +msgstr "Read the Docs" #: ../../intro/documentation.rst:24 msgid "" -"Read the Docs is a popular community project that hosts documentation for" -" open source software. It holds documentation for many Python modules, " -"both popular and exotic." +"Read the Docs is a popular community project that hosts documentation for " +"open source software. It holds documentation for many Python modules, both " +"popular and exotic." msgstr "" +"Read the Docs는 오픈 소스 소프트웨어의 문서를 호스팅하는 인기 있는 커뮤니티 프로젝트입니다. 유명한 것부터 특이한 것까지 " +"수많은 파이썬 모듈의 문서를 제공합니다." #: ../../intro/documentation.rst:28 msgid "`Read the Docs `_" -msgstr "" +msgstr "`Read the Docs `_" #: ../../intro/documentation.rst:33 msgid "pydoc" -msgstr "" +msgstr "pydoc" #: ../../intro/documentation.rst:35 msgid "" -":program:`pydoc` is a utility that is installed when you install Python. " -"It allows you to quickly retrieve and search for documentation from your " -"shell. For example, if you needed a quick refresher on the :mod:`time` " -"module, pulling up documentation would be as simple as:" +":program:`pydoc` is a utility that is installed when you install Python. It " +"allows you to quickly retrieve and search for documentation from your shell." +" For example, if you needed a quick refresher on the :mod:`time` module, " +"pulling up documentation would be as simple as:" msgstr "" +":program:`pydoc` 는 파이썬을 설치할 때 함께 설치되는 유틸리티입니다. 쉘에서 문서를 빠르게 찾아보고 검색할 수 있게 " +"해줍니다. 예를 들어 :mod:`time` 모듈에 대한 내용을 빠르게 다시 확인하고 싶다면, 다음과 같이 간단하게 문서를 띄울 수 " +"있습니다:" #: ../../intro/documentation.rst:44 msgid "" -"The above command is essentially equivalent to opening the Python REPL " -"and running:" -msgstr "" +"The above command is essentially equivalent to opening the Python REPL and " +"running:" +msgstr "위 명령어는 본질적으로 파이썬 REPL을 열고 다음을 실행하는 것과 같습니다:" #~ msgid "" #~ msgstr "" #~ msgid "" -#~ ":program:`pydoc` is a utility that is" -#~ " installed when you install Python. " -#~ "It allows you to quickly retrieve " -#~ "and search for documentation from your" -#~ " shell. For example, if you needed" -#~ " a quick refresher on the :mod:`time`" -#~ " module, pulling up documentation would " -#~ "be as simple as" +#~ ":program:`pydoc` is a utility that is installed when you install Python. It " +#~ "allows you to quickly retrieve and search for documentation from your shell." +#~ " For example, if you needed a quick refresher on the :mod:`time` module, " +#~ "pulling up documentation would be as simple as" #~ msgstr "" #~ msgid "" -#~ "The above command is essentially " -#~ "equivalent to opening the Python REPL" -#~ " and running" +#~ "The above command is essentially equivalent to opening the Python REPL and " +#~ "running" #~ msgstr "" - From 5abc1853bcde5eab2ff0918b1bc368b7a85ec613 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:10:35 +0900 Subject: [PATCH 094/117] Translate scenarios/crypto.po (12 entries: cryptography, GPGME bindings) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../locale/ko/LC_MESSAGES/scenarios/crypto.mo | Bin 4157 -> 4385 bytes .../locale/ko/LC_MESSAGES/scenarios/crypto.po | 94 ++++++++++-------- 2 files changed, 53 insertions(+), 41 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo b/docs/locale/ko/LC_MESSAGES/scenarios/crypto.mo index b47fab70afccacb0c2dcd19e0e82412ea2208606..4685f5195800d11ee5d623cd70fbea64dadb51df 100644 GIT binary patch delta 1786 zcmaKs&u<%55XWB%qNMcK0a2t1G*lcC;V!gB6h%>JREiVHNsOAPLLiYPbv6-+9h^9l z;b1pikVzck$ZN7mcY`Cjt&LpCi5=Bd6Zi+XbK<~t->g8~5FD7d>uj17xOlv~Z{GX9 z&wOWgVdGp@9sRI{v7e7JcKQfo{#M2e#@M^hF?NRHuN0r5_$S2yitIRJrznId)+i2B z6yKje!PxJ#&smDUiDk5iKC!B{}`>}M}rcw2ho z7~_i?*h>|wu43UPnvGmb%NOrk)fC`Y8JsWTY6|Rp$$F#%77VMl&9gc$SAEbk*cSx8 zMOiAEDHt9dp9qtfxFp}04acVCSVEkHD_K+x=*<1t@>1@vmUBtqwH?4T?Y5rA`E9$q3}Kj1Ch)-pii?3)#Sch{b8@Fn&C z^}?_ciBBm~tEVX^pYZ2?I`Z-m-D}x;uw&;7PwHZUNIVn(TT}Ulfd!L}5+eDW&Pxrv zmlAaN(khyiZUAmntW(5On@Z7YMK3 zysx<8TKV6VU|zHJhP|q_U5O>8W}-?=o*GNEGZz@MY6YT-MbeW=;lum(Trmk=4)B7& zYHK_E4&k4xILGLGUTXpe+|_u_!1XWPigd6*DA0G6glgmou9e+qC;L&|sfI(0=QA)8 zjf{>f@mTmkNvvv;JVc0YXN6_xr2QK1*@lW%{Q->~Uao`HsPbAvJZu;qud=JA4b>tR z@<3OBS3}){J;ci~keeztF=?+uu6m_iVj}UO&W7FFgc37j)H&XznjScw>>Bj1+Hj#Pi+@Rx%Ct^5A+W~C^kMTk0c-vmt!{$m<9Ov zB{a#a)FfMVhn}H|v@6gZ>Ls!ultJ!~r{AG!(WN{_)D^f^C#hvzFq>4KFsikcA@|g= zxVYCxUOrru-ty7UB_H^uH|cV9yhZIzl$?^-`6gOv@5ql9g(=|L_1*xfBWbo;wZG9t zqB{lLR-mas-5~nlb_u@~0+)cBJG6{9GW&gQj!+_$aJD%JDc67MtRvrRBd}^JHnuG>%&4L(G`JiMZDaE1lk!Y^ z^Sd)Fma}x(6mb{M7NaAr5;+=dhi2g6&4nSwOfIB_W0GE9?<0B4P<)|;X+ta|V?9nn d@b!T!%TpybPPy~K8M+?h|HgWfX8%4{_7B%e%k2OF delta 230 zcmZ3ev{zw5OIkG}1H*N828Mq?I+&Azp^<@sA&8rSfd@!m0n$JzhKE4f3P`^M(tJQ# z1t>WSNE-ubkh*g~Vmna(Z6Lh|$e#>U1QHM6XJEJwq+|IvzUpC5cMJ9LQSfv0bycu& z^>y_0ad32T333e%w&U_i%u6p#Oi#5^$j*mzbVE`Tb3q~sHa\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,11 +23,11 @@ msgstr "" #: ../../scenarios/crypto.rst:4 msgid "Cryptography" -msgstr "" +msgstr "암호화(Cryptography)" #: ../../scenarios/crypto.rst:11 msgid "cryptography" -msgstr "" +msgstr "cryptography" #: ../../scenarios/crypto.rst:13 msgid "" @@ -35,42 +35,51 @@ msgid "" "developed library that provides cryptographic recipes and primitives. It " "supports Python 2.6-2.7, Python 3.3+, and PyPy." msgstr "" +"`cryptography `_ 는 활발히 개발되고 있는 라이브러리로, " +"암호화 레시피와 기본 구성요소를 제공합니다. 파이썬 2.6-2.7, 파이썬 3.3+, 그리고 PyPy를 지원합니다." #: ../../scenarios/crypto.rst:18 msgid "" -"cryptography is divided into two layers of recipes and hazardous " -"materials (hazmat). The recipes layer provides a simple API for proper " -"symmetric encryption and the hazmat layer provides low-level " -"cryptographic primitives." +"cryptography is divided into two layers of recipes and hazardous materials " +"(hazmat). The recipes layer provides a simple API for proper symmetric " +"encryption and the hazmat layer provides low-level cryptographic primitives." msgstr "" +"cryptography는 레시피 계층과 위험 요소(hazmat) 계층의 두 가지로 나누어져 있습니다. 레시피 계층은 적절한 대칭키 " +"암호화를 위한 단순한 API를 제공하고, hazmat 계층은 저수준의 암호화 기본 구성요소를 제공합니다." #: ../../scenarios/crypto.rst:25 ../../scenarios/crypto.rst:57 msgid "Installation" -msgstr "" +msgstr "설치" #: ../../scenarios/crypto.rst:32 ../../scenarios/crypto.rst:62 msgid "Example" -msgstr "" +msgstr "예시" #: ../../scenarios/crypto.rst:34 msgid "Example code using high level symmetric encryption recipe:" -msgstr "" +msgstr "고수준 대칭키 암호화 레시피를 사용하는 예시 코드입니다:" #: ../../scenarios/crypto.rst:47 msgid "GPGME bindings" -msgstr "" +msgstr "GPGME 바인딩" #: ../../scenarios/crypto.rst:49 msgid "" "The `GPGME Python bindings " -"`_ provide" -" Pythonic access to `GPG Made Easy " +"`_ provide " +"Pythonic access to `GPG Made Easy " "`_, a C API for the " -"entire GNU Privacy Guard suite of projects, including GPG, libgcrypt, and" -" gpgsm (the S/MIME engine). It supports Python 2.6, 2.7, 3.4, and above. " -"Depends on the SWIG C interface for Python as well as the GnuPG software " -"and libraries." +"entire GNU Privacy Guard suite of projects, including GPG, libgcrypt, and " +"gpgsm (the S/MIME engine). It supports Python 2.6, 2.7, 3.4, and above. " +"Depends on the SWIG C interface for Python as well as the GnuPG software and" +" libraries." msgstr "" +"`GPGME Python 바인딩 " +"`_ 은 GPG, " +"libgcrypt, gpgsm(S/MIME 엔진)을 포함한 GNU Privacy Guard 프로젝트 모음 전체를 위한 C API인 " +"`GPG Made Easy `_ 에 파이썬다운" +" 방식으로 접근할 수 있게 해줍니다. 파이썬 2.6, 2.7, 3.4 이상을 지원합니다. 파이썬용 SWIG C 인터페이스와 GnuPG " +"소프트웨어 및 라이브러리에 의존합니다." #: ../../scenarios/crypto.rst:52 msgid "" @@ -78,53 +87,56 @@ msgid "" "`_" " is available with the source, and an HTML version is available `at " "http://files.au.adversary.org " -"`_. Python" -" 3 sample scripts from the examples in the HOWTO are also provided with " -"the source and are accessible `at gnupg.org " +"`_. Python 3 " +"sample scripts from the examples in the HOWTO are also provided with the " +"source and are accessible `at gnupg.org " "`_." msgstr "" +"더 포괄적인 `GPGME Python Bindings HOWTO " +"`_" +" 가 소스와 함께 제공되며, HTML 버전은 `files.au.adversary.org에서 " +"`_ 볼 수 있습니다. " +"HOWTO의 예시에서 가져온 파이썬 3 샘플 스크립트도 소스와 함께 제공되며 `gnupg.org에서 " +"`_" +" 접근할 수 있습니다." #: ../../scenarios/crypto.rst:54 msgid "" -"Available under the same terms as the rest of the GnuPG Project: GPLv2 " -"and LGPLv2.1, both with the \"or any later version\" clause." +"Available under the same terms as the rest of the GnuPG Project: GPLv2 and " +"LGPLv2.1, both with the \"or any later version\" clause." msgstr "" +"GnuPG 프로젝트의 나머지와 동일한 조건, 즉 \"or any later version\" 조항이 포함된 GPLv2 및 LGPLv2.1" +" 하에서 이용할 수 있습니다." #: ../../scenarios/crypto.rst:59 msgid "" -"Included by default when compiling GPGME if the configure script locates " -"a supported python version (which it will if it's in $PATH during " +"Included by default when compiling GPGME if the configure script locates a " +"supported python version (which it will if it's in $PATH during " "configuration)." msgstr "" +"GPGME를 컴파일할 때 configure 스크립트가 지원되는 파이썬 버전을 찾으면 기본으로 포함됩니다(설정 시 $PATH에 있으면 찾을" +" 수 있습니다)." #~ msgid "" #~ msgstr "" #~ msgid "" -#~ "`Cryptography `_ is" -#~ " an actively developed library that " -#~ "provides cryptographic recipes and primitives." -#~ " It supports Python 2.6-2.7, Python " -#~ "3.3+ and PyPy." +#~ "`Cryptography `_ is an actively " +#~ "developed library that provides cryptographic recipes and primitives. It " +#~ "supports Python 2.6-2.7, Python 3.3+ and PyPy." #~ msgstr "" #~ msgid "" -#~ "Cryptography is divided into two layers" -#~ " of recipes and hazardous materials " -#~ "(hazmat). The recipes layer provides " -#~ "simple API for proper symmetric " -#~ "encryption and the hazmat layer provides" -#~ " low-level cryptographic primitives." +#~ "Cryptography is divided into two layers of recipes and hazardous materials " +#~ "(hazmat). The recipes layer provides simple API for proper symmetric " +#~ "encryption and the hazmat layer provides low-level cryptographic primitives." #~ msgstr "" #~ msgid "PyCrypto" #~ msgstr "" #~ msgid "" -#~ "`PyCrypto `_ is" -#~ " another library, which provides secure " -#~ "hash functions and various encryption " -#~ "algorithms. It supports Python version " -#~ "2.1 through 3.3." +#~ "`PyCrypto `_ is another library, " +#~ "which provides secure hash functions and various encryption algorithms. It " +#~ "supports Python version 2.1 through 3.3." #~ msgstr "" - From 6e1085d41d6482f3c54086b26caa9b4439494f76 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:11:01 +0900 Subject: [PATCH 095/117] Translate scenarios/xml.po (15 entries: untangle, xmltodict, xmlschema) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/xml.mo | Bin 384 -> 3573 bytes docs/locale/ko/LC_MESSAGES/scenarios/xml.po | 79 +++++++++++--------- 2 files changed, 42 insertions(+), 37 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo b/docs/locale/ko/LC_MESSAGES/scenarios/xml.mo index e64754bdfaae516a10071360018eec59c6c71757..41e36b8583423748f5b4b64c9853cf09d43aa7cd 100644 GIT binary patch literal 3573 zcmbVOO>Z056`i(mKhz>9x@ZeDMK91r78WU5NCJm-jmWm*x{xfxk_)G85)Frs?av+!>OhCBrBz zfH?DJ-n$>?+1>Nfp_rx z$=5aQk67=1L(|RzUw=W<&H(=aJP!OT@W(&}{5J5|F-=PXUj%*!c%h5az$Vsj1Ahm* zFMd~W*>}nGNGH!^4{)4v zb$5ZT$n~=5M(>) z&_dvE=_~vLP7L64H=r( zO-oO)2%bZkxQLUP2@~u_ofa9>j@S~G2#Jyor35+H#>Qr6Oiz8XM_n;Utq$4)6LWay4Inx3`k!UY_Wb1ixU~kX_dxoNxqo*MrjzJfJxid$m@e1x?KBJ&D5V>7 zgqV3;gyeGF_;y%}l<{qYt74dPI`=hv3O&zm^XOo-mnpgY!!pc)ON&48u;Mm{lxfF) z8Qq5pLj~tW-f&goJlX*4nVS}gHuZ1e;rP9{fRJDzww zk-)~-WifBE`R=~A#>XzlCZ}TO#^_g5$;k`He>-(?d}u=VWNgOOZO_uB<0k1X@Rpqx z=##OWO{W&TxSq4$aC~Vw&KwWZ(>P;ieLX8;GoUI-6Jr<8Ul}_;PNya&-muKL<7Q6} zOA(s zN%Ip`Em8aN9<{&NQFoiFQKMjSFZigg){BHFJIi~){hi=(lOGT}wgxN3;BK9QW=+*@ zbgK0*phio*zk{?JYPS_xu65RHoobDpwwtA(yvX@49cA5^It`5 zKctugP-_)rHgE@VDC*{p`uJg|x=CuO7SejV6x?l)dQeoKR6uSw1QsN?w--@#D9-gF z`w7Y%G)z>2+w0W1RYd$`^4G11%mAevQ(tfOrD7ZQ`MHmmr^v_5QgJqMNg!Hou+!R-<%rWKUGI%2ck{E*}9 z-Eg6bVJ)K8+Pf zydO$itMv5$f2x(+02K@oP&9)*kG>rc652o6Lc=JM49fEN_W5qvmIWZhg^l-+AONgJyk=^Mx{UC\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,77 +23,87 @@ msgstr "" #: ../../scenarios/xml.rst:4 msgid "XML parsing" -msgstr "" +msgstr "XML 파싱" #: ../../scenarios/xml.rst:11 msgid "untangle" -msgstr "" +msgstr "untangle" #: ../../scenarios/xml.rst:13 msgid "" -"`untangle `_ is a simple library " -"which takes an XML document and returns a Python object which mirrors the" -" nodes and attributes in its structure." +"`untangle `_ is a simple library which " +"takes an XML document and returns a Python object which mirrors the nodes " +"and attributes in its structure." msgstr "" +"`untangle `_ 는 XML 문서를 받아 그 구조의 노드와 " +"어트리뷰트를 그대로 반영한 파이썬 객체를 반환하는 간단한 라이브러리입니다." #: ../../scenarios/xml.rst:17 msgid "For example, an XML file like this:" -msgstr "" +msgstr "예를 들어 다음과 같은 XML 파일이 있다고 합시다:" #: ../../scenarios/xml.rst:26 msgid "can be loaded like this:" -msgstr "" +msgstr "다음과 같이 로드할 수 있습니다:" #: ../../scenarios/xml.rst:33 msgid "and then you can get the child element's name attribute like this:" -msgstr "" +msgstr "그러면 다음과 같이 자식 엘리먼트의 name 어트리뷰트를 가져올 수 있습니다:" #: ../../scenarios/xml.rst:39 msgid "untangle also supports loading XML from a string or a URL." -msgstr "" +msgstr "untangle은 문자열이나 URL로부터 XML을 로드하는 것도 지원합니다." #: ../../scenarios/xml.rst:44 msgid "xmltodict" -msgstr "" +msgstr "xmltodict" #: ../../scenarios/xml.rst:46 msgid "" -"`xmltodict `_ is another simple" -" library that aims at making XML feel like working with JSON." +"`xmltodict `_ is another simple " +"library that aims at making XML feel like working with JSON." msgstr "" +"`xmltodict `_ 은 XML을 JSON으로 작업하는 " +"것처럼 느끼게 해주는 또 다른 간단한 라이브러리입니다." #: ../../scenarios/xml.rst:49 msgid "An XML file like this:" -msgstr "" +msgstr "다음과 같은 XML 파일을:" #: ../../scenarios/xml.rst:63 msgid "can be loaded into a Python dict like this:" -msgstr "" +msgstr "다음과 같이 파이썬 딕셔너리로 로드할 수 있습니다:" #: ../../scenarios/xml.rst:72 msgid "and then you can access elements, attributes, and values like this:" -msgstr "" +msgstr "그러면 다음과 같이 엘리먼트, 어트리뷰트, 값에 접근할 수 있습니다:" #: ../../scenarios/xml.rst:81 msgid "" -"xmltodict also lets you roundtrip back to XML with the unparse function, " -"has a streaming mode suitable for handling files that don't fit in " -"memory, and supports XML namespaces." +"xmltodict also lets you roundtrip back to XML with the unparse function, has" +" a streaming mode suitable for handling files that don't fit in memory, and " +"supports XML namespaces." msgstr "" +"xmltodict은 unparse 함수로 다시 XML로 변환하는 라운드트립도 지원하며, 메모리에 다 들어가지 않는 파일을 처리하기에 " +"적합한 스트리밍 모드를 가지고 있고, XML 네임스페이스도 지원합니다." #: ../../scenarios/xml.rst:87 msgid "xmlschema" -msgstr "" +msgstr "xmlschema" #: ../../scenarios/xml.rst:89 msgid "" -"`xmlschema `_ provides support " -"for using XSD-Schemas in Python. Unlike other XML libraries, automatic " -"type parsing is available, so f.e. if the schema defines an element to be" -" of type ``int``, the parsed ``dict`` will contain also an ``int`` value " -"for that element. Moreover the library supports automatic and explicit " -"validation of XML documents against a schema." -msgstr "" +"`xmlschema `_ provides support for" +" using XSD-Schemas in Python. Unlike other XML libraries, automatic type " +"parsing is available, so f.e. if the schema defines an element to be of type" +" ``int``, the parsed ``dict`` will contain also an ``int`` value for that " +"element. Moreover the library supports automatic and explicit validation of " +"XML documents against a schema." +msgstr "" +"`xmlschema `_ 는 파이썬에서 XSD-Schema를 " +"사용할 수 있도록 지원합니다. 다른 XML 라이브러리와는 달리 자동 타입 파싱이 가능하기 때문에, 예를 들어 스키마에서 어떤 엘리먼트의 " +"타입을 ``int`` 로 정의하면 파싱된 ``dict`` 에도 해당 엘리먼트의 값이 ``int`` 로 들어있게 됩니다. 또한 이 " +"라이브러리는 스키마에 따른 XML 문서의 자동 검증 및 명시적 검증을 지원합니다." #~ msgid "and then you can get the child elements name like this:" #~ msgstr "" @@ -102,20 +112,15 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "`xmltodict `_ is" -#~ " another simple library that aims at" -#~ " making XML feel like working with" -#~ " JSON." +#~ "`xmltodict `_ is another simple " +#~ "library that aims at making XML feel like working with JSON." #~ msgstr "" #~ msgid "and then you can access elements, attributes and values like this:" #~ msgstr "" #~ msgid "" -#~ "xmltodict also lets you roundtrip back" -#~ " to XML with the unparse function," -#~ " has a streaming mode suitable for" -#~ " handling files that don't fit in " -#~ "memory and supports namespaces." +#~ "xmltodict also lets you roundtrip back to XML with the unparse function, has" +#~ " a streaming mode suitable for handling files that don't fit in memory and " +#~ "supports namespaces." #~ msgstr "" - From 60f08ca928cfe1716d8fb5df93d969af47d8cd1f Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:11:32 +0900 Subject: [PATCH 096/117] Translate scenarios/imaging.po (16 entries: PIL/Pillow, OpenCV) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/scenarios/imaging.mo | Bin 384 -> 4607 bytes .../ko/LC_MESSAGES/scenarios/imaging.po | 110 ++++++++++-------- 2 files changed, 59 insertions(+), 51 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo b/docs/locale/ko/LC_MESSAGES/scenarios/imaging.mo index e64754bdfaae516a10071360018eec59c6c71757..f7e1b3787e74d1c6a22e57459433a5950e2f8a14 100644 GIT binary patch literal 4607 zcmd5>a zW%;W6eeS*Io_pT&-(Gy7q2T9h_{ZOYxf7Z)a!RjMO|E1sdWo|!-7=~^LO@VT)?(u|uWVbu zM2=P+JI`I0lK17`Lsf3=KT2pCv`K|q9xudWlwvNIpBl>Ln2wZlxr2UXyoRTWUGPnU zf=$qz{V)S@+ zl;uH6yh_-Tz*Uv?Q)6b746p1@5-BKhRgI|5b=M&Bcd46Vjt@$rU9c&u=x?G7aOfaN zfR#7*PyfTs93FBPQSF1x<;Q-vqKEyLRg_mJn}xdRmLf zM?q;wHjQAZEnU(nB4CPvSHxXvbF`5|+Do+KL~3f8JmJ(Wx}3KK5J)EqMq_VS*vs=R z-9r+jT^!nK8LLx#EQ5mZkF)9;y(iVukh zs~Y7%Zxc00eDs_@^QZtkP|P$qRG75wlU-fy9T?-0j;Yy#dXziVPZ<_fI?_NKHQLUB z!<=+M9dk=YLEYz_>+(W7!=)J#=tnU=*cOCmh{!ftKxL*fHC;N=G=l ze7J0}JvCR;%hqeq6cgzX5BFkCM0$0C>y-=}9X@#Ajo||$Y|rTEYo z1`cqGq?7}eT88b@aRXsP+Roi@p@>F3SZIoOudv`MKJ)8hel=K|3*K7^?ykt!b2DM1 z#Wp(i;Lu1|OAtko0$1_w3IljyvmRXOAr!fZ5qtun|Hn%X!4X{VfRMnv z9^7e(_I!A8O`^1PTC}gqMB0t8(Pm;6w0VMy5e*d3F}!ghT$m-%Cvt^1TS2EqFE%># zty|X1E8*!CDsUoT$*B_Q%+}YLjSgzs?>7dQ-Un}k7#BX=c-T%c@%}mp0ZOlm=4tU@ zRkT}i>8W_sc9(C07^qxuuajb3ez0A#tV=WE_LUyjm0)fr_yE6k*)E%i!h+7_m}m_B z6+CEAH*V3}2^s}x?xfse#SE!G7O%jVxNE^BgEP&33>vfH*_n;U^BWK50Fb-}1?MEOgQZz$X0UXD1$S2gfVewL_=dOZ zaqr67v>WIr3H{mA;n`Mi>pqo@Xqcdz=q-!nSqeC+oC`0u!t-r%bOXwBe;Mak@BFYo z#?2`?I7k74rFSUI;NkifA{F1DHlMkWsqRwfi#$Z6{Kxa32vo|{bN>_nZ`Z4CxLd~f EAM2*9)Bpeg delta 82 zcmeyb+`z1JPl#nI0}wC*u?!HafH+7%2gnWrO6mgX$;})KB-}!Md=&f~eO(o7Tzwrq SeH\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,7 +23,7 @@ msgstr "" #: ../../scenarios/imaging.rst:4 msgid "Image Manipulation" -msgstr "" +msgstr "이미지 조작" #: ../../scenarios/imaging.rst:8 msgid "" @@ -31,85 +31,104 @@ msgid "" "effectively using two libraries: Python Imaging Library (PIL) and Open " "Source Computer Vision (OpenCV)." msgstr "" +"대부분의 이미지 처리 및 조작 기법은 두 라이브러리, 즉 Python Imaging Library(PIL)와 Open Source " +"Computer Vision(OpenCV)을 사용하여 효과적으로 수행할 수 있습니다." #: ../../scenarios/imaging.rst:12 msgid "A brief description of both is given below." -msgstr "" +msgstr "아래에 두 라이브러리에 대한 간단한 설명이 있습니다." #: ../../scenarios/imaging.rst:17 msgid "Python Imaging Library" -msgstr "" +msgstr "Python Imaging Library" #: ../../scenarios/imaging.rst:19 msgid "" -"The `Python Imaging Library `_, " -"or PIL for short, is one of the core libraries for image manipulation in " -"Python. Unfortunately, its development has stagnated, with its last " -"release in 2009." +"The `Python Imaging Library `_, or " +"PIL for short, is one of the core libraries for image manipulation in " +"Python. Unfortunately, its development has stagnated, with its last release " +"in 2009." msgstr "" +"`Python Imaging Library `_, 줄여서 " +"PIL은 파이썬에서 이미지 조작을 위한 핵심 라이브러리 중 하나입니다. 안타깝게도 2009년의 마지막 릴리즈 이후 개발이 정체된 " +"상태입니다." #: ../../scenarios/imaging.rst:23 msgid "" -"Luckily for you, there's an actively-developed fork of PIL called `Pillow" -" `_ -- it's easier to install, runs on " -"all major operating systems, and supports Python 3." +"Luckily for you, there's an actively-developed fork of PIL called `Pillow " +"`_ -- it's easier to install, runs on all " +"major operating systems, and supports Python 3." msgstr "" +"다행히 PIL의 활발히 개발 중인 포크인 `Pillow `_ 가 있습니다. " +"설치가 더 쉽고, 주요 운영체제에서 모두 동작하며, 파이썬 3을 지원합니다." #: ../../scenarios/imaging.rst:28 ../../scenarios/imaging.rst:77 msgid "Installation" -msgstr "" +msgstr "설치" #: ../../scenarios/imaging.rst:30 msgid "" "Before installing Pillow, you'll have to install Pillow's prerequisites. " "Find the instructions for your platform in the `Pillow installation " -"instructions " -"`_." +"instructions `_." msgstr "" +"Pillow를 설치하기 전에 Pillow의 사전 요구사항을 먼저 설치해야 합니다. `Pillow 설치 안내 " +"`_ 에서 사용 중인 플랫폼에 " +"맞는 안내를 찾으세요." #: ../../scenarios/imaging.rst:34 msgid "After that, it's straightforward:" -msgstr "" +msgstr "그 다음은 간단합니다:" #: ../../scenarios/imaging.rst:41 ../../scenarios/imaging.rst:92 msgid "Example" -msgstr "" +msgstr "예시" #: ../../scenarios/imaging.rst:64 msgid "" "There are more examples of the Pillow library in the `Pillow tutorial " "`_." msgstr "" +"Pillow 라이브러리의 더 많은 예시는 `Pillow 튜토리얼 " +"`_ 에서 볼 수 " +"있습니다." #: ../../scenarios/imaging.rst:70 msgid "Open Source Computer Vision" -msgstr "" +msgstr "Open Source Computer Vision" #: ../../scenarios/imaging.rst:72 msgid "" "Open Source Computer Vision, more commonly known as OpenCV, is a more " -"advanced image manipulation and processing software than PIL. It has been" -" implemented in several languages and is widely used." +"advanced image manipulation and processing software than PIL. It has been " +"implemented in several languages and is widely used." msgstr "" +"Open Source Computer Vision, 흔히 OpenCV로 알려진 이 소프트웨어는 PIL보다 더 발전된 이미지 조작 및 처리" +" 도구입니다. 여러 언어로 구현되어 있으며 널리 사용됩니다." #: ../../scenarios/imaging.rst:79 msgid "" -"In Python, image processing using OpenCV is implemented using the ``cv2``" -" and ``NumPy`` modules. The `installation instructions for OpenCV " -"`_ should guide you through configuring " -"the project for yourself." +"In Python, image processing using OpenCV is implemented using the ``cv2`` " +"and ``NumPy`` modules. The `installation instructions for OpenCV " +"`_ should guide you through configuring the project " +"for yourself." msgstr "" +"파이썬에서 OpenCV를 사용한 이미지 처리는 ``cv2`` 와 ``NumPy`` 모듈을 사용하여 구현됩니다. `OpenCV 설치 안내 " +"`_ 를 따라 프로젝트를 직접 설정할 수 있습니다." #: ../../scenarios/imaging.rst:84 msgid "NumPy can be downloaded from the Python Package Index(PyPI):" -msgstr "" +msgstr "NumPy는 Python Package Index(PyPI)에서 다운로드할 수 있습니다:" #: ../../scenarios/imaging.rst:110 msgid "" -"There are more Python-implemented examples of OpenCV in this `collection " -"of tutorials `_." +"There are more Python-implemented examples of OpenCV in this `collection of " +"tutorials `_." msgstr "" +"파이썬으로 구현된 OpenCV 예시는 이 `튜토리얼 모음 `_ 에서 더 많이 볼 수 있습니다." #~ msgid "Add introduction about image manipulation and its Python libraries." #~ msgstr "" @@ -121,44 +140,33 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Most image processing and manipulation " -#~ "techniques can be carried out " -#~ "effectively using two libraries: Python " -#~ "Imaging Library (PIL) and OpenSource " -#~ "Computer Vision (OpenCV)." +#~ "Most image processing and manipulation techniques can be carried out " +#~ "effectively using two libraries: Python Imaging Library (PIL) and " +#~ "OpenSource Computer Vision (OpenCV)." #~ msgstr "" #~ msgid "" -#~ "Luckily for you, there's an actively-" -#~ "developed fork of PIL called `Pillow " -#~ "`_ - it's " -#~ "easier to install, runs on all " -#~ "operating systems, and supports Python " -#~ "3." +#~ "Luckily for you, there's an actively-developed fork of PIL called `Pillow " +#~ "`_ - it's easier to install, runs on all " +#~ "operating systems, and supports Python 3." #~ msgstr "" #~ msgid "OpenSource Computer Vision" #~ msgstr "" #~ msgid "" -#~ "OpenSource Computer Vision, more commonly " -#~ "known as OpenCV, is a more " -#~ "advanced image manipulation and processing " -#~ "software than PIL. It has been " -#~ "implemented in several languages and is" -#~ " widely used." +#~ "OpenSource Computer Vision, more commonly known as OpenCV, is a more " +#~ "advanced image manipulation and processing software than PIL. It has been " +#~ "implemented in several languages and is widely used." #~ msgstr "" #~ msgid "" -#~ "There are more examples of the " -#~ "Pillow library in the `Pillow tutorial" -#~ " `_." +#~ "There are more examples of the Pillow library in the `Pillow tutorial " +#~ "`_." #~ msgstr "" #~ msgid "" -#~ "There are more Python-implemented " -#~ "examples of OpenCV in this `collection" -#~ " of tutorials `_." #~ msgstr "" - From ba42ec9ba0de80b434c788c33113c482813acc9f Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:12:20 +0900 Subject: [PATCH 097/117] Translate scenarios/clibs.po (16 entries: CFFI, ctypes, SWIG, Boost.Python) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo | Bin 6753 -> 7193 bytes docs/locale/ko/LC_MESSAGES/scenarios/clibs.po | 240 +++++++++--------- 2 files changed, 113 insertions(+), 127 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo b/docs/locale/ko/LC_MESSAGES/scenarios/clibs.mo index 3af336a9024145e672a83c32ac18ac86a674d5a6..e3cf6ad58d960e6e0f29c867681719e37fd0efec 100644 GIT binary patch delta 3153 zcmai0U2ha+6dnXM8Y~KG{2<{?ys!l<@#BJ2Gcr4(zM29_&`wUtxE`{to*dtb}cc z-L_5Bw!j{Qg-fjyb{YP^f_-B%zQI`=4!rZaru~NhkG`e7sJ(!L+jp+)-t_arAw7=uBVagRdiJE_H~mBVQc< z=E(8S#euG_!x#J8V*`B$&224Lp8IgWInr`+D-|lf;YlY?Nz44JWlw~x6iwJ2qNisd za(SSqN03#N%Z9vd%j}Y$vuYJj>)hA5XOEDDDizAIl9snh@@|Rp2@!bnZ&>(16Zga8 zCr_O?uAPhz4E4r^Oed%?ZJyqCLZ?DPu%DV&pye_ZECJtge4Yx1kjV zLQWLvT3X1-te})7r}E^E;6XvoG|eXQqVRJD&1G?m77}tHy;tzdH4kyQc5USWKFIN` zkoOj)=?Xn~t+rAXwTJM6h{xd1XdHI=8F)|8_yakS!t?EdW=pt6vl(`T;PDq3w&))I z^6Zb1-Z=in_37HfYIEqekdEa~RzuH0SV9kf4AK|0nnlKY1x=I?Jnl`)j z(`gQIvV=&hay236;mCR)vPKX2NtS^WIh_Fj5*)MYi>>lP0d8i3cF9R^FB)sfQPn&&T;Z-_ zzPshD?pqZ?ui$u!5xtrK_~Ct#0fmBw zpt7s@DENR043@*|O}TNx`0zFrCxZgF%9RQ&q!^LvvYFU^WivuHZ$AH-F1WPpx&T<% zO(?I!GAu`1J7ZkVSDNxY(tV;{7*3>9`1u?;^&Avc9;H>7jlze)HDWWb?AWCXZU@a8 z(o6VGY7I>av1J6FQNE@Xh?tpNO!Q3=sZ}oAP`{+Fb7jM_hhmX6ARZe$G2zhwFU#%DE-C1Y707_1l<7`YL2JsWJt&cr z3=tjzP%h^1{p)TM9w9Zhf=cH;CRz-{SppU*~kW*I>K@V)2 za03kvls8Z_iF_fLteZ}XYmHz6SPQuVp)SiM=48_LvuSzvDJyRsAWE+4OoA?RqDAQz zb;+?#C;kEZ4S|Anw>*DLPhf`f^`l)~3~clZivrm$ zq(f~bSZZn>lpEQpg=1rq3hUvZVD_)iL9IX`gSZcnQ#IJ?^H1miEw?Ud3n;y+`q&7j z8t*hbO_}ZWK^t<+A4AMocMJrUAh!Zm3D!jBVpkTp@E%ne-y`mqifgq+1Fhh<`$;@iKzMwqeYmGj4J9{N1XW*+khl`9GC7Ba((;xRaX2t$1R VlwSur8&{v1wbmOSz8o3U{sEJXJih<{ delta 266 zcmbPf@z7+#lKN^!1_n-E1_nU}28LEX1_mJ@Jsn631L;*j8YI3CNb>{f3qYC&NIwA5 zGC=w*kd_6~TtG<$AguwUS%9=BkOrCK2c)xr<|hK_WlRhVX9O4+GME_{ih+jL0_i(q z4D1YSK!s6Ko3$A0c+%ZMeS8%B9DQ9CY+QXEJ$)P;U0i}(gM;n3d=m50OB2&mtrW8J z;T+wN)Wlqnh=Prek3&wTUVc%!9alh3X;EU1u3LUlZn2d@UICa}Y-?z(0Abo1On%2( Q$Y?Y\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -24,192 +24,178 @@ msgstr "" #: ../../scenarios/clibs.rst:4 msgid "Interfacing with C/C++ Libraries" -msgstr "" +msgstr "C/C++ 라이브러리와 인터페이싱하기" #: ../../scenarios/clibs.rst:11 msgid "C Foreign Function Interface" -msgstr "" +msgstr "C Foreign Function Interface" #: ../../scenarios/clibs.rst:13 msgid "" -"`CFFI `_ provides a simple to use" -" mechanism for interfacing with C from both CPython and PyPy. It supports" -" two modes: an inline `ABI `_ compatibility mode " -"(example provided below), which allows you to dynamically load and run " -"functions from executable modules (essentially exposing the same " -"functionality as `LoadLibrary `_ provides a simple to use " +"mechanism for interfacing with C from both CPython and PyPy. It supports two" +" modes: an inline `ABI `_ compatibility mode (example provided " +"below), which allows you to dynamically load and run functions from " +"executable modules (essentially exposing the same functionality as " +"`LoadLibrary `_ or " -"`dlopen `_), and an API" -" mode, which allows you to build C extension modules." -msgstr "" +"`dlopen `_), and an API " +"mode, which allows you to build C extension modules." +msgstr "" +"`CFFI `_ 는 CPython과 PyPy 양쪽에서 C와 " +"인터페이싱하기 위한 쉽게 사용할 수 있는 메커니즘을 제공합니다. 두 가지 모드를 지원하는데, 하나는 인라인 `ABI " +"`_ 호환 모드(아래 예시 참고)로, 실행 가능 모듈로부터 함수를 동적으로 로드해 실행할 수 있게 " +"해줍니다(본질적으로 `LoadLibrary `_ 나 " +"`dlopen `_ 과 동일한 기능을 " +"제공합니다). 다른 하나는 API 모드로, C 확장 모듈을 빌드할 수 있게 해줍니다." #: ../../scenarios/clibs.rst:21 msgid "ABI Interaction" -msgstr "" +msgstr "ABI 인터랙션" #: ../../scenarios/clibs.rst:37 msgid "ctypes" -msgstr "" +msgstr "ctypes" #: ../../scenarios/clibs.rst:39 msgid "" -"`ctypes `_ is the de facto" -" standard library for interfacing with C/C++ from CPython, and it " -"provides not only full access to the native C interface of most major " -"operating systems (e.g., kernel32 on Windows, or libc on \\*nix), but " -"also provides support for loading and interfacing with dynamic libraries," -" such as DLLs or shared objects, at runtime. It brings along with it a " -"whole host of types for interacting with system APIs, and allows you to " -"rather easily define your own complex types, such as structs and unions, " -"and allows you to modify things such as padding and alignment, if needed." -" It can be a bit crufty to use, but in conjunction with the `struct " +"`ctypes `_ is the de facto " +"standard library for interfacing with C/C++ from CPython, and it provides " +"not only full access to the native C interface of most major operating " +"systems (e.g., kernel32 on Windows, or libc on \\*nix), but also provides " +"support for loading and interfacing with dynamic libraries, such as DLLs or " +"shared objects, at runtime. It brings along with it a whole host of types " +"for interacting with system APIs, and allows you to rather easily define " +"your own complex types, such as structs and unions, and allows you to modify" +" things such as padding and alignment, if needed. It can be a bit crufty to " +"use, but in conjunction with the `struct " "`_ module, you are " -"essentially provided full control over how your data types get translated" -" into something usable by a pure C/C++ method." +"essentially provided full control over how your data types get translated " +"into something usable by a pure C/C++ method." msgstr "" +"`ctypes `_ 는 CPython에서 C/C++와" +" 인터페이싱하기 위한 사실상의 표준 라이브러리입니다. 주요 운영체제의 네이티브 C 인터페이스(예: Windows의 kernel32, " +"\\*nix의 libc)에 완전히 접근할 수 있을 뿐만 아니라, 런타임에 DLL이나 공유 객체와 같은 동적 라이브러리를 로드하고 " +"인터페이싱하는 것도 지원합니다. 시스템 API와 상호작용하기 위한 많은 타입을 가져다 주며, struct나 union 같은 복잡한 타입을" +" 직접 정의하거나 필요할 때 패딩과 정렬을 수정하는 일도 비교적 쉽게 할 수 있습니다. 사용하기에 다소 거추장스러울 수 있지만, " +"`struct `_ 모듈과 함께 쓰면 데이터 타입이 " +"순수 C/C++ 메소드에서 사용 가능한 형태로 어떻게 변환되는지를 본질적으로 완전히 제어할 수 있습니다." #: ../../scenarios/clibs.rst:53 msgid "Struct Equivalents" -msgstr "" +msgstr "Struct 대응" #: ../../scenarios/clibs.rst:55 msgid ":file:`MyStruct.h`" -msgstr "" +msgstr ":file:`MyStruct.h`" #: ../../scenarios/clibs.rst:65 msgid ":file:`MyStruct.py`" -msgstr "" +msgstr ":file:`MyStruct.py`" #: ../../scenarios/clibs.rst:78 msgid "SWIG" -msgstr "" +msgstr "SWIG" #: ../../scenarios/clibs.rst:80 msgid "" "`SWIG `_, though not strictly Python focused (it " -"supports a large number of scripting languages), is a tool for generating" -" bindings for interpreted languages from C/C++ header files. It is " -"extremely simple to use: the consumer simply needs to define an interface" -" file (detailed in the tutorial and documentations), include the " -"requisite C/C++ headers, and run the build tool against them. While it " -"does have some limits (it currently seems to have issues with a small " -"subset of newer C++ features, and getting template-heavy code to work can" -" be a bit verbose), it provides a great deal of power and exposes lots of" -" features to Python with little effort. Additionally, you can easily " -"extend the bindings SWIG creates (in the interface file) to overload " -"operators and built-in methods, effectively re- cast C++ exceptions to be" -" catchable by Python, etc." -msgstr "" +"supports a large number of scripting languages), is a tool for generating " +"bindings for interpreted languages from C/C++ header files. It is extremely " +"simple to use: the consumer simply needs to define an interface file " +"(detailed in the tutorial and documentations), include the requisite C/C++ " +"headers, and run the build tool against them. While it does have some limits" +" (it currently seems to have issues with a small subset of newer C++ " +"features, and getting template-heavy code to work can be a bit verbose), it " +"provides a great deal of power and exposes lots of features to Python with " +"little effort. Additionally, you can easily extend the bindings SWIG creates" +" (in the interface file) to overload operators and built-in methods, " +"effectively re- cast C++ exceptions to be catchable by Python, etc." +msgstr "" +"`SWIG `_ 는 엄밀히 파이썬에 초점을 둔 것은 아니지만(많은 수의 스크립트 언어를 " +"지원합니다), C/C++ 헤더 파일로부터 인터프리트 언어를 위한 바인딩을 생성해주는 도구입니다. 사용법은 매우 간단합니다. 사용자는 " +"인터페이스 파일(튜토리얼과 문서에 자세히 설명됨)을 정의하고, 필요한 C/C++ 헤더를 포함시킨 다음, 빌드 도구를 그것들에 대해 " +"실행하기만 하면 됩니다. 일부 한계가 있긴 하지만(현재 일부 최신 C++ 기능에서 문제가 있는 것으로 보이며, 템플릿이 많은 코드를 " +"동작시키려면 다소 장황해질 수 있습니다), 적은 노력으로 파이썬에 많은 기능을 노출시킬 수 있는 강력한 도구입니다. 또한 SWIG가 " +"생성한 바인딩을 (인터페이스 파일에서) 손쉽게 확장하여 연산자나 내장 메소드를 오버로드하거나, C++ 예외를 파이썬이 잡을 수 있도록 " +"다시 캐스팅하는 등의 작업도 할 수 있습니다." #: ../../scenarios/clibs.rst:94 msgid "Example: Overloading __repr__" -msgstr "" +msgstr "예시: __repr__ 오버로딩하기" #: ../../scenarios/clibs.rst:96 msgid ":file:`MyClass.h`" -msgstr "" +msgstr ":file:`MyClass.h`" #: ../../scenarios/clibs.rst:110 msgid ":file:`myclass.i`" -msgstr "" +msgstr ":file:`myclass.i`" #: ../../scenarios/clibs.rst:135 msgid "Boost.Python" -msgstr "" +msgstr "Boost.Python" #: ../../scenarios/clibs.rst:137 msgid "" "`Boost.Python `_ " -"requires a bit more manual work to expose C++ object functionality, but " -"it is capable of providing all the same features SWIG does and then some," -" to include providing wrappers to access PyObjects in C++, extracting " -"SWIG wrapper objects, and even embedding bits of Python into your C++ " -"code." +"requires a bit more manual work to expose C++ object functionality, but it " +"is capable of providing all the same features SWIG does and then some, to " +"include providing wrappers to access PyObjects in C++, extracting SWIG " +"wrapper objects, and even embedding bits of Python into your C++ code." msgstr "" +"`Boost.Python `_ 은 " +"C++ 객체의 기능을 노출하기 위해 다소 더 수동적인 작업이 필요하지만, SWIG가 제공하는 모든 기능과 그 이상을 제공할 수 있습니다." +" 여기에는 C++에서 PyObject에 접근하기 위한 래퍼 제공, SWIG 래퍼 객체 추출, 심지어 C++ 코드에 파이썬 일부를 " +"임베딩하는 것까지 포함됩니다." #~ msgid "" -#~ "`CFFI `_ provides" -#~ " a simple to use mechanism for " -#~ "interfacing with C from both CPython " -#~ "and PyPy. It supports two modes: " -#~ "an inline ABI compatibility mode " -#~ "(example provided below), which allows " -#~ "you to dynamically load and run " -#~ "functions from executable modules (essentially" -#~ " exposing the same functionality as " -#~ "LoadLibrary or dlopen), and an API " -#~ "mode, which allows you to build C" -#~ " extension modules." +#~ "`CFFI `_ provides a simple to use " +#~ "mechanism for interfacing with C from both CPython and PyPy. It supports two" +#~ " modes: an inline ABI compatibility mode (example provided below), which " +#~ "allows you to dynamically load and run functions from executable modules " +#~ "(essentially exposing the same functionality as LoadLibrary or dlopen), and " +#~ "an API mode, which allows you to build C extension modules." #~ msgstr "" #~ msgid "" -#~ "`ctypes `_ " -#~ "is the de facto library for " -#~ "interfacing with C/C++ from CPython, and" -#~ " it provides not only full access " -#~ "to the native C interface of most" -#~ " major operating systems (e.g., kernel32" -#~ " on Windows, or libc on \\*nix), " -#~ "but also provides support for loading" -#~ " and interfacing with dynamic libraries," -#~ " such as DLLs or shared objects " -#~ "at runtime. It does bring along " -#~ "with it a whole host of types " -#~ "for interacting with system APIs, and" -#~ " allows you to rather easily define" -#~ " your own complex types, such as " -#~ "structs and unions, and allows you " -#~ "to modify things such as padding " -#~ "and alignment, if needed. It can " -#~ "be a bit crufty to use, but " -#~ "in conjunction with the `struct " -#~ "`_ module, " -#~ "you are essentially provided full " -#~ "control over how your data types " -#~ "get translated into something usable by" -#~ " a pure C(++) method." +#~ "`ctypes `_ is the de facto " +#~ "library for interfacing with C/C++ from CPython, and it provides not only " +#~ "full access to the native C interface of most major operating systems (e.g.," +#~ " kernel32 on Windows, or libc on \\*nix), but also provides support for " +#~ "loading and interfacing with dynamic libraries, such as DLLs or shared " +#~ "objects at runtime. It does bring along with it a whole host of types for " +#~ "interacting with system APIs, and allows you to rather easily define your " +#~ "own complex types, such as structs and unions, and allows you to modify " +#~ "things such as padding and alignment, if needed. It can be a bit crufty to " +#~ "use, but in conjunction with the `struct " +#~ "`_ module, you are " +#~ "essentially provided full control over how your data types get translated " +#~ "into something usable by a pure C(++) method." #~ msgstr "" #~ msgid "" -#~ "`SWIG `_, though not " -#~ "strictly Python focused (it supports a" -#~ " large number of scripting languages), " -#~ "is a tool for generating bindings " -#~ "for interpreted languages from C/C++ " -#~ "header files. It is extremely simple " -#~ "to use: the consumer simply needs " -#~ "to define an interface file (detailed" -#~ " in the tutorial and documentations), " -#~ "include the requisite C/C++ headers, and" -#~ " run the build tool against them. " -#~ "While it does have some limits, " -#~ "(it currently seems to have issues " -#~ "with a small subset of newer C++" -#~ " features, and getting template-heavy " -#~ "code to work can be a bit " -#~ "verbose), it provides a great deal " -#~ "of power and exposes lots of " -#~ "features to Python with little effort." -#~ " Additionally, you can easily extend " -#~ "the bindings SWIG creates (in the " -#~ "interface file) to overload operators " -#~ "and built-in methods, effectively re-" -#~ " cast C++ exceptions to be catchable" -#~ " by Python, etc." +#~ "`SWIG `_, though not strictly Python focused (it " +#~ "supports a large number of scripting languages), is a tool for generating " +#~ "bindings for interpreted languages from C/C++ header files. It is extremely " +#~ "simple to use: the consumer simply needs to define an interface file " +#~ "(detailed in the tutorial and documentations), include the requisite C/C++ " +#~ "headers, and run the build tool against them. While it does have some " +#~ "limits, (it currently seems to have issues with a small subset of newer C++ " +#~ "features, and getting template-heavy code to work can be a bit verbose), it " +#~ "provides a great deal of power and exposes lots of features to Python with " +#~ "little effort. Additionally, you can easily extend the bindings SWIG creates" +#~ " (in the interface file) to overload operators and built-in methods, " +#~ "effectively re- cast C++ exceptions to be catchable by Python, etc." #~ msgstr "" #~ msgid "" -#~ "`Boost.Python " -#~ "`_ " -#~ "requires a bit more manual work to" -#~ " expose C++ object functionality, but " -#~ "it is capable of providing all the" -#~ " same features SWIG does and then " -#~ "some, to include providing wrappers to" -#~ " access PyObjects in C++, extracting " -#~ "SWIG- wrapper objects, and even " -#~ "embedding bits of Python into your " -#~ "C++ code." +#~ "`Boost.Python `_ " +#~ "requires a bit more manual work to expose C++ object functionality, but it " +#~ "is capable of providing all the same features SWIG does and then some, to " +#~ "include providing wrappers to access PyObjects in C++, extracting SWIG- " +#~ "wrapper objects, and even embedding bits of Python into your C++ code." #~ msgstr "" - From 3f8c722564d861cb5bd9b922781de5819c48425e Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:12:59 +0900 Subject: [PATCH 098/117] Translate shipping/publishing.po (19 entries: GitHub project publishing guide) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/shipping/publishing.mo | Bin 4293 -> 4737 bytes .../ko/LC_MESSAGES/shipping/publishing.po | 74 +++++++++++------- 2 files changed, 44 insertions(+), 30 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/shipping/publishing.mo b/docs/locale/ko/LC_MESSAGES/shipping/publishing.mo index 6b91a0d8dc749a25848f9bb7261fe39e7d92531d..6bebb168d449f8dc6e1b4e8911dc7aef7c9cf6ca 100644 GIT binary patch delta 2448 zcmZ`*U2Icj82(HQ0wSO$MommUnwWsr;%{OWLRiAYi-AAW7($2)GRGpcIJPKPr*&sI z+QN!!w+`CwAYIqZV>qlGo`vF_@s3Ncy*}T2F1*oOpZ7bbr2|QpylcPjdw-tydEU3b z?@GOzYZ=F$5Mp4n5Z}Sx+9Jfb5MuY!LhOaDz`h52ANDoaC$|YvgWU^z9QIGxpJCs9 zMu>Z`f5CnMTiGte0_;Dq3E0^kLOc(|9tYS5WTQ3JtxFd zu*YCufjtG=xWDD!O)~?V7d|+e7>^GR3?<^S_jFwDyKp`>cshO{F+O%Ck@z}xDsguI z*8aix@c7{H&>No(4W8|h{k=yHecpShPwwmQKX7IwmKYu0KXY`;H^y7<$KKp3yxUFB zDfoqwq+-?2Pf5C%rF2#Lc~jjekyZB7uID7B$`zGWRm)9D_ws6{MDxiFccj-$s+ujS zl2bRcYOy7~)huO7e!-GnW6g6+DmSHHFzH&}FD$E!F{LuqnDl;iRi#LUmc&Q3=t|Ei zDW}A4W~%&z=4`cKt2?IGXi2|#mF6bdCruR*Yl_lqDie6ZWwqdR1>@sVOQ-z3P1ly; zlPd}GR|Zm4m-BD}N9Cqpz+cg8SW!t6Q(XEr#9lJ}*-Q8$<&X$d(MxprE)$FWqVPGuxjFqM<{C;0Rt z&E>dUmCnn^>k+Az^XgJlyG}J#?Ux|3j2s#IR*nvxOPn7WON?HK@C7n0f1->FWV*mU zCJv2^eK>wn8eYRBs}MkZk-_KQ>e8iJ%5sat2i;WA9!sX?%LK?`C8@Fq%JBCaUj<<} z@9y^xUK|VVSAmk)NIkg26Y!3%*J&1{>7rstGj^-8Nlt@%sFto!88}%5Gy)jSY~Qxu zkaT;Jdq$2M^rl@8&7*MBuOR&go$eG;X2zhmV8C5ls=7-VONVQ$kp((4N6-r9q4u5u zSFd*9?GfDd8%Wyd&bot>Cg5BMcT|4b*L(1AUsRrm4UdeC4963rLnjcs++tps7KEq) zzmvy1#NhUmS=DVrVGnh7gBNAs?#CC#PGeM1ag8QHH9XNm=wu5Dc4w&^$Dg)U!$l{d z!z7p)6sviMx2ghORMj*b%{Em&4_wH^NO6c5Um zel|-enJErVh5YP5hVG{PRG_12+b`4~lfKprWj36t}F0v;qmR{)E40E=g#fqDCwt6*U|}&wMZY97P}9Y8E{x<<>_qU6s-xCY`98!*rSgYoL3l` z_GXdX3oOUGRY)gWr*+)3N_3|bR{SH@a?SRWMMfm;M)pWQmFp%NQda3jZb2~K!`*6B z^z_840pKnQ_13d2*#Hb|LSDyuNo!0*X9cswv{;*T+1@}pMj*g~Rn}hp;ZKGhp%-Ae V6^@%1AN;H!^EN=`V^zqC{{UFoco_fy delta 313 zcmX}gJxjw-0EOWbC~D(JGYF2}A`T)ct%E~tOG2AM;U-k0g5r`PgkqXVVsQ{#+yx6R zg19^A)J-h7ICppUKe&lU1*hk{=W_KeKYSUSD}Xx#sC1GAd;sq%ut|+sV1=I1JiVhs zI;IYF=74K@Pp_yx57g;1?b9#1O)nOJMLMDD^n*T9Er(^ia*T7p8trR9hCa|G`lO8x zmD}k-b5Ba)n6@PvWQN8Gp&}k#NVtIRl8+d`o5o}oj59sQlY5U\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -24,101 +24,115 @@ msgstr "" #: ../../shipping/publishing.rst:6 msgid "Publishing Your Code" -msgstr "" +msgstr "코드 배포하기" #: ../../shipping/publishing.rst msgid "Todo" -msgstr "" +msgstr "할 일" #: ../../shipping/publishing.rst:8 msgid "Replace this kitten with the photo we want." -msgstr "" +msgstr "이 새끼 고양이 사진을 원하는 사진으로 교체할 것." #: ../../shipping/publishing.rst:12 msgid "" -"A healthy open source project needs a place to publish its code and " -"project management stuff so other developers can collaborate with you. " -"This lets your users gain a better understanding of your code, keep up " -"with new developments, report bugs, and contribute code." +"A healthy open source project needs a place to publish its code and project " +"management stuff so other developers can collaborate with you. This lets " +"your users gain a better understanding of your code, keep up with new " +"developments, report bugs, and contribute code." msgstr "" +"건강한 오픈 소스 프로젝트가 되려면 코드와 프로젝트 관리 자료를 게시할 공간이 필요합니다. 그래야 다른 개발자들이 여러분과 협업할 수 " +"있습니다. 이런 공간이 있으면 사용자가 코드를 더 잘 이해하고, 새로운 진행 상황을 따라가며, 버그를 보고하고, 코드 기여를 할 수 " +"있습니다." #: ../../shipping/publishing.rst:17 msgid "" -"This development web site should include the source code history itself, " -"a bug tracker, a patch submission (aka \"Pull Request\") queue, and " -"possibly additional developer-oriented documentation." +"This development web site should include the source code history itself, a " +"bug tracker, a patch submission (aka \"Pull Request\") queue, and possibly " +"additional developer-oriented documentation." msgstr "" +"이 개발 웹사이트는 소스 코드의 이력 자체, 버그 트래커, 패치 제출(즉 \"풀 리퀘스트\") 큐, 그리고 가능하다면 개발자 대상 " +"문서까지 포함해야 합니다." #: ../../shipping/publishing.rst:21 msgid "" -"There are several free open source project hosting sites (aka " -"\"forges\"). These include GitHub, SourceForge, Bitbucket, and GitLab. " -"GitHub is currently the best. Use GitHub." +"There are several free open source project hosting sites (aka \"forges\"). " +"These include GitHub, SourceForge, Bitbucket, and GitLab. GitHub is " +"currently the best. Use GitHub." msgstr "" +"몇 가지 무료 오픈 소스 프로젝트 호스팅 사이트(즉 \"포지\")가 있습니다. 여기에는 GitHub, SourceForge, " +"Bitbucket, GitLab이 포함됩니다. 현재로서는 GitHub가 가장 좋습니다. GitHub를 사용하세요." #: ../../shipping/publishing.rst:28 msgid "Creating a Project Repo on GitHub" -msgstr "" +msgstr "GitHub에 프로젝트 저장소 만들기" #: ../../shipping/publishing.rst:30 msgid "To publish your Python project on GitHub:" -msgstr "" +msgstr "여러분의 파이썬 프로젝트를 GitHub에 게시하려면:" #: ../../shipping/publishing.rst:32 msgid "Create a GitHub account if you don't already have one." -msgstr "" +msgstr "GitHub 계정이 없다면 새로 만드세요." #: ../../shipping/publishing.rst:34 msgid "Create a new repo for your project." -msgstr "" +msgstr "프로젝트를 위한 새 저장소를 만드세요." #: ../../shipping/publishing.rst:36 msgid "" -"Click on the \"+\" menu next to your avatar in the upper right of the " -"page and choose \"New repository\"." -msgstr "" +"Click on the \"+\" menu next to your avatar in the upper right of the page " +"and choose \"New repository\"." +msgstr "페이지 오른쪽 상단의 아바타 옆에 있는 \"+\" 메뉴를 클릭하고 \"New repository\"를 선택하세요." #: ../../shipping/publishing.rst:38 msgid "Name it after your project and give it an SEO-friendly description." -msgstr "" +msgstr "프로젝트의 이름을 따서 짓고, SEO에 친화적인 설명을 달아주세요." #: ../../shipping/publishing.rst:40 msgid "" "If you don't have an existing project repo, choose the settings to add a " "README, `.gitignore`, and license. Use the Python `.gitignore` option." msgstr "" +"기존 프로젝트 저장소가 없다면, README, `.gitignore`, 라이선스를 추가하는 설정을 선택하세요. `.gitignore`는 " +"Python 옵션을 사용하세요." #: ../../shipping/publishing.rst:43 msgid "" "On the newly created repo page, click \"Manage topics\" and add the tags " "\"python\" and \"python3\" and/or \"python2\" as appropriate." msgstr "" +"새로 만든 저장소 페이지에서 \"Manage topics\"를 클릭하고 \"python\", 그리고 적절히 \"python3\" 및/또는" +" \"python2\" 태그를 추가하세요." #: ../../shipping/publishing.rst:45 msgid "" "Include a link to your new GitHub repo in your project's README file so " "people who just have the project distribution know where to find it." msgstr "" +"프로젝트 배포본만 가지고 있는 사람들도 어디에서 찾을 수 있는지 알 수 있도록, 프로젝트의 README 파일에 새 GitHub 저장소 " +"링크를 포함하세요." #: ../../shipping/publishing.rst:47 msgid "" "If this is a brand new repo, clone it to your local machine and start " "working:" -msgstr "" +msgstr "완전히 새로운 저장소라면, 로컬 머신에 복제하고 작업을 시작하세요:" #: ../../shipping/publishing.rst:53 msgid "" -"Or, if you already have a project Git repo, add your new GitHub repo as a" -" remote:" -msgstr "" +"Or, if you already have a project Git repo, add your new GitHub repo as a " +"remote:" +msgstr "또는 이미 프로젝트의 Git 저장소가 있다면, 새 GitHub 저장소를 리모트로 추가하세요:" #: ../../shipping/publishing.rst:63 msgid "When Your Project Grows" -msgstr "" +msgstr "프로젝트가 성장할 때" #: ../../shipping/publishing.rst:65 msgid "" -"For more information about managing an open source software project, see " -"the book `Producing Open Source Software `_." +"For more information about managing an open source software project, see the" +" book `Producing Open Source Software `_." msgstr "" - +"오픈 소스 소프트웨어 프로젝트 관리에 대한 더 많은 정보는 `Producing Open Source Software " +"`_ 책을 참고하세요." From df7a557301622c98035fa7ba298949a0ac13c2aa Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:13:41 +0900 Subject: [PATCH 099/117] Translate scenarios/ci.po (19 entries: CI overview, Jenkins, Buildbot, Tox, Travis) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/ci.mo | Bin 6253 -> 6649 bytes docs/locale/ko/LC_MESSAGES/scenarios/ci.po | 187 ++++++++++----------- 2 files changed, 90 insertions(+), 97 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo b/docs/locale/ko/LC_MESSAGES/scenarios/ci.mo index 594b3872a3d18226e3741525240fd4247641504a..72aa367c27c553da51d5049378a55ecc2869b4f5 100644 GIT binary patch delta 3124 zcmZuz-)|IE6uzhlh(bUq`e4F+lbTXQA2bai0ucmJOvDG|rA1e0D7&GwC{MF3)4FsA z*gCuIw4Gh1vSnMcB;$4q)3ANON8>-i>)bnuuRdt}&Yd6If)AU!J3IH>bH498-?_p2 ze}7nLY3DXE_U`M9-C+1^V{8l7&D$Bfh;;|nU0APU?R<%`+gMNIx3`0_W7xN4Cu4*7 zefkaT!TLMaXITHh`W4ptn~Y82y??O2jNio$#$Ls0VSNSbuN`a;tKmxx53XQ6y_>PE zIOr+XE^Pes?d5Mb4ZL>jY-Tup;p5TATd?hF?ajDy)q06$xgQ70xonXR~(?wz0V&3NB&Wx-~1|>^Q*Sok_Zpv~?+^q*i zLpV8EZsKLJ(BiU+08M|{;YUx%nJkw#E$(}+a1nIOkP}tBr_qbyne51L|G@X>Gee9H zr(^O}vEcE*Fc3!Gs&mT7(fwtFE_;FQQfl|>_#&qZ*n>A0gV8E#@m-u|)rDIW3r)Xa zpq#2)wM4-Z6Gi;bgP9USploep-FuIo=zIYTS;ht<%l(zQ)PIw61z}c^5to&M%sYe; z(2&z(vaG9T_u`6x5YFRr+(4#;;M}5|YI5JTg==%anGL42o3b({@;TJnO-KR?9+Ye@ zN9&?Ob>o*M?k%E1E>~=XQh$p^4j44$jhL{IjP}do4sw~UgB75bix5^xmzxxBswr!e zI9F2#`)(YEYDHaOIG8Dl0!Uaj!1~^VFdp2g2c^YMBFJxK<^3{HrK)1#SRlZA>d50OEO6A$y z)NXNSs0wFnLM|+VPI27;#ak&5!pFeKvfa z`^)H;lC)c@o91o*F^=%shjTm-cU@{USw^|k>A(QWLAzjM)K%(nnBfaaEujqn(W=fh zF;ZTqWh6#4J<6gzqkJffVA7L$g|jFbqDH!p&ix+giZ|XGDZyeFc@}}VuHY~3*Q35b(ScI_eL7#xv zZ1OMq28a67{8;A4fz%-B>*xsrH>4s-A3OD`crcdet%s>zow5AJTFg&dF&YG>@Io<= zSr>;{k#rC~(G}cVhm$EWDw-Ln63)+|;4NqjSi#wws{0=-3e$PPf}@k=y_PZ(R0K00 zsSEA?8q}yl$7ukL4FoF%#Tip>OD;6sd%5rGP-?KZmkZAj6`RbuW<=(b6yMDyM03A| zx*UCfFo$l;FGA#8n7_f&ZFxFsmZXbSyIU)A4DiFE;J-x}BH07E4$!USIee>Z=0HZGQoC4@sp5pi&>Dra4U!Tj-p3QReoi{RfFot?@2#FE}+a>h2F?)pGe z5?!Oo3j5Czs}P8`=#LB`t(|%s&7$+E=dOL)&pV=kKjjjO7&&<0Wd$kbsYET3mXv&F= z9j??7mXs7i&qN)A$xu$EMh=H{@u+NQ&UU+@O58d)p6w#2PhYKr`7L>%D} zlpacrgrZ8I<9y6Ln?@fhp_>Qg^C+tdHca?|DtL4eM28Kiq^qX)25E|-E6Oc07OBKS z0YaBYDm<_}%FBRHSpE;8@@Q<)yhtRcXnF3Qr*sn=Y9cn+^qe6U9#S+4cC#*LQIoqQ z8W2e&A@l582STdXEID2z6B)JEkrWOOx`L7Ix3#$OGNeXcbZskPfXB|zh2vaYH8wH^ zF(fJ{AJgbc7AJ)JQ=Eqz&;u7Q<9BjwslbDxYnwXwyrI4Ku=jeu{Cgy@f6l{Ea9C9-C@{7{#xB_xYixP8m m-SUfai>(y$3c%cATSIFF2-DVJG7oPdi;Du{;t0 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po index a73e660dc..5e7a09b34 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/ci.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/ci.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,122 +23,142 @@ msgstr "" #: ../../scenarios/ci.rst:4 msgid "Continuous Integration" -msgstr "" +msgstr "지속적 통합(CI)" #: ../../scenarios/ci.rst:9 msgid "For advice on writing your tests, see :doc:`/writing/tests`." -msgstr "" +msgstr "테스트 작성에 대한 조언은 :doc:`/writing/tests` 를 참고하세요." #: ../../scenarios/ci.rst:14 msgid "Why?" -msgstr "" +msgstr "왜?" #: ../../scenarios/ci.rst:16 msgid "" "Martin Fowler, who first wrote about `Continuous Integration " -"`_ (short: " -"CI) together with Kent Beck, describes CI as follows:" +"`_ (short: CI) " +"together with Kent Beck, describes CI as follows:" msgstr "" +"Kent Beck과 함께 `지속적 통합(Continuous Integration) " +"`_ (줄여서 CI)에 대해" +" 처음 글을 쓴 Martin Fowler는 CI를 다음과 같이 설명합니다:" #: ../../scenarios/ci.rst:19 msgid "" -"Continuous Integration is a software development practice where members " -"of a team integrate their work frequently, usually each person integrates" -" at least daily - leading to multiple integrations per day. Each " -"integration is verified by an automated build (including test) to detect " -"integration errors as quickly as possible. Many teams find that this " -"approach leads to significantly reduced integration problems and allows a" -" team to develop cohesive software more rapidly." -msgstr "" +"Continuous Integration is a software development practice where members of a" +" team integrate their work frequently, usually each person integrates at " +"least daily - leading to multiple integrations per day. Each integration is " +"verified by an automated build (including test) to detect integration errors" +" as quickly as possible. Many teams find that this approach leads to " +"significantly reduced integration problems and allows a team to develop " +"cohesive software more rapidly." +msgstr "" +"지속적 통합은 팀 구성원들이 자신의 작업을 자주 통합하는 소프트웨어 개발 관행입니다. 보통 한 사람이 하루에 최소 한 번 이상 통합하여 " +"하루에도 여러 번 통합이 이루어집니다. 각 통합은 자동화된 빌드(테스트 포함)로 검증되어 통합 오류를 가능한 한 빨리 감지합니다. 많은 " +"팀은 이러한 접근 방식이 통합 문제를 크게 줄이고, 팀이 더 빠르게 일관성 있는 소프트웨어를 개발할 수 있게 해준다는 것을 발견합니다." #: ../../scenarios/ci.rst:30 msgid "Jenkins" -msgstr "" +msgstr "Jenkins" #: ../../scenarios/ci.rst:32 msgid "" "`Jenkins CI `_ is an extensible Continuous " "Integration engine. Use it." -msgstr "" +msgstr "`Jenkins CI `_ 는 확장 가능한 지속적 통합 엔진입니다. 사용해 보세요." #: ../../scenarios/ci.rst:37 msgid "Buildbot" -msgstr "" +msgstr "Buildbot" #: ../../scenarios/ci.rst:39 msgid "" "`Buildbot `_ is a Python system to " "automate the compile/test cycle to validate code changes." msgstr "" +"`Buildbot `_ 은 코드 변경을 검증하기 위해 컴파일/테스트 " +"사이클을 자동화하는 파이썬 시스템입니다." #: ../../scenarios/ci.rst:45 msgid "Tox" -msgstr "" +msgstr "Tox" #: ../../scenarios/ci.rst:47 msgid "" "`tox `_ is an automation tool " -"providing packaging, testing, and deployment of Python software right " -"from the console or CI server. It is a generic virtualenv management and " -"test command line tool which provides the following features:" +"providing packaging, testing, and deployment of Python software right from " +"the console or CI server. It is a generic virtualenv management and test " +"command line tool which provides the following features:" msgstr "" +"`tox `_ 는 콘솔이나 CI 서버에서 바로 파이썬 소프트웨어의 " +"패키징, 테스트, 배포를 제공하는 자동화 도구입니다. 범용 virtualenv 관리 및 테스트용 커맨드라인 도구로, 다음과 같은 기능을 " +"제공합니다:" #: ../../scenarios/ci.rst:52 msgid "" -"Checking that packages install correctly with different Python versions " -"and interpreters" -msgstr "" +"Checking that packages install correctly with different Python versions and " +"interpreters" +msgstr "서로 다른 파이썬 버전과 인터프리터에서 패키지가 올바르게 설치되는지 확인" #: ../../scenarios/ci.rst:54 msgid "" "Running tests in each of the environments, configuring your test tool of " "choice" -msgstr "" +msgstr "각 환경에서 테스트를 실행하고, 원하는 테스트 도구를 설정" #: ../../scenarios/ci.rst:56 msgid "" "Acting as a front-end to Continuous Integration servers, reducing " "boilerplate and merging CI and shell-based testing" -msgstr "" +msgstr "지속적 통합 서버의 프론트엔드로 동작하여, 보일러플레이트를 줄이고 CI와 쉘 기반 테스트를 통합" #: ../../scenarios/ci.rst:62 msgid "Travis-CI" -msgstr "" +msgstr "Travis-CI" #: ../../scenarios/ci.rst:64 msgid "" "`Travis-CI `_ is a distributed CI server which " -"builds tests for open source projects for free. It provides multiple " -"workers to run Python tests on and seamlessly integrates with GitHub. You" -" can even have it comment on your Pull Requests whether this particular " -"changeset breaks the build or not. So, if you are hosting your code on " -"GitHub, Travis-CI is a great and easy way to get started with Continuous " -"Integration." +"builds tests for open source projects for free. It provides multiple workers" +" to run Python tests on and seamlessly integrates with GitHub. You can even " +"have it comment on your Pull Requests whether this particular changeset " +"breaks the build or not. So, if you are hosting your code on GitHub, Travis-" +"CI is a great and easy way to get started with Continuous Integration." msgstr "" +"`Travis-CI `_ 는 오픈 소스 프로젝트를 위해 테스트를 무료로 빌드해주는 분산 CI " +"서버입니다. 파이썬 테스트를 실행할 여러 워커를 제공하며 GitHub와 매끄럽게 통합됩니다. 풀 리퀘스트에서 해당 변경 사항이 빌드를 " +"깨뜨리는지 여부를 댓글로 남기게 할 수도 있습니다. 따라서 코드를 GitHub에 호스팅하고 있다면, Travis-CI는 지속적 통합을 " +"시작하기 위한 훌륭하고 쉬운 방법입니다." #: ../../scenarios/ci.rst:71 msgid "" -"In order to get started, add a :file:`.travis.yml` file to your " -"repository with this example content::" -msgstr "" +"In order to get started, add a :file:`.travis.yml` file to your repository " +"with this example content::" +msgstr "시작하려면, 저장소에 다음과 같은 예시 내용으로 :file:`.travis.yml` 파일을 추가하세요::" #: ../../scenarios/ci.rst:87 msgid "" "This will get your project tested on all the listed Python versions by " -"running the given script, and will only build the ``master`` branch. " -"There are a lot more options you can enable, like notifications, before " -"and after steps, and much more. The `Travis-CI docs `_ explain all of these options, and are " -"very thorough." +"running the given script, and will only build the ``master`` branch. There " +"are a lot more options you can enable, like notifications, before and after " +"steps, and much more. The `Travis-CI docs `_ explain all of these options, and are very " +"thorough." msgstr "" +"이렇게 하면 나열된 모든 파이썬 버전에서 주어진 스크립트를 실행하여 프로젝트를 테스트하며, ``master`` 브랜치만 빌드합니다. " +"알림, 전/후 단계 등 활성화할 수 있는 옵션이 훨씬 더 많이 있습니다. `Travis-CI 문서 `_ 에서 이 모든 옵션을 매우 자세히 설명하고 있습니다." #: ../../scenarios/ci.rst:93 msgid "" "In order to activate testing for your project, go to `the Travis-CI site " -"`_ and login with your GitHub account. Then " -"activate your project in your profile settings and you're ready to go. " -"From now on, your project's tests will be run on every push to GitHub." +"`_ and login with your GitHub account. Then activate" +" your project in your profile settings and you're ready to go. From now on, " +"your project's tests will be run on every push to GitHub." msgstr "" +"프로젝트의 테스트를 활성화하려면, `Travis-CI 사이트 `_ 로 가서 GitHub " +"계정으로 로그인하세요. 그런 다음 프로필 설정에서 프로젝트를 활성화하면 준비 끝입니다. 이제부터 GitHub로 푸시할 때마다 프로젝트의 " +"테스트가 실행됩니다." #~ msgid "Mule" #~ msgstr "" @@ -147,75 +167,48 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Martin Fowler, who first wrote about " -#~ "`Continuous Integration " -#~ "`_ " -#~ "(short: CI) together with Kent Beck, " -#~ "describes the CI as follows:" +#~ "Martin Fowler, who first wrote about `Continuous Integration " +#~ "`_ (short: CI) " +#~ "together with Kent Beck, describes the CI as follows:" #~ msgstr "" #~ msgid "" -#~ "`Jenkins CI `_ is " -#~ "an extensible continuous integration engine." -#~ " Use it." +#~ "`Jenkins CI `_ is an extensible continuous " +#~ "integration engine. Use it." #~ msgstr "" #~ msgid "" -#~ "`tox `_ is an" -#~ " automation tool providing packaging, " -#~ "testing and deployment of Python " -#~ "software right from the console or " -#~ "CI server. It is a generic " -#~ "virtualenv management and test command " -#~ "line tool which provides the following" -#~ " features:" +#~ "`tox `_ is an automation tool " +#~ "providing packaging, testing and deployment of Python software right from " +#~ "the console or CI server. It is a generic virtualenv management and test " +#~ "command line tool which provides the following features:" #~ msgstr "" #~ msgid "" -#~ "Acting as a front-end to " -#~ "Continuous Integration servers, reducing " -#~ "boilerplate and merging CI and shell-" -#~ "based testing." +#~ "Acting as a front-end to Continuous Integration servers, reducing " +#~ "boilerplate and merging CI and shell-based testing." #~ msgstr "" #~ msgid "" -#~ "`Travis-CI `_ is " -#~ "a distributed CI server which builds " -#~ "tests for open source projects for " -#~ "free. It provides multiple workers to" -#~ " run Python tests on and seamlessly" -#~ " integrates with GitHub. You can even" -#~ " have it comment on your Pull " -#~ "Requests whether this particular changeset " -#~ "breaks the build or not. So if " -#~ "you are hosting your code on " -#~ "GitHub, travis-ci is a great and" -#~ " easy way to get started with " -#~ "Continuous Integration." +#~ "`Travis-CI `_ is a distributed CI server which " +#~ "builds tests for open source projects for free. It provides multiple workers" +#~ " to run Python tests on and seamlessly integrates with GitHub. You can even " +#~ "have it comment on your Pull Requests whether this particular changeset " +#~ "breaks the build or not. So if you are hosting your code on GitHub, travis-" +#~ "ci is a great and easy way to get started with Continuous Integration." #~ msgstr "" #~ msgid "" -#~ "This will get your project tested " -#~ "on all the listed Python versions " -#~ "by running the given script, and " -#~ "will only build the master branch. " -#~ "There are a lot more options you" -#~ " can enable, like notifications, before " -#~ "and after steps and much more. The" -#~ " `travis-ci docs `_ explain all of these " -#~ "options, and are very thorough." +#~ "This will get your project tested on all the listed Python versions by " +#~ "running the given script, and will only build the master branch. There are a" +#~ " lot more options you can enable, like notifications, before and after steps" +#~ " and much more. The `travis-ci docs `_ " +#~ "explain all of these options, and are very thorough." #~ msgstr "" #~ msgid "" -#~ "In order to activate testing for " -#~ "your project, go to `the travis-ci" -#~ " site `_ and login" -#~ " with your GitHub account. Then " -#~ "activate your project in your profile" -#~ " settings and you're ready to go. " -#~ "From now on, your project's tests " -#~ "will be run on every push to " -#~ "GitHub." +#~ "In order to activate testing for your project, go to `the travis-ci site " +#~ "`_ and login with your GitHub account. Then activate" +#~ " your project in your profile settings and you're ready to go. From now on, " +#~ "your project's tests will be run on every push to GitHub." #~ msgstr "" - From 64c2f6861265fbcbf1db4539a044b25d7fd94f07 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:13:54 +0900 Subject: [PATCH 100/117] Translate dev/env.po (20 editor/IDE name labels) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/dev/env.mo | Bin 27540 -> 27485 bytes docs/locale/ko/LC_MESSAGES/dev/env.po | 839 +++++++++++--------------- 2 files changed, 356 insertions(+), 483 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.mo b/docs/locale/ko/LC_MESSAGES/dev/env.mo index e6ebe86b4b0f5aeac0ab89bd478fe02893136050..a0c3b8e30ed4e9408eb54be6c7d773987c3eacfd 100644 GIT binary patch delta 910 zcmXZaTS${(9LMqBW*$>IX9U551s!mbsk60gmZx%InugNBtu;2$?d>F?UA#9zL?^Pk zDD5J;Q-r{xs0%Hy2)n50038Ud%b+MEgoM6NZ!q{gzdfh_`#jH;cdk!wUAJ2@>{gd_ zZiCb!X{uD}A^Xdu>*SGgX+GBbrIXl>bMOszG44ICB-d_q#wD?U+>6aGjDTzvuux$@;-^)cq_r49v+-G6j)Pc%_plIuU8rhp`R z=|7BS-qkJAFC4+8cr#>6YiQgLNw07U%|dspoQ=nE1^ENIaRwXl4=%&-Rw)_e568XHtxe>?8gQ87+2$Ko5oxkvzWr%YKb*;0=@VEOYk#Nv=-J#S=fvN*pB%) zjq6+#S<9)AeRa|`^y3A5i5!|D_0AOyqB&W6h=%#X2{d=|1#|E>nu4@lx&di4SCGF$ z`o=~z*iSAAOOrT(<_a(E+_Rpy1G=|oR75ie?qM^gb$L!&1c4u`rseb&)L<>gzYN8IZx KMwgV?<$nRK;*0D6 delta 939 zcmXZaOGs2v0LJlewA4%~D=dX*3Zs`!mXqfA8nY}zO-p)Up_5IcIFC{%7giT)C0I!o zk{U*kErL*NCseeEqE-pjq5@%-l2p(GB>Eq3FwF0K=braDpWi!feQ=C7#9Mt1sV`4z zkd(1Yiju=PM2_W4%h4*3daxfCVajf)opx!so_wj$Za0dlIr|8F*|8urST1c~9U$_=m?2+Oy7Y|_`uEDFg1V`{0j-grj z*$RnGs~gS46Sy5;V;cU!&A8Os%O3?dhR}2WYOK;-ECk zL>KWUxvg4ygY#&v@KuczkMXtC(=HJgCgj-S$TMh8AXc|}ToZ%rdfX8p2#9+XFwfC@|j$=5?_urGf36FAIuJYEf zvp5*J;1Bt`+qzmK(Jo&w=naH?Z9!K{BvhJQ?F$E@zJTB3Y>y1oxYuo{3r0J9!JNuS gN2t@|44+$woh3VpoOZD!cc9&U-jP4~#ck#P13UwoTmS$7 diff --git a/docs/locale/ko/LC_MESSAGES/dev/env.po b/docs/locale/ko/LC_MESSAGES/dev/env.po index 1614487db..169e5d23a 100644 --- a/docs/locale/ko/LC_MESSAGES/dev/env.po +++ b/docs/locale/ko/LC_MESSAGES/dev/env.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: YoungSeon.Ahn \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: KO \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -31,111 +31,100 @@ msgstr "텍스트 에디터" #: ../../dev/env.rst:10 msgid "" -"Just about anything that can edit plain text will work for writing Python" -" code; however, using a more powerful editor may make your life a bit " -"easier." +"Just about anything that can edit plain text will work for writing Python " +"code; however, using a more powerful editor may make your life a bit easier." msgstr "" -"일반적인 텍스트를 편집할 수 있다면 뭐든 파이썬 코드를 작성할 수 있습니다. " -"하지만 더 강력한 에디터를 사용하는 편이 당신의 인생에 도움이 될 것입니다. " +"일반적인 텍스트를 편집할 수 있다면 뭐든 파이썬 코드를 작성할 수 있습니다. 하지만 더 강력한 에디터를 사용하는 편이 당신의 인생에 " +"도움이 될 것입니다. " #: ../../dev/env.rst:15 msgid "Vim" -msgstr "" +msgstr "Vim" #: ../../dev/env.rst:17 msgid "" -"Vim is a text editor which uses keyboard shortcuts for editing instead of" -" menus or icons. There are a couple of plugins and settings for the Vim " +"Vim is a text editor which uses keyboard shortcuts for editing instead of " +"menus or icons. There are a couple of plugins and settings for the Vim " "editor to aid Python development. If you only develop in Python, a good " -"start is to set the default settings for indentation and line-wrapping to" -" values compliant with :pep:`8`. In your home directory, open a file " -"called :file:`.vimrc` and add the following lines::" +"start is to set the default settings for indentation and line-wrapping to " +"values compliant with :pep:`8`. In your home directory, open a file called " +":file:`.vimrc` and add the following lines::" msgstr "" -"Vim은 메뉴나 아이콘 대신 키보드 단축키를 사용하여 편집하는 텍스트 편집기입니다. " -"Vim 편집기가 Python 개발을 돕기 위한 몇 가지 플러그인과 설정이 있습니다. " -"Python에서만 개발할 경우, 시작은 들여쓰기 및 줄 바꿈의 기본 설정을 :pep:`8` 을 " -"준수하는 값으로 설정하는 것입니다. 홈 디렉토리에서 :file:`.vimrc` 라는 파일을 " -"열고 다음 줄을 추가합니다." +"Vim은 메뉴나 아이콘 대신 키보드 단축키를 사용하여 편집하는 텍스트 편집기입니다. Vim 편집기가 Python 개발을 돕기 위한 몇 " +"가지 플러그인과 설정이 있습니다. Python에서만 개발할 경우, 시작은 들여쓰기 및 줄 바꿈의 기본 설정을 :pep:`8` 을 준수하는" +" 값으로 설정하는 것입니다. 홈 디렉토리에서 :file:`.vimrc` 라는 파일을 열고 다음 줄을 추가합니다." #: ../../dev/env.rst:32 msgid "" "With these settings, newlines are inserted after 79 characters and " "indentation is set to 4 spaces per tab. If you also use Vim for other " -"languages, there is a handy plugin called indent_, which handles " -"indentation settings for Python source files." +"languages, there is a handy plugin called indent_, which handles indentation" +" settings for Python source files." msgstr "" -"이 설정을 사용하면 79자 뒤에 새 줄을 삽입하고 들여쓰기를 탭당 4칸으로 설정합니다. " -"다른 언어에도 Vim을 사용하는 경우 Python 소스 파일에 대한 들여쓰기 설정을 " -"처리하는 들여쓰기 플러그인이 있습니다." +"이 설정을 사용하면 79자 뒤에 새 줄을 삽입하고 들여쓰기를 탭당 4칸으로 설정합니다. 다른 언어에도 Vim을 사용하는 경우 Python" +" 소스 파일에 대한 들여쓰기 설정을 처리하는 들여쓰기 플러그인이 있습니다." #: ../../dev/env.rst:37 msgid "" "There is also a handy syntax plugin called syntax_ featuring some " "improvements over the syntax file included in Vim 6.1." msgstr "" -"또한 Vim 6.1에 포함된 구문 파일에 비해 향상된 몇 가지 기능을 제공하는 " -"syntax_ 라는 편리한 구문 플러그인도 있습니다." +"또한 Vim 6.1에 포함된 구문 파일에 비해 향상된 몇 가지 기능을 제공하는 syntax_ 라는 편리한 구문 플러그인도 있습니다." #: ../../dev/env.rst:40 msgid "" -"These plugins supply you with a basic environment for developing in " -"Python. To get the most out of Vim, you should continually check your " -"code for syntax errors and PEP8 compliance. Luckily pycodestyle_ and " -"Pyflakes_ will do this for you. If your Vim is compiled with ``+python`` " -"you can also utilize some very handy plugins to do these checks from " -"within the editor." +"These plugins supply you with a basic environment for developing in Python. " +"To get the most out of Vim, you should continually check your code for " +"syntax errors and PEP8 compliance. Luckily pycodestyle_ and Pyflakes_ will " +"do this for you. If your Vim is compiled with ``+python`` you can also " +"utilize some very handy plugins to do these checks from within the editor." msgstr "" -"이러한 플러그인은 파이썬에서 개발할 수 있는 기본 환경을 제공합니다. " -"Vim을 최대한 활용하려면 코드에서 구문 오류 및 PEP8 규정 준수를 지속적으로 " -"확인해야 합니다. 다행히 pycodestyle_ 과 Pyflakes_ 가 여러분을 위해 " -"이러한 작업을 지속적으로 해줍니다. Vim이 ``+python`` 으로 컴파일된 경우 " -"아주 유용한 플러그인을 사용하여 편집기에서 이러한 검사를 수행할 수도 있습니다." +"이러한 플러그인은 파이썬에서 개발할 수 있는 기본 환경을 제공합니다. Vim을 최대한 활용하려면 코드에서 구문 오류 및 PEP8 규정 " +"준수를 지속적으로 확인해야 합니다. 다행히 pycodestyle_ 과 Pyflakes_ 가 여러분을 위해 이러한 작업을 지속적으로 " +"해줍니다. Vim이 ``+python`` 으로 컴파일된 경우 아주 유용한 플러그인을 사용하여 편집기에서 이러한 검사를 수행할 수도 " +"있습니다." #: ../../dev/env.rst:46 msgid "" -"For PEP8 checking and pyflakes, you can install vim-flake8_. Now you can " -"map the function ``Flake8`` to any hotkey or action you want in Vim. The " -"plugin will display errors at the bottom of the screen, and provide an " -"easy way to jump to the corresponding line. It's very handy to call this " -"function whenever you save a file. In order to do this, add the following" -" line to your :file:`.vimrc`::" +"For PEP8 checking and pyflakes, you can install vim-flake8_. Now you can map" +" the function ``Flake8`` to any hotkey or action you want in Vim. The plugin" +" will display errors at the bottom of the screen, and provide an easy way to" +" jump to the corresponding line. It's very handy to call this function " +"whenever you save a file. In order to do this, add the following line to " +"your :file:`.vimrc`::" msgstr "" -"PEP8를 확인하거나 Pyflake를 하기 위해서 vim-flake8_ 을 설치할 수 있습니다. " -"이걸로 Vim에서 원하는 모든 핫키나 동작에 ``Flake8`` 기능을 매핑할 수 있습니다. " -"플러그인은 화면 하단에 오류를 표시하고 해당 라인으로 쉽게 이동할 수 있는 " -"기능을 제공합니다. 파일을 저장할 때마다 이 기능을 호출하는 것이 매우 편리합니다. " -"이렇게 하려면 다음 줄을 :file:`.vimrc`:: 에 추가하십시오." +"PEP8를 확인하거나 Pyflake를 하기 위해서 vim-flake8_ 을 설치할 수 있습니다. 이걸로 Vim에서 원하는 모든 핫키나 " +"동작에 ``Flake8`` 기능을 매핑할 수 있습니다. 플러그인은 화면 하단에 오류를 표시하고 해당 라인으로 쉽게 이동할 수 있는 기능을" +" 제공합니다. 파일을 저장할 때마다 이 기능을 호출하는 것이 매우 편리합니다. 이렇게 하려면 다음 줄을 :file:`.vimrc`:: 에" +" 추가하십시오." #: ../../dev/env.rst:55 msgid "" -"If you are already using syntastic_, you can set it to run Pyflakes on " -"write and show errors and warnings in the quickfix window. An example " -"configuration to do that which also shows status and warning messages in " -"the statusbar would be::" +"If you are already using syntastic_, you can set it to run Pyflakes on write" +" and show errors and warnings in the quickfix window. An example " +"configuration to do that which also shows status and warning messages in the" +" statusbar would be::" msgstr "" -"syntastic_ 을 이미 사용하고 있는 경우, 개발과 에러 및 경고 확인을 할 때 " -"빠른 수정 창에서 파이플레이크가 돌아가도록 설정할 수 있습니다. " -"상태 표시줄의 상태 및 경고 메시지도 표시하는 예제 구성은 다음과 같습니다:: " +"syntastic_ 을 이미 사용하고 있는 경우, 개발과 에러 및 경고 확인을 할 때 빠른 수정 창에서 파이플레이크가 돌아가도록 설정할 " +"수 있습니다. 상태 표시줄의 상태 및 경고 메시지도 표시하는 예제 구성은 다음과 같습니다:: " #: ../../dev/env.rst:68 msgid "Python-mode" -msgstr "" +msgstr "Python-mode" #: ../../dev/env.rst:70 msgid "" -"Python-mode_ is a complex solution for working with Python code in Vim. " -"It has:" -msgstr "" -"Python-mode_ 는 Vim에서 Python 코드로 작업하기 위한 복잡한 솔루션입니다. " -"그 기능은: " +"Python-mode_ is a complex solution for working with Python code in Vim. It " +"has:" +msgstr "Python-mode_ 는 Vim에서 Python 코드로 작업하기 위한 복잡한 솔루션입니다. 그 기능은: " #: ../../dev/env.rst:73 msgid "" "Asynchronous Python code checking (``pylint``, ``pyflakes``, " "``pycodestyle``, ``mccabe``) in any combination" msgstr "" -"비동기 파이썬 코드 체크. ``pylint``, ``pyflakes``, " -"``pycodestyle``, ``mccabe`` 중 무엇을 사용하든 된다." +"비동기 파이썬 코드 체크. ``pylint``, ``pyflakes``, ``pycodestyle``, ``mccabe`` 중 무엇을 " +"사용하든 된다." #: ../../dev/env.rst:74 msgid "Code refactoring and autocompletion with Rope" @@ -163,29 +152,28 @@ msgstr "그리고 더..." #: ../../dev/env.rst:83 msgid "SuperTab" -msgstr "" +msgstr "SuperTab" #: ../../dev/env.rst:85 msgid "" -"SuperTab_ is a small Vim plugin that makes code completion more " -"convenient by using ```` key or any other customized keys." +"SuperTab_ is a small Vim plugin that makes code completion more convenient " +"by using ```` key or any other customized keys." msgstr "" -"SuperTab_ 은 작은 Vim 플러그인입니다. ```` 키나 다른 커스터마이징 된 키로 " -"코드 자동 완성을 편리하게 해줍니다. " +"SuperTab_ 은 작은 Vim 플러그인입니다. ```` 키나 다른 커스터마이징 된 키로 코드 자동 완성을 편리하게 해줍니다." +" " #: ../../dev/env.rst:98 msgid "Emacs" -msgstr "" +msgstr "Emacs" #: ../../dev/env.rst:100 msgid "" -"Emacs is another powerful text editor. It is fully programmable (Lisp), " -"but it can be some work to wire up correctly. A good start if you're " -"already an Emacs user is `Python Programming in Emacs`_ at EmacsWiki." +"Emacs is another powerful text editor. It is fully programmable (Lisp), but " +"it can be some work to wire up correctly. A good start if you're already an " +"Emacs user is `Python Programming in Emacs`_ at EmacsWiki." msgstr "" -"Emacs도 다른 강력한 텍스트 편집기이다. 완전히 프로그래밍할 수 있지만(Lisp) " -"올바르게 연결하는 것은 몇 가지 작업이 될 수 있습니다. 이미 Emacs " -"사용자라면 Emacs Wiki에서 `Python Programming in Emacs`_ 를 보세요." +"Emacs도 다른 강력한 텍스트 편집기이다. 완전히 프로그래밍할 수 있지만(Lisp) 올바르게 연결하는 것은 몇 가지 작업이 될 수 " +"있습니다. 이미 Emacs 사용자라면 Emacs Wiki에서 `Python Programming in Emacs`_ 를 보세요." #: ../../dev/env.rst:104 msgid "Emacs itself comes with a Python mode." @@ -193,70 +181,67 @@ msgstr "Emacs는 기본적으로 파이썬 모드가 있습니다." #: ../../dev/env.rst:109 msgid "TextMate" -msgstr "" +msgstr "TextMate" #: ../../dev/env.rst:111 msgid "" -"`TextMate `_ brings Apple's approach to operating" -" systems into the world of text editors. By bridging Unix underpinnings " -"and GUI, TextMate cherry-picks the best of both worlds to the benefit of " -"expert scripters and novice users alike." +"`TextMate `_ brings Apple's approach to operating " +"systems into the world of text editors. By bridging Unix underpinnings and " +"GUI, TextMate cherry-picks the best of both worlds to the benefit of expert " +"scripters and novice users alike." msgstr "" -"`TextMate `_ 는 " -"Apple의 접근 방식을 텍스트 편집기의 세계로 가져옵니다. Unix의 기초와 " -"GUI를 연결함으로써 TextMate는 전문 스크립터와 초보 사용자 모두에게 이익이 되는 " -"두 세계의 장점을 모두 가져왔습니다." +"`TextMate `_ 는 Apple의 접근 방식을 텍스트 편집기의 세계로 가져옵니다. " +"Unix의 기초와 GUI를 연결함으로써 TextMate는 전문 스크립터와 초보 사용자 모두에게 이익이 되는 두 세계의 장점을 모두 " +"가져왔습니다." #: ../../dev/env.rst:117 msgid "Sublime Text" -msgstr "" +msgstr "Sublime Text" #: ../../dev/env.rst:119 msgid "" -"`Sublime Text `_ is a sophisticated text " -"editor for code, markup, and prose. You'll love the slick user interface," -" extraordinary features, and amazing performance." +"`Sublime Text `_ is a sophisticated text editor" +" for code, markup, and prose. You'll love the slick user interface, " +"extraordinary features, and amazing performance." msgstr "" -"`Sublime Text `_ 는 코드, 마크업 그리고 작문을 위한 " -"정교한 텍스트 에디터입니다." -"매끄러운 사용자 인터페이스, 뛰어난 기능 및 놀라운 성능을 즐기실 수 있습니다." +"`Sublime Text `_ 는 코드, 마크업 그리고 작문을 위한 정교한 텍스트 " +"에디터입니다.매끄러운 사용자 인터페이스, 뛰어난 기능 및 놀라운 성능을 즐기실 수 있습니다." #: ../../dev/env.rst:123 msgid "" -"Sublime Text has excellent support for editing Python code and uses " -"Python for its plugin API. It also has a diverse variety of plugins, " -"`some of which `_ allow " -"for in-editor PEP8 checking and code \"linting\"." +"Sublime Text has excellent support for editing Python code and uses Python " +"for its plugin API. It also has a diverse variety of plugins, `some of which" +" `_ allow for in-editor PEP8" +" checking and code \"linting\"." msgstr "" -"Sublime Text는 훌륭한 Python 코드 편집기이며, " -"플러그인 API에 Python을 사용합니다. 또한 다양한 플러그인을 가지고 있으며, " -"`그 중 일부는 `_ " -"편집기 PEP8 검사 및 코드 \"린트\"를 가능하게 해줍니다." +"Sublime Text는 훌륭한 Python 코드 편집기이며, 플러그인 API에 Python을 사용합니다. 또한 다양한 플러그인을 가지고" +" 있으며, `그 중 일부는 `_ 편집기 PEP8 " +"검사 및 코드 \"린트\"를 가능하게 해줍니다." #: ../../dev/env.rst:129 msgid "Atom" -msgstr "" +msgstr "Atom" #: ../../dev/env.rst:131 msgid "" -"`Atom `_ is a hackable text editor for the 21st " -"century, built on atom-shell, and based on everything we love about our " -"favorite editors." +"`Atom `_ is a hackable text editor for the 21st century, " +"built on atom-shell, and based on everything we love about our favorite " +"editors." msgstr "" -"`Atom `_ 은 21세기의 해킹 가능한 텍스트 에디터입니다. " -"atom-shell 위에 구축되었으며, 우리가 좋아하는 에디터의 기능은 다 가지고 있습니다." +"`Atom `_ 은 21세기의 해킹 가능한 텍스트 에디터입니다. atom-shell 위에 구축되었으며, " +"우리가 좋아하는 에디터의 기능은 다 가지고 있습니다." #: ../../dev/env.rst:135 msgid "" "Atom is web native (HTML, CSS, JS), focusing on modular design and easy " -"plugin development. It comes with native package control and a plethora " -"of packages. Recommended for Python development is `Linter " +"plugin development. It comes with native package control and a plethora of " +"packages. Recommended for Python development is `Linter " "`_ combined with `linter-flake8 " "`_." msgstr "" -"아톰은 웹 네이티브(HTML, CSS, JS)로 모듈식 설계와 쉬운 플러그인 개발에 초점을 " -"맞추고 있다. 기본 패키지 제어와 수많은 패키지가 함께 제공됩니다. Python을 개발하려면 " -"`Linter `_와 " +"아톰은 웹 네이티브(HTML, CSS, JS)로 모듈식 설계와 쉬운 플러그인 개발에 초점을 맞추고 있다. 기본 패키지 제어와 수많은 " +"패키지가 함께 제공됩니다. Python을 개발하려면 `Linter " +"`_와 " "`_ 을 함께 사용하기를 권장한다." #: ../../dev/env.rst:142 @@ -266,20 +251,18 @@ msgstr "파이썬 (비주얼 스튜디오 코드에서)" #: ../../dev/env.rst:144 msgid "" "`Python for Visual Studio " -"`_ " -"is an extension for the `Visual Studio Code " -"`_. This is a free, lightweight, open " -"source code editor, with support for Mac, Windows, and Linux. Built using" -" open source technologies such as Node.js and Python, with compelling " -"features such as Intellisense (autocompletion), local and remote " -"debugging, linting, and the like." +"`_ is " +"an extension for the `Visual Studio Code `_. " +"This is a free, lightweight, open source code editor, with support for Mac, " +"Windows, and Linux. Built using open source technologies such as Node.js and" +" Python, with compelling features such as Intellisense (autocompletion), " +"local and remote debugging, linting, and the like." msgstr "" "`Python for Visual Studio " -"`_ " -"는 비주얼 스튜디오 코드의 확장자이다. 이것은 Mac, Windows 및 Linux를 지원하는 " -"무료이고 가볍고 오픈 소스인 코드 편집기입니다. Node.js 및 Python과 같은 오픈 " -"소스 기술을 사용하여 구축되었으며, Intelisense(자동 완성), 로컬 및 원격 디버깅, " -"린트 등과 같은 강력한 기능을 갖추고 있습니다." +"`_ 는 " +"비주얼 스튜디오 코드의 확장자이다. 이것은 Mac, Windows 및 Linux를 지원하는 무료이고 가볍고 오픈 소스인 코드 " +"편집기입니다. Node.js 및 Python과 같은 오픈 소스 기술을 사용하여 구축되었으며, Intelisense(자동 완성), 로컬 및" +" 원격 디버깅, 린트 등과 같은 강력한 기능을 갖추고 있습니다." #: ../../dev/env.rst:148 msgid "MIT licensed." @@ -291,55 +274,50 @@ msgstr "여러 IDE" #: ../../dev/env.rst:154 msgid "PyCharm / IntelliJ IDEA" -msgstr "" +msgstr "PyCharm / IntelliJ IDEA" #: ../../dev/env.rst:156 msgid "" -"`PyCharm `_ is developed by JetBrains," -" also known for IntelliJ IDEA. Both share the same code base and most of " -"PyCharm's features can be brought to IntelliJ with the free `Python Plug-" -"In `_. There " -"are two versions of PyCharm: Professional Edition (Free 30-day trial) and" -" Community Edition (Apache 2.0 License) with fewer features." +"`PyCharm `_ is developed by JetBrains, " +"also known for IntelliJ IDEA. Both share the same code base and most of " +"PyCharm's features can be brought to IntelliJ with the free `Python Plug-In " +"`_. There are two " +"versions of PyCharm: Professional Edition (Free 30-day trial) and Community " +"Edition (Apache 2.0 License) with fewer features." msgstr "" -"`PyCharm `_ 은 IntelliJ IDEA로 " -"잘 알려진 제트브레인에서 만들었습니다. " -"두 IDE는 같은 코드 베이스를 공유하고 있는지라 파이참의 많은 기능은 인텔리제이의 무료 플러그인" -"`Python Plug-In `_ " -"에서 왔습니다. " -"파이참의 버전은 2개가 있습니다. " -"하나는 프로페셔널 에디션(30일 무료 체험)이고 " -"하나는 커뮤니티 에디션(Apache 2.0 License)입니다. 커뮤니티 에디션은 기능이 더 적습니다." +"`PyCharm `_ 은 IntelliJ IDEA로 잘 알려진 " +"제트브레인에서 만들었습니다. 두 IDE는 같은 코드 베이스를 공유하고 있는지라 파이참의 많은 기능은 인텔리제이의 무료 " +"플러그인`Python Plug-In " +"`_ 에서 왔습니다. 파이참의 " +"버전은 2개가 있습니다. 하나는 프로페셔널 에디션(30일 무료 체험)이고 하나는 커뮤니티 에디션(Apache 2.0 " +"License)입니다. 커뮤니티 에디션은 기능이 더 적습니다." #: ../../dev/env.rst:165 msgid "Enthought Canopy" -msgstr "" +msgstr "Enthought Canopy" #: ../../dev/env.rst:166 msgid "" -"`Enthought Canopy `_ is a " -"Python IDE which is focused towards Scientists and Engineers as it " -"provides pre installed libraries for data analysis." +"`Enthought Canopy `_ is a Python " +"IDE which is focused towards Scientists and Engineers as it provides pre " +"installed libraries for data analysis." msgstr "" -"`Enthought Canopy `_ 는 " -"과학자와 엔지니어를 주 사용자로 하는 파이썬 IDE입니다. " -"데이터 분석을 위한 라이브러리들이 미리 설치되어 있습니다. " +"`Enthought Canopy `_ 는 과학자와 엔지니어를" +" 주 사용자로 하는 파이썬 IDE입니다. 데이터 분석을 위한 라이브러리들이 미리 설치되어 있습니다. " #: ../../dev/env.rst:171 msgid "Eclipse" -msgstr "" +msgstr "Eclipse" #: ../../dev/env.rst:173 msgid "" -"The most popular Eclipse plugin for Python development is Aptana's `PyDev" -" `_." -msgstr "" -"파이썬 개발을 위한 가장 유명한 플러그인은 Aptana의 `PyDev" -" `_ 입니다." +"The most popular Eclipse plugin for Python development is Aptana's `PyDev " +"`_." +msgstr "파이썬 개발을 위한 가장 유명한 플러그인은 Aptana의 `PyDev `_ 입니다." #: ../../dev/env.rst:178 msgid "Komodo IDE" -msgstr "" +msgstr "Komodo IDE" #: ../../dev/env.rst:180 msgid "" @@ -349,126 +327,118 @@ msgid "" "source alternative." msgstr "" "`Komodo IDE `_ 는 " -"ActiveState에서 개발한 Windows, Mac, Linux에서 다 돌아가는 상용 IDE 입니다. " -"`KomodoEdit `_ 는 이를 대체할 수 있는" -"오픈소스입니다. " +"ActiveState에서 개발한 Windows, Mac, Linux에서 다 돌아가는 상용 IDE 입니다. `KomodoEdit " +"`_ 는 이를 대체할 수 있는오픈소스입니다. " #: ../../dev/env.rst:187 msgid "Spyder" -msgstr "" +msgstr "Spyder" #: ../../dev/env.rst:189 msgid "" "`Spyder `_ is an IDE specifically " "geared toward working with scientific Python libraries (namely `SciPy " -"`_). It includes integration with pyflakes_, " -"`pylint `_ and `rope `_." +"`_). It includes integration with pyflakes_, `pylint" +" `_ and `rope `_." msgstr "" -"`Spyder `_ 는 " -"과학용 파이썬 라이브러리(이른바 `SciPy `_) 를 " -"돌리고자 특별히 만들어진 IDE입니다. pyflakes_, " -"`pylint `_ 와 `rope `_ 와 통합환경을 제공합니다. " +"`Spyder `_ 는 과학용 파이썬 라이브러리(이른바 `SciPy " +"`_) 를 돌리고자 특별히 만들어진 IDE입니다. pyflakes_, `pylint " +"`_ 와 `rope `_ 와 통합환경을 제공합니다. " #: ../../dev/env.rst:195 msgid "" -"Spyder is open source (free), offers code completion, syntax " -"highlighting, a class and function browser, and object inspection." -msgstr "" -"Spyder는 오픈소스(공짜)이고 코드자동완성, 신택스 하이라이팅, 클래스와 함수 브라우져, " -"객체 분석 기능이 있습니다." +"Spyder is open source (free), offers code completion, syntax highlighting, a" +" class and function browser, and object inspection." +msgstr "Spyder는 오픈소스(공짜)이고 코드자동완성, 신택스 하이라이팅, 클래스와 함수 브라우져, 객체 분석 기능이 있습니다." #: ../../dev/env.rst:200 msgid "WingIDE" -msgstr "" +msgstr "WingIDE" #: ../../dev/env.rst:202 msgid "" "`WingIDE `_ is a Python specific IDE. It runs on " -"Linux, Windows, and Mac (as an X11 application, which frustrates some Mac" -" users)." +"Linux, Windows, and Mac (as an X11 application, which frustrates some Mac " +"users)." msgstr "" -"`WingIDE `_ 는 파이썬 전용 IDE입니다. " -"리눅스, 윈도우즈, 맥(아쉽게도 X11 애플리케이션이라 맥 사용자를 환장하게 함)에서 돌아갑니다. " +"`WingIDE `_ 는 파이썬 전용 IDE입니다. 리눅스, 윈도우즈, 맥(아쉽게도 X11 " +"애플리케이션이라 맥 사용자를 환장하게 함)에서 돌아갑니다. " #: ../../dev/env.rst:205 msgid "" "WingIDE offers code completion, syntax highlighting, source browser, " "graphical debugger and support for version control systems." msgstr "" -"WingIDE의 기능에는 코드자동완성, 신택스 하이라이팅, 소스 브라우저, " -"Graphical Debugging, 버전제어시스템 지원" +"WingIDE의 기능에는 코드자동완성, 신택스 하이라이팅, 소스 브라우저, Graphical Debugging, 버전제어시스템 지원" #: ../../dev/env.rst:210 msgid "NINJA-IDE" -msgstr "" +msgstr "NINJA-IDE" #: ../../dev/env.rst:212 msgid "" "`NINJA-IDE `_ (from the recursive acronym: " -"\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially" -" designed to build Python applications, and runs on Linux/X11, Mac OS X, " -"and Windows desktop operating systems. Installers for these platforms can" -" be downloaded from the website." +"\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially " +"designed to build Python applications, and runs on Linux/X11, Mac OS X, and " +"Windows desktop operating systems. Installers for these platforms can be " +"downloaded from the website." msgstr "" -"`NINJA-IDE `_ (재귀약어: \"Ninja-IDE Is Not Just Another IDE\" 에서 따왔다) " -"는 크로스 플랫폼 IDE이고, 파이썬 어플리케이션 개발을 위해 특별히 디자인되었으며 " -"리눅스/X11과 Mac OS X 그리고 윈도우즈 데스크탑 OS에서 돌아갑니다. " -"웹사이트에서 각 플랫폼을 위한 인스톨러를 다운로드 받으세요.(역주: 20210409 현재 접속이 안되는데...) " +"`NINJA-IDE `_ (재귀약어: \"Ninja-IDE Is Not Just " +"Another IDE\" 에서 따왔다) 는 크로스 플랫폼 IDE이고, 파이썬 어플리케이션 개발을 위해 특별히 디자인되었으며 " +"리눅스/X11과 Mac OS X 그리고 윈도우즈 데스크탑 OS에서 돌아갑니다. 웹사이트에서 각 플랫폼을 위한 인스톨러를 다운로드 " +"받으세요.(역주: 20210409 현재 접속이 안되는데...) " #: ../../dev/env.rst:218 msgid "" -"NINJA-IDE is open source software (GPLv3 licence) and is developed in " -"Python and Qt. The source files can be downloaded from `GitHub " +"NINJA-IDE is open source software (GPLv3 licence) and is developed in Python" +" and Qt. The source files can be downloaded from `GitHub " "`_." msgstr "" -"NINJA-IDE 는 오픈소스(GPLv3 licence)이고 파이썬과 Qt로 개발되었습니다. " -"소스파일은 `GitHub `_ 에서 다운로드 받을 수 있습니다." +"NINJA-IDE 는 오픈소스(GPLv3 licence)이고 파이썬과 Qt로 개발되었습니다. 소스파일은 `GitHub " +"`_ 에서 다운로드 받을 수 있습니다." #: ../../dev/env.rst:224 msgid "Eric (The Eric Python IDE)" -msgstr "" +msgstr "Eric (The Eric Python IDE)" #: ../../dev/env.rst:226 msgid "" -"`Eric `_ is a full featured Python " -"IDE offering source code autocompletion, syntax highlighting, support for" -" version control systems, Python 3 support, integrated web browser, " -"python shell, integrated debugger, and a flexible plug-in system. Written" -" in Python, it is based on the Qt GUI toolkit, integrating the Scintilla " -"editor control. Eric is an open source software project (GPLv3 licence) " -"with more than ten years of active development." +"`Eric `_ is a full featured Python IDE" +" offering source code autocompletion, syntax highlighting, support for " +"version control systems, Python 3 support, integrated web browser, python " +"shell, integrated debugger, and a flexible plug-in system. Written in " +"Python, it is based on the Qt GUI toolkit, integrating the Scintilla editor " +"control. Eric is an open source software project (GPLv3 licence) with more " +"than ten years of active development." msgstr "" -"`Eric `_ 은 모든 걸 갖춘 파이썬 IDE입니다. " -"소스코드 자동완성, 신택스 하이라이팅, 버전컨트롤시스템 지원, 파이썬3 지원, 웹브라우저와 연동, " -"파이썬 쉘, 통합 디버거, 유연한 플러그인 시스템 기능이 있습니다. " -"Qt GUI 툴킷 위에서 파이선으로 개발되었으며 Scintilla 에디터를 사용합니다. " -"Eric은 오픈소스 소프트웨어 프로젝트((GPLv3 licence)이고 10년 넘게 활발히 개발 중입니다. " +"`Eric `_ 은 모든 걸 갖춘 파이썬 IDE입니다. 소스코드 " +"자동완성, 신택스 하이라이팅, 버전컨트롤시스템 지원, 파이썬3 지원, 웹브라우저와 연동, 파이썬 쉘, 통합 디버거, 유연한 플러그인 " +"시스템 기능이 있습니다. Qt GUI 툴킷 위에서 파이선으로 개발되었으며 Scintilla 에디터를 사용합니다. Eric은 오픈소스 " +"소프트웨어 프로젝트((GPLv3 licence)이고 10년 넘게 활발히 개발 중입니다. " #: ../../dev/env.rst:235 msgid "Mu" -msgstr "" +msgstr "Mu" #: ../../dev/env.rst:237 msgid "" -"`Mu `_ is a minimalist Python IDE which can run " -"Python 3 code locally and can also deploy code to the BBC micro:bit and " -"to Adafruit boards running CircuitPython." +"`Mu `_ is a minimalist Python IDE which can run Python" +" 3 code locally and can also deploy code to the BBC micro:bit and to " +"Adafruit boards running CircuitPython." msgstr "" -"`Mu `_ 는 파이썬 IDE의 미니멀리스트입니다. " -"파이썬3 코드를 로컬에서 돌릴 수 있고 BBC micro:bit(역주: https://microbit.org/)에 " -"코드를 배포할 수 있으며 Adafruit 기판에 CircuitPython을 돌릴 수 있습니다. " -"(역주: 모두 임베디드 환경이다)" +"`Mu `_ 는 파이썬 IDE의 미니멀리스트입니다. 파이썬3 코드를 로컬에서 돌릴 수 있고 BBC" +" micro:bit(역주: https://microbit.org/)에 코드를 배포할 수 있으며 Adafruit 기판에 " +"CircuitPython을 돌릴 수 있습니다. (역주: 모두 임베디드 환경이다)" #: ../../dev/env.rst:241 msgid "" -"Intended for beginners, mu includes a Python 3 interpreter, and is easy " -"to install on Windows, OS/X and Linux. It runs well on the Raspberry Pi." +"Intended for beginners, mu includes a Python 3 interpreter, and is easy to " +"install on Windows, OS/X and Linux. It runs well on the Raspberry Pi." msgstr "" -"파이썬 초보자를 위해 만들어졌기 때문에 mu는 기본적으로 파이썬3를 포함하고 있고 " -"Windows, OS/X 그리고 Linux 중 어디에도 쉽게 설치할 수 있습니다. " -"라즈베리파이에서도 잘 돌아갑니다. " +"파이썬 초보자를 위해 만들어졌기 때문에 mu는 기본적으로 파이썬3를 포함하고 있고 Windows, OS/X 그리고 Linux 중 어디에도" +" 쉽게 설치할 수 있습니다. 라즈베리파이에서도 잘 돌아갑니다. " #: ../../dev/env.rst:244 msgid "There's an active support community on gitter." @@ -485,12 +455,12 @@ msgstr "가상 환경" #: ../../dev/env.rst:254 msgid "" "Virtual Environments provide a powerful way to isolate project package " -"dependencies. This means that you can use packages particular to a Python" -" project without installing them system wide and thus avoiding potential " +"dependencies. This means that you can use packages particular to a Python " +"project without installing them system wide and thus avoiding potential " "version conflicts." msgstr "" -"가상 환경은 프로젝트의 패키지 디펜던시를 격리할 수 있는 강력한 방법을 제공합니다. " -"특정 파이썬 프로젝트을 시스템 전역에 설치하지 않고 잠재적인 버전 오류를 피할 수 있다는 얘기입니다. " +"가상 환경은 프로젝트의 패키지 디펜던시를 격리할 수 있는 강력한 방법을 제공합니다. 특정 파이썬 프로젝트을 시스템 전역에 설치하지 않고 " +"잠재적인 버전 오류를 피할 수 있다는 얘기입니다. " #: ../../dev/env.rst:256 msgid "" @@ -509,52 +479,47 @@ msgstr "pyenv" #: ../../dev/env.rst:263 msgid "" "`pyenv `_ is a tool to allow multiple " -"versions of the Python interpreter to be installed at the same time. " -"This solves the problem of having different projects requiring different " -"versions of Python. For example, it becomes very easy to install Python " -"2.7 for compatibility in one project, while still using Python 3.4 as the" -" default interpreter. pyenv isn't just limited to the CPython versions – " -"it will also install PyPy, Anaconda, miniconda, stackless, Jython, and " -"IronPython interpreters." -msgstr "" -"`pyenv `_ 는 여러 버전의 파이썬 인터프리터를 " -"동시에 설치할 수 있게 해주는 도구입니다. 덕분에 다른 버전의 파이썬을 사용하는 " -"각각의 프로젝트를 관리할 경우 발생하는 문제를 해결할 수 있습니다. " -"예를 들어 Python 3.4를 기본 인터프리터로 사용하면서 다른 한 프로젝트에서는 호환성을 " -"위해 Python 2.7을 쉽게 설치할 수 있습니다." -"pyenv는 CPython 버전 뿐만 아니라 PyPy, Anaconda, miniconda, " -"stackless, Jython 및 IronPython 인터프리터도 설치합니다." +"versions of the Python interpreter to be installed at the same time. This " +"solves the problem of having different projects requiring different versions" +" of Python. For example, it becomes very easy to install Python 2.7 for " +"compatibility in one project, while still using Python 3.4 as the default " +"interpreter. pyenv isn't just limited to the CPython versions – it will also" +" install PyPy, Anaconda, miniconda, stackless, Jython, and IronPython " +"interpreters." +msgstr "" +"`pyenv `_ 는 여러 버전의 파이썬 인터프리터를 동시에 설치할 수 있게 " +"해주는 도구입니다. 덕분에 다른 버전의 파이썬을 사용하는 각각의 프로젝트를 관리할 경우 발생하는 문제를 해결할 수 있습니다. 예를 들어 " +"Python 3.4를 기본 인터프리터로 사용하면서 다른 한 프로젝트에서는 호환성을 위해 Python 2.7을 쉽게 설치할 수 " +"있습니다.pyenv는 CPython 버전 뿐만 아니라 PyPy, Anaconda, miniconda, stackless, Jython 및" +" IronPython 인터프리터도 설치합니다." #: ../../dev/env.rst:271 msgid "" "pyenv works by filling a ``shims`` directory with fake versions of the " -"Python interpreter (plus other tools like ``pip`` and ``2to3``). When " -"the system looks for a program named ``python``, it looks inside the " -"``shims`` directory first, and uses the fake version, which in turn " -"passes the command on to pyenv. pyenv then works out which version of " -"Python should be run based on environment variables, ``.python-version`` " -"files, and the global default." -msgstr "" -"pyenv는 ``shims`` 디렉토리를 파이썬 인터프리터의 fake 버전 " -"(``pip`` 및 ``2to3`` 와 같은 다른 도구 포함)으로 채우는 방식으로 작동합니다. " -"이로서 다른 버전의 Python이 필요한 다른 프로젝트를 다루는 경우 발생하는 문제를 해결합니다." -"시스템이 ``python`` 이라는 프로그램을 찾을 때 먼저 ``shims`` 디렉토리 내부를 " -"살펴보고 이 디렉토리에 들어있는 fake 버전을 사용하여 명령을 pyenv에 전달합니다." -"그런 다음 pyenv는 환경 변수, ``.python-version`` 파일 및 전역 기본값을 " -"기반으로 실행해야하는 Python 버전을 결정합니다." +"Python interpreter (plus other tools like ``pip`` and ``2to3``). When the " +"system looks for a program named ``python``, it looks inside the ``shims`` " +"directory first, and uses the fake version, which in turn passes the command" +" on to pyenv. pyenv then works out which version of Python should be run " +"based on environment variables, ``.python-version`` files, and the global " +"default." +msgstr "" +"pyenv는 ``shims`` 디렉토리를 파이썬 인터프리터의 fake 버전 (``pip`` 및 ``2to3`` 와 같은 다른 도구 " +"포함)으로 채우는 방식으로 작동합니다. 이로서 다른 버전의 Python이 필요한 다른 프로젝트를 다루는 경우 발생하는 문제를 " +"해결합니다.시스템이 ``python`` 이라는 프로그램을 찾을 때 먼저 ``shims`` 디렉토리 내부를 살펴보고 이 디렉토리에 들어있는" +" fake 버전을 사용하여 명령을 pyenv에 전달합니다.그런 다음 pyenv는 환경 변수, ``.python-version`` 파일 및" +" 전역 기본값을 기반으로 실행해야하는 Python 버전을 결정합니다." #: ../../dev/env.rst:278 msgid "" "pyenv isn't a tool for managing virtual environments, but there is the " -"plugin `pyenv-virtualenv `_ " -"which automates the creation of different environments, and also makes it" -" possible to use the existing pyenv tools to switch to different " -"environments based on environment variables or ``.python-version`` files." +"plugin `pyenv-virtualenv `_ which" +" automates the creation of different environments, and also makes it " +"possible to use the existing pyenv tools to switch to different environments" +" based on environment variables or ``.python-version`` files." msgstr "" -"pyenv는 가상 환경을 관리하는 도구가 아닙니다. " -"gkwlaks `pyenv-virtualenv `_ 플러그인이 " -"다른 환경의 생성을 자동화해주고, pyenv 도구를 사용하여 " -"환경변수와 ``.python-version`` 파일에 따라 다른 환경으로 전환할 수 있도록 해줍니다." +"pyenv는 가상 환경을 관리하는 도구가 아닙니다. gkwlaks `pyenv-virtualenv " +"`_ 플러그인이 다른 환경의 생성을 자동화해주고, pyenv" +" 도구를 사용하여 환경변수와 ``.python-version`` 파일에 따라 다른 환경으로 전환할 수 있도록 해줍니다." #: ../../dev/env.rst:285 msgid "Other Tools" @@ -562,20 +527,19 @@ msgstr "다른 도구들" #: ../../dev/env.rst:288 msgid "IDLE" -msgstr "" +msgstr "IDLE" #: ../../dev/env.rst:290 msgid "" -":ref:`IDLE ` is an integrated development environment that " -"is part of the Python standard distribution. It is completely written in " -"Python and uses the Tkinter GUI toolkit. Though IDLE is not suited for " -"full-blown development using Python, it is quite helpful to try out small" -" Python snippets and experiment with different features in Python." +":ref:`IDLE ` is an integrated development environment that is " +"part of the Python standard distribution. It is completely written in Python" +" and uses the Tkinter GUI toolkit. Though IDLE is not suited for full-blown " +"development using Python, it is quite helpful to try out small Python " +"snippets and experiment with different features in Python." msgstr "" -":ref:`IDLE ` 통합개발환경은 는 파이썬 표준 배포판의 일부입니다. " -"완전히 Python으로 작성되었으며 Tkinter GUI 툴킷을 사용합니다. " -"IDLE은 Python을 사용한 본격적인 개발에는 적합하지 않지만 " -"작은 Python 스니펫을 사용해보고 Python의 다양한 기능을 실험하는 데에 아주 유용합니다." +":ref:`IDLE ` 통합개발환경은 는 파이썬 표준 배포판의 일부입니다. 완전히 Python으로 작성되었으며 " +"Tkinter GUI 툴킷을 사용합니다. IDLE은 Python을 사용한 본격적인 개발에는 적합하지 않지만 작은 Python 스니펫을 " +"사용해보고 Python의 다양한 기능을 실험하는 데에 아주 유용합니다." #: ../../dev/env.rst:296 msgid "It provides the following features:" @@ -595,15 +559,15 @@ msgstr "최소한의 디버깅 기능" #: ../../dev/env.rst:304 msgid "IPython" -msgstr "" +msgstr "IPython" #: ../../dev/env.rst:306 msgid "" -"`IPython `_ provides a rich toolkit to help you make" -" the most out of using Python interactively. Its main components are:" +"`IPython `_ provides a rich toolkit to help you make " +"the most out of using Python interactively. Its main components are:" msgstr "" -"`IPython `_ 은 파이썬을 대화식으로 사용할 수 있도록 " -"도와주는 다양한 도구를 제공합니다. 주요 구성요소는 다음과 같습니다: " +"`IPython `_ 은 파이썬을 대화식으로 사용할 수 있도록 도와주는 다양한 도구를 제공합니다. " +"주요 구성요소는 다음과 같습니다: " #: ../../dev/env.rst:309 msgid "Powerful Python shells (terminal- and Qt-based)" @@ -611,11 +575,10 @@ msgstr "강력한 파이썬 쉘(터미널 혹은 Qt 기반이야)" #: ../../dev/env.rst:310 msgid "" -"A web-based notebook with the same core features but support for rich " -"media, text, code, mathematical expressions and inline plots" +"A web-based notebook with the same core features but support for rich media," +" text, code, mathematical expressions and inline plots" msgstr "" -"웹 기반 노트북. 기능은 (역주: 쉘과) 동일하지만 rich 미디어, 텍스트, 코드, " -"수학 표현식, 인라인 플롯을 지원합니다." +"웹 기반 노트북. 기능은 (역주: 쉘과) 동일하지만 rich 미디어, 텍스트, 코드, 수학 표현식, 인라인 플롯을 지원합니다." #: ../../dev/env.rst:312 msgid "Support for interactive data visualization and use of GUI toolkits" @@ -631,25 +594,23 @@ msgstr "high 레벨의 대화형 병렬 컴퓨팅을 위한 도구" #: ../../dev/env.rst:320 msgid "" -"To download and install IPython with all its optional dependencies for " -"the notebook, qtconsole, tests, and other functionalities:" +"To download and install IPython with all its optional dependencies for the " +"notebook, qtconsole, tests, and other functionalities:" msgstr "" -"노트북, qtconsole, 테스트 및 기타 기능에 대한 모든 선택적 디펜던시와 " -"함께 IPython을 다운로드하고 설치하려면:" +"노트북, qtconsole, 테스트 및 기타 기능에 대한 모든 선택적 디펜던시와 함께 IPython을 다운로드하고 설치하려면:" #: ../../dev/env.rst:327 msgid "BPython" -msgstr "" +msgstr "BPython" #: ../../dev/env.rst:329 msgid "" -"`bpython `_ is an alternative interface" -" to the Python interpreter for Unix-like operating systems. It has the " +"`bpython `_ is an alternative interface to" +" the Python interpreter for Unix-like operating systems. It has the " "following features:" msgstr "" -"`bpython `_ 은 유사 유닉스 운영체제를 위한 " -"파이썬 인터프리터 대체 인터페이스입니다. " -"다음 기능이 있습니다: " +"`bpython `_ 은 유사 유닉스 운영체제를 위한 파이썬 인터프리터 대체" +" 인터페이스입니다. 다음 기능이 있습니다: " #: ../../dev/env.rst:333 msgid "In-line syntax highlighting" @@ -665,10 +626,8 @@ msgstr "파이썬 함수에 필요한 파라미터 목록 표시" #: ../../dev/env.rst:336 msgid "" -"\"Rewind\" function to pop the last line of code from memory and re-" -"evaluate" -msgstr "" -"\"Rewind\" 기능으로 메모리에서 코드의 마지막 라인을 읽어 재실행" +"\"Rewind\" function to pop the last line of code from memory and re-evaluate" +msgstr "\"Rewind\" 기능으로 메모리에서 코드의 마지막 라인을 읽어 재실행" #: ../../dev/env.rst:337 msgid "Send entered code off to a pastebin" @@ -688,19 +647,18 @@ msgstr "파이썬3 지원" #: ../../dev/env.rst:347 msgid "ptpython" -msgstr "" +msgstr "ptpython" #: ../../dev/env.rst:349 msgid "" -"`ptpython `_ is a REPL build " -"on top of the `prompt_toolkit `_ library. It is considered to be an alternative to " -"BPython_. Features include:" +"`ptpython `_ is a REPL build on " +"top of the `prompt_toolkit `_ library. It is considered to be an alternative to BPython_. " +"Features include:" msgstr "" -"`ptpython `_ 은 " -"`prompt_toolkit `_ 라이브러리 위의 REPL 빌드입니다. " -"BPython_ 의 대안이 될 수 있습니다. 다음 기능이 있습니다. " +"`ptpython `_ 은 `prompt_toolkit " +"`_ 라이브러리 위의 REPL " +"빌드입니다. BPython_ 의 대안이 될 수 있습니다. 다음 기능이 있습니다. " #: ../../dev/env.rst:353 msgid "Syntax highlighting" @@ -732,259 +690,182 @@ msgstr "탭으로 페이지 나누기" #: ../../dev/env.rst:360 msgid "" -"Support for integrating with IPython_'s shell, by installing IPython " -"(``pip install ipython``) and running ``ptipython``." +"Support for integrating with IPython_'s shell, by installing IPython (``pip " +"install ipython``) and running ``ptipython``." msgstr "" -"IPython_ 의 쉘을 통합하여 사용할 수 있다. IPython을 설치(``pip install ipython``)" -"하고 ``ptipython`` 을 실행하면 된다." +"IPython_ 의 쉘을 통합하여 사용할 수 있다. IPython을 설치(``pip install ipython``)하고 " +"``ptipython`` 을 실행하면 된다." #~ msgid "" #~ msgstr "" #~ msgid "" -#~ "Just about anything that can edit " -#~ "plain text will work for writing " -#~ "Python code, however, using a more " -#~ "powerful editor may make your life " -#~ "a bit easier." +#~ "Just about anything that can edit plain text will work for writing Python " +#~ "code, however, using a more powerful editor may make your life a bit easier." #~ msgstr "" #~ msgid "" -#~ "These plugins supply you with a " -#~ "basic environment for developing in " -#~ "Python. To get the most out of " -#~ "Vim, you should continually check your" -#~ " code for syntax errors and PEP8 " -#~ "compliance. Luckily PEP8_ and Pyflakes_ " -#~ "will do this for you. If your " -#~ "Vim is compiled with :option:`+python` " -#~ "you can also utilize some very " -#~ "handy plugins to do these checks " -#~ "from within the editor." +#~ "These plugins supply you with a basic environment for developing in Python. " +#~ "To get the most out of Vim, you should continually check your code for " +#~ "syntax errors and PEP8 compliance. Luckily PEP8_ and Pyflakes_ will do this " +#~ "for you. If your Vim is compiled with :option:`+python` you can also utilize" +#~ " some very handy plugins to do these checks from within the editor." #~ msgstr "" #~ msgid "" -#~ "Asynchronous Python code checking (``pylint``," -#~ " ``pyflakes``, ``pep8``, ``mccabe``) in any" -#~ " combination" +#~ "Asynchronous Python code checking (``pylint``, ``pyflakes``, ``pep8``, " +#~ "``mccabe``) in any combination" #~ msgstr "" #~ msgid "Auto PEP8_ error fixes" #~ msgstr "" #~ msgid "" -#~ "Emacs is another powerful text editor." -#~ " It is fully programmable (lisp), but" -#~ " it can be some work to wire" -#~ " up correctly. A good start if " -#~ "you're already an Emacs user is " -#~ "`Python Programming in Emacs`_ at " -#~ "EmacsWiki." +#~ "Emacs is another powerful text editor. It is fully programmable (lisp), but " +#~ "it can be some work to wire up correctly. A good start if you're already an " +#~ "Emacs user is `Python Programming in Emacs`_ at EmacsWiki." #~ msgstr "" #~ msgid "" -#~ "`TextMate `_ brings Apple's" -#~ " approach to operating systems into " -#~ "the world of text editors. By " -#~ "bridging UNIX underpinnings and GUI, " -#~ "TextMate cherry-picks the best of " -#~ "both worlds to the benefit of " -#~ "expert scripters and novice users alike." +#~ "`TextMate `_ brings Apple's approach to operating " +#~ "systems into the world of text editors. By bridging UNIX underpinnings and " +#~ "GUI, TextMate cherry-picks the best of both worlds to the benefit of expert " +#~ "scripters and novice users alike." #~ msgstr "" #~ msgid "" -#~ "`Sublime Text `_ is " -#~ "a sophisticated text editor for code," -#~ " markup and prose. You'll love the" -#~ " slick user interface, extraordinary " -#~ "features and amazing performance." +#~ "`Sublime Text `_ is a sophisticated text editor" +#~ " for code, markup and prose. You'll love the slick user interface, " +#~ "extraordinary features and amazing performance." #~ msgstr "" #~ msgid "" -#~ "Atom is web native (HTML, CSS, " -#~ "JS), focusing on modular design and " -#~ "easy plugin development. It comes with" -#~ " native package control and plethora " -#~ "of packages. Recommended for Python " -#~ "development is `Linter " -#~ "`_ combined with " -#~ "`linter-flake8 `_." +#~ "Atom is web native (HTML, CSS, JS), focusing on modular design and easy " +#~ "plugin development. It comes with native package control and plethora of " +#~ "packages. Recommended for Python development is `Linter " +#~ "`_ combined with `linter-flake8 " +#~ "`_." #~ msgstr "" #~ msgid "" -#~ "`PyCharm `_ is " -#~ "developed by JetBrains, also known for" -#~ " IntelliJ IDEA. Both share the same" -#~ " code base and most of PyCharm's " -#~ "features can be brought to IntelliJ " -#~ "with the free `Python Plug-In " -#~ "`_. " -#~ "There are two versions of PyCharm: " -#~ "Professional Edition (Free 30-day trial) " -#~ "and Community Edition(Apache 2.0 License) " -#~ "with fewer features." +#~ "`PyCharm `_ is developed by JetBrains, " +#~ "also known for IntelliJ IDEA. Both share the same code base and most of " +#~ "PyCharm's features can be brought to IntelliJ with the free `Python Plug-In " +#~ "`_. There are two " +#~ "versions of PyCharm: Professional Edition (Free 30-day trial) and Community " +#~ "Edition(Apache 2.0 License) with fewer features." #~ msgstr "" #~ msgid "" #~ "`Python for Visual Studio " -#~ "`_" -#~ " is an extension for the `Visual " -#~ "Studio Code IDE `_." -#~ " This is a free, light weight, " -#~ "open source IDE, with support for " -#~ "Mac, Windows, and Linux. Built using " -#~ "open source technologies such as Node.js" -#~ " and Python, with compelling features " -#~ "such as Intellisense (autocompletion), local" -#~ " and remote debugging, linting, and " -#~ "the like." +#~ "`_ " +#~ "is an extension for the `Visual Studio Code IDE " +#~ "`_. This is a free, light weight, open source" +#~ " IDE, with support for Mac, Windows, and Linux. Built using open source " +#~ "technologies such as Node.js and Python, with compelling features such as " +#~ "Intellisense (autocompletion), local and remote debugging, linting, and the " +#~ "like." #~ msgstr "" #~ msgid "" -#~ "`Enthought Canopy " -#~ "`_ is a " -#~ "Python IDE which is focused towards " -#~ "Scientists and Engineers as it provides" -#~ " pre installed libraries for data " -#~ "analysis." +#~ "`Enthought Canopy `_ is a Python" +#~ " IDE which is focused towards Scientists and Engineers as it provides pre " +#~ "installed libraries for data analysis." #~ msgstr "" #~ msgid "" -#~ "The most popular Eclipse plugin for " -#~ "Python development is Aptana's `PyDev " +#~ "The most popular Eclipse plugin for Python development is Aptana's `PyDev " #~ "`_." #~ msgstr "" #~ msgid "" -#~ "`Komodo IDE `_ is developed by ActiveState and" -#~ " is a commercial IDE for Windows, " -#~ "Mac, and Linux. `KomodoEdit " -#~ "`_ is the open" -#~ " source alternative." +#~ "`Komodo IDE `_ is developed by " +#~ "ActiveState and is a commercial IDE for Windows, Mac, and Linux. `KomodoEdit" +#~ " `_ is the open source alternative." #~ msgstr "" #~ msgid "" -#~ "`Spyder `_ is" -#~ " an IDE specifically geared toward " -#~ "working with scientific Python libraries " -#~ "(namely `Scipy `_). It " -#~ "includes integration with pyflakes_, `pylint" -#~ " `_ and `rope " -#~ "`_." +#~ "`Spyder `_ is an IDE specifically " +#~ "geared toward working with scientific Python libraries (namely `Scipy " +#~ "`_). It includes integration with pyflakes_, `pylint " +#~ "`_ and `rope `_." #~ msgstr "" #~ msgid "" -#~ "Spyder is open-source (free), offers " -#~ "code completion, syntax highlighting, a " -#~ "class and function browser, and object" -#~ " inspection." +#~ "Spyder is open-source (free), offers code completion, syntax highlighting, a" +#~ " class and function browser, and object inspection." #~ msgstr "" #~ msgid "" -#~ "`WingIDE `_ is a Python" -#~ " specific IDE. It runs on Linux, " -#~ "Windows and Mac (as an X11 " -#~ "application, which frustrates some Mac " +#~ "`WingIDE `_ is a Python specific IDE. It runs on " +#~ "Linux, Windows and Mac (as an X11 application, which frustrates some Mac " #~ "users)." #~ msgstr "" #~ msgid "" -#~ "`NINJA-IDE `_ (from" -#~ " the recursive acronym: \"Ninja-IDE " -#~ "Is Not Just Another IDE\") is a" -#~ " cross-platform IDE, specially designed " -#~ "to build Python applications, and runs" -#~ " on Linux/X11, Mac OS X and " -#~ "Windows desktop operating systems. Installers" -#~ " for these platforms can be " +#~ "`NINJA-IDE `_ (from the recursive acronym: " +#~ "\"Ninja-IDE Is Not Just Another IDE\") is a cross-platform IDE, specially " +#~ "designed to build Python applications, and runs on Linux/X11, Mac OS X and " +#~ "Windows desktop operating systems. Installers for these platforms can be " #~ "downloaded from the website." #~ msgstr "" #~ msgid "" -#~ "NINJA-IDE is open-source software " -#~ "(GPLv3 licence) and is developed in " -#~ "Python and Qt. The source files " -#~ "can be downloaded from `GitHub " +#~ "NINJA-IDE is open-source software (GPLv3 licence) and is developed in Python" +#~ " and Qt. The source files can be downloaded from `GitHub " #~ "`_." #~ msgstr "" #~ msgid "" -#~ "`Eric `_ " -#~ "is a full featured Python IDE " -#~ "offering sourcecode autocompletion, syntax " -#~ "highlighting, support for version control " -#~ "systems, python 3 support, integrated " -#~ "web browser, python shell, integrated " -#~ "debugger and a flexible plug-in " -#~ "system. Written in python, it is " -#~ "based on the Qt gui toolkit, " -#~ "integrating the Scintilla editor control. " -#~ "Eric is an open-source software " -#~ "project (GPLv3 licence) with more than" -#~ " ten years of active development." +#~ "`Eric `_ is a full featured Python IDE" +#~ " offering sourcecode autocompletion, syntax highlighting, support for " +#~ "version control systems, python 3 support, integrated web browser, python " +#~ "shell, integrated debugger and a flexible plug-in system. Written in python," +#~ " it is based on the Qt gui toolkit, integrating the Scintilla editor " +#~ "control. Eric is an open-source software project (GPLv3 licence) with more " +#~ "than ten years of active development." #~ msgstr "" #~ msgid "" -#~ "To start using and see more " -#~ "information: `Virtual Environments " +#~ "To start using and see more information: `Virtual Environments " #~ "`_ docs." #~ msgstr "" #~ msgid "" -#~ "`pyenv `_ is a " -#~ "tool to allow multiple versions of " -#~ "the Python interpreter to be installed" -#~ " at the same time. This solves " -#~ "the problem of having different projects" -#~ " requiring different versions of Python." -#~ " For example, it becomes very easy" -#~ " to install Python 2.7 for " -#~ "compatibility in one project, whilst " -#~ "still using Python 3.4 as the " -#~ "default interpreter. pyenv isn't just " -#~ "limited to the CPython versions - " -#~ "it will also install PyPy, anaconda, " -#~ "miniconda, stackless, jython, and ironpython" -#~ " interpreters." +#~ "`pyenv `_ is a tool to allow multiple " +#~ "versions of the Python interpreter to be installed at the same time. This " +#~ "solves the problem of having different projects requiring different versions" +#~ " of Python. For example, it becomes very easy to install Python 2.7 for " +#~ "compatibility in one project, whilst still using Python 3.4 as the default " +#~ "interpreter. pyenv isn't just limited to the CPython versions - it will also" +#~ " install PyPy, anaconda, miniconda, stackless, jython, and ironpython " +#~ "interpreters." #~ msgstr "" #~ msgid "" -#~ "pyenv isn't a tool for managing " -#~ "virtual environments, but there is the" -#~ " plugin `pyenv-virtualenv " -#~ "`_ which " -#~ "automates the creation of different " -#~ "environments, and also makes it possible" -#~ " to use the existing pyenv tools " -#~ "to switch to different environments " -#~ "based on environment variables or " -#~ "``.python-version`` files." +#~ "pyenv isn't a tool for managing virtual environments, but there is the " +#~ "plugin `pyenv-virtualenv `_ which " +#~ "automates the creation of different environments, and also makes it possible" +#~ " to use the existing pyenv tools to switch to different environments based " +#~ "on environment variables or ``.python-version`` files." #~ msgstr "" #~ msgid "" -#~ ":ref:`IDLE ` is an integrated " -#~ "development environment that is part of" -#~ " Python standard library. It is " -#~ "completely written in Python and uses" -#~ " the Tkinter GUI toolkit. Though IDLE" -#~ " is not suited for full-blown " -#~ "development using Python, it is quite" -#~ " helpful to try out small Python " -#~ "snippets and experiment with different " -#~ "features in Python." +#~ ":ref:`IDLE ` is an integrated development environment that is " +#~ "part of Python standard library. It is completely written in Python and uses" +#~ " the Tkinter GUI toolkit. Though IDLE is not suited for full-blown " +#~ "development using Python, it is quite helpful to try out small Python " +#~ "snippets and experiment with different features in Python." #~ msgstr "" #~ msgid "Powerful Python shells (terminal- and Qt-based)." #~ msgstr "" #~ msgid "" -#~ "A web-based notebook with the same" -#~ " core features but support for rich" -#~ " media, text, code, mathematical " -#~ "expressions and inline plots." +#~ "A web-based notebook with the same core features but support for rich media," +#~ " text, code, mathematical expressions and inline plots." #~ msgstr "" #~ msgid "Support for interactive data visualization and use of GUI toolkits." @@ -997,17 +878,14 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "To download and install IPython with " -#~ "all it's optional dependencies for the" -#~ " notebook, qtconsole, tests, and other " -#~ "functionalities" +#~ "To download and install IPython with all it's optional dependencies for the " +#~ "notebook, qtconsole, tests, and other functionalities" #~ msgstr "" #~ msgid "" -#~ "`bpython `_ is " -#~ "an alternative interface to the Python" -#~ " interpreter for Unix-like operating " -#~ "systems. It has the following features:" +#~ "`bpython `_ is an alternative interface to " +#~ "the Python interpreter for Unix-like operating systems. It has the following" +#~ " features:" #~ msgstr "" #~ msgid "In-line syntax highlighting." @@ -1020,9 +898,8 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "\"Rewind\" function to pop the last " -#~ "line of code from memory and " -#~ "re-evaluate." +#~ "\"Rewind\" function to pop the last line of code from memory and re-" +#~ "evaluate." #~ msgstr "" #~ msgid "Send entered code off to a pastebin." @@ -1038,12 +915,10 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "`ptpython `_ " -#~ "is a REPL build on top of " -#~ "the `prompt_toolkit `_ library. It is" -#~ " considered to be an alternative to" -#~ " BPython_. Features include:" +#~ "`ptpython `_ is a REPL build " +#~ "on top of the `prompt_toolkit `_ library. It is considered to be an alternative to " +#~ "BPython_. Features include:" #~ msgstr "" #~ msgid "Emacs and VIM Mode" @@ -1053,8 +928,6 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Support for integrating with IPython_'s " -#~ "shell, by installing IPython ``pip " +#~ "Support for integrating with IPython_'s shell, by installing IPython ``pip " #~ "install ipython`` and running ``ptipython``." #~ msgstr "" - From 7d0480a45b378566022b5bb3c40bea7820278528 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:14:41 +0900 Subject: [PATCH 101/117] Translate intro/duction.po (23 entries: Python intro and guide purpose) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/intro/duction.mo | Bin 6579 -> 7151 bytes docs/locale/ko/LC_MESSAGES/intro/duction.po | 125 +++++++++++--------- 2 files changed, 72 insertions(+), 53 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.mo b/docs/locale/ko/LC_MESSAGES/intro/duction.mo index 2a78bbc232147b829be227b414c0d96e634d7819..556b56d4b5610567b178cd2c096b0384396d50de 100644 GIT binary patch delta 3481 zcmb7HU2Ggz6`n|thcu8verS!TZc8Mn;~EeZAS;9zi-uOF4Szz2R`Rx(*do~#$r^}w zm|bU_ZoKPwo!N@bZvu+$!;*m$5kcyCaoqI;*1)llNo!Os2kU)xZ zW_RbFd(L;h^PS`Nmp}Y!@h|#M4ry9&RMXzjH0`C2YuXTO4fa{s_hC=N{tfmEu!oOD zzkdbx4>TP5US8Rd{7PizsiyPJOz)cId+=Uixur zE_vzu)2XBwpGk_d*RPExW|HSqbLq>e)XzuXN?kd3WHOPwG?%zE{lX8X6IaH> zemH*NTjK2Gmjv>f4 zLdzC`zam?u_(Qm2Q!OK;b3l$SI|cbpQ*Je>k`ZLs(zL@uA4MxSgjP9dyCU#1a(RJ_9U*VtAqOEhJF;creFQGZ%E_na zeYj%3vXH?kT5W2wTtuYiJ-7qk>UfEQyQLS1+^6sfml@uZpuX>9qOh zV<%1u03zhRL5ueRNPNZ|fAY*Jy0nE*rsalk=9X9MD999PeN$6)370Dn?x; zrghnrD}yf)THR}UaDM*c_4G_CIeRUgc%EP3s;Hufpo4-p8P~8s{*yFt~g1v0e$*B%?i+#L+Pal!UV+K7S%^JUhn}YXP1ehYA9(rGHJp@I+&b$T= zeHav2tR)JDsXpI=_Acce0WLEo93Q}%AAIyP=YK&csS0i~ZKSi=rzG7ZlysAx<4xEz3p+mvWzyvrD;(YK%Ke z;1EBlOTfgS^$>3u5!krn+hV_3-EP*fm%A5ycotKk~)GJYPeRA2hDMEbF%!A#zc*O+Yvz z*uCeeIE@Q8sCIcvYPhlhmZ$If~yqwA`SQ^M4o%h^i*>%Ddd0! zlkFb#1gLBrsE+2|j^*^(0dSm*`OL{7ohzrNlkI|ITnL_JYuiv(7Z~v@V;Swyz+1wU z=^#w1F7z}S?Y#yd7Wb)c397B2VsCSbEd2-@gddRDuC|YHFgj9#vT_}MG@JZs>Q~oB z#OuS!*=$9@H(^( zz29wyWvF3COhl@yX2Eg=<327lXnRa@{e9TIraHu|QC5DF*bBDhc}S0{)5Tq~~GG^VkfbyjJ76_)Z46UgYi|qsAk? z*d2tRwiVn**R0r_THYCn0y+>czXq~HJaY*Ql~x%}(e$1}EkIY#O1BwS;I+$kwdF)j z$azH9tDYU)e5M}1`k2*Ir}Zx1(I`S%1*{r<`V3~v(YP4Sj6L9r78I~Rke?&gUJ$%q zrM=A_^_;T&eTQ2qD#WhzcE~CDm2}>6f03$)ki4fk!$m zvB$8O;eQ=#LU)N#gUYDkX5XjOOfhzC0+69QMT zslgR*oBcIJQ*9WZ`iPB0%=e#qFk-9N$@sUB0l&+A+R|~nx3>?fE2||-C%fY{Wb^U- p{QoNmYWDtI$lFI_HF0^lGXHpV=$Y`gDu1*iLy91~h_<^e{R_#{2*LmW delta 321 zcmaEFzS(%fo%(7<28LHW3=IAZ3=C;}3=CpGdK-{d0@7!Jv?P%J0Ho!CG#5Vug8-1$ z0@8IrebzvF3y{AHCJsQ-o# zQ2G^6;EgZ?!vr9GU4((*B#_P!Wnf?eDlh`NW*(4lD$c;LA4p#T(no>x6bS}~2p}CL zxp@}jd+v0%P#+%!KSy6z1shjiM^7IIM;DhM*Wh3~E}z7_^wPxiR4aw-d^krpBsDP? zB%)yB\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,57 +23,66 @@ msgstr "" #: ../../intro/duction.rst:5 msgid "Introduction" -msgstr "" +msgstr "소개" #: ../../intro/duction.rst:9 msgid "From the `official Python website `_:" -msgstr "" +msgstr "`파이썬 공식 웹사이트 `_ 에 따르면:" #: ../../intro/duction.rst:11 msgid "" -"Python is a general-purpose, high-level programming language similar to " -"Tcl, Perl, Ruby, Scheme, or Java. Some of its main key features include:" +"Python is a general-purpose, high-level programming language similar to Tcl," +" Perl, Ruby, Scheme, or Java. Some of its main key features include:" msgstr "" +"파이썬은 Tcl, Perl, Ruby, Scheme, Java와 유사한 범용 고수준 프로그래밍 언어입니다. 주요 특징 중 몇 가지는 " +"다음과 같습니다:" #: ../../intro/duction.rst:15 msgid "**very clear, readable syntax**" -msgstr "" +msgstr "**아주 명료하고 가독성 높은 문법**" #: ../../intro/duction.rst:17 msgid "" -"Python's philosophy focuses on readability, from code blocks delineated " -"with significant whitespace to intuitive keywords in place of inscrutable" -" punctuation." +"Python's philosophy focuses on readability, from code blocks delineated with" +" significant whitespace to intuitive keywords in place of inscrutable " +"punctuation." msgstr "" +"파이썬의 철학은 가독성에 초점을 맞춥니다. 의미 있는 공백으로 구분되는 코드 블록부터, 알아보기 어려운 구두점 대신 사용되는 직관적인 " +"키워드까지 그렇습니다." #: ../../intro/duction.rst:21 msgid "" "**extensive standard libraries and third party modules for virtually any " "task**" -msgstr "" +msgstr "**거의 모든 작업을 위한 광범위한 표준 라이브러리와 서드파티 모듈**" #: ../../intro/duction.rst:24 msgid "" -"Python is sometimes described with the words \"batteries included\" " -"because of its extensive `standard library " -"`_, which includes modules for regular " -"expressions, file IO, fraction handling, object serialization, and much " -"more." +"Python is sometimes described with the words \"batteries included\" because " +"of its extensive `standard library `_, " +"which includes modules for regular expressions, file IO, fraction handling, " +"object serialization, and much more." msgstr "" +"파이썬은 종종 \"배터리 포함\"이라는 말로 설명됩니다. 정규 표현식, 파일 IO, 분수 처리, 객체 직렬화 등을 위한 모듈을 포함한 " +"광범위한 `표준 라이브러리 `_ 가 있기 때문입니다." #: ../../intro/duction.rst:30 msgid "" -"Additionally, the `Python Package Index `_ is available" -" for users to submit their packages for widespread use, similar to Perl's" -" `CPAN `_. There is a thriving community of very " +"Additionally, the `Python Package Index `_ is available " +"for users to submit their packages for widespread use, similar to Perl's " +"`CPAN `_. There is a thriving community of very " "powerful Python frameworks and tools like the `Django " "`_ web framework and the `NumPy " "`_ set of math routines." msgstr "" +"또한 `Python Package Index `_ 가 있어 사용자가 자신의 패키지를 등록하여 널리 " +"사용되게 할 수 있습니다. 이는 Perl의 `CPAN `_ 과 비슷합니다. `Django " +"`_ 웹 프레임워크와 `NumPy `_" +" 수학 루틴 모음과 같은 매우 강력한 파이썬 프레임워크와 도구가 번성하는 커뮤니티가 존재합니다." #: ../../intro/duction.rst:38 msgid "**integration with other systems**" -msgstr "" +msgstr "**다른 시스템과의 통합**" #: ../../intro/duction.rst:40 msgid "" @@ -82,95 +91,105 @@ msgid "" "programmers are used to. It can also be `extended by C or C++ modules " "`_ when speed is of the essence." msgstr "" +"파이썬은 `Java 라이브러리 `_ 와 통합될 수 있어, 기업 프로그래머에게 익숙한 풍부한 " +"Java 환경에서 사용할 수 있습니다. 속도가 중요한 경우에는 `C 또는 C++ 모듈로 확장 " +"`_ 할 수도 있습니다." #: ../../intro/duction.rst:46 msgid "**ubiquity on computers**" -msgstr "" +msgstr "**컴퓨터에 어디서나 존재**" #: ../../intro/duction.rst:48 msgid "" -"Python is available on Windows, \\*nix, and Mac. It runs wherever the " -"Java virtual machine runs, and the reference implementation CPython can " -"help bring Python to wherever there is a working C compiler." +"Python is available on Windows, \\*nix, and Mac. It runs wherever the Java " +"virtual machine runs, and the reference implementation CPython can help " +"bring Python to wherever there is a working C compiler." msgstr "" +"파이썬은 Windows, \\*nix, Mac에서 사용할 수 있습니다. Java 가상 머신이 실행되는 어디에서나 실행되며, 참조 구현인 " +"CPython은 동작하는 C 컴파일러가 있는 곳이라면 어디로든 파이썬을 가져갈 수 있도록 도와줍니다." #: ../../intro/duction.rst:52 msgid "**friendly community**" -msgstr "" +msgstr "**친근한 커뮤니티**" #: ../../intro/duction.rst:54 msgid "" "Python has a vibrant and large :ref:`community ` which " "maintains wikis, conferences, countless repositories, mailing lists, IRC " -"channels, and so much more. Heck, the Python community is even helping to" -" write this guide!" +"channels, and so much more. Heck, the Python community is even helping to " +"write this guide!" msgstr "" +"파이썬에는 위키, 컨퍼런스, 수많은 저장소, 메일링 리스트, IRC 채널 등을 유지하는 활기차고 큰 :ref:`커뮤니티 ` 가 있습니다. 심지어 파이썬 커뮤니티는 이 안내서를 쓰는 데에도 도움을 주고 있답니다!" #: ../../intro/duction.rst:65 msgid "About This Guide" -msgstr "" +msgstr "이 안내서에 대하여" #: ../../intro/duction.rst:68 msgid "Purpose" -msgstr "" +msgstr "목적" #: ../../intro/duction.rst:70 msgid "" -"The Hitchhiker's Guide to Python exists to provide both novice and expert" -" Python developers a best practice handbook for the installation, " +"The Hitchhiker's Guide to Python exists to provide both novice and expert " +"Python developers a best practice handbook for the installation, " "configuration, and usage of Python on a daily basis." msgstr "" +"파이썬을 여행하는 히치하이커를 위한 안내서는 초보부터 숙련된 파이썬 개발자 모두에게 매일매일 파이썬의 설치, 설정, 사용법에 대한 모범 " +"사례 안내서를 제공하기 위해 존재합니다." #: ../../intro/duction.rst:76 msgid "By the Community" -msgstr "" +msgstr "커뮤니티에 의해서" #: ../../intro/duction.rst:78 msgid "" "This guide is architected and maintained by `Kenneth Reitz " -"`_ in an open fashion. This is a " -"community-driven effort that serves one purpose: to serve the community." +"`_ in an open fashion. This is a community-" +"driven effort that serves one purpose: to serve the community." msgstr "" +"이 안내서는 `Kenneth Reitz `_ 가 열린 방식으로 설계하고 " +"유지보수합니다. 이것은 단 하나의 목적, 즉 커뮤니티에 봉사하는 것을 위한 커뮤니티 주도의 노력입니다." #: ../../intro/duction.rst:83 msgid "For the Community" -msgstr "" +msgstr "커뮤니티를 위해서" #: ../../intro/duction.rst:85 msgid "" -"All contributions to the Guide are welcome, from Pythonistas of all " -"levels. If you think there's a gap in what the Guide covers, fork the " -"Guide on GitHub and submit a pull request." +"All contributions to the Guide are welcome, from Pythonistas of all levels. " +"If you think there's a gap in what the Guide covers, fork the Guide on " +"GitHub and submit a pull request." msgstr "" +"모든 수준의 파이썬 사용자(Pythonista)의 안내서 기여를 환영합니다. 안내서가 다루는 내용에 빠진 부분이 있다고 생각된다면, " +"GitHub에서 안내서를 포크하고 풀 리퀘스트를 제출해 주세요." #: ../../intro/duction.rst:89 msgid "" -"Contributions are welcome from everyone, whether they're an old hand or a" -" first-time Pythonista, and the authors to the Guide will gladly help if " -"you have any questions about the appropriateness, completeness, or " -"accuracy of a contribution." +"Contributions are welcome from everyone, whether they're an old hand or a " +"first-time Pythonista, and the authors to the Guide will gladly help if you " +"have any questions about the appropriateness, completeness, or accuracy of a" +" contribution." msgstr "" +"노련한 분이든 처음 파이썬을 다루는 분이든 누구의 기여라도 환영합니다. 기여의 적절성, 완전성, 정확성에 대해 궁금한 점이 있다면 " +"안내서의 저자들이 기꺼이 도와드립니다." #: ../../intro/duction.rst:94 msgid "" "To get started working on The Hitchhiker's Guide, see the " ":doc:`/notes/contribute` page." msgstr "" +"파이썬을 여행하는 히치하이커를 위한 안내서 작업을 시작하려면 :doc:`/notes/contribute` 페이지를 참고하세요." #~ msgid "" #~ msgstr "" #~ msgid "" -#~ "Additionally, the `Python Package Index " -#~ "`_ is available for" -#~ " users to submit their packages for" -#~ " widespread use, similar to Perl's " -#~ "`CPAN `_. There is a " -#~ "thriving community of very powerful " -#~ "Python frameworks and tools like the " -#~ "`Django `_ web " -#~ "framework and the `NumPy " -#~ "`_ set of math " -#~ "routines." +#~ "Additionally, the `Python Package Index `_ is " +#~ "available for users to submit their packages for widespread use, similar to " +#~ "Perl's `CPAN `_. There is a thriving community of very " +#~ "powerful Python frameworks and tools like the `Django " +#~ "`_ web framework and the `NumPy " +#~ "`_ set of math routines." #~ msgstr "" - From 7216f606ddc936956e9a13eadd672076a61e16d1 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:15:29 +0900 Subject: [PATCH 102/117] Translate writing/style.po (24 entries: autoformatters, list comprehensions) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/writing/style.mo | Bin 41007 -> 47146 bytes docs/locale/ko/LC_MESSAGES/writing/style.po | 54 ++++++++++++++------ 2 files changed, 37 insertions(+), 17 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.mo b/docs/locale/ko/LC_MESSAGES/writing/style.mo index d221dc54ad11211e43e6ccea97286677d76246e9..1fd529c4402c472533624b6a332bc8fba8ad3f12 100644 GIT binary patch delta 7834 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 G0P{cp>xh5= diff --git a/docs/locale/ko/LC_MESSAGES/writing/style.po b/docs/locale/ko/LC_MESSAGES/writing/style.po index 61f0fdef2..d68ff0c70 100644 --- a/docs/locale/ko/LC_MESSAGES/writing/style.po +++ b/docs/locale/ko/LC_MESSAGES/writing/style.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: YoungSeon.Ahn \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -682,17 +682,17 @@ msgstr "그런 다음 파일 하나 혹은 여러 개의 파일에다 돌리면 #: ../../writing/style.rst:497 msgid "Auto-Formatting" -msgstr "" +msgstr "자동 포매팅" #: ../../writing/style.rst:499 msgid "" "There are several auto-formatting tools that can reformat your code, in " "order to comply with PEP 8." -msgstr "" +msgstr "PEP 8을 준수하도록 코드를 재포맷해주는 자동 포매팅 도구가 여러 가지 있습니다." #: ../../writing/style.rst:502 msgid "**autopep8**" -msgstr "" +msgstr "**autopep8**" #: ../../writing/style.rst:504 msgid "" @@ -728,16 +728,21 @@ msgid "" "looking code as a programmer who writes PEP 8 compliant code. It gets " "installed with:" msgstr "" +"autopep8가 PEP 8 위반을 해결하는 데 초점을 맞추는 반면, `yapf " +"`_ 는 PEP 8 준수 외에도 코드의 포맷을 개선하려 합니다. 이 포매터는 " +"PEP 8을 잘 따르는 프로그래머가 작성한 것만큼 보기 좋은 코드를 제공하는 것을 목표로 합니다. 다음과 같이 설치합니다:" #: ../../writing/style.rst:533 msgid "Run the auto-formatting of a file with:" -msgstr "" +msgstr "다음 명령어로 파일의 자동 포매팅을 실행합니다:" #: ../../writing/style.rst:539 msgid "" "Similar to autopep8, running the command without the ``--in-place`` flag " "will output the diff for review before applying the changes." msgstr "" +"autopep8과 마찬가지로, ``--in-place`` 플래그 없이 명령어를 실행하면 변경 사항을 적용하기 전에 검토할 수 있도록 " +"diff를 출력합니다." #: ../../writing/style.rst:542 msgid "**black**" @@ -753,16 +758,20 @@ msgid "" "diffs with only the relevant changes are guaranteed. You can install the " "tool as follows:" msgstr "" +"자동 포매터 `black `_ 은 코드베이스에 대해 독단적이고 결정론적인 재포맷을 " +"제공합니다. 사용자 전체에 걸쳐 설정 없이도 일관된 코드 스타일을 제공하는 것이 주된 초점입니다. 따라서 black 사용자는 포매팅에 " +"대해 신경을 끄고 잊어버릴 수 있습니다. 또한 결정론적 접근 방식 덕분에, 관련된 변경 사항만 담긴 최소한의 git diff가 " +"보장됩니다. 다음과 같이 설치할 수 있습니다:" #: ../../writing/style.rst:556 msgid "A python file can be formatted with:" -msgstr "" +msgstr "파이썬 파일을 다음과 같이 포맷할 수 있습니다:" #: ../../writing/style.rst:562 msgid "" "Adding the ``--diff`` flag provides the code modification for review without" " direct application." -msgstr "" +msgstr "``--diff`` 플래그를 추가하면 코드를 직접 적용하지 않고 검토용으로 변경 사항을 제공합니다." #: ../../writing/style.rst:567 msgid "Conventions" @@ -794,7 +803,7 @@ msgstr "" #: ../../writing/style.rst:707 ../../writing/style.rst:752 #: ../../writing/style.rst:798 ../../writing/style.rst:833 msgid "**Bad**:" -msgstr "" +msgstr "**나쁜 예**:" #: ../../writing/style.rst:589 ../../writing/style.rst:621 #: ../../writing/style.rst:656 ../../writing/style.rst:670 @@ -802,7 +811,7 @@ msgstr "" #: ../../writing/style.rst:765 ../../writing/style.rst:807 #: ../../writing/style.rst:844 msgid "**Good**:" -msgstr "" +msgstr "**좋은 예**:" #: ../../writing/style.rst:606 msgid "Access a Dictionary Element" @@ -837,18 +846,23 @@ msgid "" "follows almost the same syntax as list comprehensions but return a generator" " instead of a list." msgstr "" +"`제너레이터 표현식(generator expression) " +"`_ 은 리스트" +" 컴프리헨션과 거의 동일한 문법을 따르지만 리스트 대신 제너레이터를 반환합니다." #: ../../writing/style.rst:646 msgid "" "Creating a new list requires more work and uses more memory. If you are just" " going to loop through the new list, prefer using an iterator instead." msgstr "" +"새 리스트를 만드는 데에는 더 많은 작업이 필요하고 메모리도 더 많이 사용합니다. 새 리스트를 단지 순회하기만 할 거라면, 그 대신 " +"이터레이터를 사용하는 편이 좋습니다." #: ../../writing/style.rst:663 msgid "" "Use list comprehensions when you really need to create a second list, for " "example if you need to use the result multiple times." -msgstr "" +msgstr "정말로 두 번째 리스트를 만들 필요가 있을 때, 예를 들어 결과를 여러 번 사용해야 할 때 리스트 컴프리헨션을 사용하세요." #: ../../writing/style.rst:667 msgid "" @@ -856,10 +870,12 @@ msgid "" " expression, consider using a generator function instead of returning a " "list." msgstr "" +"로직이 짧은 리스트 컴프리헨션이나 제너레이터 표현식으로 표현하기에 너무 복잡하다면, 리스트를 반환하는 대신 제너레이터 함수를 사용하는 " +"것을 고려하세요." #: ../../writing/style.rst:688 msgid "Never use a list comprehension just for its side effects." -msgstr "" +msgstr "부수 효과만을 위해서 리스트 컴프리헨션을 사용하지 마세요." #: ../../writing/style.rst:705 msgid "Filtering a list" @@ -867,19 +883,19 @@ msgstr "리스트 필터링하기" #: ../../writing/style.rst:709 msgid "Never remove items from a list while you are iterating through it." -msgstr "" +msgstr "리스트를 순회하는 도중에 그 리스트의 항목을 제거하지 마세요." #: ../../writing/style.rst:719 msgid "Don't make multiple passes through the list." -msgstr "" +msgstr "리스트를 여러 번 순회하지 마세요." #: ../../writing/style.rst:728 msgid "Use a list comprehension or generator expression." -msgstr "" +msgstr "리스트 컴프리헨션이나 제너레이터 표현식을 사용하세요." #: ../../writing/style.rst:740 msgid "Possible side effects of modifying the original list" -msgstr "" +msgstr "원본 리스트를 수정할 때 발생할 수 있는 부수 효과" #: ../../writing/style.rst:742 msgid "" @@ -887,20 +903,24 @@ msgid "" "referencing it. But you can use *slice assignment* if you really want to do " "that." msgstr "" +"다른 변수가 같은 리스트를 참조하고 있다면 원본 리스트를 수정하는 일은 위험할 수 있습니다. 정말로 그렇게 하고 싶다면 *슬라이스 " +"할당(slice assignment)* 을 사용할 수 있습니다." #: ../../writing/style.rst:751 msgid "Modifying the values in a list" -msgstr "" +msgstr "리스트의 값 수정하기" #: ../../writing/style.rst:754 msgid "" "Remember that assignment never creates a new object. If two or more " "variables refer to the same list, changing one of them changes them all." msgstr "" +"할당은 결코 새 객체를 만들지 않는다는 점을 기억하세요. 두 개 이상의 변수가 같은 리스트를 참조한다면, 그 중 하나를 바꾸면 모두가 " +"바뀝니다." #: ../../writing/style.rst:767 msgid "It's safer to create a new list object and leave the original alone." -msgstr "" +msgstr "새 리스트 객체를 만들고 원본은 건드리지 않는 편이 더 안전합니다." #: ../../writing/style.rst:777 msgid "Use :py:func:`enumerate` keep a count of your place in the list." From f8b71f08d21f959ba69487fcf88a94bb72fd76cd Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:16:13 +0900 Subject: [PATCH 103/117] Translate scenarios/ml.po (30 entries: SciPy stack, scikit-learn) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/ml.mo | Bin 7145 -> 7512 bytes docs/locale/ko/LC_MESSAGES/scenarios/ml.po | 215 ++++++++++----------- 2 files changed, 104 insertions(+), 111 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/ml.mo b/docs/locale/ko/LC_MESSAGES/scenarios/ml.mo index 6ff4e395832941623f23532c8abdcc79f0351b9d..e846d651d1d455eb686a7539cc152d08bbc4bc1a 100644 GIT binary patch delta 3389 zcmaJ@-)|d55Z+SYp;Qf&(gH*G&KkWEDg~P$~sfQ9!DYP^~mdtp*#C6e;j< z`EdzO?6$F-OPpY*4t46JHIi|h_M#?&Cmwj{Gk*fy?!te7_-5BW+u?^4X>#Y=nb~i? z`DT89<=0U8z%J{PU5vf9kFg&aV+(DJU4=dOC}R)9{sub*`zP!s?C@je{Y(29+l%KA z>?G_d*xRu8VIP70>T$+;;CB+%#j|&Sv9DooJi*vLynpr}V;|r-c!*i78!tu=G4=;u z+@Ag*)xnChY7+y z5Bn)BC2Yg~44Z;wM~}Y$W@vr?1HbHj=UnV^wC`+hEXq$_jPeu1gTe5{=o_)iL;bPX zrC?9&v)A`@hogO$!+pKSKI{#D7UJC}-#_)y$y0Ch6W!f!^hbiRfxg$%Z?%2V)Aeew za}RvWvg@tqLr0HtaiuJCRb`jCx4xyE1+J2-YOElOBVuKXi()~H+T!}QS4nbd7vyF} zIT;+~GMmRY^x&59U@NC8?W~xdP5;yuvb^#Lot2CD&CaWgD`xa5?@m%Kt%#X5k%)^# zA;{$96>-fDaIaE=SLLh*xEw3V#Wk+3x-yrM_76zW5qE4kKLeLnWe%QKU75&>>m`xM zahXfubNq_%9C6{FTf&|ZH%m2Fh>g6s$Zg@K!cEda`mvDW$X|?QpFcei8EjNh zP9zY2Xz24$`oM$7kwbP%EE6uaNUSO+%Ymd=p`uYTsJEQnz=hS=hL3=*GHb?|?aW6c zM^JA>rJE%+9TIm?PmO{oxl{_uB0aP}sBxedGPf;rHka`X<&L=Zh$@)`2=Yov*VgAF z)!fbnxSHJX)`=o_U6hT2HRlFjGgKpjmRN`zw$`~@bFsW;az-KnpGJNtLw$InZ;7zu zIbsGCZq5bRK0(r{hYncuzA0y1sTR0Y6*tf(nSz>)b2*s=i&}Htk(%!|Xu8DVYBA~E z9YKcmDh2r2kKYUMOUKl;DerC`-I1{JUS(Spb6lj+8>S;n6#$RCnIVw9jgra$4fLsj zTi@m86iQw1FI-hjuMlA16u#03=Cj`VhH~od$wg+yd_g<`N?c7OEozQwmv|}4v&1gb zu{)xPTi@t*ECSK-jG9fhkQ7Z{`&F~2g%6?xz*7K~e53h9+}2eu0?l$pSnC_2Nb1o* ziOOcUOge)W6i$+8NDY{G)PjR>gn&qts02k+XD17(h+J;ZigZ>ZktnFSDIx(H8?j^# zG~YtX3(|rDd6hCAHM1ZenHrTtEnTC(cgt!Vg0+Kbt)lgBV&$taZ{Vo&a%@X1WioEhdux>{QasSrFyBTYXMcxW$5vXLF=;gv_#!mLJ4>u^mxl>?b5aW!93 z))mme9}?+;)|ZVEl)9noD3ob9NDriDdWGWrx3GiOq=H&>b>_(taR+}kCO}hq<{A)` zX31BMP3$EaLVhc&vY4t1%MPcyicP7LF4pp{E2^(b?KKq>#ZfhiS)m)FBgEj+YGeep zrF6aRak+%agk0@Ho%CvYQx=_e{3goZ%FR^(fq_}N=?fx^5@_fCP+OPJaGBlL_63mDyul-^1sm$eE_kfJJU+HFdeK-ZUUmp7+0lmrA2 zKmto~=mx|z1*Q5&jCxB_4M`_%Y?06xAp+n@9@H?9)*Llb#&R)RCKb^mtxAqf)?J;Q z&l3k4ibFGL?w*`)9(LNFA-Xx{PZE;E{}}YNjTMtxqQot0O)TdS6A5Tl&u8U=tLB=6 zoEbiIn$!ZVZuYVe>xo4#gm=9A$LgTDW-sX$taXdo5Ej>{fg%1VfJNeujmvBnMxOy4 zjaAeUiB9pZPV7sqy^Gxiti(~u**I$UgVPXt>~(NJAJoIvqokH=P0hVt>;cyy@y!WR zFOY8<7TOSY$i+$!J(3O`Q0jdiu)`n2aR@D-80-C^jo)eO&|)=ZP;h5i)z-@#BN( V;r)lwfqiWUxgH66mv7oA{|3+qoN537 delta 410 zcmX}mKT84u7zXf1i2}Q_%&c^|AftpcwIRCvTb>}@No0Q~IqDEg@9NB!1_>J5+L~>M zAOfeBK0qHJ8d_Qk=e|IX2~EHEd0u#V-{sEIlh@I_Z~%#6;10mE8@QyU5nzCR(renG zEqXo*2sGdUSYeJH(Per|TXc}7#(*I2uG8+lQ!j8xe`r7Zy>afCOFlFaV)5VuzFE9Y z0K4>M5*VVsDS*FWhJMjSI!*n4V3x+INDt^dy`mC*qzm+e2B{F}JszX?%qfacsIV%x zJm~^SSS#IcMLl%#%{~&D{dac`taaB!MD`Cqn zCtVxWhOJknoMqSQvS^\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -24,183 +24,200 @@ msgstr "" #: ../../scenarios/ml.rst:5 msgid "Machine Learning" -msgstr "" +msgstr "머신러닝" #: ../../scenarios/ml.rst:9 msgid "" "Python has a vast number of libraries for data analysis, statistics, and " "Machine Learning itself, making it a language of choice for many data " "scientists." -msgstr "" +msgstr "파이썬은 데이터 분석, 통계, 그리고 머신러닝 자체를 위한 라이브러리가 방대해서, 많은 데이터 과학자가 선택하는 언어입니다." #: ../../scenarios/ml.rst:11 msgid "" "Some widely used packages for Machine Learning and other data science " "applications are listed below." -msgstr "" +msgstr "머신러닝과 기타 데이터 과학 응용에서 널리 사용되는 패키지 몇 가지를 아래에 나열합니다." #: ../../scenarios/ml.rst:16 msgid "SciPy Stack" -msgstr "" +msgstr "SciPy Stack" #: ../../scenarios/ml.rst:18 msgid "" "The SciPy stack consists of a bunch of core helper packages used in data " -"science for statistical analysis and visualising data. Because of its " -"huge number of functionalities and ease of use, the Stack is considered a" -" must-have for most data science applications." +"science for statistical analysis and visualising data. Because of its huge " +"number of functionalities and ease of use, the Stack is considered a must-" +"have for most data science applications." msgstr "" +"SciPy 스택은 데이터 과학에서 통계 분석과 데이터 시각화에 사용되는 핵심 헬퍼 패키지들로 구성됩니다. 방대한 기능과 사용 편의성 " +"덕분에, 이 스택은 대부분의 데이터 과학 응용에서 필수로 여겨집니다." #: ../../scenarios/ml.rst:20 msgid "" -"The Stack consists of the following packages (link to documentation " -"given):" -msgstr "" +"The Stack consists of the following packages (link to documentation given):" +msgstr "이 스택은 다음 패키지로 구성되어 있습니다(문서 링크 제공):" #: ../../scenarios/ml.rst:22 msgid "`NumPy `_" -msgstr "" +msgstr "`NumPy `_" #: ../../scenarios/ml.rst:23 msgid "`SciPy library `_" -msgstr "" +msgstr "`SciPy 라이브러리 `_" #: ../../scenarios/ml.rst:24 msgid "`Matplotlib `_" -msgstr "" +msgstr "`Matplotlib `_" #: ../../scenarios/ml.rst:25 msgid "`IPython `_" -msgstr "" +msgstr "`IPython `_" #: ../../scenarios/ml.rst:26 msgid "`pandas `_" -msgstr "" +msgstr "`pandas `_" #: ../../scenarios/ml.rst:27 msgid "`Sympy `_" -msgstr "" +msgstr "`Sympy `_" #: ../../scenarios/ml.rst:28 msgid "`nose `_" -msgstr "" +msgstr "`nose `_" #: ../../scenarios/ml.rst:30 msgid "" -"The stack also comes with Python bundled in, but has been excluded from " -"the above list." -msgstr "" +"The stack also comes with Python bundled in, but has been excluded from the " +"above list." +msgstr "이 스택에는 파이썬도 함께 포함되어 있지만 위 목록에서는 제외했습니다." #: ../../scenarios/ml.rst:33 ../../scenarios/ml.rst:49 msgid "Installation" -msgstr "" +msgstr "설치" #: ../../scenarios/ml.rst:35 msgid "" -"For installing the full stack, or individual packages, you can refer to " -"the instructions given `here `_." +"For installing the full stack, or individual packages, you can refer to the " +"instructions given `here `_." msgstr "" +"스택 전체나 개별 패키지를 설치하려면 `여기 `_ 에 있는 안내를 " +"참고하세요." #: ../../scenarios/ml.rst:37 msgid "" -"**NB:** `Anaconda `_ is " -"highly preferred and recommended for installing and maintaining data " -"science packages seamlessly." +"**NB:** `Anaconda `_ is highly " +"preferred and recommended for installing and maintaining data science " +"packages seamlessly." msgstr "" +"**참고:** 데이터 과학 패키지를 매끄럽게 설치하고 유지하기 위해서는 `Anaconda " +"`_ 가 매우 선호되고 권장됩니다." #: ../../scenarios/ml.rst:42 msgid "scikit-learn" -msgstr "" +msgstr "scikit-learn" #: ../../scenarios/ml.rst:44 msgid "" "Scikit is a free and open source machine learning library for Python. It " "offers off-the-shelf functions to implement many algorithms like linear " -"regression, classifiers, SVMs, k-means, Neural Networks, etc. It also has" -" a few sample datasets which can be directly used for training and " -"testing." +"regression, classifiers, SVMs, k-means, Neural Networks, etc. It also has a " +"few sample datasets which can be directly used for training and testing." msgstr "" +"Scikit는 파이썬을 위한 무료 오픈 소스 머신러닝 라이브러리입니다. 선형 회귀, 분류기, SVM, k-평균, 신경망 등 많은 " +"알고리즘을 구현할 수 있는 즉시 사용 가능한 함수를 제공합니다. 또한 학습과 테스트에 바로 사용할 수 있는 몇 가지 샘플 데이터셋도 " +"가지고 있습니다." #: ../../scenarios/ml.rst:46 msgid "" -"Because of its speed, robustness, and ease of, it's one of the most " -"widely-used libraries for many Machine Learning applications." -msgstr "" +"Because of its speed, robustness, and ease of, it's one of the most widely-" +"used libraries for many Machine Learning applications." +msgstr "속도, 견고함, 사용 편의성 덕분에 많은 머신러닝 응용에서 가장 널리 사용되는 라이브러리 중 하나입니다." #: ../../scenarios/ml.rst:51 msgid "Through PyPI:" -msgstr "" +msgstr "PyPI를 통해서:" #: ../../scenarios/ml.rst:57 msgid "Through conda:" -msgstr "" +msgstr "conda를 통해서:" #: ../../scenarios/ml.rst:63 msgid "" -"scikit-learn also comes shipped with Anaconda (mentioned above). For more" -" installation instructions, refer to `this link `_." msgstr "" +"scikit-learn은 (위에서 언급한) Anaconda에도 함께 포함되어 있습니다. 더 자세한 설치 안내는 `이 링크 " +"`_ 를 참고하세요." #: ../../scenarios/ml.rst:66 msgid "Example" -msgstr "" +msgstr "예시" #: ../../scenarios/ml.rst:68 msgid "" "For this example, we train a simple classifier on the `Iris dataset " -"`_, which comes " -"bundled in with scikit-learn." +"`_, which comes bundled " +"in with scikit-learn." msgstr "" +"이 예시에서는 scikit-learn에 함께 포함되어 있는 `Iris 데이터셋 " +"`_ 으로 간단한 분류기를 학습시킵니다." #: ../../scenarios/ml.rst:70 msgid "" -"The dataset takes four features of flowers: sepal length, sepal width, " -"petal length, and petal width, and classifies them into three flower " -"species (labels): setosa, versicolor, or virginica. The labels have been " -"represented as numbers in the dataset: 0 (setosa), 1 (versicolor), and 2 " -"(virginica)." +"The dataset takes four features of flowers: sepal length, sepal width, petal" +" length, and petal width, and classifies them into three flower species " +"(labels): setosa, versicolor, or virginica. The labels have been represented" +" as numbers in the dataset: 0 (setosa), 1 (versicolor), and 2 (virginica)." msgstr "" +"이 데이터셋은 꽃잎의 네 가지 특징(꽃받침 길이, 꽃받침 너비, 꽃잎 길이, 꽃잎 너비)을 입력으로 받아, 세 가지 꽃 종(라벨)인 " +"setosa, versicolor, virginica로 분류합니다. 데이터셋에서 라벨은 0(setosa), 1(versicolor), " +"2(virginica)와 같이 숫자로 표현되어 있습니다." #: ../../scenarios/ml.rst:72 msgid "" -"We shuffle the Iris dataset and divide it into separate training and " -"testing sets, keeping the last 10 data points for testing and rest for " -"training. We then train the classifier on the training set and predict on" -" the testing set." +"We shuffle the Iris dataset and divide it into separate training and testing" +" sets, keeping the last 10 data points for testing and rest for training. We" +" then train the classifier on the training set and predict on the testing " +"set." msgstr "" +"Iris 데이터셋을 섞은 다음 학습용과 테스트용으로 나누어, 마지막 10개의 데이터 포인트는 테스트용으로, 나머지는 학습용으로 둡니다. " +"그런 다음 학습 세트로 분류기를 학습시키고 테스트 세트에 대해 예측합니다." #: ../../scenarios/ml.rst:115 msgid "" -"Since we're splitting randomly and the classifier trains on every " -"iteration, the accuracy may vary. Running the above code gives:" +"Since we're splitting randomly and the classifier trains on every iteration," +" the accuracy may vary. Running the above code gives:" msgstr "" +"무작위로 나누고 매 반복마다 분류기가 학습되기 때문에 정확도는 달라질 수 있습니다. 위 코드를 실행하면 다음과 같은 결과가 나옵니다:" #: ../../scenarios/ml.rst:123 msgid "" -"The first line contains the labels (i.e. flower species) of the testing " -"data as predicted by our classifier, and the second line contains the " -"actual flower species as given in the dataset. We thus get an accuracy of" -" 100% this time." +"The first line contains the labels (i.e. flower species) of the testing data" +" as predicted by our classifier, and the second line contains the actual " +"flower species as given in the dataset. We thus get an accuracy of 100% this" +" time." msgstr "" +"첫 번째 줄에는 분류기가 예측한 테스트 데이터의 라벨(즉, 꽃 종)이 있고, 두 번째 줄에는 데이터셋에 주어진 실제 꽃 종이 있습니다. " +"따라서 이번에는 100%의 정확도를 얻었습니다." #: ../../scenarios/ml.rst:125 msgid "" "More on scikit-learn can be read in the `documentation `_." msgstr "" +"scikit-learn에 대해 더 알고 싶다면 `문서 `_ 에서 읽을 수 있습니다." #~ msgid "" -#~ "Python has a vast number of " -#~ "libraries for data analysis, statistics " -#~ "and Machine Learning itself, making it" -#~ " a language of choice for many " -#~ "data scientists." +#~ "Python has a vast number of libraries for data analysis, statistics and " +#~ "Machine Learning itself, making it a language of choice for many data " +#~ "scientists." #~ msgstr "" #~ msgid "" -#~ "Some widely used packages for Machine" -#~ " Learning and other Data Science " +#~ "Some widely used packages for Machine Learning and other Data Science " #~ "applications are enlisted below." #~ msgstr "" @@ -208,71 +225,47 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "The Scipy stack consists of a " -#~ "bunch of core helper packages used " -#~ "in data science, for statistical " -#~ "analysis and visualising data. Because " -#~ "of its huge number of functionalities" -#~ " and ease of use, the Stack is" -#~ " considered a must-have for most " -#~ "data science applications." +#~ "The Scipy stack consists of a bunch of core helper packages used in data " +#~ "science, for statistical analysis and visualising data. Because of its huge " +#~ "number of functionalities and ease of use, the Stack is considered a must-" +#~ "have for most data science applications." #~ msgstr "" #~ msgid "" -#~ "Scikit is a free and open-source" -#~ " machine learning library for Python. " -#~ "It offers off-the-shelf functions " -#~ "to implement many algorithms like linear" -#~ " regression, classifiers, SVMs, k-means, " -#~ "Neural Networks etc. It also has a" -#~ " few sample datasets which can be " -#~ "directly used for training and testing." +#~ "Scikit is a free and open-source machine learning library for Python. It " +#~ "offers off-the-shelf functions to implement many algorithms like linear " +#~ "regression, classifiers, SVMs, k-means, Neural Networks etc. It also has a " +#~ "few sample datasets which can be directly used for training and testing." #~ msgstr "" #~ msgid "" -#~ "Because of its speed, robustness and " -#~ "easiness to use, it's one of the" -#~ " most widely-used libraries for many" -#~ " Machine Learning applications." +#~ "Because of its speed, robustness and easiness to use, it's one of the most " +#~ "widely-used libraries for many Machine Learning applications." #~ msgstr "" #~ msgid "" -#~ "scikit-learn also comes in shipped " -#~ "with Anaconda (mentioned above). For " -#~ "more installation instructions, refer to " -#~ "`this link `_." #~ msgstr "" #~ msgid "" -#~ "The dataset takes four features of " -#~ "flowers: sepal length, sepal width, " -#~ "petal length and petal width, and " -#~ "classifies them into three flower " -#~ "species (labels): setosa, versicolor or " -#~ "virginica. The labels have been " -#~ "represented as numbers in the dataset:" -#~ " 0 (setosa), 1 (versicolor) and 2 " -#~ "(virginica)." +#~ "The dataset takes four features of flowers: sepal length, sepal width, petal" +#~ " length and petal width, and classifies them into three flower species " +#~ "(labels): setosa, versicolor or virginica. The labels have been represented " +#~ "as numbers in the dataset: 0 (setosa), 1 (versicolor) and 2 (virginica)." #~ msgstr "" #~ msgid "" -#~ "We shuffle the Iris dataset, and " -#~ "divide it into separate training and " -#~ "testing sets: keeping the last 10 " -#~ "data points for testing and rest " -#~ "for training. We then train the " -#~ "classifier on the training set, and " -#~ "predict on the testing set." +#~ "We shuffle the Iris dataset, and divide it into separate training and " +#~ "testing sets: keeping the last 10 data points for testing and rest for " +#~ "training. We then train the classifier on the training set, and predict on " +#~ "the testing set." #~ msgstr "" #~ msgid "" -#~ "The first line contains the labels " -#~ "(i.e flower species) of the testing " -#~ "data as predicted by our classifier, " -#~ "and the second line contains the " -#~ "actual flower species as given in " -#~ "the dataset. We thus get an " -#~ "accuracy of 100% this time." +#~ "The first line contains the labels (i.e flower species) of the testing data " +#~ "as predicted by our classifier, and the second line contains the actual " +#~ "flower species as given in the dataset. We thus get an accuracy of 100% this" +#~ " time." #~ msgstr "" - From fda3c73c2b6534b3970d3de934e52f3e603ec2b4 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:16:47 +0900 Subject: [PATCH 104/117] Translate intro/news.po (31 entries: Python news, podcasts, newsletters) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/intro/news.mo | Bin 4583 -> 4831 bytes docs/locale/ko/LC_MESSAGES/intro/news.po | 114 ++++++++++++----------- 2 files changed, 58 insertions(+), 56 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.mo b/docs/locale/ko/LC_MESSAGES/intro/news.mo index a16135b22dfddfc7a99a75312ec6acfa42195f0e..e3ab701d3aaa3ef7a64d200ebe8c27c672fd739b 100644 GIT binary patch delta 1807 zcmZux?Q2_A96r@CSvI?FQ*r3z%onILO*hyFkug@O4kUA-k!=-pu8+H2fD^7i?QBj?}XXZ-$ilUIG=>*HtDw>+OmPQB_o>0!gyhd;YHH4zSV zpC}*YG+UY5SmstWD)bT;x2lvdXeG_9x=AZ#JDamAI=ACxdr8BK zNM!g}@XD2|Q$63(cZT@J5XrcmG^sEj!IMZDK1Maodf4QasR>ghCy(D8&u_%kPb6HB}DWB_!Zl~_jw`o*mC+dja4vzAvu)z@tm2xV?Wf-TQh|`eU zi5GoDy*Mw~vj!ETVx!4vy=j>WX-%=FaniG56Kz&W(YUBo(K8u~?IdHtz$AaiVG*3* zicBJk210OAu8Q@P8$+`yHIa7Mu^N#CIPFxF(Ch^rDQFp8E8JeFAz8OQ*{j$p303FT z_ME&y+d0ao#Dl1S>~gpW|=YjHo8>rbL$~eLmzW7tC0eG?!X#tcGTwvj;aHD zp4#hjt^Rc2bfhx{S5@uN?-E=4*cpeWNJd04CAA^>b%Q6b6QAQ`%Sp#o=cp1y#LtldV1a0(k#uzx!9~q>1@U^ zHK!Lj7Dq<0G>DM1na2nn@sci8*z)L34qH|AF!v~|rxyF4k90PG>=&{T<)&4EN3sfn zi%f==tFoJ}Q%{iw6?gUq8B3Hb02dd19T$0 zMN4zQ4qftDH@9o;9rG7o-=VA&6sx(+Wx8z3ESCH%lXn;3z0R+-g;B& z&fN<=z5SOqxz>6vxY~nDU?gEK!aau2Hyjh!G)n3mh1heNvm-R!$(|#nPOBLo`^4GL KmA?-D+4nC1VaJgG delta 386 zcmX}jF-t;W6vpwR2;!|wtEDiwAc19yI+}{YRVrR1vW7NqAeZRsEyWrd+*+KXq39bl z6<7pKtv2)p3WAo#pij{MCIm11&U4=9d@OuL?;@VwsYk>Ji16fD6RG117BN01vW_-> z;v>%D^|;6k-lGqPIDxM?h3|NV-{|&^`Q%jk*vCtB`_Z8Ezg5{$O5Z3|%X+R{ zEv>0y$uPFcwOT<_X3OfDRwJt)IR7EB-7uT(M$ai#wD*%v+bU?AcDHTXiHg&1cCvcw b@Go}q=@or6=2I7o+L14lOlgCNH|GBZMQub! diff --git a/docs/locale/ko/LC_MESSAGES/intro/news.po b/docs/locale/ko/LC_MESSAGES/intro/news.po index 6286feedd..e07cb7763 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/news.po +++ b/docs/locale/ko/LC_MESSAGES/intro/news.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,145 +23,153 @@ msgstr "" #: ../../intro/news.rst:5 msgid "News" -msgstr "" +msgstr "뉴스" #: ../../intro/news.rst:12 msgid "PyCoder’s Weekly" -msgstr "" +msgstr "PyCoder’s Weekly" #: ../../intro/news.rst:14 msgid "" -"PyCoder’s Weekly is a free weekly Python newsletter for Python developers" -" by Python developers (Projects, Articles, News, and Jobs)." +"PyCoder’s Weekly is a free weekly Python newsletter for Python developers by" +" Python developers (Projects, Articles, News, and Jobs)." msgstr "" +"PyCoder’s Weekly는 파이썬 개발자가 파이썬 개발자를 위해 만드는 무료 주간 파이썬 뉴스레터입니다(프로젝트, 글, 뉴스, " +"채용)." #: ../../intro/news.rst:17 msgid "`PyCoder’s Weekly `_" -msgstr "" +msgstr "`PyCoder’s Weekly `_" #: ../../intro/news.rst:22 msgid "Real Python" -msgstr "" +msgstr "Real Python" #: ../../intro/news.rst:24 msgid "" "At Real Python you can learn all things Python from the ground up, with " -"weekly free and in-depth tutorials. Everything from the absolute basics " -"of Python, to web development and web scraping, to data visualization, " -"and beyond." +"weekly free and in-depth tutorials. Everything from the absolute basics of " +"Python, to web development and web scraping, to data visualization, and " +"beyond." msgstr "" +"Real Python에서는 매주 무료로 제공되는 깊이 있는 튜토리얼을 통해 파이썬의 모든 것을 처음부터 배울 수 있습니다. 파이썬의 가장" +" 기초적인 부분부터 웹 개발, 웹 스크래핑, 데이터 시각화 등 그 이상까지 다룹니다." #: ../../intro/news.rst:26 msgid "`Real Python `_" -msgstr "" +msgstr "`Real Python `_" #: ../../intro/news.rst:31 msgid "Planet Python" -msgstr "" +msgstr "Planet Python" #: ../../intro/news.rst:33 -msgid "This is an aggregate of Python news from a growing number of developers." -msgstr "" +msgid "" +"This is an aggregate of Python news from a growing number of developers." +msgstr "점점 늘어나는 개발자들로부터 모은 파이썬 뉴스 모음입니다." #: ../../intro/news.rst:35 msgid "`Planet Python `_" -msgstr "" +msgstr "`Planet Python `_" #: ../../intro/news.rst:40 msgid "/r/python" -msgstr "" +msgstr "/r/python" #: ../../intro/news.rst:42 msgid "" -"/r/python is the Reddit Python community where users contribute and vote " -"on Python-related news." -msgstr "" +"/r/python is the Reddit Python community where users contribute and vote on " +"Python-related news." +msgstr "/r/python은 사용자가 파이썬 관련 뉴스에 기여하고 투표하는 Reddit 파이썬 커뮤니티입니다." #: ../../intro/news.rst:45 msgid "`/r/python `_" -msgstr "" +msgstr "`/r/python `_" #: ../../intro/news.rst:50 msgid "Talk Python Podcast" -msgstr "" +msgstr "Talk Python Podcast" #: ../../intro/news.rst:52 msgid "The #1 Python-focused podcast covering the people and ideas in Python." -msgstr "" +msgstr "파이썬의 인물과 아이디어를 다루는 1위 파이썬 중심 팟캐스트입니다." #: ../../intro/news.rst:54 msgid "`Talk Python To Me `_" -msgstr "" +msgstr "`Talk Python To Me `_" #: ../../intro/news.rst:59 msgid "Python Bytes Podcast" -msgstr "" +msgstr "Python Bytes Podcast" #: ../../intro/news.rst:61 msgid "A short-form Python podcast covering recent developer headlines." -msgstr "" +msgstr "최근 개발자 헤드라인을 다루는 짧은 형식의 파이썬 팟캐스트입니다." #: ../../intro/news.rst:63 msgid "`Python Bytes `_" -msgstr "" +msgstr "`Python Bytes `_" #: ../../intro/news.rst:68 msgid "Python Weekly" -msgstr "" +msgstr "Python Weekly" #: ../../intro/news.rst:70 msgid "" -"Python Weekly is a free weekly newsletter featuring curated news, " -"articles, new releases, jobs, etc. related to Python." -msgstr "" +"Python Weekly is a free weekly newsletter featuring curated news, articles, " +"new releases, jobs, etc. related to Python." +msgstr "Python Weekly는 파이썬 관련 뉴스, 글, 새 릴리즈, 채용 등을 큐레이션해서 제공하는 무료 주간 뉴스레터입니다." #: ../../intro/news.rst:73 msgid "`Python Weekly `_" -msgstr "" +msgstr "`Python Weekly `_" #: ../../intro/news.rst:78 msgid "Python News" -msgstr "" +msgstr "Python News" #: ../../intro/news.rst:80 msgid "" "Python News is the news section in the official Python web site " -"(www.python.org). It briefly highlights the news from the Python " -"community." +"(www.python.org). It briefly highlights the news from the Python community." msgstr "" +"Python News는 파이썬 공식 웹사이트(www.python.org)의 뉴스 섹션입니다. 파이썬 커뮤니티의 뉴스를 간략히 소개합니다." #: ../../intro/news.rst:83 msgid "`Python News `_" -msgstr "" +msgstr "`Python News `_" #: ../../intro/news.rst:88 msgid "Import Python Weekly" -msgstr "" +msgstr "Import Python Weekly" #: ../../intro/news.rst:90 msgid "" -"Weekly Python Newsletter containing Python Articles, Projects, Videos, " -"and Tweets delivered in your inbox. Keep Your Python Programming Skills " +"Weekly Python Newsletter containing Python Articles, Projects, Videos, and " +"Tweets delivered in your inbox. Keep Your Python Programming Skills " "Updated." msgstr "" +"파이썬 글, 프로젝트, 동영상, 트윗을 받은편지함으로 배송해주는 주간 파이썬 뉴스레터입니다. 파이썬 프로그래밍 실력을 최신 상태로 " +"유지하세요." #: ../../intro/news.rst:93 msgid "" -"`Import Python Weekly Newsletter " -"`_" +"`Import Python Weekly Newsletter `_" msgstr "" +"`Import Python Weekly Newsletter `_" #: ../../intro/news.rst:98 msgid "Awesome Python Newsletter" -msgstr "" +msgstr "Awesome Python Newsletter" #: ../../intro/news.rst:100 -msgid "A weekly overview of the most popular Python news, articles, and packages." -msgstr "" +msgid "" +"A weekly overview of the most popular Python news, articles, and packages." +msgstr "가장 인기 있는 파이썬 뉴스, 글, 패키지를 주간으로 정리해서 보여줍니다." #: ../../intro/news.rst:102 msgid "`Awesome Python Newsletter `_" -msgstr "" +msgstr "`Awesome Python Newsletter `_" #~ msgid "" #~ msgstr "" @@ -176,10 +184,8 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Pycoder's Weekly is a free weekly " -#~ "Python newsletter for Python developers " -#~ "by Python developers (Projects, Articles, " -#~ "News, and Jobs)." +#~ "Pycoder's Weekly is a free weekly Python newsletter for Python developers by" +#~ " Python developers (Projects, Articles, News, and Jobs)." #~ msgstr "" #~ msgid "`Pycoder's Weekly `_" @@ -192,15 +198,11 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Weekly Python Newsletter containing Python " -#~ "Articles, Projects, Videos, Tweets delivered" -#~ " in your inbox. Keep Your Python " -#~ "Programming Skills Updated." +#~ "Weekly Python Newsletter containing Python Articles, Projects, Videos, " +#~ "Tweets delivered in your inbox. Keep Your Python Programming Skills " +#~ "Updated." #~ msgstr "" #~ msgid "" -#~ "A weekly overview of the most " -#~ "popular Python news, articles and " -#~ "packages." +#~ "A weekly overview of the most popular Python news, articles and packages." #~ msgstr "" - From d37cd05d3ef39f962334f39e5be5fe15c80d221b Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:18:07 +0900 Subject: [PATCH 105/117] Translate scenarios/scientific.po (34 entries: NumPy/SciPy/Pandas ecosystem) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/scenarios/scientific.mo | Bin 12907 -> 13863 bytes .../ko/LC_MESSAGES/scenarios/scientific.po | 434 +++++++++--------- 2 files changed, 218 insertions(+), 216 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.mo b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.mo index 84190ed21c64dc0466f43ec367f9fe4c08dcb9d3..f0dd77e7156bd9f6e6f305d6bd9d1bf8bd2e7ab5 100644 GIT binary patch literal 13863 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 delta 435 zcmX}mze@sP90u@5v0t||g=G|{29&v z5IEJ?KhV&h5meCH&~qtGpYQX$yx;e|v)En zVV(x*0&VgkY0_UsfnE03RAT=^H~qlZ8t}#(S_jVQ#|C#(BL-a3r!C-z_c9V7GpFQ5 zpw7YE=1=K!eEh?9a#Zzy2M6T?O%rPcT@|ycUZ`mKLa9_&8;zWxwQRHBGL5u&;`|4x zX|%dtBW5)%Z*^qHHFLtg)puK#RCe5MFD=@qf3c?|GU9kt;(}h$Rq4=hdmYD4iwQX{ U6dn7_7~X`A0!gNk=C22T0g=B=dH?_b diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po index 89630118c..58b28f2ed 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/scientific.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,372 +23,374 @@ msgstr "" #: ../../scenarios/scientific.rst:4 msgid "Scientific Applications" -msgstr "" +msgstr "과학 응용" #: ../../scenarios/scientific.rst:11 msgid "Context" -msgstr "" +msgstr "배경" #: ../../scenarios/scientific.rst:13 msgid "" -"Python is frequently used for high-performance scientific applications. " -"It is widely used in academia and scientific projects because it is easy " -"to write and performs well." -msgstr "" +"Python is frequently used for high-performance scientific applications. It " +"is widely used in academia and scientific projects because it is easy to " +"write and performs well." +msgstr "파이썬은 고성능 과학 응용에 자주 사용됩니다. 작성하기 쉽고 성능도 좋아서 학계와 과학 프로젝트에서 널리 사용됩니다." #: ../../scenarios/scientific.rst:17 msgid "" "Due to its high performance nature, scientific computing in Python often " -"utilizes external libraries, typically written in faster languages (like " -"C, or Fortran for matrix operations). The main libraries used are " -"`NumPy`_, `SciPy`_ and `Matplotlib`_. Going into detail about these " -"libraries is beyond the scope of the Python guide. However, a " -"comprehensive introduction to the scientific Python ecosystem can be " -"found in the `Python Scientific Lecture Notes `_." -msgstr "" +"utilizes external libraries, typically written in faster languages (like C, " +"or Fortran for matrix operations). The main libraries used are `NumPy`_, " +"`SciPy`_ and `Matplotlib`_. Going into detail about these libraries is " +"beyond the scope of the Python guide. However, a comprehensive introduction " +"to the scientific Python ecosystem can be found in the `Python Scientific " +"Lecture Notes `_." +msgstr "" +"고성능을 추구하는 특성상, 파이썬에서의 과학 계산은 보통 더 빠른 언어(예: C, 행렬 연산에는 Fortran)로 작성된 외부 " +"라이브러리를 활용하는 경우가 많습니다. 주로 사용되는 라이브러리는 `NumPy`_, `SciPy`_, `Matplotlib`_ 입니다. " +"이 라이브러리들을 자세히 다루는 것은 파이썬 안내서의 범위를 벗어납니다. 그러나 과학용 파이썬 생태계에 대한 포괄적인 소개는 " +"`Python Scientific Lecture Notes `_ 에서 찾을" +" 수 있습니다." #: ../../scenarios/scientific.rst:28 msgid "Tools" -msgstr "" +msgstr "도구" #: ../../scenarios/scientific.rst:31 msgid "IPython" -msgstr "" +msgstr "IPython" #: ../../scenarios/scientific.rst:33 msgid "" "`IPython `_ is an enhanced version of Python " -"interpreter, which provides features of great interest to scientists. The" -" `inline mode` allows graphics and plots to be displayed in the terminal " -"(Qt based version). Moreover, the `notebook` mode supports literate " -"programming and reproducible science generating a web-based Python " -"notebook. This notebook allows you to store chunks of Python code " -"alongside the results and additional comments (HTML, LaTeX, Markdown). " -"The notebook can then be shared and exported in various file formats." -msgstr "" +"interpreter, which provides features of great interest to scientists. The " +"`inline mode` allows graphics and plots to be displayed in the terminal (Qt " +"based version). Moreover, the `notebook` mode supports literate programming " +"and reproducible science generating a web-based Python notebook. This " +"notebook allows you to store chunks of Python code alongside the results and" +" additional comments (HTML, LaTeX, Markdown). The notebook can then be " +"shared and exported in various file formats." +msgstr "" +"`IPython `_ 은 파이썬 인터프리터의 향상된 버전으로, 과학자에게 큰 관심을 끄는 기능을 " +"제공합니다. `인라인 모드(inline mode)` 는 (Qt 기반 버전에서) 그래픽과 플롯을 터미널에 표시할 수 있게 해줍니다. 또한 " +"`노트북(notebook)` 모드는 웹 기반의 파이썬 노트북을 생성하여 문서 중심 프로그래밍과 재현 가능한 과학을 지원합니다. 이 " +"노트북에는 파이썬 코드 조각을 결과 및 추가 설명(HTML, LaTeX, Markdown)과 함께 저장할 수 있습니다. 그런 다음 " +"노트북을 공유하고 다양한 파일 형식으로 내보낼 수 있습니다." #: ../../scenarios/scientific.rst:45 msgid "Libraries" -msgstr "" +msgstr "라이브러리" #: ../../scenarios/scientific.rst:48 msgid "NumPy" -msgstr "" +msgstr "NumPy" #: ../../scenarios/scientific.rst:50 msgid "" -"`NumPy `_ is a low level library written in C " -"(and Fortran) for high level mathematical functions. NumPy cleverly " -"overcomes the problem of running slower algorithms on Python by using " -"multidimensional arrays and functions that operate on arrays. Any " -"algorithm can then be expressed as a function on arrays, allowing the " -"algorithms to be run quickly." +"`NumPy `_ is a low level library written in C (and " +"Fortran) for high level mathematical functions. NumPy cleverly overcomes the" +" problem of running slower algorithms on Python by using multidimensional " +"arrays and functions that operate on arrays. Any algorithm can then be " +"expressed as a function on arrays, allowing the algorithms to be run " +"quickly." msgstr "" +"`NumPy `_ 는 고수준의 수학 함수를 제공하기 위해 C(와 Fortran)로 작성된 " +"저수준 라이브러리입니다. NumPy는 다차원 배열과 배열에서 동작하는 함수를 사용해, 파이썬에서 알고리즘이 더 느리게 실행되는 문제를 " +"영리하게 극복합니다. 그러면 어떤 알고리즘이든 배열에 대한 함수로 표현할 수 있어, 알고리즘을 빠르게 실행할 수 있습니다." #: ../../scenarios/scientific.rst:56 msgid "" -"NumPy is part of the SciPy project, and is released as a separate library" -" so people who only need the basic requirements can use it without " -"installing the rest of SciPy." +"NumPy is part of the SciPy project, and is released as a separate library so" +" people who only need the basic requirements can use it without installing " +"the rest of SciPy." msgstr "" +"NumPy는 SciPy 프로젝트의 일부이며, 기본적인 요구만 필요한 사람이 SciPy의 나머지를 설치하지 않고도 사용할 수 있도록 별도의" +" 라이브러리로 배포됩니다." #: ../../scenarios/scientific.rst:60 msgid "NumPy is compatible with Python versions 2.4 through 2.7.2 and 3.1+." -msgstr "" +msgstr "NumPy는 파이썬 2.4부터 2.7.2까지, 그리고 3.1 이상과 호환됩니다." #: ../../scenarios/scientific.rst:63 msgid "Numba" -msgstr "" +msgstr "Numba" #: ../../scenarios/scientific.rst:65 msgid "" -"`Numba `_ is a NumPy aware Python compiler " -"(just-in-time (JIT) specializing compiler) which compiles annotated " -"Python (and NumPy) code to LLVM (Low Level Virtual Machine) through " -"special decorators. Briefly, Numba uses a system that compiles Python " -"code with LLVM to code which can be natively executed at runtime." +"`Numba `_ is a NumPy aware Python compiler (just-" +"in-time (JIT) specializing compiler) which compiles annotated Python (and " +"NumPy) code to LLVM (Low Level Virtual Machine) through special decorators. " +"Briefly, Numba uses a system that compiles Python code with LLVM to code " +"which can be natively executed at runtime." msgstr "" +"`Numba `_ 는 NumPy를 인식하는 파이썬 컴파일러(즉시(JIT) 특화 컴파일러)로," +" 특수한 데코레이터를 통해 주석이 달린 파이썬(및 NumPy) 코드를 LLVM(Low Level Virtual Machine)으로 " +"컴파일합니다. 간단히 말해, Numba는 파이썬 코드를 LLVM으로 컴파일하여 런타임에 네이티브로 실행할 수 있는 코드로 만드는 시스템을" +" 사용합니다." #: ../../scenarios/scientific.rst:72 msgid "SciPy" -msgstr "" +msgstr "SciPy" #: ../../scenarios/scientific.rst:74 msgid "" "`SciPy `_ is a library that uses NumPy for more " -"mathematical functions. SciPy uses NumPy arrays as the basic data " -"structure, and comes with modules for various commonly used tasks in " -"scientific programming, including linear algebra, integration (calculus)," -" ordinary differential equation solving, and signal processing." +"mathematical functions. SciPy uses NumPy arrays as the basic data structure," +" and comes with modules for various commonly used tasks in scientific " +"programming, including linear algebra, integration (calculus), ordinary " +"differential equation solving, and signal processing." msgstr "" +"`SciPy `_ 는 더 많은 수학 함수를 위해 NumPy를 사용하는 라이브러리입니다. SciPy는 " +"NumPy 배열을 기본 데이터 구조로 사용하며, 선형 대수, 적분(미적분), 상미분방정식 풀이, 신호 처리 등 과학 프로그래밍에서 흔히 " +"사용되는 다양한 작업을 위한 모듈과 함께 제공됩니다." #: ../../scenarios/scientific.rst:81 msgid "Matplotlib" -msgstr "" +msgstr "Matplotlib" #: ../../scenarios/scientific.rst:83 msgid "" -"`Matplotlib `_ is a flexible plotting" -" library for creating interactive 2D and 3D plots that can also be saved " -"as manuscript-quality figures. The API in many ways reflects that of " -"`MATLAB `_, easing transition " -"of MATLAB users to Python. Many examples, along with the source code to " -"recreate them, are available in the `matplotlib gallery " +"`Matplotlib `_ is a flexible plotting " +"library for creating interactive 2D and 3D plots that can also be saved as " +"manuscript-quality figures. The API in many ways reflects that of `MATLAB " +"`_, easing transition of MATLAB " +"users to Python. Many examples, along with the source code to recreate them," +" are available in the `matplotlib gallery " "`_." msgstr "" +"`Matplotlib `_ 은 인터랙티브한 2D 및 3D 플롯을 생성할 " +"수 있는 유연한 플로팅 라이브러리이며, 출판물 수준의 그림으로 저장할 수도 있습니다. API는 여러 면에서 `MATLAB " +"`_ 을 반영하고 있어, MATLAB 사용자가 파이썬으로 " +"옮겨오기 쉽게 해줍니다. `matplotlib 갤러리 " +"`_ 에서 많은 예시와 그것을 재현할 수 있는 소스" +" 코드를 함께 볼 수 있습니다." #: ../../scenarios/scientific.rst:92 msgid "Pandas" -msgstr "" +msgstr "Pandas" #: ../../scenarios/scientific.rst:94 msgid "" -"`Pandas `_ is a data manipulation library " -"based on NumPy which provides many useful functions for accessing, " -"indexing, merging, and grouping data easily. The main data structure " -"(DataFrame) is close to what could be found in the R statistical package;" -" that is, heterogeneous data tables with name indexing, time series " -"operations, and auto-alignment of data." +"`Pandas `_ is a data manipulation library based " +"on NumPy which provides many useful functions for accessing, indexing, " +"merging, and grouping data easily. The main data structure (DataFrame) is " +"close to what could be found in the R statistical package; that is, " +"heterogeneous data tables with name indexing, time series operations, and " +"auto-alignment of data." msgstr "" +"`Pandas `_ 는 NumPy를 기반으로 한 데이터 조작 라이브러리로, 데이터 접근," +" 인덱싱, 병합, 그룹화 등을 쉽게 할 수 있는 유용한 함수를 많이 제공합니다. 주요 데이터 구조인 DataFrame은 R 통계 " +"패키지에서 찾을 수 있는 것과 가깝습니다. 즉, 이름 인덱싱, 시계열 연산, 데이터 자동 정렬 등을 지원하는 이종 데이터 테이블입니다." #: ../../scenarios/scientific.rst:102 msgid "xarray" -msgstr "" +msgstr "xarray" #: ../../scenarios/scientific.rst:104 msgid "" -"`xarray `_ is similar to Pandas, but" -" it is intended for wrapping multidimensional scientific data. By " -"labelling the data with dimensions, coordinates, and attributes, it makes" -" complex multidimensional operations clearer and more intuitive. It also " -"wraps matplotlib for quick plotting, and can apply most operations in " -"parallel using `dask `_." -msgstr "" +"`xarray `_ is similar to Pandas, but it" +" is intended for wrapping multidimensional scientific data. By labelling the" +" data with dimensions, coordinates, and attributes, it makes complex " +"multidimensional operations clearer and more intuitive. It also wraps " +"matplotlib for quick plotting, and can apply most operations in parallel " +"using `dask `_." +msgstr "" +"`xarray `_ 는 Pandas와 비슷하지만, 다차원 과학 데이터를" +" 감싸기 위한 목적의 라이브러리입니다. 데이터에 차원, 좌표, 어트리뷰트로 라벨을 붙여, 복잡한 다차원 연산을 더 명확하고 직관적으로 " +"만들어줍니다. 또한 빠른 플로팅을 위해 matplotlib을 래핑하며, `dask " +"`_ 를 사용하여 대부분의 연산을 병렬로 처리할 수 " +"있습니다." #: ../../scenarios/scientific.rst:113 msgid "Rpy2" -msgstr "" +msgstr "Rpy2" #: ../../scenarios/scientific.rst:115 msgid "" "`Rpy2 `_ is a Python binding for the R " -"statistical package allowing the execution of R functions from Python and" -" passing data back and forth between the two environments. Rpy2 is the " -"object oriented implementation of the `Rpy " -"`_ bindings." +"statistical package allowing the execution of R functions from Python and " +"passing data back and forth between the two environments. Rpy2 is the object" +" oriented implementation of the `Rpy `_" +" bindings." msgstr "" +"`Rpy2 `_ 는 R 통계 패키지를 위한 파이썬 바인딩으로, 파이썬에서 R 함수를 " +"실행하고 두 환경 사이에 데이터를 주고받을 수 있게 해줍니다. Rpy2는 `Rpy " +"`_ 바인딩의 객체지향 구현입니다." #: ../../scenarios/scientific.rst:122 msgid "PsychoPy" -msgstr "" +msgstr "PsychoPy" #: ../../scenarios/scientific.rst:124 msgid "" -"`PsychoPy `_ is a library for cognitive " -"scientists allowing the creation of cognitive psychology and neuroscience" -" experiments. The library handles presentation of stimuli, scripting of " -"experimental design, and data collection." +"`PsychoPy `_ is a library for cognitive scientists" +" allowing the creation of cognitive psychology and neuroscience experiments." +" The library handles presentation of stimuli, scripting of experimental " +"design, and data collection." msgstr "" +"`PsychoPy `_ 는 인지 과학자를 위한 라이브러리로, 인지 심리학과 신경과학 실험을" +" 만들 수 있게 해줍니다. 이 라이브러리는 자극 제시, 실험 설계 스크립팅, 데이터 수집을 다룹니다." #: ../../scenarios/scientific.rst:132 msgid "Resources" -msgstr "" +msgstr "리소스" #: ../../scenarios/scientific.rst:134 msgid "" -"Installation of scientific Python packages can be troublesome, as many of" -" these packages are implemented as Python C extensions which need to be " +"Installation of scientific Python packages can be troublesome, as many of " +"these packages are implemented as Python C extensions which need to be " "compiled. This section lists various so-called scientific Python " -"distributions which provide precompiled and easy-to-install collections " -"of scientific Python packages." +"distributions which provide precompiled and easy-to-install collections of " +"scientific Python packages." msgstr "" +"과학용 파이썬 패키지의 설치는 번거로울 수 있습니다. 많은 패키지가 컴파일이 필요한 파이썬 C 확장으로 구현되어 있기 때문입니다. 이 " +"섹션에서는 미리 컴파일되고 쉽게 설치할 수 있는 과학용 파이썬 패키지 모음을 제공하는 이른바 과학용 파이썬 배포판들을 나열합니다." #: ../../scenarios/scientific.rst:141 msgid "Unofficial Windows Binaries for Python Extension Packages" -msgstr "" +msgstr "파이썬 확장 패키지를 위한 비공식 Windows 바이너리" #: ../../scenarios/scientific.rst:143 msgid "" "Many people who do scientific computing are on Windows, yet many of the " -"scientific computing packages are notoriously difficult to build and " -"install on this platform. `Christoph Gohlke " -"`_, however, has compiled a " -"list of Windows binaries for many useful Python packages. The list of " -"packages has grown from a mainly scientific Python resource to a more " -"general list. If you're on Windows, you may want to check it out." -msgstr "" +"scientific computing packages are notoriously difficult to build and install" +" on this platform. `Christoph Gohlke " +"`_, however, has compiled a list" +" of Windows binaries for many useful Python packages. The list of packages " +"has grown from a mainly scientific Python resource to a more general list. " +"If you're on Windows, you may want to check it out." +msgstr "" +"과학 계산을 하는 사람 중 많은 수가 Windows를 사용하지만, 많은 과학 계산 패키지가 이 플랫폼에서 빌드하고 설치하기로 악명이 " +"높습니다. 그러나 `Christoph Gohlke `_ 가" +" 많은 유용한 파이썬 패키지의 Windows 바이너리 목록을 정리해두었습니다. 이 패키지 목록은 주로 과학용 파이썬 리소스에서 시작해 더" +" 일반적인 목록으로 성장했습니다. Windows를 사용한다면 한 번 확인해 보세요." #: ../../scenarios/scientific.rst:152 msgid "Anaconda" -msgstr "" +msgstr "Anaconda" #: ../../scenarios/scientific.rst:154 msgid "" -"The `Anaconda Python Distribution `_ includes " -"all the common scientific Python packages as well as many packages " -"related to data analytics and big data. Anaconda itself is free, and a " -"number of proprietary add-ons are available for a fee. Free licenses for " -"the add-ons are available for academics and researchers." +"The `Anaconda Python Distribution `_ includes all" +" the common scientific Python packages as well as many packages related to " +"data analytics and big data. Anaconda itself is free, and a number of " +"proprietary add-ons are available for a fee. Free licenses for the add-ons " +"are available for academics and researchers." msgstr "" +"`Anaconda Python Distribution `_ 은 일반적인 과학용 파이썬 " +"패키지를 모두 포함하고 있을 뿐 아니라, 데이터 분석과 빅데이터 관련 패키지도 많이 포함합니다. Anaconda 자체는 무료이며, 다수의" +" 상용 애드온이 유료로 제공됩니다. 학계와 연구자에게는 애드온에 대한 무료 라이선스가 제공됩니다." #: ../../scenarios/scientific.rst:161 msgid "Canopy" -msgstr "" +msgstr "Canopy" #: ../../scenarios/scientific.rst:163 msgid "" -"`Canopy `_ is another " -"scientific Python distribution, produced by `Enthought " -"`_. A limited 'Canopy Express' variant is " -"available for free, but Enthought charges for the full distribution. Free" -" licenses are available for academics." +"`Canopy `_ is another scientific " +"Python distribution, produced by `Enthought `_. " +"A limited 'Canopy Express' variant is available for free, but Enthought " +"charges for the full distribution. Free licenses are available for " +"academics." msgstr "" +"`Canopy `_ 는 또 다른 과학용 파이썬 배포판으로, " +"`Enthought `_ 가 만들었습니다. 제한된 'Canopy Express' 버전은" +" 무료로 제공되지만, Enthought는 전체 배포판에 대해 비용을 부과합니다. 학계에는 무료 라이선스가 제공됩니다." #~ msgid "" #~ msgstr "" #~ msgid "" -#~ "Due to its high performance nature, " -#~ "scientific computing in Python often " -#~ "utilizes external libraries, typically written" -#~ " in faster languages (like C, or " -#~ "FORTRAN for matrix operations). The main" -#~ " libraries used are `NumPy`_, `SciPy`_ " -#~ "and `Matplotlib`_. Going into detail " -#~ "about these libraries is beyond the " -#~ "scope of the Python guide. However, " -#~ "a comprehensive introduction to the " -#~ "scientific Python ecosystem can be found" -#~ " in the `Python Scientific Lecture " -#~ "Notes `_" +#~ "Due to its high performance nature, scientific computing in Python often " +#~ "utilizes external libraries, typically written in faster languages (like C, " +#~ "or FORTRAN for matrix operations). The main libraries used are `NumPy`_, " +#~ "`SciPy`_ and `Matplotlib`_. Going into detail about these libraries is " +#~ "beyond the scope of the Python guide. However, a comprehensive introduction " +#~ "to the scientific Python ecosystem can be found in the `Python Scientific " +#~ "Lecture Notes `_" #~ msgstr "" #~ msgid "" -#~ "`IPython `_ is an " -#~ "enhanced version of Python interpreter, " -#~ "which provides features of great " -#~ "interest to scientists. The `inline " -#~ "mode` allows graphics and plots to " -#~ "be displayed in the terminal (Qt " -#~ "based version). Moreover, the `notebook` " -#~ "mode supports literate programming and " -#~ "reproducible science generating a web-" -#~ "based Python notebook. This notebook " -#~ "allows you to store chunks of " -#~ "Python code along side the results " -#~ "and additional comments (HTML, LaTeX, " -#~ "Markdown). The notebook can then be " -#~ "shared and exported in various file " -#~ "formats." +#~ "`IPython `_ is an enhanced version of Python " +#~ "interpreter, which provides features of great interest to scientists. The " +#~ "`inline mode` allows graphics and plots to be displayed in the terminal (Qt " +#~ "based version). Moreover, the `notebook` mode supports literate programming " +#~ "and reproducible science generating a web-based Python notebook. This " +#~ "notebook allows you to store chunks of Python code along side the results " +#~ "and additional comments (HTML, LaTeX, Markdown). The notebook can then be " +#~ "shared and exported in various file formats." #~ msgstr "" #~ msgid "" -#~ "`NumPy `_ is a low" -#~ " level library written in C (and " -#~ "FORTRAN) for high level mathematical " -#~ "functions. NumPy cleverly overcomes the " -#~ "problem of running slower algorithms on" -#~ " Python by using multidimensional arrays" -#~ " and functions that operate on " -#~ "arrays. Any algorithm can then be " -#~ "expressed as a function on arrays, " -#~ "allowing the algorithms to be run " +#~ "`NumPy `_ is a low level library written in C (and " +#~ "FORTRAN) for high level mathematical functions. NumPy cleverly overcomes the" +#~ " problem of running slower algorithms on Python by using multidimensional " +#~ "arrays and functions that operate on arrays. Any algorithm can then be " +#~ "expressed as a function on arrays, allowing the algorithms to be run " #~ "quickly." #~ msgstr "" -#~ msgid "NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." +#~ msgid "" +#~ "NumPy is compatible with Python versions 2.4 through to 2.7.2 and 3.1+." #~ msgstr "" #~ msgid "" -#~ "`SciPy `_ is a library " -#~ "that uses NumPy for more mathematical" -#~ " functions. SciPy uses NumPy arrays " -#~ "as the basic data structure, and " -#~ "comes with modules for various commonly" -#~ " used tasks in scientific programming, " -#~ "including linear algebra, integration " -#~ "(calculus), ordinary differential equation " -#~ "solving and signal processing." +#~ "`SciPy `_ is a library that uses NumPy for more " +#~ "mathematical functions. SciPy uses NumPy arrays as the basic data structure," +#~ " and comes with modules for various commonly used tasks in scientific " +#~ "programming, including linear algebra, integration (calculus), ordinary " +#~ "differential equation solving and signal processing." #~ msgstr "" #~ msgid "" -#~ "`Matplotlib `_ is " -#~ "a flexible plotting library for creating" -#~ " interactive 2D and 3D plots that " -#~ "can also be saved as manuscript-" -#~ "quality figures. The API in many " -#~ "ways reflects that of `MATLAB " -#~ "`_, easing " -#~ "transition of MATLAB users to Python." -#~ " Many examples, along with the source" -#~ " code to re-create them, are " -#~ "available in the `matplotlib gallery " +#~ "`Matplotlib `_ is a flexible plotting " +#~ "library for creating interactive 2D and 3D plots that can also be saved as " +#~ "manuscript-quality figures. The API in many ways reflects that of `MATLAB " +#~ "`_, easing transition of MATLAB " +#~ "users to Python. Many examples, along with the source code to re-create " +#~ "them, are available in the `matplotlib gallery " #~ "`_." #~ msgstr "" #~ msgid "" -#~ "`Pandas `_ is data " -#~ "manipulation library based on Numpy " -#~ "which provides many useful functions for" -#~ " accessing, indexing, merging and grouping" -#~ " data easily. The main data structure" -#~ " (DataFrame) is close to what could" -#~ " be found in the R statistical " -#~ "package; that is, heterogeneous data " -#~ "tables with name indexing, time series" -#~ " operations and auto-alignment of " -#~ "data." +#~ "`Pandas `_ is data manipulation library based on " +#~ "Numpy which provides many useful functions for accessing, indexing, merging " +#~ "and grouping data easily. The main data structure (DataFrame) is close to " +#~ "what could be found in the R statistical package; that is, heterogeneous " +#~ "data tables with name indexing, time series operations and auto-alignment of" +#~ " data." #~ msgstr "" #~ msgid "" -#~ "`PsychoPy `_ is a " -#~ "library for cognitive scientists allowing " -#~ "the creation of cognitive psychology and" -#~ " neuroscience experiments. The library " -#~ "handles presentation of stimuli, scripting " -#~ "of experimental design and data " -#~ "collection." +#~ "`PsychoPy `_ is a library for cognitive scientists" +#~ " allowing the creation of cognitive psychology and neuroscience experiments." +#~ " The library handles presentation of stimuli, scripting of experimental " +#~ "design and data collection." #~ msgstr "" #~ msgid "" -#~ "Many people who do scientific computing" -#~ " are on Windows, yet many of " -#~ "the scientific computing packages are " -#~ "notoriously difficult to build and " -#~ "install on this platform. `Christoph " -#~ "Gohlke `_ " -#~ "however, has compiled a list of " -#~ "Windows binaries for many useful Python" -#~ " packages. The list of packages has" -#~ " grown from a mainly scientific " -#~ "Python resource to a more general " -#~ "list. If you're on Windows, you " -#~ "may want to check it out." +#~ "Many people who do scientific computing are on Windows, yet many of the " +#~ "scientific computing packages are notoriously difficult to build and install" +#~ " on this platform. `Christoph Gohlke " +#~ "`_ however, has compiled a list " +#~ "of Windows binaries for many useful Python packages. The list of packages " +#~ "has grown from a mainly scientific Python resource to a more general list. " +#~ "If you're on Windows, you may want to check it out." #~ msgstr "" #~ msgid "" -#~ "`Continuum Analytics `_ offers" -#~ " the `Anaconda Python Distribution " -#~ "`_ which " -#~ "includes all the common scientific " -#~ "Python packages as well as many " -#~ "packages related to data analytics and" -#~ " big data. Anaconda itself is free," -#~ " and Continuum sells a number of " -#~ "proprietary add-ons. Free licenses for" -#~ " the add-ons are available for " -#~ "academics and researchers." +#~ "`Continuum Analytics `_ offers the `Anaconda Python " +#~ "Distribution `_ which includes " +#~ "all the common scientific Python packages as well as many packages related " +#~ "to data analytics and big data. Anaconda itself is free, and Continuum sells" +#~ " a number of proprietary add-ons. Free licenses for the add-ons are " +#~ "available for academics and researchers." #~ msgstr "" #~ msgid "" -#~ "`Canopy `_ is" -#~ " another scientific Python distribution, " -#~ "produced by `Enthought " -#~ "`_. A limited 'Canopy" -#~ " Express' variant is available for " -#~ "free, but Enthought charges for the " -#~ "full distribution. Free licenses are " -#~ "available for academics." +#~ "`Canopy `_ is another scientific" +#~ " Python distribution, produced by `Enthought `_." +#~ " A limited 'Canopy Express' variant is available for free, but Enthought " +#~ "charges for the full distribution. Free licenses are available for " +#~ "academics." #~ msgstr "" - From 9feca5c3201be3635658fa15847bf26050519517 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:18:57 +0900 Subject: [PATCH 106/117] Translate intro/community.po (36 entries: BDFL, PSF, PEPs, conferences) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/intro/community.mo | Bin 6219 -> 6698 bytes docs/locale/ko/LC_MESSAGES/intro/community.po | 128 ++++++++++-------- 2 files changed, 73 insertions(+), 55 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/intro/community.mo b/docs/locale/ko/LC_MESSAGES/intro/community.mo index e97360b07250c5749e5fba4f99622675eb089148..bdb6022c397320c6524a95b58ac31c0808ce0540 100644 GIT binary patch delta 3126 zcmaJ@-EUK69DeyqWPAuJNQjBAQOTCfh8YQ1kq`NdP8^^YhLCK*xq(}YY%_9W+wBbN z*0C*JSz$fpjCJd_9Hd*%##!jDy!6r={{!{B@450yuY7)Q+tUt+iRKySyyy4v{GQ+Q z_SgOM@8wRe3td{rSb8gCI~imDZewfyaG%B&jJ4d zZlw1wGS&|K6xaY<1|9_d32X)O9gIbQw}3~1FYII?_6q(ui|o6Bmw_9A-M|>|d!PZ_ z^iuKt3~(?0y;{QGOZYeN13cgUGGmC%J_e#Eb_w_kupRgpupY_$z}>qT`wVz~7uwkk z1}5>K6Ax@uL6z-$m9b-Z{xz@{nB9}Vw*I%8(_aRA0&N#tg8_cLJ-`p&?DDm=2aW}M zx;uiwZ+usRokwaKTLNu8Ep4sueBRp9>F15d&zw#Y`f zd@?H*GqOKfK63~sydazo_JyTh;7$%;iFnG#@QpiE5chL7^JGm5{6s9fH)8!=T{&KjFPM&UL_{7O;oCp|*)&mP6kxQz=>`DVdFG$_4 z=OQ^mq2-f|_&I|(?qCkZa%pH{&~y_9{z{0vC8i5rEnfAqFDfQe@}9*VJ0}LFiJIOd zca}^ysZk%L>O%?d6R%+>4>m!EF)Kz=+#S;>l4gU<=ce+$TQj(|LBNc7WXrqZ$~>tR z5xX3A6Cl4lyJG9AJ|pGim)z%+M{h+oCgKJ^({uH!ApfoR4yO%<3CP( z*T&_>*FxYqJt9_A7vO{54;rf0w23!$=#Go!sF+zT&#LKE6PF8`+oy9m5pyG^I~G%H z=4iq+=zC){8R$gnG1Y1At{hk@e(z^;ssNGEgivQ4HHe5zCTEN7t(hpJSNI?C;@394 z4n5LdBvw(G^wd)=csyS$&hoL%DN{bo-O-fHgo}(SLh;a9T;;MCI(b+%?h2j7l$dTo z-my4I|8WlE4RL27Cs&eUE{Ec86QS-cLrkKTh_2LEz>Yv3&QDMIvBnJSR1?~VD?PA!LNpgwhU#&q&%c?^_T zr86`nuihlKid8RWB`GFYy|6URsREMF*2Brj)*u~-NI*xZth%?ViPK8JN7hJ*lq5#i zexh{v$aa<uz+MyPrp8}3?2;1@lj)?$4RLwLhIZ7D6EUPzl;tfqX_G0EfY70#(QJC*dj=eB zFeC4b;w>Gek}-aAWxGn?Zb%tUDa|Z2{xqH10+>-V%!cK}NGY7Oev(;;O4%_D+1noG zCN#QJv=ps6bm-W)1+uZyVuESd^^eMgvha^kI_ing&uWV|Q$ut4qJZg=o52}HER2A4 zq;zmkghMJ`mZ*8H$u*KxmNjmQ`(~Mg(2!Y?N3pnBS{_)k95g8$rK-3t z$;(L57{E82fcU^#Vg>1*NfaQ}5-X4!##AAOOAt8zkZhu=rma&eC8O>@}bXyE9;MRyw?t1G)IflgEK{O=F;>LU2_*iq(#nYaN z!IUU^A|^4tyoD|hXHWc-8h>bQ|K2JQR~1^k$4a0@yTQ-}u8qo}ryZo48{JaG=vHZE z<-`hi@_8p8%F~8C8zjF3S*tnB&%#?&m5G#l8&^4A5H(W;C5UW98l#oq)bjsClSxy| zpq6M-4CCHTM|Z&RINVcahKe^%{M?oUiWF%@Axd&HWaH1ja3I5Zw_>>D(WRW2 zrOTkm9H=+2$|zXGam}FswLi)nv<2MF>QiqQLt;2V9fP4N5*=$)ERHF&FaMIL@{ep3 zzm{-4W5FRyWR{aTmTap? l=8m23i=dT~A8|Kg!41id^#U1@?9-iGgmz>OqO1G@{11iu==1;p delta 451 zcmX}oJxfAS7{Kx8hSM$6(j0`~)({aXDh*|7N@^MR+KU#{b|Vq%>MhNwNSYcO8iSUm zS_&Nc2n|6?W8a{mEgB-|e+ztpEpH?S@e`dwDz~xF zg9mtw&iXsjL?H;G51o9NLBkAELblO)Knw5i6kjpw6PZJ|pS@`K$0^F>oWvrY42jI( zBYvS0U=u&|9q8`%yr`Z0x~^-*jFHn4IU`fh)0u2`Emta~RNZV;+h(;A*Y@oHAXKiH zbtj`GbUkg=!gjNoQdg{Y)3ic)yIF6=wZ{H$*h)rcwZCaHq8bGw7uu*aTQ$28*P`Kw UI&U`)D;JmUO;?PlYxTs`AAeU(^Z)<= diff --git a/docs/locale/ko/LC_MESSAGES/intro/community.po b/docs/locale/ko/LC_MESSAGES/intro/community.po index 374e0d312..b096eb1bb 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/community.po +++ b/docs/locale/ko/LC_MESSAGES/intro/community.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,177 +23,195 @@ msgstr "" #: ../../intro/community.rst:6 msgid "The Community" -msgstr "" +msgstr "커뮤니티" #: ../../intro/community.rst:13 msgid "BDFL" -msgstr "" +msgstr "BDFL" #: ../../intro/community.rst:15 msgid "" -"Guido van Rossum, the creator of Python, is often referred to as the BDFL" -" — the Benevolent Dictator For Life." +"Guido van Rossum, the creator of Python, is often referred to as the BDFL — " +"the Benevolent Dictator For Life." msgstr "" +"파이썬을 만든 Guido van Rossum은 종종 BDFL(Benevolent Dictator For Life, 자비로운 종신 " +"독재자)로 불립니다." #: ../../intro/community.rst:21 msgid "Python Software Foundation" -msgstr "" +msgstr "Python Software Foundation" #: ../../intro/community.rst:24 msgid "" -"The mission of the Python Software Foundation is to promote, protect, and" -" advance the Python programming language, and to support and facilitate " -"the growth of a diverse and international community of Python " -"programmers." +"The mission of the Python Software Foundation is to promote, protect, and " +"advance the Python programming language, and to support and facilitate the " +"growth of a diverse and international community of Python programmers." msgstr "" +"Python Software Foundation의 사명은 파이썬 프로그래밍 언어를 알리고 보호하며 발전시키고, 다양하고 국제적인 파이썬 " +"프로그래머 커뮤니티의 성장을 지원하고 촉진하는 것입니다." #: ../../intro/community.rst:28 msgid "`Learn More about the PSF `_." -msgstr "" +msgstr "`PSF에 대해 더 알아보기 `_." #: ../../intro/community.rst:33 msgid "PEPs" -msgstr "" +msgstr "PEP" #: ../../intro/community.rst:35 msgid "" "PEPs are *Python Enhancement Proposals*. They describe changes to Python " "itself, or the standards around it." msgstr "" +"PEP는 *Python Enhancement Proposals* 의 약자입니다. 파이썬 자체나 그 주변 표준에 대한 변경 사항을 " +"설명합니다." #: ../../intro/community.rst:38 msgid "There are three different types of PEPs (as defined by :pep:`1`):" -msgstr "" +msgstr "(:pep:`1` 에서 정의된 대로) PEP에는 세 가지 종류가 있습니다:" #: ../../intro/community.rst:41 msgid "**Standards**" -msgstr "" +msgstr "**Standards**" #: ../../intro/community.rst:41 msgid "Describes a new feature or implementation." -msgstr "" +msgstr "새로운 기능이나 구현을 설명합니다." #: ../../intro/community.rst:45 msgid "**Informational**" -msgstr "" +msgstr "**Informational**" #: ../../intro/community.rst:44 msgid "" "Describes a design issue, general guidelines, or information to the " "community." -msgstr "" +msgstr "설계 이슈, 일반적인 가이드라인, 또는 커뮤니티에 전달할 정보를 설명합니다." #: ../../intro/community.rst:49 msgid "**Process**" -msgstr "" +msgstr "**Process**" #: ../../intro/community.rst:48 msgid "Describes a process related to Python." -msgstr "" +msgstr "파이썬과 관련된 프로세스를 설명합니다." #: ../../intro/community.rst:52 msgid "Notable PEPs" -msgstr "" +msgstr "주목할 만한 PEP" #: ../../intro/community.rst:54 msgid "There are a few PEPs that could be considered required reading:" -msgstr "" +msgstr "필독서로 여길 만한 PEP가 몇 가지 있습니다:" #: ../../intro/community.rst:57 msgid ":pep:`8`: The Python Style Guide." -msgstr "" +msgstr ":pep:`8`: 파이썬 스타일 가이드." #: ../../intro/community.rst:57 msgid "Read this. All of it. Follow it." -msgstr "" +msgstr "이것을 읽으세요. 전부 다. 그리고 따르세요." #: ../../intro/community.rst:60 msgid ":pep:`20`: The Zen of Python." -msgstr "" +msgstr ":pep:`20`: 파이썬의 선(禪)." #: ../../intro/community.rst:60 -msgid "A list of 19 statements that briefly explain the philosophy behind Python." -msgstr "" +msgid "" +"A list of 19 statements that briefly explain the philosophy behind Python." +msgstr "파이썬의 철학을 간략히 설명하는 19개의 문장 목록입니다." #: ../../intro/community.rst:64 msgid ":pep:`257`: Docstring Conventions." -msgstr "" +msgstr ":pep:`257`: 독스트링 컨벤션." #: ../../intro/community.rst:63 msgid "" "Gives guidelines for semantics and conventions associated with Python " "docstrings." -msgstr "" +msgstr "파이썬 독스트링과 관련된 의미와 컨벤션에 대한 가이드라인을 제공합니다." #: ../../intro/community.rst:66 -msgid "You can read more at `The PEP Index `_." -msgstr "" +msgid "" +"You can read more at `The PEP Index `_." +msgstr "더 자세한 내용은 `PEP 인덱스 `_ 에서 읽어볼 수 있습니다." #: ../../intro/community.rst:69 msgid "Submitting a PEP" -msgstr "" +msgstr "PEP 제출하기" #: ../../intro/community.rst:71 msgid "" -"PEPs are peer-reviewed and accepted/rejected after much discussion. " -"Anyone can write and submit a PEP for review." +"PEPs are peer-reviewed and accepted/rejected after much discussion. Anyone " +"can write and submit a PEP for review." msgstr "" +"PEP는 피어 리뷰를 거치며 많은 토론 끝에 채택 또는 거부됩니다. 누구나 PEP를 작성하여 리뷰를 위해 제출할 수 있습니다." #: ../../intro/community.rst:74 msgid "Here's an overview of the PEP acceptance workflow:" -msgstr "" +msgstr "PEP 채택 워크플로우의 개요는 다음과 같습니다:" #: ../../intro/community.rst:81 msgid "Python Conferences" -msgstr "" +msgstr "파이썬 컨퍼런스" #: ../../intro/community.rst:83 msgid "" -"The major events for the Python community are developer conferences. The " -"two most notable conferences are PyCon, which is held in the US, and its " +"The major events for the Python community are developer conferences. The two" +" most notable conferences are PyCon, which is held in the US, and its " "European sibling, EuroPython." msgstr "" +"파이썬 커뮤니티의 주요 이벤트는 개발자 컨퍼런스입니다. 가장 주목할 만한 두 컨퍼런스는 미국에서 열리는 PyCon과 유럽 형제격인 " +"EuroPython입니다." #: ../../intro/community.rst:87 msgid "" "A comprehensive list of conferences is maintained at `pycon.org " "`_." -msgstr "" +msgstr "컨퍼런스의 포괄적인 목록은 `pycon.org `_ 에서 관리됩니다." #: ../../intro/community.rst:92 msgid "Python User Groups" -msgstr "" +msgstr "파이썬 사용자 그룹" #: ../../intro/community.rst:94 msgid "" -"User Groups are where a bunch of Python developers meet to present or " -"talk about Python topics of interest. A list of local user groups is " -"maintained at the `Python Software Foundation Wiki " +"User Groups are where a bunch of Python developers meet to present or talk " +"about Python topics of interest. A list of local user groups is maintained " +"at the `Python Software Foundation Wiki " "`_." msgstr "" +"사용자 그룹은 여러 파이썬 개발자가 모여 관심 있는 파이썬 주제를 발표하거나 이야기하는 자리입니다. 지역 사용자 그룹 목록은 " +"`Python Software Foundation Wiki " +"`_ 에서 관리됩니다." #: ../../intro/community.rst:101 msgid "Online Communities" -msgstr "" +msgstr "온라인 커뮤니티" #: ../../intro/community.rst:103 msgid "" -"`PythonistaCafe `_ is an invite-only, " -"online community of Python and software development enthusiasts helping " -"each other succeed and grow. Think of it as a club of mutual improvement " -"for Pythonistas where a broad range of programming questions, career " -"advice, and other topics are discussed every day." +"`PythonistaCafe `_ is an invite-only, online" +" community of Python and software development enthusiasts helping each other" +" succeed and grow. Think of it as a club of mutual improvement for " +"Pythonistas where a broad range of programming questions, career advice, and" +" other topics are discussed every day." msgstr "" +"`PythonistaCafe `_ 는 초대 전용 온라인 커뮤니티로, 파이썬과 " +"소프트웨어 개발 애호가들이 서로의 성공과 성장을 돕는 곳입니다. 광범위한 프로그래밍 질문, 커리어 조언, 기타 주제가 매일 논의되는 " +"파이썬 사용자(Pythonista)를 위한 상호 발전 클럽이라고 생각하면 됩니다." #: ../../intro/community.rst:111 msgid "Python Job Boards" -msgstr "" +msgstr "파이썬 채용 게시판" #: ../../intro/community.rst:113 msgid "" -"`Python Jobs HQ `_ is a Python job board, " -"by Python Developers for Python Developers. The site aggregates Python " -"job postings from across the web and also allows employers to post Python" -" job openings directly on the site." -msgstr "" - +"`Python Jobs HQ `_ is a Python job board, by " +"Python Developers for Python Developers. The site aggregates Python job " +"postings from across the web and also allows employers to post Python job " +"openings directly on the site." +msgstr "" +"`Python Jobs HQ `_ 는 파이썬 개발자가 파이썬 개발자를 위해 만든 " +"파이썬 채용 게시판입니다. 이 사이트는 웹 곳곳의 파이썬 채용 공고를 모으는 한편, 고용주가 직접 사이트에 파이썬 채용 공고를 올릴 수도" +" 있게 해줍니다." From 4167b3abe8a0b15f978524b8e9654981834f9d24 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:19:40 +0900 Subject: [PATCH 107/117] Translate scenarios/serialization.po (39 entries: repr, CSV, YAML, JSON, XML, Pickle, Protobuf) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/scenarios/serialization.mo | Bin 6889 -> 7390 bytes .../ko/LC_MESSAGES/scenarios/serialization.po | 149 ++++++++++-------- 2 files changed, 82 insertions(+), 67 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo b/docs/locale/ko/LC_MESSAGES/scenarios/serialization.mo index 744b69261d2c7957ae0623f93cbf265cfcaf2b77..3aeb86e4c13e226ffcdc85a3940bed9dad257d90 100644 GIT binary patch delta 3413 zcmai0O-vg{7#*b0L?lYmrltAm&-CX25^-8pl~Nkf&?-q=QA$KoHA*FLi3>~oCm1CJ@H+-x0saj<3arJd z`+%o_gTT|k`@js4HvSAhQDB#WSd;bIr~zNcdkokI%mbeQ-^3>4z`e&A(}7b!4Y>cr zhm0lh5ISLHQjfH0gJvKt{0Z2v`b2%~hQ(-O43maLvXsA`va#`n3^e8uP-x8UeOl*n81UF+C*K{tI zX60I@e9-!tLNUW(8JnayRt+&8=Y=%`8{=I}Me#C$pw;|4h&3ZZK@nPVaWOl?<wt1w|iX;L649%k7`?O&)^ zl3R6F4o=qf4tWkkmBv)aMN-6!MV#iaes_jKvuLB-#rlT4I|G)A!O;R{JZ4TLh`s_o zC(;fzGOf$hgR{cVnAAt0rxjfA`zwlpQ@vsgGvB^uMRlt{q{ z5Z5TM2mRK5@RrtE|UbnyA(brSs4pY~M zUADCAT0O&l&$W7o7`8*AP32KfL!>G6RbJ&Vo|AVnGO1Gz{vPzZ$Uv1_VtI^1mc-yx zKJr)fr6ZNb+nzaJ)4)61{qC+lelBwB$S^XcvQ1J~C}xd(VVyLD{lK@2S-BEv=p>m8 zLmIqbER@=!k(HT4+DWKj=yrclE@&hyYj?ZzlUURsTXaBRRm{ZY99lO;9Scinux97v zbe6I$v8aM9vm+H5+8g_krwAh>)?zXlfJY^uBgX_7L?-TKxtz;mBfGxx{be03h0ST5 zQYJ<1&@#r)6nR-(7ks{MuLpcZs`fQ$Xa*8$K8&?d0F^ehCIe}6B8iBkqs~v;KW{C1 zhGlV1TJ@~+M!(l}&DY;a-N)72u=_?QCajp_OO%@&&r}CwOjkOo@IkYbLOwu;nr)lt zId#NYhXlTvlO!pThY=LLU-e?KE(WD$j^%J zFzThLi6z07R_AnFrzXqvZWkhyRDy^FaSfp=(5Z&$p;daZTn26E>)TFR&X6xls=D%s6gbG2*ux~s?E?``Vr==kqbsI&%EjtCZZ2%v*;2Hz}* zjgeXBqD3kOtk5z|(kku#)xRkJWpHSL_<2|ursAGFmu;%iJ9{IiVCXc{QEMW;c~m zDJ7{|Q*Uc}EiUi2{*&-lO>2mXoKV%YS&y_VJteK1ZA&x5xt7(i<8pIvklM+mHQ5Q1 S(e8(D-?JQvO8pym-TMo__e)9u diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/serialization.po b/docs/locale/ko/LC_MESSAGES/scenarios/serialization.po index 06dc1f65e..82e307939 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/serialization.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/serialization.po @@ -15,7 +15,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -24,156 +24,171 @@ msgstr "" #: ../../scenarios/serialization.rst:4 msgid "Data Serialization" -msgstr "" +msgstr "데이터 직렬화" #: ../../scenarios/serialization.rst:11 msgid "What is data serialization?" -msgstr "" +msgstr "데이터 직렬화란?" #: ../../scenarios/serialization.rst:13 msgid "" -"Data serialization is the process of converting structured data to a " -"format that allows sharing or storage of the data in a form that allows " -"recovery of its original structure. In some cases, the secondary " -"intention of data serialization is to minimize the data's size which then" -" reduces disk space or bandwidth requirements." +"Data serialization is the process of converting structured data to a format " +"that allows sharing or storage of the data in a form that allows recovery of" +" its original structure. In some cases, the secondary intention of data " +"serialization is to minimize the data's size which then reduces disk space " +"or bandwidth requirements." msgstr "" +"데이터 직렬화는 구조화된 데이터를 원래 구조를 복원할 수 있는 형태로 공유하거나 저장할 수 있게 해주는 포맷으로 변환하는 과정입니다. " +"경우에 따라 데이터 직렬화의 부차적인 목적은 데이터 크기를 최소화하여 디스크 공간이나 대역폭 요구를 줄이는 것입니다." #: ../../scenarios/serialization.rst:21 msgid "Flat vs. Nested data" -msgstr "" +msgstr "평면(Flat) 데이터 vs. 중첩(Nested) 데이터" #: ../../scenarios/serialization.rst:23 msgid "" -"Before beginning to serialize data, it is important to identify or decide" -" how the data should be structured during data serialization - flat or " -"nested. The differences in the two styles are shown in the below " -"examples." +"Before beginning to serialize data, it is important to identify or decide " +"how the data should be structured during data serialization - flat or " +"nested. The differences in the two styles are shown in the below examples." msgstr "" +"데이터를 직렬화하기 전에, 직렬화 과정에서 데이터를 어떻게 구조화할지 — 평면으로 할지 중첩으로 할지 — 를 파악하거나 결정하는 것이 " +"중요합니다. 두 스타일의 차이는 아래 예시에서 볼 수 있습니다." #: ../../scenarios/serialization.rst:27 msgid "Flat style:" -msgstr "" +msgstr "평면(Flat) 스타일:" #: ../../scenarios/serialization.rst:34 msgid "Nested style:" -msgstr "" +msgstr "중첩(Nested) 스타일:" #: ../../scenarios/serialization.rst:42 msgid "" "For more reading on the two styles, please see the discussion on `Python " "mailing list `__, `IETF mailing list " -"`__ and" -" `in stackexchange " +"`__ and " +"`in stackexchange " "`__." msgstr "" +"두 스타일에 대한 더 자세한 내용은 `Python 메일링 리스트 " +"`__," +" `IETF 메일링 리스트 `__, `Stack Exchange " +"`__ 의 논의를 참고하세요." #: ../../scenarios/serialization.rst:49 msgid "Serializing Text" -msgstr "" +msgstr "텍스트 직렬화" #: ../../scenarios/serialization.rst:53 msgid "Simple file (flat data)" -msgstr "" +msgstr "단순한 파일(평면 데이터)" #: ../../scenarios/serialization.rst:55 msgid "" -"If the data to be serialized is located in a file and contains flat data," -" Python offers two methods to serialize data." -msgstr "" +"If the data to be serialized is located in a file and contains flat data, " +"Python offers two methods to serialize data." +msgstr "직렬화할 데이터가 파일에 있고 평면 데이터로 구성되어 있다면, 파이썬은 데이터를 직렬화하는 두 가지 방법을 제공합니다." #: ../../scenarios/serialization.rst:58 msgid "repr" -msgstr "" +msgstr "repr" #: ../../scenarios/serialization.rst:60 msgid "" "The repr method in Python takes a single object parameter and returns a " "printable representation of the input:" -msgstr "" +msgstr "파이썬의 repr 메소드는 객체 하나를 파라미터로 받아 입력을 출력 가능한 표현으로 반환합니다:" #: ../../scenarios/serialization.rst:79 msgid "ast.literal_eval" -msgstr "" +msgstr "ast.literal_eval" #: ../../scenarios/serialization.rst:81 msgid "" "The literal_eval method safely parses and evaluates an expression for a " -"Python datatype. Supported data types are: strings, numbers, tuples, " -"lists, dicts, booleans, and None." +"Python datatype. Supported data types are: strings, numbers, tuples, lists, " +"dicts, booleans, and None." msgstr "" +"literal_eval 메소드는 파이썬 데이터 타입에 대한 표현식을 안전하게 파싱하고 평가합니다. 지원하는 데이터 타입은 문자열, 숫자," +" 튜플, 리스트, 딕셔너리, 불린, None입니다." #: ../../scenarios/serialization.rst:90 msgid "CSV file (flat data)" -msgstr "" +msgstr "CSV 파일(평면 데이터)" #: ../../scenarios/serialization.rst:92 msgid "" -"The CSV module in Python implements classes to read and write tabular " -"data in CSV format." -msgstr "" +"The CSV module in Python implements classes to read and write tabular data " +"in CSV format." +msgstr "파이썬의 CSV 모듈은 CSV 포맷의 테이블 데이터를 읽고 쓰는 클래스를 구현합니다." #: ../../scenarios/serialization.rst:95 msgid "Simple example for reading:" -msgstr "" +msgstr "읽기 간단 예시:" #: ../../scenarios/serialization.rst:106 msgid "Simple example for writing:" -msgstr "" +msgstr "쓰기 간단 예시:" #: ../../scenarios/serialization.rst:117 msgid "" -"The module's contents, functions, and examples can be found `in the " -"Python documentation `__." +"The module's contents, functions, and examples can be found `in the Python " +"documentation `__." msgstr "" +"모듈의 내용, 함수, 예시는 `파이썬 문서 `__ 에서 볼" +" 수 있습니다." #: ../../scenarios/serialization.rst:122 msgid "YAML (nested data)" -msgstr "" +msgstr "YAML(중첩 데이터)" #: ../../scenarios/serialization.rst:124 msgid "" "There are many third party modules to parse and read/write YAML file " "structures in Python. One such example is below." -msgstr "" +msgstr "파이썬에서 YAML 파일 구조를 파싱하고 읽고 쓰는 서드파티 모듈이 많이 있습니다. 그 예시 중 하나가 아래에 있습니다." #: ../../scenarios/serialization.rst:137 msgid "" "Documentation on the third party module can be found `in the PyYAML " "Documentation `__." msgstr "" +"서드파티 모듈에 대한 문서는 `PyYAML 문서 `__ " +"에서 볼 수 있습니다." #: ../../scenarios/serialization.rst:142 msgid "JSON file (nested data)" -msgstr "" +msgstr "JSON 파일(중첩 데이터)" #: ../../scenarios/serialization.rst:144 msgid "" -"Python's JSON module can be used to read and write JSON files. Example " -"code is below." -msgstr "" +"Python's JSON module can be used to read and write JSON files. Example code " +"is below." +msgstr "파이썬의 JSON 모듈로 JSON 파일을 읽고 쓸 수 있습니다. 예시 코드는 아래와 같습니다." #: ../../scenarios/serialization.rst:147 msgid "Reading:" -msgstr "" +msgstr "읽기:" #: ../../scenarios/serialization.rst:156 msgid "Writing:" -msgstr "" +msgstr "쓰기:" #: ../../scenarios/serialization.rst:167 msgid "XML (nested data)" -msgstr "" +msgstr "XML(중첩 데이터)" #: ../../scenarios/serialization.rst:169 msgid "XML parsing in Python is possible using the `xml` package." -msgstr "" +msgstr "파이썬에서의 XML 파싱은 `xml` 패키지를 사용하여 가능합니다." #: ../../scenarios/serialization.rst:171 ../../scenarios/serialization.rst:194 msgid "Example:" -msgstr "" +msgstr "예시:" #: ../../scenarios/serialization.rst:180 msgid "" @@ -181,59 +196,59 @@ msgid "" "found `in the Python XML library documentation " "`__." msgstr "" +"`xml.dom` 과 `xml.sax` 패키지 사용에 대한 더 자세한 문서는 `파이썬 XML 라이브러리 문서 " +"`__ 에서 볼 수 있습니다." #: ../../scenarios/serialization.rst:186 msgid "Binary" -msgstr "" +msgstr "바이너리" #: ../../scenarios/serialization.rst:190 msgid "NumPy Array (flat data)" -msgstr "" +msgstr "NumPy 배열(평면 데이터)" #: ../../scenarios/serialization.rst:192 msgid "" -"Python's NumPy array can be used to serialize and deserialize data to and" -" from byte representation." -msgstr "" +"Python's NumPy array can be used to serialize and deserialize data to and " +"from byte representation." +msgstr "파이썬의 NumPy 배열은 데이터를 바이트 표현으로 직렬화하거나 바이트 표현으로부터 역직렬화하는 데 사용할 수 있습니다." #: ../../scenarios/serialization.rst:210 msgid "Pickle (nested data)" -msgstr "" +msgstr "Pickle(중첩 데이터)" #: ../../scenarios/serialization.rst:212 msgid "" "The native data serialization module for Python is called `Pickle " "`_." msgstr "" +"파이썬의 기본 데이터 직렬화 모듈은 `Pickle " +"`_ 이라고 합니다." #: ../../scenarios/serialization.rst:215 msgid "Here's an example:" -msgstr "" +msgstr "예시는 다음과 같습니다:" #: ../../scenarios/serialization.rst:233 msgid "Protobuf" -msgstr "" +msgstr "Protobuf" #: ../../scenarios/serialization.rst:235 msgid "" -"If you're looking for a serialization module that has support in multiple" -" languages, Google's `Protobuf `_ library is an option." msgstr "" +"여러 언어에서 지원되는 직렬화 모듈을 찾고 있다면, Google의 `Protobuf " +"`_ 라이브러리가 한 선택지입니다." #~ msgid "" -#~ "Data serialization is the concept of " -#~ "converting structured data into a format" -#~ " that allows it to be shared or" -#~ " stored in such a way that its" -#~ " original structure to be recovered. " -#~ "In some cases, the secondary intention" -#~ " of data serialization is to minimize" -#~ " the size of the serialized data " -#~ "which then minimizes disk space or " -#~ "bandwidth requirements." +#~ "Data serialization is the concept of converting structured data into a " +#~ "format that allows it to be shared or stored in such a way that its original" +#~ " structure to be recovered. In some cases, the secondary intention of data " +#~ "serialization is to minimize the size of the serialized data which then " +#~ "minimizes disk space or bandwidth requirements." #~ msgstr "" #~ msgid "Pickle" #~ msgstr "" - From 9f15fc82c4bd67f95c62300bd7cf549af76c7624 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:20:33 +0900 Subject: [PATCH 108/117] Translate notes/styleguide.po (43 entries: guide writing style guide) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../locale/ko/LC_MESSAGES/notes/styleguide.mo | Bin 7597 -> 8283 bytes .../locale/ko/LC_MESSAGES/notes/styleguide.po | 193 ++++++++++-------- 2 files changed, 105 insertions(+), 88 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo b/docs/locale/ko/LC_MESSAGES/notes/styleguide.mo index b50c6ebeacdf72d069791f4b344c4de23381f418..8cb655a21c6350726389cd4e7829d94708c165b2 100644 GIT binary patch delta 4076 zcmai1?QdIG89zfBgH0U+w!vu24q=lLlxFRxO`+;qw5}6mD^j~o(+1dWO=FtcU0zf` zNY_qpQrC8tM7HCb?AqLbQ`eEB-X?B(qdJ;|_`;t+(U1_|e9narNPOW7zvtYSI4Lhu z)hGA(o^zg;-|zQ4ckR1>I&S~!G3|rL7`yQ$#{S6|`|C4|jlw?sGGjT|x4+^&{}J|m zJP&=9v1eg#!R~{70Q)uAKlsmofz9Ii@35bT{Uu)h2W%SlCD@7Q7+Zy1g2h$rr1KbMturqJCdi zbl$NS`4DL=`}`nF2&d@)B{p?gp2K0@(b<}N zJq34zODYE9Fy+=Fxh#sdsI+CN&D~PN_lUV#J`bjJ^PGaVZY!V5 z)9UKqwxwm_LN4+t@<3W8vC*PHWIZJ&4Y_4>*7ID{Kc-#CmRq`wT;NBnWu)%NrQ!hV zK_rwOH{BAqw6&go-h(_hW16;++m9|*N%_;5{+my@=3uVx2Vs%QngM^7fO)j)L zw%&W@(YZS* z_QR3YmEH@((W~RJ(LTItiq*y-liNic!M&T9d{7g0pxq=iR5Zt5$7_oYAcab$-E@<^ z7f)PFUKr=1Y@&!L<+(I1 zO+m!;li!Ol2l=V^ct8F3*2H-ba0aipT-_Gy7XFagS|6}z0w{nMNO-FW?qXFe<3Xj4 z94|Myv>mx@6EFz9&=Un1&?4|%p;lW&VS>|$C?3qaf)53QlWqVfQs0tOU_fvgFvdiq zNJ>FWtjCAI1tk(&f0*skKDBOegSkZe!pC<6-_#Ha*@ zgv--TnY|ZKEj(g}41xYCKOr=rHes%$L-q)^+Rg=mjv{KJ^p-(op&FI4N=)`%r@F?k zp?aY>ljH;!K6)-GX}zjqs?GrgVtK8z{{1{8;4bKdM#2g50kwm3$Z>H8wa`)MpbJ25 zBIC)6$)K)5S>Mn&A=8~F3E6!j9~_PSbWrU&G!h>hKZM5!?nZnIEu@mPvP9LR`~+&} z=`l4oQ^&8M0;(~U4%#3n@22f8_oSxK3INb45p^4cKvf5jwEmc@$0I~yB{jp(~r zpswz%%S}_R8@s4YVf>e7f+VzL`39hYw1C&jH4Si}rl2qyYWX89ha~%<^q!B7#`s7) zaaqMjgGfH5T$oom^t2W?R2-$?2tp|VadW3fhW!!s_q!>2m9K#RzcC_JlQyOy7OGX) zCc0M8_jKDW>JUNv5x(IM4*FdNsnSTRJOPJTK%*c6-ZVpH@E{mcL_vGCffYYP=egysfv1#%sOTe!<&;h)JRw>M9+XNkQ)cc(%)2K891OOtV+B0?CCd7_p$Ka zN2tk2f5M+pzQXMn4xCd|@&p#09xS0rtxIialQ%-DKs*fjV;U*J^)!Z$oyGuo18e<- z&z|~Fb0=$<6{*vsj5`&3lo_h4biF}SC+L7N1kr;X$Q3b!9@Hp?Gix+$1$=c&Yw!b1 zRCJF(7w16)4HqdkZDIh!bV`#NFkqxR_ts>t;$=e@IkZ$LNewREalD^U^)xb}Bs#!V zP=tsq+j4paGXzGCOz&81G#(w{7|*Xn`}on}@$su;gRi_2OAK5q?BD-wj6y4{-7(M4sOx)b%!C5(Eg1jg7+ z$e}?cAoZu_q9JLxH)j&2z?oS^V_jMhI+a=cMbmc$C4?5QHb{GARppJ623dmAQmTj& z%cis{)H40~oKo53-n1#^b_Q@Y+9-L%rvPL}R)E@|!zo|)X4PxJgN!E6oTW;G`P|p7 zW}9N!@Jl$rkQ{gRraCd*6w5V%Nt6c1JvvU`85&V@*Q`jXdG)YFZ}Nkv>Db@-6rUd< z(cGySayN^l)O0G#tFQgf4XR>G_|yqzu72)jx7=z5qj1;pY8p_36%TJv)l?r@+X~SL z6b*vDu>2N9^Rr4N+$Jv+C|en*hyP_oK-x`N!Vh_a_VFxDgo<9YFM>J)E&gQmou|4& F{x`Ek4F>=K delta 483 zcmX}oJ1m1y6u|LQuTa#pl#qND8}Uq}FKyBiaqCqEG4PS*OKFu>7nRgzmd1pHO@fdJ zi^;-bHefU`i&#YbKN8dLoOACz=id9|J9V9JSh5+5$X12Oi-_b`iOl0GF5+;tND!}Z z6u;1hsz#(7XRr>V$dYX0D(0{l3u{I0(1sd5;68q$xqrtlSt%kovWrCU3`@~Y*DSW+ zHy+|39@LAh<13Eif`cJ=iIsSbO?Zzb_=dbi-f5NI6nZFZ;|bnk z2vdzB-FSlze(D2T$!$zA2lOJ3m3}lY7{)!^#Wn0}zIe=2<;K92Qrd_=6x7_okbg+| z{DHtkFdX(;mA-7GbtB@`mJan(gL^7UoYRfCX bY0A^-(*8nEM=n;mTF}+rVZC_HJ1+YHAemDJ diff --git a/docs/locale/ko/LC_MESSAGES/notes/styleguide.po b/docs/locale/ko/LC_MESSAGES/notes/styleguide.po index 191dc5010..0c729c4a7 100644 --- a/docs/locale/ko/LC_MESSAGES/notes/styleguide.po +++ b/docs/locale/ko/LC_MESSAGES/notes/styleguide.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,195 +23,216 @@ msgstr "" #: ../../notes/styleguide.rst:5 msgid "The Guide Style Guide" -msgstr "" +msgstr "안내서 스타일 안내" #: ../../notes/styleguide.rst:9 msgid "" "As with all documentation, having a consistent format helps make the " -"document more understandable. In order to make The Guide easier to " -"digest, all contributions should fit within the rules of this style guide" -" where appropriate." +"document more understandable. In order to make The Guide easier to digest, " +"all contributions should fit within the rules of this style guide where " +"appropriate." msgstr "" +"모든 문서가 그렇듯, 일관된 포맷을 갖추면 문서를 더 이해하기 쉬워집니다. 이 안내서를 더 잘 소화할 수 있도록, 모든 기여는 적절한 " +"부분에서 이 스타일 안내의 규칙을 따라야 합니다." #: ../../notes/styleguide.rst:14 msgid "The Guide is written as :ref:`restructuredtext-ref`." -msgstr "" +msgstr "이 안내서는 :ref:`restructuredtext-ref` 로 작성되어 있습니다." #: ../../notes/styleguide.rst:16 msgid "" -"Parts of The Guide may not yet match this style guide. Feel free to " -"update those parts to be in sync with The Guide Style Guide" +"Parts of The Guide may not yet match this style guide. Feel free to update " +"those parts to be in sync with The Guide Style Guide" msgstr "" +"안내서의 일부는 아직 이 스타일 안내와 일치하지 않을 수 있습니다. 그러한 부분을 안내서 스타일 안내에 맞게 자유롭게 갱신해 주세요." #: ../../notes/styleguide.rst:19 msgid "" -"On any page of the rendered HTML you can click \"Show Source\" to see how" -" authors have styled the page." +"On any page of the rendered HTML you can click \"Show Source\" to see how " +"authors have styled the page." msgstr "" +"렌더링된 HTML의 어떤 페이지에서든 \"Show Source\"를 클릭하면 저자들이 페이지를 어떻게 스타일링했는지 볼 수 있습니다." #: ../../notes/styleguide.rst:25 msgid "Relevancy" -msgstr "" +msgstr "관련성" #: ../../notes/styleguide.rst:27 msgid "" -"Strive to keep any contributions relevant to the :ref:`purpose of The " -"Guide `." -msgstr "" +"Strive to keep any contributions relevant to the :ref:`purpose of The Guide " +"`." +msgstr "모든 기여가 :ref:`안내서의 목적 ` 과 관련성을 유지하도록 노력하세요." #: ../../notes/styleguide.rst:30 msgid "" -"Avoid including too much information on subjects that don't directly " -"relate to Python development." -msgstr "" +"Avoid including too much information on subjects that don't directly relate " +"to Python development." +msgstr "파이썬 개발과 직접 관련이 없는 주제에 대한 정보를 지나치게 많이 포함하지 마세요." #: ../../notes/styleguide.rst:32 msgid "" -"Prefer to link to other sources if the information is already out there. " -"Be sure to describe what and why you are linking." -msgstr "" +"Prefer to link to other sources if the information is already out there. Be " +"sure to describe what and why you are linking." +msgstr "정보가 이미 다른 곳에 있다면 다른 출처로 링크하는 편을 선호하세요. 무엇을, 왜 링크하는지 반드시 설명하세요." #: ../../notes/styleguide.rst:34 msgid "" "`Cite `_ " -"references where needed." +"doc.org/en/master/usage/restructuredtext/basics.html#citations>`_ references" +" where needed." msgstr "" +"필요할 때 참조를 `인용 `_ 하세요." #: ../../notes/styleguide.rst:36 msgid "" -"If a subject isn't directly relevant to Python, but useful in conjunction" -" with Python (e.g., Git, GitHub, Databases), reference by linking to " -"useful resources, and describe why it's useful to Python." +"If a subject isn't directly relevant to Python, but useful in conjunction " +"with Python (e.g., Git, GitHub, Databases), reference by linking to useful " +"resources, and describe why it's useful to Python." msgstr "" +"주제가 파이썬과 직접 관련은 없지만 파이썬과 함께 쓰일 때 유용한 경우(예: Git, GitHub, 데이터베이스), 유용한 리소스로 " +"링크하여 참조하고, 그것이 파이썬에 왜 유용한지 설명하세요." #: ../../notes/styleguide.rst:39 msgid "When in doubt, ask." -msgstr "" +msgstr "확신이 없다면 물어보세요." #: ../../notes/styleguide.rst:44 msgid "Headings" -msgstr "" +msgstr "헤딩" #: ../../notes/styleguide.rst:46 msgid "Use the following styles for headings." -msgstr "" +msgstr "헤딩에는 다음 스타일을 사용하세요." #: ../../notes/styleguide.rst:48 msgid "Chapter title:" -msgstr "" +msgstr "장(chapter) 제목:" #: ../../notes/styleguide.rst:56 msgid "Page title:" -msgstr "" +msgstr "페이지 제목:" #: ../../notes/styleguide.rst:64 msgid "Section headings:" -msgstr "" +msgstr "섹션 헤딩:" #: ../../notes/styleguide.rst:71 msgid "Sub section headings:" -msgstr "" +msgstr "서브 섹션 헤딩:" #: ../../notes/styleguide.rst:81 msgid "Prose" -msgstr "" +msgstr "산문" #: ../../notes/styleguide.rst:83 msgid "" "Wrap text lines at 78 characters. Where necessary, lines may exceed 78 " -"characters, especially if wrapping would make the source text more " -"difficult to read." +"characters, especially if wrapping would make the source text more difficult" +" to read." msgstr "" +"텍스트 줄은 78자에서 줄바꿈하세요. 필요한 경우, 특히 줄바꿈하면 소스 텍스트가 더 읽기 어려워지는 경우에는 78자를 초과할 수도 " +"있습니다." #: ../../notes/styleguide.rst:87 msgid "Use Standard American English, not British English." -msgstr "" +msgstr "영국식이 아닌 표준 미국식 영어를 사용하세요." #: ../../notes/styleguide.rst:89 msgid "" "Use of the `serial comma `_ " -"(also known as the Oxford comma) is 100% non-optional. Any attempt to " -"submit content with a missing serial comma will result in permanent " -"banishment from this project, due to complete and total lack of taste." +"(also known as the Oxford comma) is 100% non-optional. Any attempt to submit" +" content with a missing serial comma will result in permanent banishment " +"from this project, due to complete and total lack of taste." msgstr "" +"`연속 콤마(serial comma) `_ (옥스포드 " +"콤마라고도 함)의 사용은 100% 필수입니다. 연속 콤마가 누락된 내용을 제출하려는 어떠한 시도라도, 완전하고 전적인 안목 부재를 이유로" +" 이 프로젝트에서 영구 추방됩니다." #: ../../notes/styleguide.rst:94 msgid "Banishment? Is this a joke? Hopefully we will never have to find out." -msgstr "" +msgstr "추방이라고요? 농담인가요? 부디 우리가 그것을 확인하게 되는 일은 없기를 바랍니다." #: ../../notes/styleguide.rst:99 msgid "Code Examples" -msgstr "" +msgstr "코드 예시" #: ../../notes/styleguide.rst:101 -msgid "Wrap all code examples at 70 characters to avoid horizontal scrollbars." -msgstr "" +msgid "" +"Wrap all code examples at 70 characters to avoid horizontal scrollbars." +msgstr "수평 스크롤바를 피하기 위해 모든 코드 예시는 70자에서 줄바꿈하세요." #: ../../notes/styleguide.rst:103 msgid "Command line examples:" -msgstr "" +msgstr "커맨드라인 예시:" #: ../../notes/styleguide.rst:112 msgid "" "Be sure to include the ``$`` prefix before each line for Unix console " "examples." -msgstr "" +msgstr "Unix 콘솔 예시의 경우 각 줄 앞에 반드시 ``$`` 접두사를 포함하세요." #: ../../notes/styleguide.rst:114 msgid "" -"For Windows console examples, use ``doscon`` or ``powershell`` instead of" -" ``console``, and omit the ``$`` prefix." +"For Windows console examples, use ``doscon`` or ``powershell`` instead of " +"``console``, and omit the ``$`` prefix." msgstr "" +"Windows 콘솔 예시의 경우, ``console`` 대신 ``doscon`` 이나 ``powershell`` 을 사용하고, ``$``" +" 접두사는 생략하세요." #: ../../notes/styleguide.rst:117 msgid "Python interpreter examples:" -msgstr "" +msgstr "파이썬 인터프리터 예시:" #: ../../notes/styleguide.rst:127 msgid "Python examples:" -msgstr "" +msgstr "파이썬 예시:" #: ../../notes/styleguide.rst:141 msgid "Externally Linking" -msgstr "" +msgstr "외부 링크" #: ../../notes/styleguide.rst:143 -msgid "Prefer labels for well known subjects (e.g. proper nouns) when linking:" -msgstr "" +msgid "" +"Prefer labels for well known subjects (e.g. proper nouns) when linking:" +msgstr "잘 알려진 주제(예: 고유명사)를 링크할 때는 라벨을 선호하세요:" #: ../../notes/styleguide.rst:151 msgid "" -"Prefer to use descriptive labels with inline links instead of leaving " -"bare links:" -msgstr "" +"Prefer to use descriptive labels with inline links instead of leaving bare " +"links:" +msgstr "맨 링크(bare link)를 그대로 두는 대신, 인라인 링크와 설명이 들어간 라벨을 함께 사용하는 편을 선호하세요:" #: ../../notes/styleguide.rst:158 msgid "" "Avoid using labels such as \"click here\", \"this\", etc., preferring " "descriptive labels (SEO worthy) instead." -msgstr "" +msgstr "\"여기 클릭\", \"이것\" 같은 라벨은 피하고, 설명이 잘 들어간(SEO에 좋은) 라벨을 사용하는 편을 선호하세요." #: ../../notes/styleguide.rst:164 msgid "Linking to Sections in The Guide" -msgstr "" +msgstr "안내서 내의 섹션 링크하기" #: ../../notes/styleguide.rst:166 msgid "" "To cross-reference other parts of this documentation, use the `:ref: " -"`_ keyword and labels." +"`_ keyword and " +"labels." msgstr "" +"이 문서의 다른 부분을 상호 참조하려면, `:ref: `_ 키워드와 라벨을 " +"사용하세요." #: ../../notes/styleguide.rst:170 msgid "" "To make reference labels more clear and unique, always add a ``-ref`` " "suffix:" -msgstr "" +msgstr "참조 라벨을 더 명확하고 고유하게 만들기 위해, 항상 ``-ref`` 접미사를 붙이세요:" #: ../../notes/styleguide.rst:182 msgid "Notes and Warnings" -msgstr "" +msgstr "노트와 경고" #: ../../notes/styleguide.rst:184 msgid "" @@ -219,31 +240,35 @@ msgid "" "doc.org/en/master/usage/restructuredtext/basics.html#directives>`_ when " "making notes." msgstr "" +"메모를 작성할 때는 적절한 `admonitions 디렉티브 `_ 를 활용하세요." #: ../../notes/styleguide.rst:187 msgid "Notes:" -msgstr "" +msgstr "노트:" #: ../../notes/styleguide.rst:196 msgid "Warnings:" -msgstr "" +msgstr "경고:" #: ../../notes/styleguide.rst:205 msgid "TODOs" -msgstr "" +msgstr "할 일(TODO)" #: ../../notes/styleguide.rst:207 msgid "" "Please mark any incomplete areas of The Guide with a `todo directive " "`_. To " -"avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for stub" -" documents or large incomplete sections." +"avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for stub " +"documents or large incomplete sections." msgstr "" +"안내서의 미완성 부분은 `todo 디렉티브 `_ 로 표시해 주세요. :ref:`todo-list-" +"ref` 가 어수선해지는 것을 피하기 위해, 스텁 문서나 큰 미완성 섹션에는 ``todo`` 를 하나만 사용하세요." #~ msgid "" -#~ "`Cite " -#~ "`_" -#~ " references where needed." +#~ "`Cite `_ " +#~ "references where needed." #~ msgstr "" #~ msgid "Be sure to include the ``$`` prefix before each line." @@ -253,32 +278,24 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Avoid using labels such as \"click " -#~ "here\", \"this\", etc. preferring descriptive" -#~ " labels (SEO worthy) instead." +#~ "Avoid using labels such as \"click here\", \"this\", etc. preferring " +#~ "descriptive labels (SEO worthy) instead." #~ msgstr "" #~ msgid "" -#~ "To cross-reference other parts of " -#~ "this documentation, use the `:ref: " -#~ "`_ keyword and" -#~ " labels." +#~ "To cross-reference other parts of this documentation, use the `:ref: " +#~ "`_ keyword and labels." #~ msgstr "" #~ msgid "" -#~ "Make use of the appropriate `admonitions" -#~ " directives `_" -#~ " when making notes." +#~ "Make use of the appropriate `admonitions directives " +#~ "`_ when making notes." #~ msgstr "" #~ msgid "" -#~ "Please mark any incomplete areas of " -#~ "The Guide with a `todo directive " -#~ "`_. To avoid cluttering the :ref" -#~ ":`todo-list-ref`, use a single " -#~ "``todo`` for stub documents or large " -#~ "incomplete sections." +#~ "Please mark any incomplete areas of The Guide with a `todo directive " +#~ "`_. To " +#~ "avoid cluttering the :ref:`todo-list-ref`, use a single ``todo`` for stub " +#~ "documents or large incomplete sections." #~ msgstr "" - From e31bfc5a5448bb9271006c33e318f3180f01c66e Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:21:49 +0900 Subject: [PATCH 109/117] Translate scenarios/gui.po (44 entries: GUI toolkit overview) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/gui.mo | Bin 384 -> 11296 bytes docs/locale/ko/LC_MESSAGES/scenarios/gui.po | 242 +++++++++++--------- 2 files changed, 133 insertions(+), 109 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo b/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo index e64754bdfaae516a10071360018eec59c6c71757..db74ab169fe2d718374bfa1bce18bee7885f9232 100644 GIT binary patch literal 11296 zcmc&)TW}m#T5gtQ175CSfd#Vcv6tP*^2|tah|7pZqr? z-QDBSaH*2xu~(7gSdJxGwk54X)93ux@Bhx9{O#kPoKx^8fqzfn-|zkaeQW;t-X|3048Hyi zB;+9ENys5c{8j4s@pZ@tkn4~K@X}`> z{{`}oAs_pcqTsLc=lDVEzXSQ}kbfng{|pZMPkes@^3#x?`C&!*3rGg}BxC^jr}X?s z6a}g(--R?GzX#b1d1#xWEJ0p?OhWF$CVvh2A|$Qf{iBNVmypju()pkGG1vDHBAz^~@?~o3p@>!v;3wak` z#~}Xzq!8NLg71u_A7 z3Y+~a-Aq!l#7sakS8I(_<2RS2l;!D-H=Z+MfoSl93-tjv0YIbkY9zQ^Y`sg zlrrQ&$UTsM0{I=t|AOp;9^d`~Vgvd37Zs%nX?#i8^|=m3c@E$I0h0Xt%bmi%FF}%j z9mrMu{&ygi&dz?*^;E-P9mhR2V`w{BY3xYZ8?nsJPS%;Xm}jvO&$Hd0uC7w4lq!wc z{I@B~$#>amUUR#0R>?FhHRpCQ)y%QzEAvJ)rrNe+*^aJy8ne~xC|+R0mcz0+cxmf(=F3YDbHKp2uqLh6Vju)>1hsA9UO34 z)eTadStcu3c>RQ_k1^X&J)Bc;6HIkkNrQoqSaMP~p`gq68Bnv>$Z|)RTXsFI;HDUy z;CQ;3XC)oykp+8G-OSMpO?9;dDPRo`YmUoID0W(7hGhwzhBeKg{mGT_;VEUGTF?y3 zQ}$U|OI7;PqsnH}l>TAi4c8j>N@P;b(y+hfvEia&lv&m)*buQoeMb({3wVH|Oijx% zmDUtAC#!Q8W;N5*wkwD9(`EjH=`c4->SCLWM%Lvte6ei2n<>lJi>B`3GXjX^!;Yp= z?;LVcjf_B@j{e)kNgu1nV_(j-}^zreZxxj_!Gy z$#j#6EK9HqJewoe4ceO7cNhVK4sOx5Eyr_NPA7kBriWMTqDPwRSt#Nbvm*#;4;!$c zWPO?hUC(obQ!WUSIl~pCUmL= zJyOb%a^GO)Wi9J5byQ^?_^R)uhv`GK{4HVO;5o|})x8uu zXqDh;C&6@&jUWLt8f=Gc$RI5zydNKy!k%=5J7N`$98Z9ZMiI#I%}uRDr;}PDd$lnX z3k5TND&NFg7fhUl_#z8(JkjWNk!a8ZUUY#3tYb(V zJ;a@I)cchLlTUU>kDd|1l#lmBkN51PAe5;&8g+88j4xs($!vr1Z~?HCt5B#R8QavZDRG;K`F z7Af(eD_rm4MAfiN$||WsQ_GZsGN4FvXa?d%c@A?d6Gpdn76P^u+i#gqdd$|dqfim+ zbPnB50<#I%C`1q0*W#D${I~*=1F?|GlYexR94#V`P04te>gt}>!&@&p?@NBN$2tfK9v@|J}ZrsZ8wv{>l+!ge7g@WdN7 zwTty1vMEz|1;GsZ!ifVfA~@e63|1LV$gx7v@bsjin)xEJ1hiVO=vkl+hUk4V3y>F7 zZFtRNL+R1|R<^l68R?DY@Q7<0z260p*2YpJUcsP)S#)s0LgZS#-xhLm%aAM-zL==VB26Dw@7VjuY7=&hq6gAW`N)(7jr3SD}XANwU zVqj#VSJ3%t?z9Rxfjh85v~JzZ8b#_IF(HsTigb6dvz~EOr<_1gL6q{;duT6Cj(|?5 zHIr1}p+`(@Bp%VH2$caPh-)6@z)whZb}DHruks%pQQ8QXnjJje((pMAU>#^_Wg$^R94D}xAXU8<&>`~QG${6ZzkE*FW*jO7^ycJnQ_Yq+c&P}l6M-TTJ*%7S(zY>s9^CD(M zC}6ra2Uc(?a`gU}k;4GwTmfO{Om$ezYOs(PS*&VQ(xe>E5*bDrJ&By0rWGh$NB~hG zoWU^7B+`qj(Q>-V9G%!u6WqXL)094Xf%c~EK)}lPL=ymfkqMx*WuYIjLu4XQQqQAl z;dhQ|>p60oXL)5C{z zjaSYQ$!EIarEQ^-9*G+@G=Q0T5Lr}z7A%mPMlOeg5CPWr!r;IGusBJiBi6xN3;fXJ z(=z9I330~uG`JejNJJvS4RRcBWOONrDlUQq@fu4<7!|VwTcB*-8%;i)jJ8TSnwo>A z9Gj5Fn%QL#q4p?`xv!ceqGczSGmCst-~4`@HRwEuJCKBuIYJ$gpsWLTCc3K-$iPV@ zwG0X*5~E-hMNY{WwowB^;~AGNx*l2tI1X~$MfSn@pqOxlBlrRub5m=u3}m|?eY|Va zMW;kQjW~Y}AcU_5-=9Q(H15eCRg5tmYa4U0Z<(_;K> z<==n^Itm@Z#YF;HGK@|fp%1ki+{^IW7%inu?g;LvL~fA=glkkJJWciCa(qrwMUmrn zlH~_V4^co;3XuyrOK?!hPDV9H>69YzC$#NUakMM)BM8GOFP<;(R|!SzvWpl{2$g79 z5q}W=AiqWpjS7R(U;0QkH()c^jwBnc+;h`1svlUGMg7tULv%(;0*nWMyH*B8l3*ix zegru&Tr@e7g0i52+JGy3LcodRNp~fLv&2ms2&^0B2%dPYlat_HPGF@f+8A!k{PI)4 zWfd6QA%_oCB|Al45()_FXj^vCP#uhMPI4NK8woM)I5a#WF+~uNN?F~!nD5)Q3pW7) z&B^{;@;AlRtB2Vf*?>kM+})|})KlAzX;hra0XMJblFt|OZZd84ux&>M)5(40F?5yW zemJg&?e5;aC)xc>a`#iLdvDL~J-fPpwYwV&lgDtOC*$P07Z3CvOAZVs_xG}cgFOTN zyS_H~!hvmvRo6?V9o2M!nwHbUUIc#Sk841--Vu{MTXs|Gi1`((=+Qui$lr5#M=;4` zT2l)>>~QZ3eJ6VR4zOnrAO4D=Q}#T!ZJ>YPK-0dbQr+A3;rfOUB-3RZT6^$)7utw! z{u+S{ZtdQei{5Z@Z*v_f1=5l{U?LnysvfpCqkG%>G?R}^;FfX^dma-mgY8Z|g=x|@ z4Ba|{xrtz9j`?>g!Ahk$b7MheHMqY(qqm5JfB4YNe`Ap~s^dXrkp-`;2iMlZxdnf6 z7Q>j}$_(>wEz_59`gZurYH(}Zzp=smsny_G4e$Av7qK{~)PrlYn8i`q1WT8&MX$<^@OA{1>^e+4Jv{N;&Y@}4}7&*A)=HUH*%aB~9Zgq11| z=jXn4+rPZR;=|--K3us}3#Y1neVX}it_5?e;T&|UuwZ4eara(0w-%YQ^^{I{LJ6*{ z``=iXW(DV`!`VtWSr4w?4(4lcJHtGVZ+ewN87@z-V09eolV5L*!-qYtHMM0czHaS zN7go<{BI|G6zcHx3GDC=Px^T%OWK_CS8hPuK&??dAW*^enHD=@J}Rbv2pBZ>FIEt$ z+j100W^xV~PSnCz-s35-SfTA>XcZoETA>Xfg||}Wfa`0 zk*}__=0Db?5Al3BJArUjuryd%qD-WmkadrwTI6fyVDpS{B)l8EfqZFsg_g9PNx_<0 z67dPAQKUn# zE7>@?+DuN~yM(`?1HsHzzK$WP33@0RAP0(nT)yY8Au_dKWn4lqInkf3BG8m4{!NK; z9T+fjG#qC`LcyT~c6g@!*>3)DPy53?Lm=BYqnQL$JHZkP1DmBmNFFs}BtVyi-4=_O zZ*zaiu_JlQpTgc7h-$oo=8W7u8{D|dtFrc5FqH<6qT|qU{<{+p{^Six;>Mi^D8Ix9 zY>0Gj%_kOKtoava`8jv*AsJD`RMfYokx9rxs`*NIaUI!8uy|!XPS`CV36`}C7dv>E zD)8O8;QrfC=Mj@g@~nS>Fax<0o`0vMCIyzWU=bkwE!bSA!a)Ko&up1zo3gvv^#CYy z;ng{UT_51Lw9#Jh!S(yHfiiRo%H80>ESfBDx);y+Hy;EmX8;LpYRWevsGM32=U)xy zV$U@0kQZyg>V>FXVQ?vimYdY1JfJ}(;y^e6??<>0Z`Kn0t?Dak{_yv$Y5(#{)VG#u zjXP(#J1Z;U*(C}hdK&>Urw-c{xW&I)<7GepK3^yrIH@FC40Ueq6aMV_ebNp6d9uEF z$jR|pl8o=izFQB47_k=)0~`LWGmNxD-biiemhlm%pRHQ+ZR-r#5F6RU9yJPW!dS2{ z0anCW0qSM$wm*Y@_4`viwWn4a_ui%|#%wg4Tnx{zkk<1=CO+OMlu^aD(=3!R;`$n$ zCw-3y4#}IyM;U|C-o)vAP``)R9LOX7@=FnAgP48t>Li60)~VrE(K6@1PKq?DOX!Hm zxN!akYuv2_^?NN9+1c6jUU+E{>`M|X@ILCVa1k~o^dWCX41_Y9a+8|C3^|b8FkeeZ zT%+E+yx>1LCS0h8SHYhFHP}IfN%DcX3$+eV>Bz!XGgCP- zrDJcd)6Tu(Kb=yNVmyk&0X8rU?29-BI&?&>rJEm7>0-2sZXI6O@V`Ou7!O3gU(;2x zD~>|@uoPX6P?zE=Zx#|q3MqgaIEqU^ z_}T&madI_s#KM_I6%oZL)$0L(D!xKIVgO6}`)lK1*w}FsDdcx4|68DOvq%tLnXg}< z3kWgE*d#&1MYcp%#U6PmA>-s={{0pIMvWpKyo$RUvWQ#dFJBGLEr62D!csh<3sf+* z5}Zduf?;wlhx!lCj>GtH?h@G>HSYz{F{tlS8@O0Wv~;0hc|A%Mp22>#%1a~e5Yfx< z2*-R7n77ubu40`({$!U|+)4$-EJwAQu2XGU4g9&(cn=LWR;?||n!Jj)o6QL$#^KUfrHw!GrSX7*NFo2iOL=9El$HB6?yZLlcwJQ9g(~QexFDn8IGsXc zK*r-vgG=}<$mFeCabW2GqKGMQl=o0ePKL3yzh3u2jew(#KdcisrK!gzCdE|)s=$yP zgf3G{J6iIvdDw?dmwCo+agUL7bknK0?j&L#ROf?tai40RHy{V;uFoA@nE?(;A5ve# zXa{D&7=oza%6U3l;?tEGo&eJKaXq!#@lnUl+_LDF&st|K7FtQw+qU~hHx@n zRqmoKUY_`%sv^6^Y%QjK%`v!$_e?NVZ%\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,79 +23,91 @@ msgstr "" #: ../../scenarios/gui.rst:4 msgid "GUI Applications" -msgstr "" +msgstr "GUI 응용" #: ../../scenarios/gui.rst:9 msgid "Alphabetical list of GUI Applications." -msgstr "" +msgstr "GUI 응용의 알파벳 순 목록입니다." #: ../../scenarios/gui.rst:14 msgid "Camelot" -msgstr "" +msgstr "Camelot" #: ../../scenarios/gui.rst:16 msgid "" -"`Camelot `_ provides components for " -"building applications on top of Python, SQLAlchemy, and Qt. It is " -"inspired by the Django admin interface." +"`Camelot `_ provides components for building " +"applications on top of Python, SQLAlchemy, and Qt. It is inspired by the " +"Django admin interface." msgstr "" +"`Camelot `_ 는 파이썬, SQLAlchemy, Qt 위에 응용을 만들기 " +"위한 컴포넌트를 제공합니다. Django의 관리자 인터페이스에서 영감을 받았습니다." #: ../../scenarios/gui.rst:20 msgid "" "The main resource for information is the website: http://www.python-" -"camelot.com and the mailing list https://groups.google.com/forum/#!forum" -"/project-camelot." +"camelot.com and the mailing list " +"https://groups.google.com/forum/#!forum/project-camelot." msgstr "" +"정보를 얻을 수 있는 주요 리소스는 웹사이트 http://www.python-camelot.com 와 메일링 리스트 " +"https://groups.google.com/forum/#!forum/project-camelot 입니다." #: ../../scenarios/gui.rst:27 msgid "Cocoa" -msgstr "" +msgstr "Cocoa" #: ../../scenarios/gui.rst:29 msgid "" "The Cocoa framework is only available on OS X. Don't pick this if you're " "writing a cross-platform application!" -msgstr "" +msgstr "Cocoa 프레임워크는 OS X에서만 사용할 수 있습니다. 크로스 플랫폼 응용을 만든다면 이것을 선택하지 마세요!" #: ../../scenarios/gui.rst:34 msgid "GTk" -msgstr "" +msgstr "GTk" #: ../../scenarios/gui.rst:36 msgid "" -"PyGTK provides Python bindings for the GTK+ toolkit. However, it has been" -" superseded by PyGObject. PyGTK should not be used for new projects and " +"PyGTK provides Python bindings for the GTK+ toolkit. However, it has been " +"superseded by PyGObject. PyGTK should not be used for new projects and " "existing projects should be ported to PyGObject." msgstr "" +"PyGTK는 GTK+ 툴킷을 위한 파이썬 바인딩을 제공합니다. 그러나 PyGObject로 대체되었습니다. PyGTK는 새 프로젝트에 " +"사용해서는 안 되며, 기존 프로젝트는 PyGObject로 이식되어야 합니다." #: ../../scenarios/gui.rst:41 msgid "PyGObject aka (PyGi)" -msgstr "" +msgstr "PyGObject (PyGi라고도 함)" #: ../../scenarios/gui.rst:43 msgid "" "`PyGObject `_ provides Python " "bindings which gives access to the entire GNOME software platform. It is " -"fully compatible with GTK+ 3. Here is a tutorial to get started with " -"`Python GTK+ 3 Tutorial `_." msgstr "" +"`PyGObject `_ 는 전체 GNOME 소프트웨어 " +"플랫폼에 접근할 수 있는 파이썬 바인딩을 제공합니다. GTK+ 3과 완전히 호환됩니다. 시작하기 위한 튜토리얼은 다음과 같습니다: " +"`Python GTK+ 3 Tutorial `_." #: ../../scenarios/gui.rst:48 msgid "`API Reference `_" -msgstr "" +msgstr "`API 레퍼런스 `_" #: ../../scenarios/gui.rst:53 msgid "Kivy" -msgstr "" +msgstr "Kivy" #: ../../scenarios/gui.rst:55 msgid "" -"`Kivy `_ is a Python library for development of multi-" -"touch enabled media rich applications. The aim is to allow for quick and " -"easy interaction design and rapid prototyping, while making your code " -"reusable and deployable." +"`Kivy `_ is a Python library for development of multi-touch" +" enabled media rich applications. The aim is to allow for quick and easy " +"interaction design and rapid prototyping, while making your code reusable " +"and deployable." msgstr "" +"`Kivy `_ 는 멀티터치를 지원하는 미디어가 풍부한 응용을 개발하기 위한 파이썬 라이브러리입니다. " +"빠르고 쉬운 인터랙션 디자인과 신속한 프로토타이핑을 가능하게 하면서도, 코드를 재사용하고 배포할 수 있게 하는 것이 목표입니다." #: ../../scenarios/gui.rst:60 msgid "" @@ -103,110 +115,127 @@ msgid "" "devices such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, " "Apple's products, and so on." msgstr "" +"Kivy는 파이썬으로 작성되어 있고 OpenGL을 기반으로 하며, 마우스, 듀얼 마우스, TUIO, WiiMote, WM_TOUCH, " +"HIDtouch, Apple 제품 등 다양한 입력 장치를 지원합니다." #: ../../scenarios/gui.rst:64 msgid "" "Kivy is actively being developed by a community and is free to use. It " "operates on all major platforms (Linux, OS X, Windows, Android)." msgstr "" +"Kivy는 커뮤니티에 의해 활발히 개발되고 있으며 무료로 사용할 수 있습니다. 주요 플랫폼(Linux, OS X, Windows, " +"Android) 모두에서 동작합니다." #: ../../scenarios/gui.rst:67 msgid "The main resource for information is the website: http://kivy.org" -msgstr "" +msgstr "정보를 얻을 수 있는 주요 리소스는 웹사이트 http://kivy.org 입니다." #: ../../scenarios/gui.rst:72 msgid "PyObjC" -msgstr "" +msgstr "PyObjC" #: ../../scenarios/gui.rst:74 msgid "" -"Only available on OS X. Don't pick this if you're writing a cross-" -"platform application." +"Only available on OS X. Don't pick this if you're writing a cross-platform " +"application." msgstr "" #: ../../scenarios/gui.rst:79 msgid "PySide" -msgstr "" +msgstr "PySide" #: ../../scenarios/gui.rst:81 msgid "" -"PySide is a Python binding of the cross-platform GUI toolkit Qt. The " -"package name depends on the major Qt version (`PySide` for Qt4, `PySide2`" -" for Qt5, and `PySide6` for Qt6). This set of bindings is developed by " -"`The Qt Company `_." +"PySide is a Python binding of the cross-platform GUI toolkit Qt. The package" +" name depends on the major Qt version (`PySide` for Qt4, `PySide2` for Qt5, " +"and `PySide6` for Qt6). This set of bindings is developed by `The Qt Company" +" `_." msgstr "" +"PySide는 크로스 플랫폼 GUI 툴킷 Qt의 파이썬 바인딩입니다. 패키지 이름은 Qt의 메이저 버전에 따라 다릅니다(Qt4용은 " +"`PySide`, Qt5용은 `PySide2`, Qt6용은 `PySide6`). 이 바인딩 모음은 `The Qt Company " +"`_ 가 개발합니다." #: ../../scenarios/gui.rst:90 msgid "https://pyside.org" -msgstr "" +msgstr "https://pyside.org" #: ../../scenarios/gui.rst:95 msgid "PyQt" -msgstr "" +msgstr "PyQt" #: ../../scenarios/gui.rst:97 msgid "" "If your software does not fully comply with the GPL you will need a " "commercial license!" -msgstr "" +msgstr "여러분의 소프트웨어가 GPL을 완전히 준수하지 않는다면 상용 라이선스가 필요합니다!" #: ../../scenarios/gui.rst:99 msgid "PyQt provides Python bindings for the Qt Framework (see below)." -msgstr "" +msgstr "PyQt는 Qt 프레임워크(아래 참고)를 위한 파이썬 바인딩을 제공합니다." #: ../../scenarios/gui.rst:101 msgid "http://www.riverbankcomputing.co.uk/software/pyqt/download" -msgstr "" +msgstr "http://www.riverbankcomputing.co.uk/software/pyqt/download" #: ../../scenarios/gui.rst:106 msgid "Pyjs Desktop (formerly Pyjamas Desktop)" -msgstr "" +msgstr "Pyjs Desktop (이전 명칭 Pyjamas Desktop)" #: ../../scenarios/gui.rst:108 msgid "" -"Pyjs Desktop is a application widget set for desktop and a cross-platform" -" framework. It allows the exact same Python web application source code " -"to be executed as a standalone desktop application." +"Pyjs Desktop is a application widget set for desktop and a cross-platform " +"framework. It allows the exact same Python web application source code to be" +" executed as a standalone desktop application." msgstr "" +"Pyjs Desktop은 데스크톱을 위한 응용 위젯 세트이자 크로스 플랫폼 프레임워크입니다. 정확히 동일한 파이썬 웹 응용 소스 코드를 " +"독립적인 데스크톱 응용으로 실행할 수 있게 해줍니다." #: ../../scenarios/gui.rst:113 msgid "The main website: `pyjs `_." -msgstr "" +msgstr "메인 웹사이트: `pyjs `_." #: ../../scenarios/gui.rst:118 msgid "Qt" -msgstr "" +msgstr "Qt" #: ../../scenarios/gui.rst:120 msgid "" "`Qt `_ is a cross-platform application framework " -"that is widely used for developing software with a GUI but can also be " -"used for non-GUI applications." +"that is widely used for developing software with a GUI but can also be used " +"for non-GUI applications." msgstr "" +"`Qt `_ 는 크로스 플랫폼 응용 프레임워크로, GUI를 갖춘 소프트웨어 개발에 널리 " +"사용되지만 GUI가 없는 응용에도 사용할 수 있습니다." #: ../../scenarios/gui.rst:127 msgid "PySimpleGUI" -msgstr "" +msgstr "PySimpleGUI" #: ../../scenarios/gui.rst:129 msgid "" "`PySimpleGUI `_ is a wrapper for " "Tkinter and Qt (others on the way). The amount of code required to " -"implement custom GUIs is much shorter using PySimpleGUI than if the same " -"GUI were written directly using Tkinter or Qt. PySimpleGUI code can be " +"implement custom GUIs is much shorter using PySimpleGUI than if the same GUI" +" were written directly using Tkinter or Qt. PySimpleGUI code can be " "\"ported\" between GUI frameworks by changing import statements." msgstr "" +"`PySimpleGUI `_ 는 Tkinter와 Qt(그 외의 것들도 " +"준비 중)를 위한 래퍼입니다. Tkinter나 Qt를 직접 사용하여 같은 GUI를 작성하는 것에 비해, PySimpleGUI를 사용하면 " +"사용자 정의 GUI를 구현하는 데 필요한 코드 양이 훨씬 짧습니다. PySimpleGUI 코드는 import 구문만 바꾸면 GUI " +"프레임워크 사이에 \"이식\"할 수 있습니다." #: ../../scenarios/gui.rst:139 msgid "" "PySimpleGUI is contained in a single PySimpleGUI.py file. Should pip " -"installation be impossible, copying the PySimpleGUI.py file into a " -"project's folder is all that's required to import and begin using." +"installation be impossible, copying the PySimpleGUI.py file into a project's" +" folder is all that's required to import and begin using." msgstr "" +"PySimpleGUI는 단일 PySimpleGUI.py 파일에 들어 있습니다. pip 설치가 불가능한 경우, PySimpleGUI.py " +"파일을 프로젝트 폴더에 복사하기만 하면 임포트하여 사용할 수 있습니다." #: ../../scenarios/gui.rst:146 msgid "Toga" -msgstr "" +msgstr "Toga" #: ../../scenarios/gui.rst:148 msgid "" @@ -215,23 +244,29 @@ msgid "" "components with a shared interface to simplify platform-agnostic GUI " "development." msgstr "" +"`Toga `_ 는 파이썬 네이티브이자 OS 네이티브인 크로스 " +"플랫폼 GUI 툴킷입니다. Toga는 플랫폼에 구애받지 않는 GUI 개발을 단순화하기 위해 공유 인터페이스를 갖춘 기본 컴포넌트 " +"라이브러리로 구성되어 있습니다." #: ../../scenarios/gui.rst:152 msgid "" -"Toga is available on macOS, Windows, Linux (GTK), and mobile platforms " -"such as Android and iOS." +"Toga is available on macOS, Windows, Linux (GTK), and mobile platforms such " +"as Android and iOS." msgstr "" +"Toga는 macOS, Windows, Linux(GTK), 그리고 Android와 iOS 같은 모바일 플랫폼에서 사용할 수 있습니다." #: ../../scenarios/gui.rst:158 msgid "Tk" -msgstr "" +msgstr "Tk" #: ../../scenarios/gui.rst:160 msgid "" "Tkinter is a thin object-oriented layer on top of Tcl/Tk. **It has the " -"advantage of being included with the Python standard library, making it " -"the most convenient and compatible toolkit to program with.**" +"advantage of being included with the Python standard library, making it the " +"most convenient and compatible toolkit to program with.**" msgstr "" +"Tkinter는 Tcl/Tk 위에 올라간 얇은 객체지향 계층입니다. **파이썬 표준 라이브러리에 포함되어 있다는 이점이 있어, " +"프로그래밍하기에 가장 편리하고 호환성이 좋은 툴킷입니다.**" #: ../../scenarios/gui.rst:164 msgid "" @@ -239,26 +274,34 @@ msgid "" "Windows and Macintosh systems. Starting with the 8.0 release, Tk offers " "native look and feel on all platforms." msgstr "" +"Tk와 Tkinter는 대부분의 Unix 플랫폼과 Windows, Macintosh 시스템에서 사용할 수 있습니다. 8.0 릴리즈부터 " +"Tk는 모든 플랫폼에서 네이티브 룩앤필을 제공합니다." #: ../../scenarios/gui.rst:168 msgid "" -"There's a good multi-language Tk tutorial with Python examples at `TkDocs" -" `_. There's more information " +"There's a good multi-language Tk tutorial with Python examples at `TkDocs " +"`_. There's more information " "available on the `Python Wiki `_." msgstr "" +"파이썬 예시가 포함된 좋은 다국어 Tk 튜토리얼이 `TkDocs " +"`_ 에 있습니다. 더 많은 정보는 `Python Wiki " +"`_ 에서 볼 수 있습니다." #: ../../scenarios/gui.rst:175 msgid "wxPython" -msgstr "" +msgstr "wxPython" #: ../../scenarios/gui.rst:177 msgid "" "wxPython is a GUI toolkit for the Python programming language. It allows " "Python programmers to create programs with a robust, highly functional " -"graphical user interface, simply and easily. It is implemented as a " -"Python extension module (native code) that wraps the popular wxWidgets " -"cross platform GUI library, which is written in C++." +"graphical user interface, simply and easily. It is implemented as a Python " +"extension module (native code) that wraps the popular wxWidgets cross " +"platform GUI library, which is written in C++." msgstr "" +"wxPython은 파이썬 프로그래밍 언어를 위한 GUI 툴킷입니다. 파이썬 프로그래머가 견고하고 기능이 풍부한 그래픽 사용자 인터페이스를" +" 갖춘 프로그램을 단순하고 쉽게 만들 수 있게 해줍니다. C++로 작성된 인기 있는 크로스 플랫폼 GUI 라이브러리 wxWidgets를 " +"감싸는 파이썬 확장 모듈(네이티브 코드)로 구현되어 있습니다." #: ../../scenarios/gui.rst:183 msgid "" @@ -266,6 +309,8 @@ msgid "" "https://www.wxpython.org/pages/downloads/ and download the appropriate " "package for your OS.*" msgstr "" +"**(안정 버전) wxPython 설치** *https://www.wxpython.org/pages/downloads/ 로 가서 사용하는" +" OS에 맞는 패키지를 다운로드하세요.*" #~ msgid "" #~ msgstr "" @@ -274,57 +319,42 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "`Camelot `_ provides" -#~ " components for building applications on" -#~ " top of Python, SQLAlchemy and Qt." -#~ " It is inspired by the Django " -#~ "admin interface." +#~ "`Camelot `_ provides components for building " +#~ "applications on top of Python, SQLAlchemy and Qt. It is inspired by the " +#~ "Django admin interface." #~ msgstr "" #~ msgid "" -#~ "The main resource for information is " -#~ "the website: http://www.python-camelot.com and" -#~ " the mailing list " +#~ "The main resource for information is the website: http://www.python-" +#~ "camelot.com and the mailing list " #~ "https://groups.google.com/forum/#!forum/project-camelot" #~ msgstr "" #~ msgid "" -#~ "PyGTK provides Python bindings for the" -#~ " GTK+ toolkit. Like the GTK+ library" -#~ " itself, it is currently licensed " -#~ "under the GNU LGPL. It is worth" -#~ " noting that PyGTK only currently " -#~ "supports the Gtk-2.X API (NOT Gtk-3.0)." -#~ " It is currently recommended that " -#~ "PyGTK not be used for new projects" -#~ " and that existing applications be " -#~ "ported from PyGTK to PyGObject." +#~ "PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ library " +#~ "itself, it is currently licensed under the GNU LGPL. It is worth noting that" +#~ " PyGTK only currently supports the Gtk-2.X API (NOT Gtk-3.0). It is " +#~ "currently recommended that PyGTK not be used for new projects and that " +#~ "existing applications be ported from PyGTK to PyGObject." #~ msgstr "" #~ msgid "" -#~ "`PyGObject `_ " -#~ "provides Python bindings, which gives " -#~ "access to the entire GNOME software " -#~ "platform. It is fully compatible with" -#~ " GTK+ 3. Here is a tutorial to" -#~ " get started with `Python GTK+ 3 " -#~ "Tutorial `_ provides Python " +#~ "bindings, which gives access to the entire GNOME software platform. It is " +#~ "fully compatible with GTK+ 3. Here is a tutorial to get started with `Python" +#~ " GTK+ 3 Tutorial `_." #~ msgstr "" #~ msgid "" -#~ "Kivy is written in Python, based " -#~ "on OpenGL and supports different input" -#~ " devices such as: Mouse, Dual Mouse," -#~ " TUIO, WiiMote, WM_TOUCH, HIDtouch, Apple's" -#~ " products and so on." +#~ "Kivy is written in Python, based on OpenGL and supports different input " +#~ "devices such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, " +#~ "Apple's products and so on." #~ msgstr "" #~ msgid "" -#~ "Kivy is actively being developed by " -#~ "a community and is free to use." -#~ " It operates on all major platforms" -#~ " (Linux, OSX, Windows, Android)." +#~ "Kivy is actively being developed by a community and is free to use. It " +#~ "operates on all major platforms (Linux, OSX, Windows, Android)." #~ msgstr "" #~ msgid "pip install pyside" @@ -334,15 +364,11 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "PyjamasDesktop is a port of Pyjamas. " -#~ "PyjamasDesktop is application widget set " -#~ "for desktop and a cross-platform " -#~ "framework. (After release v0.6 PyjamasDesktop" -#~ " is a part of Pyjamas (Pyjs)). " -#~ "Briefly, it allows the exact same " -#~ "Python web application source code to" -#~ " be executed as a standalone desktop" -#~ " application." +#~ "PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget " +#~ "set for desktop and a cross-platform framework. (After release v0.6 " +#~ "PyjamasDesktop is a part of Pyjamas (Pyjs)). Briefly, it allows the exact " +#~ "same Python web application source code to be executed as a standalone " +#~ "desktop application." #~ msgstr "" #~ msgid "" @@ -355,9 +381,8 @@ msgstr "" #~ msgid "" #~ "**Install (Stable) wxPython** *go to " -#~ "http://www.wxpython.org/download.php#stable and download" -#~ " the appropriate package for your " -#~ "OS.*" +#~ "http://www.wxpython.org/download.php#stable and download the appropriate " +#~ "package for your OS.*" #~ msgstr "" #~ msgid "PySide is a Python binding of the cross-platform GUI toolkit Qt." @@ -365,4 +390,3 @@ msgstr "" #~ msgid "https://wiki.qt.io/Category:LanguageBindings::PySide::Downloads" #~ msgstr "" - From a7c05f5a7a1ccf6d8739627a48e7116b12a190df Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:22:33 +0900 Subject: [PATCH 110/117] Translate remaining gui.po entry (non-breaking space issue resolved) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/gui.mo | Bin 11296 -> 11520 bytes docs/locale/ko/LC_MESSAGES/scenarios/gui.po | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo b/docs/locale/ko/LC_MESSAGES/scenarios/gui.mo index db74ab169fe2d718374bfa1bce18bee7885f9232..ac0b3583a43452f442e8640e3f35d9495932da3e 100644 GIT binary patch delta 818 zcmYMyO-K}R7{~En>#S||VytFaW|Q`^X+{)9bx4dt0&OW>vK>q|=pYX3VrqEEO(>#M z2Qz{wEILI=v?)QSq$n!ELr_BWa_L|evO%4Kz7KO~n3>P~pV?>jd7hckw)4sCr>HX` zwmOaqjtdKH^?#cSNkc4u;3n)YkS6dNF2rU>3S$BZ$;0K?fyXg}?0UuN5>DZLOpw$j zWfdxvN(p%Q3^T~C9X#C<_hLQnM~e^QAH0Z*@mxfDgO_nLCKgH0EsoTz14U9A4`Bm7 z#+&#X>-c|N3?Hd4sF4blnBZ~Yr8EzQ!zCPbqUAtOXAb{GV)68%+!;3^AMAl)40tYjM@Zv^T{-aa9e>_4D&-1*#zu%re-{0riX#a~?=DSrf zE4CnqpJVut8U5di4rz?x8n$A>DZRyUbmO%OsS zQbxZi-ZSBLN$mQ>$=r~~>-gb{f1H(t9 zEKXwwUgROGykB=I%ng^Tq%U{{O#_Z7bsm@cG0C!DGym>{ zw2o;@>cU8^M5#%nM`ba>^)E4=q1Ypbr~GjHr2QF6xWd?X%8vL4nutqiBL0OeLc2JC z^4SeP#2mvx{D{HRQUG_bj8?s!@Lx0wbTyEFoWet4qEDfphSF#vp5hNtz$X~Q2Rv;X zpQB0a@fm3bXEBN`jnV>+;3W(-Nn4mibN!vO(k8~xG|P%Z?#tzXp_1bZ=i|ze7hZS0!_pNILGgg+H;!@pEDPCIlQ^A^+D?&-3M9- diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po index f5da79f6d..377af7e1a 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/gui.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/gui.po @@ -138,7 +138,7 @@ msgstr "PyObjC" msgid "" "Only available on OS X. Don't pick this if you're writing a cross-platform " "application." -msgstr "" +msgstr "OS X에서만 사용할 수 있습니다. 크로스 플랫폼 응용을 만든다면 이것을 선택하지 마세요." #: ../../scenarios/gui.rst:79 msgid "PySide" From 8f80d8f76c5e4b549bfc1b336f07edaf56f14291 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:24:17 +0900 Subject: [PATCH 111/117] Translate scenarios/admin.po (55 entries: Fabric, Salt, Ansible, Chef, Puppet, Buildout) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/admin.mo | Bin 384 -> 18961 bytes docs/locale/ko/LC_MESSAGES/scenarios/admin.po | 509 +++++++++--------- 2 files changed, 261 insertions(+), 248 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo b/docs/locale/ko/LC_MESSAGES/scenarios/admin.mo index e64754bdfaae516a10071360018eec59c6c71757..2251c26c88103ad88fde37f0fd08e484807b80ca 100644 GIT binary patch literal 18961 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 rZE8D{uG^{^Ylj@}*4}R5b\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,290 +23,346 @@ msgstr "" #: ../../scenarios/admin.rst:4 msgid "Systems Administration" -msgstr "" +msgstr "시스템 관리" #: ../../scenarios/admin.rst:11 msgid "Fabric" -msgstr "" +msgstr "Fabric" #: ../../scenarios/admin.rst:13 msgid "" "`Fabric `_ is a library for simplifying system " "administration tasks. While Chef and Puppet tend to focus on managing " -"servers and system libraries, Fabric is more focused on application level" -" tasks such as deployment." +"servers and system libraries, Fabric is more focused on application level " +"tasks such as deployment." msgstr "" +"`Fabric `_ 는 시스템 관리 작업을 단순화하기 위한 라이브러리입니다. Chef와 " +"Puppet이 서버와 시스템 라이브러리 관리에 초점을 맞추는 경향이 있는 반면, Fabric은 배포와 같은 응용 수준의 작업에 더 초점을" +" 맞춥니다." #: ../../scenarios/admin.rst:18 msgid "Install Fabric:" -msgstr "" +msgstr "Fabric 설치:" #: ../../scenarios/admin.rst:24 msgid "" -"The following code will create two tasks that we can use: " -"``memory_usage`` and ``deploy``. The former will output the memory usage " -"on each machine. The latter will SSH into each server, cd to our project " -"directory, activate the virtual environment, pull the newest codebase, " -"and restart the application server." +"The following code will create two tasks that we can use: ``memory_usage`` " +"and ``deploy``. The former will output the memory usage on each machine. The" +" latter will SSH into each server, cd to our project directory, activate the" +" virtual environment, pull the newest codebase, and restart the application " +"server." msgstr "" +"다음 코드는 우리가 사용할 두 가지 태스크, 즉 ``memory_usage`` 와 ``deploy`` 를 만듭니다. 전자는 각 머신의 " +"메모리 사용량을 출력합니다. 후자는 각 서버에 SSH로 접속하여 프로젝트 디렉토리로 이동한 다음, 가상 환경을 활성화하고, 최신 " +"코드베이스를 가져오고, 응용 서버를 재시작합니다." #: ../../scenarios/admin.rst:47 msgid "" "With the previous code saved in a file named :file:`fabfile.py`, we can " "check memory usage with:" -msgstr "" +msgstr "위 코드를 :file:`fabfile.py` 라는 이름의 파일에 저장하면, 다음과 같이 메모리 사용량을 확인할 수 있습니다:" #: ../../scenarios/admin.rst:67 msgid "and we can deploy with:" -msgstr "" +msgstr "그리고 다음과 같이 배포할 수 있습니다:" #: ../../scenarios/admin.rst:73 msgid "" "Additional features include parallel execution, interaction with remote " "programs, and host grouping." -msgstr "" +msgstr "추가 기능으로 병렬 실행, 원격 프로그램과의 상호작용, 호스트 그룹화가 있습니다." #: ../../scenarios/admin.rst:76 msgid "`Fabric Documentation `_" -msgstr "" +msgstr "`Fabric 문서 `_" #: ../../scenarios/admin.rst:81 msgid "Salt" -msgstr "" +msgstr "Salt" #: ../../scenarios/admin.rst:83 msgid "" -"`Salt `_ is an open source infrastructure " -"management tool. It supports remote command execution from a central " -"point (master host) to multiple hosts (minions). It also supports system " -"states which can be used to configure multiple servers using simple " -"template files." +"`Salt `_ is an open source infrastructure management " +"tool. It supports remote command execution from a central point (master " +"host) to multiple hosts (minions). It also supports system states which can " +"be used to configure multiple servers using simple template files." msgstr "" +"`Salt `_ 는 오픈 소스 인프라 관리 도구입니다. 중앙 지점(마스터 호스트)에서 여러 " +"호스트(미니언)로의 원격 명령 실행을 지원합니다. 또한 간단한 템플릿 파일로 여러 서버를 설정하는 데 사용할 수 있는 시스템 " +"상태(state)도 지원합니다." #: ../../scenarios/admin.rst:88 -msgid "Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" -msgstr "" +msgid "" +"Salt supports Python versions 2.6 and 2.7 and can be installed via pip:" +msgstr "Salt는 파이썬 2.6과 2.7 버전을 지원하며 pip으로 설치할 수 있습니다:" #: ../../scenarios/admin.rst:94 msgid "" -"After configuring a master server and any number of minion hosts, we can " -"run arbitrary shell commands or use pre-built modules of complex commands" -" on our minions." +"After configuring a master server and any number of minion hosts, we can run" +" arbitrary shell commands or use pre-built modules of complex commands on " +"our minions." msgstr "" +"마스터 서버와 임의의 개수의 미니언 호스트를 설정한 후에는, 미니언에 대해 임의의 쉘 명령어를 실행하거나, 복잡한 명령어로 미리 만들어진" +" 모듈을 사용할 수 있습니다." #: ../../scenarios/admin.rst:98 msgid "" "The following command lists all available minion hosts, using the ping " "module." -msgstr "" +msgstr "다음 명령어는 ping 모듈을 사용해 사용 가능한 모든 미니언 호스트를 나열합니다." #: ../../scenarios/admin.rst:104 msgid "" -"The host filtering is accomplished by matching the minion id or using the" -" grains system. The `grains " -"`_ " -"system uses static host information like the operating system version or " -"the CPU architecture to provide a host taxonomy for the Salt modules." +"The host filtering is accomplished by matching the minion id or using the " +"grains system. The `grains " +"`_ system " +"uses static host information like the operating system version or the CPU " +"architecture to provide a host taxonomy for the Salt modules." msgstr "" +"호스트 필터링은 미니언 ID를 매칭하거나 grains 시스템을 사용하여 이루어집니다. `grains " +"`_ 시스템은 " +"운영체제 버전이나 CPU 아키텍처 같은 정적인 호스트 정보를 사용하여 Salt 모듈을 위한 호스트 분류 체계를 제공합니다." #: ../../scenarios/admin.rst:110 msgid "" -"The following command lists all available minions running CentOS using " -"the grains system:" -msgstr "" +"The following command lists all available minions running CentOS using the " +"grains system:" +msgstr "다음 명령어는 grains 시스템을 사용하여 CentOS에서 실행 중인 사용 가능한 모든 미니언을 나열합니다:" #: ../../scenarios/admin.rst:117 msgid "" "Salt also provides a state system. States can be used to configure the " "minion hosts." -msgstr "" +msgstr "Salt는 상태(state) 시스템도 제공합니다. 상태는 미니언 호스트를 설정하는 데 사용할 수 있습니다." #: ../../scenarios/admin.rst:120 msgid "" -"For example, when a minion host is ordered to read the following state " -"file, it will install and start the Apache server:" -msgstr "" +"For example, when a minion host is ordered to read the following state file," +" it will install and start the Apache server:" +msgstr "예를 들어, 미니언 호스트가 다음 상태 파일을 읽도록 지시받으면, Apache 서버를 설치하고 시작합니다:" #: ../../scenarios/admin.rst:134 msgid "" -"State files can be written using YAML, the Jinja2 template system, or " -"pure Python." -msgstr "" +"State files can be written using YAML, the Jinja2 template system, or pure " +"Python." +msgstr "상태 파일은 YAML, Jinja2 템플릿 시스템, 또는 순수 파이썬으로 작성할 수 있습니다." #: ../../scenarios/admin.rst:136 msgid "`Salt Documentation `_" -msgstr "" +msgstr "`Salt 문서 `_" #: ../../scenarios/admin.rst:141 msgid "Psutil" -msgstr "" +msgstr "Psutil" #: ../../scenarios/admin.rst:143 msgid "" "`Psutil `_ is an interface to " -"different system information (e.g. CPU, memory, disks, network, users, " -"and processes)." +"different system information (e.g. CPU, memory, disks, network, users, and " +"processes)." msgstr "" +"`Psutil `_ 는 다양한 시스템 정보(예: CPU, 메모리, " +"디스크, 네트워크, 사용자, 프로세스)에 대한 인터페이스입니다." #: ../../scenarios/admin.rst:146 msgid "" -"Here is an example to be aware of some server overload. If any of the " -"tests (net, CPU) fail, it will send an email." -msgstr "" +"Here is an example to be aware of some server overload. If any of the tests " +"(net, CPU) fail, it will send an email." +msgstr "다음은 서버 과부하를 감지하기 위한 예시입니다. 검사(net, CPU) 중 하나라도 실패하면 이메일을 보냅니다." #: ../../scenarios/admin.rst:193 msgid "" "A full terminal application like a widely extended top is `Glance " -"`_, which is based on psutil and " -"has the ability for client-server monitoring." +"`_, which is based on psutil and has " +"the ability for client-server monitoring." msgstr "" +"광범위하게 확장된 top과 같은 완전한 터미널 응용으로는 `Glance " +"`_ 가 있으며, psutil을 기반으로 하고 클라이언트-서버 " +"모니터링 기능을 갖추고 있습니다." #: ../../scenarios/admin.rst:197 msgid "Ansible" -msgstr "" +msgstr "Ansible" #: ../../scenarios/admin.rst:199 msgid "" -"`Ansible `_ is an open source system automation " -"tool. Its biggest advantage over Puppet or Chef is that it does not " -"require an agent on the client machine. Playbooks are Ansible’s " -"configuration, deployment, and orchestration language and are written in " -"YAML with Jinja2 for templating." +"`Ansible `_ is an open source system automation tool. " +"Its biggest advantage over Puppet or Chef is that it does not require an " +"agent on the client machine. Playbooks are Ansible’s configuration, " +"deployment, and orchestration language and are written in YAML with Jinja2 " +"for templating." msgstr "" +"`Ansible `_ 는 오픈 소스 시스템 자동화 도구입니다. Puppet이나 Chef에 비해 가장" +" 큰 장점은 클라이언트 머신에 에이전트가 필요 없다는 점입니다. 플레이북(Playbook)은 Ansible의 설정, 배포, 오케스트레이션" +" 언어로, 템플릿팅을 위한 Jinja2와 함께 YAML로 작성됩니다." #: ../../scenarios/admin.rst:204 -msgid "Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" -msgstr "" +msgid "" +"Ansible supports Python versions 2.6 and 2.7 and can be installed via pip:" +msgstr "Ansible은 파이썬 2.6과 2.7 버전을 지원하며 pip으로 설치할 수 있습니다:" #: ../../scenarios/admin.rst:210 msgid "" -"Ansible requires an inventory file that describes the hosts to which it " -"has access. Below is an example of a host and playbook that will ping all" -" the hosts in the inventory file." +"Ansible requires an inventory file that describes the hosts to which it has " +"access. Below is an example of a host and playbook that will ping all the " +"hosts in the inventory file." msgstr "" +"Ansible은 접근할 호스트들을 기술한 인벤토리 파일이 필요합니다. 아래는 인벤토리 파일의 모든 호스트에 ping을 보내는 호스트와 " +"플레이북의 예시입니다." #: ../../scenarios/admin.rst:214 msgid "Here is an example inventory file: :file:`hosts.yml`" -msgstr "" +msgstr "다음은 인벤토리 파일 예시입니다: :file:`hosts.yml`" #: ../../scenarios/admin.rst:222 msgid "Here is an example playbook: :file:`ping.yml`" -msgstr "" +msgstr "다음은 플레이북 예시입니다: :file:`ping.yml`" #: ../../scenarios/admin.rst:234 msgid "To run the playbook:" -msgstr "" +msgstr "플레이북을 실행하려면:" #: ../../scenarios/admin.rst:240 msgid "" -"The Ansible playbook will ping all of the servers in the " -":file:`hosts.yml` file. You can also select groups of servers using " -"Ansible. For more information about Ansible, read the `Ansible Docs " +"The Ansible playbook will ping all of the servers in the :file:`hosts.yml` " +"file. You can also select groups of servers using Ansible. For more " +"information about Ansible, read the `Ansible Docs " "`_." msgstr "" +"Ansible 플레이북은 :file:`hosts.yml` 파일의 모든 서버에 ping을 보냅니다. Ansible로 서버 그룹을 선택할 " +"수도 있습니다. Ansible에 대한 더 많은 정보는 `Ansible 문서 `_ 를 " +"참고하세요." #: ../../scenarios/admin.rst:244 msgid "" -"`An Ansible tutorial `_ is also a great and detailed introduction to getting started" -" with Ansible." +"`An Ansible tutorial `_ " +"is also a great and detailed introduction to getting started with Ansible." msgstr "" +"`Ansible 튜토리얼 `_ 도 " +"Ansible 입문을 위한 훌륭하고 자세한 소개입니다." #: ../../scenarios/admin.rst:250 msgid "Chef" -msgstr "" +msgstr "Chef" #: ../../scenarios/admin.rst:252 msgid "" -"`Chef `_ is a systems and cloud " -"infrastructure automation framework that makes it easy to deploy servers " -"and applications to any physical, virtual, or cloud location. In case " -"this is your choice for configuration management, you will primarily use " -"Ruby to write your infrastructure code." +"`Chef `_ is a systems and cloud infrastructure " +"automation framework that makes it easy to deploy servers and applications " +"to any physical, virtual, or cloud location. In case this is your choice for" +" configuration management, you will primarily use Ruby to write your " +"infrastructure code." msgstr "" +"`Chef `_ 는 시스템 및 클라우드 인프라 자동화 프레임워크로, 어떤 물리적, 가상," +" 클라우드 위치에도 서버와 응용을 쉽게 배포할 수 있게 해줍니다. 설정 관리 도구로 Chef를 선택한다면, 인프라 코드를 주로 Ruby로" +" 작성하게 됩니다." #: ../../scenarios/admin.rst:257 msgid "" "Chef clients run on every server that is part of your infrastructure and " -"these regularly check with your Chef server to ensure your system is " -"always aligned and represents the desired state. Since each individual " -"server has its own distinct Chef client, each server configures itself " -"and this distributed approach makes Chef a scalable automation platform." +"these regularly check with your Chef server to ensure your system is always " +"aligned and represents the desired state. Since each individual server has " +"its own distinct Chef client, each server configures itself and this " +"distributed approach makes Chef a scalable automation platform." msgstr "" +"Chef 클라이언트는 인프라에 속한 모든 서버에서 실행되며, Chef 서버에 정기적으로 확인하여 시스템이 항상 일관되고 원하는 상태를 " +"나타내도록 합니다. 각 서버가 자신만의 별도의 Chef 클라이언트를 가지고 있기 때문에 각 서버가 스스로를 설정하며, 이러한 분산 접근 " +"방식 덕분에 Chef는 확장 가능한 자동화 플랫폼이 됩니다." #: ../../scenarios/admin.rst:262 msgid "" -"Chef works by using custom recipes (configuration elements), implemented " -"in cookbooks. Cookbooks, which are basically packages for infrastructure " +"Chef works by using custom recipes (configuration elements), implemented in " +"cookbooks. Cookbooks, which are basically packages for infrastructure " "choices, are usually stored in your Chef server. Read the `DigitalOcean " "tutorial series `_ " -"on Chef to learn how to create a simple Chef Server." +"install-a-chef-server-workstation-and-client-on-ubuntu-vps-instances>`_ on " +"Chef to learn how to create a simple Chef Server." msgstr "" +"Chef는 쿡북(cookbook)에 구현된 사용자 정의 레시피(설정 요소)를 사용하여 동작합니다. 쿡북은 기본적으로 인프라 선택 사항을 " +"위한 패키지이며, 보통 Chef 서버에 저장됩니다. 간단한 Chef 서버를 만드는 방법을 배우려면 Chef에 대한 " +"`DigitalOcean 튜토리얼 시리즈 " +"`_ 를 읽어보세요." #: ../../scenarios/admin.rst:268 msgid "" -"To create a simple cookbook the `knife " -"`_ command is used:" -msgstr "" +"To create a simple cookbook the `knife `_ " +"command is used:" +msgstr "간단한 쿡북을 만들 때는 `knife `_ 명령어를 사용합니다:" #: ../../scenarios/admin.rst:274 msgid "" -"`Getting started with Chef `_ is a good starting point for Chef Beginners and " -"many community maintained cookbooks that can serve as a good reference or" -" tweaked to serve your infrastructure configuration needs can be found on" -" the `Chef Supermarket `_." +"`Getting started with Chef `_ is a good starting point for Chef Beginners and many " +"community maintained cookbooks that can serve as a good reference or tweaked" +" to serve your infrastructure configuration needs can be found on the `Chef " +"Supermarket `_." msgstr "" +"`Getting started with Chef `_ 는 Chef 초보자를 위한 좋은 출발점이며, 좋은 참고가 되거나 인프라 설정 필요에 맞게 다듬어 쓸 수 " +"있는 커뮤니티가 유지하는 많은 쿡북은 `Chef Supermarket " +"`_ 에서 찾을 수 있습니다." #: ../../scenarios/admin.rst:279 msgid "`Chef Documentation `_" -msgstr "" +msgstr "`Chef 문서 `_" #: ../../scenarios/admin.rst:284 msgid "Puppet" -msgstr "" +msgstr "Puppet" #: ../../scenarios/admin.rst:286 msgid "" "`Puppet `_ is IT Automation and configuration " -"management software from Puppet Labs that allows System Administrators to" -" define the state of their IT Infrastructure, thereby providing an " -"elegant way to manage their fleet of physical and virtual machines." +"management software from Puppet Labs that allows System Administrators to " +"define the state of their IT Infrastructure, thereby providing an elegant " +"way to manage their fleet of physical and virtual machines." msgstr "" +"`Puppet `_ 은 Puppet Labs의 IT 자동화 및 설정 관리 소프트웨어로, 시스템 " +"관리자가 IT 인프라의 상태를 정의할 수 있게 해주어 물리적 및 가상 머신 군을 우아하게 관리할 수 있는 방법을 제공합니다." #: ../../scenarios/admin.rst:291 msgid "" "Puppet is available both as an Open Source and an Enterprise variant. " -"Modules are small, shareable units of code written to automate or define " -"the state of a system. `Puppet Forge `_ " -"is a repository for modules written by the community for Open Source and " +"Modules are small, shareable units of code written to automate or define the" +" state of a system. `Puppet Forge `_ is a " +"repository for modules written by the community for Open Source and " "Enterprise Puppet." msgstr "" +"Puppet은 오픈 소스 및 엔터프라이즈 변형으로 모두 제공됩니다. 모듈은 시스템의 상태를 자동화하거나 정의하기 위해 작성된 작고 공유 " +"가능한 코드 단위입니다. `Puppet Forge `_ 는 커뮤니티가 오픈 소스 " +"및 엔터프라이즈 Puppet을 위해 작성한 모듈의 저장소입니다." #: ../../scenarios/admin.rst:296 msgid "" -"Puppet Agents are installed on nodes whose state needs to be monitored or" -" changed. A designated server known as the Puppet Master is responsible " -"for orchestrating the agent nodes." +"Puppet Agents are installed on nodes whose state needs to be monitored or " +"changed. A designated server known as the Puppet Master is responsible for " +"orchestrating the agent nodes." msgstr "" +"Puppet 에이전트는 상태를 모니터링하거나 변경해야 하는 노드에 설치됩니다. Puppet 마스터로 알려진 지정된 서버가 에이전트 노드를" +" 오케스트레이션합니다." #: ../../scenarios/admin.rst:300 msgid "" -"Agent nodes send basic facts about the system such as the operating " -"system, kernel, architecture, IP address, hostname, etc. to the Puppet " -"Master. The Puppet Master then compiles a catalog with information " -"provided by the agents on how each node should be configured and sends it" -" to the agent. The agent enforces the change as prescribed in the catalog" -" and sends a report back to the Puppet Master." +"Agent nodes send basic facts about the system such as the operating system, " +"kernel, architecture, IP address, hostname, etc. to the Puppet Master. The " +"Puppet Master then compiles a catalog with information provided by the " +"agents on how each node should be configured and sends it to the agent. The " +"agent enforces the change as prescribed in the catalog and sends a report " +"back to the Puppet Master." msgstr "" +"에이전트 노드는 운영체제, 커널, 아키텍처, IP 주소, 호스트명 등 시스템에 대한 기본 팩트(fact)를 Puppet 마스터로 " +"보냅니다. 그러면 Puppet 마스터는 에이전트가 제공한 정보를 바탕으로 각 노드가 어떻게 설정되어야 하는지에 대한 카탈로그를 컴파일하여" +" 에이전트에게 보냅니다. 에이전트는 카탈로그에 명시된 대로 변경을 적용하고 Puppet 마스터에게 보고를 보냅니다." #: ../../scenarios/admin.rst:307 msgid "" -"Facter is an interesting tool that ships with Puppet that pulls basic " -"facts about the system. These facts can be referenced as a variable while" -" writing your Puppet modules." +"Facter is an interesting tool that ships with Puppet that pulls basic facts " +"about the system. These facts can be referenced as a variable while writing " +"your Puppet modules." msgstr "" +"Facter는 Puppet과 함께 제공되는 흥미로운 도구로, 시스템에 대한 기본 팩트를 가져옵니다. 이 팩트들은 Puppet 모듈을 " +"작성할 때 변수로 참조할 수 있습니다." #: ../../scenarios/admin.rst:320 msgid "" @@ -314,6 +370,8 @@ msgid "" "together form Puppet Modules. Puppet manifests end with an extension of " "``.pp``. Here is an example of 'Hello World' in Puppet." msgstr "" +"Puppet에서 모듈을 작성하는 일은 꽤 단순합니다. Puppet 매니페스트가 모여 Puppet 모듈을 이룹니다. Puppet " +"매니페스트는 ``.pp`` 확장자로 끝납니다. 다음은 Puppet으로 작성한 'Hello World' 예시입니다." #: ../../scenarios/admin.rst:332 msgid "" @@ -322,49 +380,59 @@ msgid "" "Similarly, this holds true for other facts such as hostname which can be " "referenced by ``$hostname``." msgstr "" +"다음은 시스템 기반 로직을 사용한 또 다른 예시입니다. 운영체제 팩트가 ``$`` 기호가 앞에 붙은 변수로 사용되는 방식을 눈여겨보세요." +" 마찬가지로 호스트명 같은 다른 팩트도 ``$hostname`` 으로 참조할 수 있습니다." #: ../../scenarios/admin.rst:346 msgid "" "There are several resource types for Puppet but the package-file-service " -"paradigm is all you need for undertaking the majority of the " -"configuration management. The following Puppet code makes sure that the " -"OpenSSH-Server package is installed in a system and the sshd service is " -"notified to restart every time the sshd configuration file is changed." +"paradigm is all you need for undertaking the majority of the configuration " +"management. The following Puppet code makes sure that the OpenSSH-Server " +"package is installed in a system and the sshd service is notified to restart" +" every time the sshd configuration file is changed." msgstr "" +"Puppet에는 여러 가지 리소스 타입이 있지만, 설정 관리의 대부분을 수행하는 데에는 package-file-service 패러다임 " +"하나면 충분합니다. 다음 Puppet 코드는 시스템에 OpenSSH-Server 패키지가 설치되어 있는지 확인하고, sshd 설정 파일이" +" 변경될 때마다 sshd 서비스가 재시작되도록 알립니다." #: ../../scenarios/admin.rst:377 msgid "" "For more information, refer to the `Puppet Labs Documentation " "`_" -msgstr "" +msgstr "더 자세한 내용은 `Puppet Labs 문서 `_ 를 참고하세요." #: ../../scenarios/admin.rst:382 msgid "Blueprint" -msgstr "" +msgstr "Blueprint" #: ../../scenarios/admin.rst:384 msgid "Todo" -msgstr "" +msgstr "할 일" #: ../../scenarios/admin.rst:384 msgid "Write about Blueprint" -msgstr "" +msgstr "Blueprint에 대해 작성하기" #: ../../scenarios/admin.rst:389 msgid "Buildout" -msgstr "" +msgstr "Buildout" #: ../../scenarios/admin.rst:391 msgid "" -"`Buildout `_ is an open source software build " -"tool. Buildout is created using the Python programming language. It " -"implements a principle of separation of configuration from the scripts " -"that do the setting up. Buildout is primarily used to download and set up" -" dependencies in `Python eggs " -"`_ " -"format of the software being developed or deployed. Recipes for build " -"tasks in any environment can be created, and many are already available." -msgstr "" +"`Buildout `_ is an open source software build tool." +" Buildout is created using the Python programming language. It implements a " +"principle of separation of configuration from the scripts that do the " +"setting up. Buildout is primarily used to download and set up dependencies " +"in `Python eggs `_ format of the software being developed or deployed. Recipes " +"for build tasks in any environment can be created, and many are already " +"available." +msgstr "" +"`Buildout `_ 은 오픈 소스 소프트웨어 빌드 도구입니다. Buildout은 파이썬 " +"프로그래밍 언어로 만들어졌습니다. 설정과 설정을 수행하는 스크립트의 분리 원칙을 구현합니다. Buildout은 주로 개발 또는 배포되는 " +"소프트웨어의 `파이썬 egg `_ 포맷으로 의존성을 다운로드하고 설정하는 데 사용됩니다. 어떤 환경에서든 빌드 작업을 위한 레시피를 만들 수 " +"있으며, 이미 많은 것들이 사용 가능합니다." #~ msgid "" #~ msgstr "" @@ -379,166 +447,111 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "The following code will create two " -#~ "tasks that we can use: ``memory_usage``" -#~ " and ``deploy``. The former will " -#~ "output the memory usage on each " -#~ "machine. The latter will ssh into " -#~ "each server, cd to our project " -#~ "directory, activate the virtual environment," -#~ " pull the newest codebase, and " -#~ "restart the application server." +#~ "The following code will create two tasks that we can use: ``memory_usage`` " +#~ "and ``deploy``. The former will output the memory usage on each machine. The" +#~ " latter will ssh into each server, cd to our project directory, activate the" +#~ " virtual environment, pull the newest codebase, and restart the application " +#~ "server." #~ msgstr "" #~ msgid "" -#~ "The host filtering is accomplished by" -#~ " matching the minion id, or using " -#~ "the grains system. The `grains " -#~ "`_" -#~ " system uses static host information " -#~ "like the operating system version or " -#~ "the CPU architecture to provide a " -#~ "host taxonomy for the Salt modules." +#~ "The host filtering is accomplished by matching the minion id, or using the " +#~ "grains system. The `grains " +#~ "`_ system " +#~ "uses static host information like the operating system version or the CPU " +#~ "architecture to provide a host taxonomy for the Salt modules." #~ msgstr "" #~ msgid "" -#~ "State files can be written using " -#~ "YAML, the Jinja2 template system or " -#~ "pure Python." +#~ "State files can be written using YAML, the Jinja2 template system or pure " +#~ "Python." #~ msgstr "" #~ msgid "" -#~ "`Psutil `_ is an" -#~ " interface to different system information" -#~ " (e.g. CPU, memory, disks, network, " -#~ "users and processes)." +#~ "`Psutil `_ is an interface to different " +#~ "system information (e.g. CPU, memory, disks, network, users and processes)." #~ msgstr "" #~ msgid "" -#~ "`Ansible `_ is an open" -#~ " source system automation tool. The " -#~ "biggest advantage over Puppet or Chef" -#~ " is it does not require an " -#~ "agent on the client machine. Playbooks" -#~ " are Ansible’s configuration, deployment, " -#~ "and orchestration language and are " -#~ "written in YAML with Jinja2 for " -#~ "templating." +#~ "`Ansible `_ is an open source system automation tool. " +#~ "The biggest advantage over Puppet or Chef is it does not require an agent on" +#~ " the client machine. Playbooks are Ansible’s configuration, deployment, and " +#~ "orchestration language and are written in YAML with Jinja2 for templating." #~ msgstr "" #~ msgid "" -#~ "Chef works by using custom recipes " -#~ "(configuration elements), implemented in " -#~ "cookbooks. Cookbooks, which are basically " -#~ "packages for infrastructure choices, are " -#~ "usually stored in your Chef server. " -#~ "Read the `Digital Ocean tutorial series" -#~ " `_ on " -#~ "chef to learn how to create a " -#~ "simple Chef Server." +#~ "Chef works by using custom recipes (configuration elements), implemented in " +#~ "cookbooks. Cookbooks, which are basically packages for infrastructure " +#~ "choices, are usually stored in your Chef server. Read the `Digital Ocean " +#~ "tutorial series `_ on " +#~ "chef to learn how to create a simple Chef Server." #~ msgstr "" #~ msgid "" -#~ "Agent nodes send basic facts about " -#~ "the system such as to the " -#~ "operating system, kernel, architecture, ip " -#~ "address, hostname etc. to the Puppet " -#~ "Master. The Puppet Master then compiles" -#~ " a catalog with information provided " -#~ "by the agents on how each node " -#~ "should be configured and sends it " -#~ "to the agent. The agent enforces " -#~ "the change as prescribed in the " -#~ "catalog and sends a report back to" -#~ " the Puppet Master." +#~ "Agent nodes send basic facts about the system such as to the operating " +#~ "system, kernel, architecture, ip address, hostname etc. to the Puppet " +#~ "Master. The Puppet Master then compiles a catalog with information provided " +#~ "by the agents on how each node should be configured and sends it to the " +#~ "agent. The agent enforces the change as prescribed in the catalog and sends " +#~ "a report back to the Puppet Master." #~ msgstr "" #~ msgid "" -#~ "Writing Modules in Puppet is pretty " -#~ "straight forward. Puppet Manifests together" -#~ " form Puppet Modules. Puppet manifest " -#~ "end with an extension of ``.pp``. " -#~ "Here is an example of 'Hello " -#~ "World' in Puppet." +#~ "Writing Modules in Puppet is pretty straight forward. Puppet Manifests " +#~ "together form Puppet Modules. Puppet manifest end with an extension of " +#~ "``.pp``. Here is an example of 'Hello World' in Puppet." #~ msgstr "" #~ msgid "" -#~ "Here is another example with system " -#~ "based logic. Note how the operating " -#~ "system fact is being used as a " -#~ "variable prepended with the ``$`` sign." -#~ " Similarly, this holds true for other" -#~ " facts such as hostname which can " -#~ "be referenced by ``$hostname``" +#~ "Here is another example with system based logic. Note how the operating " +#~ "system fact is being used as a variable prepended with the ``$`` sign. " +#~ "Similarly, this holds true for other facts such as hostname which can be " +#~ "referenced by ``$hostname``" #~ msgstr "" #~ msgid "" -#~ "There are several resource types for " -#~ "Puppet but the package-file-service " -#~ "paradigm is all you need for " -#~ "undertaking majority of the configuration " -#~ "management. The following Puppet code " -#~ "makes sure that the OpenSSH-Server " -#~ "package is installed in a system " -#~ "and the sshd service is notified " -#~ "to restart everytime the sshd " -#~ "configuration file is changed." +#~ "There are several resource types for Puppet but the package-file-service " +#~ "paradigm is all you need for undertaking majority of the configuration " +#~ "management. The following Puppet code makes sure that the OpenSSH-Server " +#~ "package is installed in a system and the sshd service is notified to restart" +#~ " everytime the sshd configuration file is changed." #~ msgstr "" #~ msgid "" -#~ "`Buildout `_ is an " -#~ "open source software build tool. " -#~ "Buildout is created using the Python " -#~ "programming language. It implements a " -#~ "principle of separation of configuration " -#~ "from the scripts that do the " -#~ "setting up. Buildout is primarily used" -#~ " to download and set up dependencies" -#~ " in Python eggs format of the " -#~ "software being developed or deployed. " -#~ "Recipes for build tasks in any " -#~ "environment can be created, and many " -#~ "are already available." +#~ "`Buildout `_ is an open source software build tool." +#~ " Buildout is created using the Python programming language. It implements a " +#~ "principle of separation of configuration from the scripts that do the " +#~ "setting up. Buildout is primarily used to download and set up dependencies " +#~ "in Python eggs format of the software being developed or deployed. Recipes " +#~ "for build tasks in any environment can be created, and many are already " +#~ "available." #~ msgstr "" #~ msgid "" -#~ "Shinken is backwards-compatible with the" -#~ " Nagios configuration standard, and " -#~ "plugins.It works on any operating " -#~ "system, and architecture that supports " -#~ "Python which includes Windows, GNU/Linux, " -#~ "and FreeBSD." +#~ "Shinken is backwards-compatible with the Nagios configuration standard, and " +#~ "plugins.It works on any operating system, and architecture that supports " +#~ "Python which includes Windows, GNU/Linux, and FreeBSD." #~ msgstr "" #~ msgid "" -#~ "A full terminal application like a " -#~ "widely extended top which is based " -#~ "on psutil and with the ability of" -#~ " a client-server monitoring is " -#~ "`glance `_." +#~ "A full terminal application like a widely extended top which is based on " +#~ "psutil and with the ability of a client-server monitoring is `glance " +#~ "`_." #~ msgstr "" #~ msgid "Shinken" #~ msgstr "" #~ msgid "" -#~ "`Shinken `_ is" -#~ " a modern, Nagios compatible monitoring " -#~ "framework written in Python. Its main" -#~ " goal is to give users a " -#~ "flexible architecture for their monitoring " -#~ "system that is designed to scale " -#~ "to large environments." +#~ "`Shinken `_ is a modern, Nagios " +#~ "compatible monitoring framework written in Python. Its main goal is to give " +#~ "users a flexible architecture for their monitoring system that is designed " +#~ "to scale to large environments." #~ msgstr "" #~ msgid "" -#~ "Shinken is backwards-compatible with the" -#~ " Nagios configuration standard and plugins." -#~ " It works on any operating system " -#~ "and architecture that supports Python, " -#~ "which includes Windows, Linux, and " -#~ "FreeBSD." +#~ "Shinken is backwards-compatible with the Nagios configuration standard and " +#~ "plugins. It works on any operating system and architecture that supports " +#~ "Python, which includes Windows, Linux, and FreeBSD." #~ msgstr "" - From 544cc4935ea755d5fa62813dedc0144540910ed3 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:25:48 +0900 Subject: [PATCH 112/117] Translate shipping/packaging.po (57 entries: PyPI, pypiserver, S3, Linux distro packaging) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/shipping/packaging.mo | Bin 14655 -> 15741 bytes .../ko/LC_MESSAGES/shipping/packaging.po | 404 +++++++++--------- 2 files changed, 206 insertions(+), 198 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo b/docs/locale/ko/LC_MESSAGES/shipping/packaging.mo index 20b771201f0317a9c06b08c13c791d7f9d6a6942..0ad95ba7a2a212a70c2d90c993669575b39d1902 100644 GIT binary patch literal 15741 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\n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,14 +23,16 @@ msgstr "" #: ../../shipping/packaging.rst:6 msgid "Packaging Your Code" -msgstr "" +msgstr "코드 패키징하기" #: ../../shipping/packaging.rst:10 msgid "" -"Package your code to share it with other developers. For example, to " -"share a library for other developers to use in their application, or for " +"Package your code to share it with other developers. For example, to share a" +" library for other developers to use in their application, or for " "development tools like 'py.test'." msgstr "" +"코드를 다른 개발자와 공유하기 위해 패키징하세요. 예를 들어 다른 개발자가 자신의 응용에서 사용할 라이브러리를 공유하거나, " +"'py.test' 같은 개발 도구를 공유하기 위해서입니다." #: ../../shipping/packaging.rst:14 msgid "" @@ -39,25 +41,31 @@ msgid "" "developers to download and install your package either for casual " "experiments, or as part of large, professional systems." msgstr "" +"이 배포 방식의 장점은 PyPI와 pip 같은 잘 정립된 도구 생태계입니다. 덕분에 다른 개발자가 가벼운 실험을 위해서든 크고 전문적인 " +"시스템의 일부로서든 여러분의 패키지를 쉽게 다운로드하고 설치할 수 있습니다." #: ../../shipping/packaging.rst:19 msgid "" -"It is a well-established convention for Python code to be shared this " -"way. If your code isn't packaged on PyPI, then it will be harder for " -"other developers to find it and to use it as part of their existing " -"process. They will regard such projects with substantial suspicion of " -"being either badly managed or abandoned." +"It is a well-established convention for Python code to be shared this way. " +"If your code isn't packaged on PyPI, then it will be harder for other " +"developers to find it and to use it as part of their existing process. They " +"will regard such projects with substantial suspicion of being either badly " +"managed or abandoned." msgstr "" +"파이썬 코드를 이런 식으로 공유하는 것은 잘 정립된 컨벤션입니다. 코드가 PyPI에 패키징되어 있지 않다면, 다른 개발자가 그것을 찾아 " +"자신의 기존 프로세스에 사용하기가 더 어려워집니다. 그러한 프로젝트는 관리가 잘 되지 않거나 버려진 것으로 상당한 의심을 받게 됩니다." #: ../../shipping/packaging.rst:25 msgid "" "The downside of distributing code like this is that it relies on the " -"recipient understanding how to install the required version of Python, " -"and being able and willing to use tools such as pip to install your " -"code's other dependencies. This is fine when distributing to other " -"developers, but makes this method unsuitable for distributing " -"applications to end-users." +"recipient understanding how to install the required version of Python, and " +"being able and willing to use tools such as pip to install your code's other" +" dependencies. This is fine when distributing to other developers, but makes" +" this method unsuitable for distributing applications to end-users." msgstr "" +"이런 식으로 코드를 배포하는 것의 단점은, 수신자가 필요한 파이썬 버전을 설치하는 방법을 이해해야 하고 pip 같은 도구로 코드의 다른 " +"의존성을 설치할 수 있고 또 기꺼이 그렇게 해야 한다는 점에 의존한다는 것입니다. 다른 개발자에게 배포할 때는 괜찮지만, 이 방식은 " +"응용을 최종 사용자에게 배포하기에는 적합하지 않습니다." #: ../../shipping/packaging.rst:31 msgid "" @@ -65,16 +73,19 @@ msgid "" "guide.readthedocs.io/>`_ provides an extensive guide on creating and " "maintaining Python packages." msgstr "" +"`Python Packaging Guide `_ 는 파이썬 패키지를 만들고 유지보수하는 데에 대한 광범위한 안내를 제공합니다." #: ../../shipping/packaging.rst:37 msgid "Alternatives to Packaging" -msgstr "" +msgstr "패키징의 대안" #: ../../shipping/packaging.rst:39 msgid "" "To distribute applications to end-users, you should :ref:`freeze your " "application `." msgstr "" +"응용을 최종 사용자에게 배포하려면 :ref:`응용을 프리징(freezing) ` 해야 합니다." #: ../../shipping/packaging.rst:42 msgid "" @@ -82,20 +93,24 @@ msgid "" "package ` (e.g. a .deb file for " "Debian or Ubuntu.)" msgstr "" +"리눅스에서는 :ref:`리눅스 배포판 패키지를 만드는 것 ` (예:" +" Debian이나 Ubuntu용 .deb 파일)도 고려해 볼 만합니다." #: ../../shipping/packaging.rst:49 msgid "For Python Developers" -msgstr "" +msgstr "파이썬 개발자를 위해" #: ../../shipping/packaging.rst:51 msgid "" -"If you're writing an open source Python module, `PyPI `_" -" , more properly known as *The Cheeseshop*, is the place to host it." +"If you're writing an open source Python module, `PyPI `_ , " +"more properly known as *The Cheeseshop*, is the place to host it." msgstr "" +"오픈 소스 파이썬 모듈을 작성하고 있다면, 더 정확히는 *The Cheeseshop* 으로 알려진 `PyPI " +"`_ 가 그것을 호스팅할 곳입니다." #: ../../shipping/packaging.rst:57 msgid "Pip vs. easy_install" -msgstr "" +msgstr "Pip vs. easy_install" #: ../../shipping/packaging.rst:59 msgid "" @@ -103,76 +118,90 @@ msgid "" "`_." msgstr "" +"`pip `_ 을 사용하세요. 더 자세한 내용은 `여기 " +"`_ 를 참고하세요." #: ../../shipping/packaging.rst:64 msgid "Personal PyPI" -msgstr "" +msgstr "개인용 PyPI" #: ../../shipping/packaging.rst:66 msgid "" -"If you want to install packages from a source other than PyPI (say, if " -"your packages are *proprietary*), you can do it by hosting a simple HTTP " -"server, running from the directory which holds those packages which need " -"to be installed." +"If you want to install packages from a source other than PyPI (say, if your " +"packages are *proprietary*), you can do it by hosting a simple HTTP server, " +"running from the directory which holds those packages which need to be " +"installed." msgstr "" +"PyPI가 아닌 다른 출처에서 패키지를 설치하고 싶다면(예를 들어 패키지가 *상용/사설* 인 경우), 설치할 패키지가 있는 디렉토리에서 " +"실행되는 간단한 HTTP 서버를 호스팅하여 할 수 있습니다." #: ../../shipping/packaging.rst:71 msgid "**Showing an example is always beneficial**" -msgstr "" +msgstr "**예시를 보여주는 것은 항상 도움이 됩니다**" #: ../../shipping/packaging.rst:73 msgid "" "For example, if you want to install a package called " ":file:`MyPackage.tar.gz`, and assuming this is your directory structure:" msgstr "" +"예를 들어 :file:`MyPackage.tar.gz` 라는 패키지를 설치하고 싶고, 디렉토리 구조가 다음과 같다고 가정합니다:" #: ../../shipping/packaging.rst:79 msgid "archive" -msgstr "" +msgstr "archive" #: ../../shipping/packaging.rst:79 msgid "MyPackage" -msgstr "" +msgstr "MyPackage" #: ../../shipping/packaging.rst:79 msgid "MyPackage.tar.gz" -msgstr "" +msgstr "MyPackage.tar.gz" #: ../../shipping/packaging.rst:81 msgid "Go to your command prompt and type:" -msgstr "" +msgstr "명령 프롬프트로 가서 다음을 입력하세요:" #: ../../shipping/packaging.rst:88 msgid "" "This runs a simple HTTP server running on port 9000 and will list all " -"packages (like **MyPackage**). Now you can install **MyPackage** using " -"any Python package installer. Using pip, you would do it like:" +"packages (like **MyPackage**). Now you can install **MyPackage** using any " +"Python package installer. Using pip, you would do it like:" msgstr "" +"이것은 9000번 포트에서 실행되는 간단한 HTTP 서버를 띄우고, (**MyPackage** 같은) 모든 패키지를 나열합니다. 이제 " +"어떤 파이썬 패키지 설치 도구로든 **MyPackage** 를 설치할 수 있습니다. pip을 사용한다면 다음과 같이 합니다:" #: ../../shipping/packaging.rst:96 msgid "" -"Having a folder with the same name as the package name is **crucial** " -"here. I got fooled by that, one time. But if you feel that creating a " -"folder called :file:`MyPackage` and keeping :file:`MyPackage.tar.gz` " -"inside that is *redundant*, you can still install MyPackage using:" +"Having a folder with the same name as the package name is **crucial** here. " +"I got fooled by that, one time. But if you feel that creating a folder " +"called :file:`MyPackage` and keeping :file:`MyPackage.tar.gz` inside that is" +" *redundant*, you can still install MyPackage using:" msgstr "" +"여기서는 패키지명과 같은 이름의 폴더를 갖는 것이 **결정적** 입니다. 저도 한번 그 점 때문에 속았었습니다. 하지만 " +":file:`MyPackage` 라는 폴더를 만들고 그 안에 :file:`MyPackage.tar.gz` 를 두는 것이 *중복* 처럼 " +"느껴진다면, 다음과 같이 MyPackage를 설치할 수도 있습니다:" #: ../../shipping/packaging.rst:106 msgid "pypiserver" -msgstr "" +msgstr "pypiserver" #: ../../shipping/packaging.rst:108 msgid "" "`pypiserver `_ is a minimal PyPI " "compatible server. It can be used to serve a set of packages to " -"easy_install or pip. It includes helpful features like an administrative" -" command (``-U``) which will update all its packages to their latest " -"versions found on PyPI." +"easy_install or pip. It includes helpful features like an administrative " +"command (``-U``) which will update all its packages to their latest versions" +" found on PyPI." msgstr "" +"`pypiserver `_ 는 PyPI와 호환되는 최소한의 서버입니다." +" easy_install이나 pip에 패키지 모음을 제공하는 데 사용할 수 있습니다. 모든 패키지를 PyPI에서 찾을 수 있는 최신 " +"버전으로 갱신해주는 관리용 명령어(``-U``)와 같은 유용한 기능을 포함합니다." #: ../../shipping/packaging.rst:116 msgid "S3-Hosted PyPi" -msgstr "" +msgstr "S3 호스팅 PyPi" #: ../../shipping/packaging.rst:118 msgid "" @@ -180,175 +209,200 @@ msgid "" "prerequisite for this is that you have an Amazon AWS account with an S3 " "bucket." msgstr "" +"개인 PyPI 서버를 위한 간단한 선택지 하나는 Amazon S3를 사용하는 것입니다. 이를 위한 사전 요구사항은 S3 버킷을 갖춘 " +"Amazon AWS 계정을 가지고 있는 것입니다." #: ../../shipping/packaging.rst:121 msgid "**Install all your requirements from PyPi or another source**" -msgstr "" +msgstr "**PyPi 또는 다른 출처에서 모든 요구사항을 설치합니다**" #: ../../shipping/packaging.rst:122 msgid "**Install pip2pi**" -msgstr "" +msgstr "**pip2pi 설치**" #: ../../shipping/packaging.rst:124 msgid ":code:`pip install git+https://github.com/wolever/pip2pi.git`" -msgstr "" +msgstr ":code:`pip install git+https://github.com/wolever/pip2pi.git`" #: ../../shipping/packaging.rst:126 msgid "**Follow pip2pi README for pip2tgz and dir2pi commands**" -msgstr "" +msgstr "**pip2tgz 및 dir2pi 명령어는 pip2pi README를 따릅니다**" #: ../../shipping/packaging.rst:128 msgid "" ":code:`pip2tgz packages/ YourPackage` (or :code:`pip2tgz packages/ -r " "requirements.txt`)" msgstr "" +":code:`pip2tgz packages/ YourPackage` (또는 :code:`pip2tgz packages/ -r " +"requirements.txt`)" #: ../../shipping/packaging.rst:129 msgid ":code:`dir2pi packages/`" -msgstr "" +msgstr ":code:`dir2pi packages/`" #: ../../shipping/packaging.rst:131 msgid "**Upload the new files**" -msgstr "" +msgstr "**새 파일 업로드**" #: ../../shipping/packaging.rst:133 msgid "" -"Use a client like Cyberduck to sync the entire :file:`packages` folder to" -" your s3 bucket." -msgstr "" +"Use a client like Cyberduck to sync the entire :file:`packages` folder to " +"your s3 bucket." +msgstr "Cyberduck 같은 클라이언트를 사용해 :file:`packages` 폴더 전체를 s3 버킷과 동기화하세요." #: ../../shipping/packaging.rst:134 msgid "" -"Make sure you upload :code:`packages/simple/index.html` as well as all " -"new files and directories." -msgstr "" +"Make sure you upload :code:`packages/simple/index.html` as well as all new " +"files and directories." +msgstr ":code:`packages/simple/index.html` 과 모든 새 파일 및 디렉토리를 함께 업로드해야 합니다." #: ../../shipping/packaging.rst:136 msgid "**Fix new file permissions**" -msgstr "" +msgstr "**새 파일 권한 수정**" #: ../../shipping/packaging.rst:138 msgid "" -"By default, when you upload new files to the S3 bucket, they will have " -"the wrong permissions set." -msgstr "" +"By default, when you upload new files to the S3 bucket, they will have the " +"wrong permissions set." +msgstr "기본적으로 S3 버킷에 새 파일을 업로드하면 잘못된 권한이 설정되어 있습니다." #: ../../shipping/packaging.rst:139 msgid "" "Use the Amazon web console to set the READ permission of the files to " "EVERYONE." -msgstr "" +msgstr "Amazon 웹 콘솔을 사용하여 파일의 READ 권한을 EVERYONE으로 설정하세요." #: ../../shipping/packaging.rst:140 msgid "" -"If you get HTTP 403 when trying to install a package, make sure you've " -"set the permissions correctly." -msgstr "" +"If you get HTTP 403 when trying to install a package, make sure you've set " +"the permissions correctly." +msgstr "패키지를 설치하려고 할 때 HTTP 403이 발생한다면, 권한을 올바르게 설정했는지 확인하세요." #: ../../shipping/packaging.rst:142 msgid "**All done**" -msgstr "" +msgstr "**모두 완료**" #: ../../shipping/packaging.rst:144 msgid "" "You can now install your package with :code:`pip install --index-" "url=http://your-s3-bucket/packages/simple/ YourPackage`." msgstr "" +"이제 :code:`pip install --index-url=http://your-s3-bucket/packages/simple/ " +"YourPackage` 명령으로 패키지를 설치할 수 있습니다." #: ../../shipping/packaging.rst:151 msgid "For Linux Distributions" -msgstr "" +msgstr "리눅스 배포판을 위해" #: ../../shipping/packaging.rst:153 msgid "" -"Creating a Linux distro package is arguably the \"right way\" to " -"distribute code on Linux." -msgstr "" +"Creating a Linux distro package is arguably the \"right way\" to distribute " +"code on Linux." +msgstr "리눅스에서 코드를 배포하는 \"올바른 방법\"은 아마도 리눅스 배포판 패키지를 만드는 것이라고 할 수 있습니다." #: ../../shipping/packaging.rst:156 msgid "" -"Because a distribution package doesn't include the Python interpreter, it" -" makes the download and install about 2-12 MB smaller than :ref:`freezing" -" your application `." +"Because a distribution package doesn't include the Python interpreter, it " +"makes the download and install about 2-12 MB smaller than :ref:`freezing " +"your application `." msgstr "" +"배포판 패키지에는 파이썬 인터프리터가 포함되지 않기 때문에, :ref:`응용을 프리징 ` 하는" +" 것보다 다운로드와 설치 용량이 약 2-12 MB 더 작아집니다." #: ../../shipping/packaging.rst:160 msgid "" -"Also, if a distribution releases a new security update for Python, then " -"your application will automatically start using that new version of " -"Python." +"Also, if a distribution releases a new security update for Python, then your" +" application will automatically start using that new version of Python." msgstr "" +"또한 배포판이 파이썬에 대한 새 보안 업데이트를 릴리즈하면, 여러분의 응용도 자동으로 그 새 파이썬 버전을 사용하기 시작합니다." #: ../../shipping/packaging.rst:163 msgid "" "The bdist_rpm command makes `producing an RPM file " -"`_ for use by distributions like Red Hat or SuSE trivially easy." +"`_" +" for use by distributions like Red Hat or SuSE trivially easy." msgstr "" +"bdist_rpm 명령어는 Red Hat이나 SuSE 같은 배포판에서 사용할 `RPM 파일 만들기 " +"`_" +" 를 아주 쉽게 해줍니다." #: ../../shipping/packaging.rst:166 msgid "" -"However, creating and maintaining the different configurations required " -"for each distribution's format (e.g. .deb for Debian/Ubuntu, .rpm for Red" -" Hat/Fedora, etc.) is a fair amount of work. If your code is an " -"application that you plan to distribute on other platforms, then you'll " -"also have to create and maintain the separate config required to freeze " -"your application for Windows and OS X. It would be much less work to " -"simply create and maintain a single config for one of the cross platform " -":ref:`freezing tools `, which will produce stand-" -"alone executables for all distributions of Linux, as well as Windows and " -"OS X." -msgstr "" +"However, creating and maintaining the different configurations required for " +"each distribution's format (e.g. .deb for Debian/Ubuntu, .rpm for Red " +"Hat/Fedora, etc.) is a fair amount of work. If your code is an application " +"that you plan to distribute on other platforms, then you'll also have to " +"create and maintain the separate config required to freeze your application " +"for Windows and OS X. It would be much less work to simply create and " +"maintain a single config for one of the cross platform :ref:`freezing tools " +"`, which will produce stand-alone executables for " +"all distributions of Linux, as well as Windows and OS X." +msgstr "" +"그러나 각 배포판 포맷에 필요한 서로 다른 설정(예: Debian/Ubuntu용 .deb, Red Hat/Fedora용 .rpm 등)을 " +"만들고 유지보수하는 것은 상당한 작업입니다. 코드가 다른 플랫폼에도 배포할 계획인 응용이라면, Windows와 OS X용으로 응용을 " +"프리징하기 위한 별도의 설정도 만들고 유지해야 합니다. 대신 모든 리눅스 배포판은 물론 Windows와 OS X용 독립 실행 파일을 " +"만들어주는 크로스 플랫폼 :ref:`프리징 도구 ` 중 하나를 위한 단일 설정만 만들고 " +"유지하는 편이 훨씬 일이 적습니다." #: ../../shipping/packaging.rst:176 msgid "" -"Creating a distribution package is also problematic if your code is for a" -" version of Python that isn't currently supported by a distribution. " -"Having to tell *some versions* of Ubuntu end-users that they need to add " -"`the 'dead-snakes' PPA " +"Creating a distribution package is also problematic if your code is for a " +"version of Python that isn't currently supported by a distribution. Having " +"to tell *some versions* of Ubuntu end-users that they need to add `the " +"'dead-snakes' PPA " "`_ using `sudo " -"apt-repository` commands before they can install your .deb file makes for" -" an extremely hostile user experience. Not only that, but you'd have to " -"maintain a custom equivalent of these instructions for every " -"distribution, and worse, have your users read, understand, and act on " -"them." +"apt-repository` commands before they can install your .deb file makes for an" +" extremely hostile user experience. Not only that, but you'd have to " +"maintain a custom equivalent of these instructions for every distribution, " +"and worse, have your users read, understand, and act on them." msgstr "" +"배포판이 현재 지원하지 않는 파이썬 버전을 위한 코드인 경우에도 배포판 패키지를 만드는 일은 문제가 있습니다. *일부 버전* 의 " +"Ubuntu 최종 사용자에게 .deb 파일을 설치하기 전에 `sudo apt-repository` 명령으로 `'dead-snakes' " +"PPA `_ 를 추가해야 한다고 " +"말해야 한다면, 이는 극도로 적대적인 사용자 경험이 됩니다. 그뿐 아니라, 모든 배포판마다 이런 안내의 사용자 정의 버전을 유지해야 " +"하고, 더 나쁜 점은 사용자가 그것을 읽고 이해하고 그대로 따라야 한다는 점입니다." #: ../../shipping/packaging.rst:185 msgid "Having said all that, here's how to do it:" -msgstr "" +msgstr "이 모든 점을 말한 뒤에, 그래도 해보겠다면 다음과 같이 합니다:" #: ../../shipping/packaging.rst:187 msgid "`Fedora `_" -msgstr "" +msgstr "`Fedora `_" #: ../../shipping/packaging.rst:188 msgid "" "`Debian and Ubuntu `_" msgstr "" +"`Debian과 Ubuntu `_" #: ../../shipping/packaging.rst:189 -msgid "`Arch `_" +msgid "" +"`Arch `_" msgstr "" +"`Arch `_" #: ../../shipping/packaging.rst:192 msgid "Useful Tools" -msgstr "" +msgstr "유용한 도구" #: ../../shipping/packaging.rst:194 msgid "`fpm `_" -msgstr "" +msgstr "`fpm `_" #: ../../shipping/packaging.rst:195 msgid "`alien `_" -msgstr "" +msgstr "`alien `_" #: ../../shipping/packaging.rst:196 msgid "" "`dh-virtualenv `_ (for APT/DEB " "omnibus packaging)" msgstr "" +"`dh-virtualenv `_ (APT/DEB omnibus " +"패키징용)" #~ msgid "Packaging your code is important." #~ msgstr "" @@ -357,150 +411,104 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Package your code to share it with" -#~ " other developers. For example to " -#~ "share a library for other developers " -#~ "to use in their application, or " -#~ "for development tools like 'py.test'." +#~ "Package your code to share it with other developers. For example to share a " +#~ "library for other developers to use in their application, or for development" +#~ " tools like 'py.test'." #~ msgstr "" #~ msgid "" -#~ "It is a well-established convention " -#~ "for Python code to be shared this" -#~ " way. If your code isn't packaged " -#~ "on PyPI, then it will be harder" -#~ " for other developers to find it, " -#~ "and to use it as part of " -#~ "their existing process. They will regard" -#~ " such projects with substantial suspicion" -#~ " of being either badly managed or " -#~ "abandoned." +#~ "It is a well-established convention for Python code to be shared this way. " +#~ "If your code isn't packaged on PyPI, then it will be harder for other " +#~ "developers to find it, and to use it as part of their existing process. They" +#~ " will regard such projects with substantial suspicion of being either badly " +#~ "managed or abandoned." #~ msgstr "" #~ msgid "" -#~ "If you're writing an open source " -#~ "Python module, `PyPI `_ " -#~ ", more properly known as *The " -#~ "Cheeseshop*, is the place to host " -#~ "it." +#~ "If you're writing an open source Python module, `PyPI " +#~ "`_ , more properly known as *The Cheeseshop*, is the" +#~ " place to host it." #~ msgstr "" #~ msgid "" -#~ "Use `pip `_. More" -#~ " details `here " -#~ "`_" +#~ "Use `pip `_. More details `here " +#~ "`_" #~ msgstr "" #~ msgid "" -#~ "If you want to install packages " -#~ "from a source other than PyPI, " -#~ "(say, if your packages are " -#~ "*proprietary*), you can do it by " -#~ "hosting a simple http server, running" -#~ " from the directory which holds those" -#~ " packages which need to be installed." +#~ "If you want to install packages from a source other than PyPI, (say, if your" +#~ " packages are *proprietary*), you can do it by hosting a simple http server," +#~ " running from the directory which holds those packages which need to be " +#~ "installed." #~ msgstr "" #~ msgid "" -#~ "This runs a simple http server " -#~ "running on port 9000 and will list" -#~ " all packages (like **MyPackage**). Now " -#~ "you can install **MyPackage** using any" -#~ " Python package installer. Using Pip, " -#~ "you would do it like:" +#~ "This runs a simple http server running on port 9000 and will list all " +#~ "packages (like **MyPackage**). Now you can install **MyPackage** using any " +#~ "Python package installer. Using Pip, you would do it like:" #~ msgstr "" #~ msgid "" -#~ "Having a folder with the same name" -#~ " as the package name is **crucial**" -#~ " here. I got fooled by that, " -#~ "one time. But if you feel that " -#~ "creating a folder called :file:`MyPackage` " -#~ "and keeping :file:`MyPackage.tar.gz` inside " -#~ "that, is *redundant*, you can still " -#~ "install MyPackage using:" +#~ "Having a folder with the same name as the package name is **crucial** here. " +#~ "I got fooled by that, one time. But if you feel that creating a folder " +#~ "called :file:`MyPackage` and keeping :file:`MyPackage.tar.gz` inside that, " +#~ "is *redundant*, you can still install MyPackage using:" #~ msgstr "" #~ msgid "" -#~ "`Pypiserver `_ is" -#~ " a minimal PyPI compatible server. " -#~ "It can be used to serve a " -#~ "set of packages to easy_install or " -#~ "pip. It includes helpful features like" -#~ " an administrative command (:option:`-U`) " -#~ "which will update all its packages " -#~ "to their latest versions found on " -#~ "PyPI." +#~ "`Pypiserver `_ is a minimal PyPI " +#~ "compatible server. It can be used to serve a set of packages to " +#~ "easy_install or pip. It includes helpful features like an administrative " +#~ "command (:option:`-U`) which will update all its packages to their latest " +#~ "versions found on PyPI." #~ msgstr "" #~ msgid "" -#~ "One simple option for a personal " -#~ "PyPi server is to use Amazon S3." -#~ " A prerequisite for this is that " -#~ "you have an Amazon AWS account " -#~ "with an S3 bucket." +#~ "One simple option for a personal PyPi server is to use Amazon S3. A " +#~ "prerequisite for this is that you have an Amazon AWS account with an S3 " +#~ "bucket." #~ msgstr "" #~ msgid "" -#~ "Use a client like Cyberduck to " -#~ "sync the entire :file:`packages` folder " -#~ "to your s3 bucket" +#~ "Use a client like Cyberduck to sync the entire :file:`packages` folder to " +#~ "your s3 bucket" #~ msgstr "" #~ msgid "" -#~ "Make sure you upload " -#~ ":code:`packages/simple/index.html` as well as " -#~ "all new files and directories" +#~ "Make sure you upload :code:`packages/simple/index.html` as well as all new " +#~ "files and directories" #~ msgstr "" #~ msgid "" -#~ "You can now install your package " -#~ "with :code:`pip install --index-" +#~ "You can now install your package with :code:`pip install --index-" #~ "url=http://your-s3-bucket/packages/simple/ YourPackage`" #~ msgstr "" #~ msgid "" -#~ "Because a distribution package doesn't " -#~ "include the Python interpreter, it makes" -#~ " the download and install about 2MB" -#~ " smaller than :ref:`freezing your " +#~ "Because a distribution package doesn't include the Python interpreter, it " +#~ "makes the download and install about 2MB smaller than :ref:`freezing your " #~ "application `." #~ msgstr "" #~ msgid "" -#~ "The bdist_rpm command makes `producing " -#~ "an RPM file " -#~ "`_ for use by distributions" -#~ " like Red Hat or SuSE is " -#~ "trivially easy." +#~ "The bdist_rpm command makes `producing an RPM file " +#~ "`_" +#~ " for use by distributions like Red Hat or SuSE is trivially easy." #~ msgstr "" #~ msgid "" -#~ "However, creating and maintaining the " -#~ "different configurations required for each " -#~ "distribution's format (e.g. .deb for " -#~ "Debian/Ubuntu, .rpm for Red Hat/Fedora, " -#~ "etc) is a fair amount of work. " -#~ "If your code is an application " -#~ "that you plan to distribute on " -#~ "other platforms, then you'll also have" -#~ " to create and maintain the separate" -#~ " config required to freeze your " -#~ "application for Windows and OSX. It " -#~ "would be much less work to simply" -#~ " create and maintain a single config" -#~ " for one of the cross platform " -#~ ":ref:`freezing tools `, which will produce stand-alone" -#~ " executables for all distributions of " -#~ "Linux, as well as Windows and OSX." +#~ "However, creating and maintaining the different configurations required for " +#~ "each distribution's format (e.g. .deb for Debian/Ubuntu, .rpm for Red " +#~ "Hat/Fedora, etc) is a fair amount of work. If your code is an application " +#~ "that you plan to distribute on other platforms, then you'll also have to " +#~ "create and maintain the separate config required to freeze your application " +#~ "for Windows and OSX. It would be much less work to simply create and " +#~ "maintain a single config for one of the cross platform :ref:`freezing tools " +#~ "`, which will produce stand-alone executables for " +#~ "all distributions of Linux, as well as Windows and OSX." #~ msgstr "" #~ msgid "" -#~ "`dh-virtualenv `_ (for " -#~ "APT/DEB omnibus packaging)" +#~ "`dh-virtualenv `_ " +#~ "(for APT/DEB omnibus packaging)" #~ msgstr "" - From 4e07f8c543894dff290318b52ed2fb5c38bf446e Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:27:26 +0900 Subject: [PATCH 113/117] Translate scenarios/speed.po (57 entries: CPython/PyPy, GIL, Cython, concurrent.futures, threading) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/scenarios/speed.mo | Bin 16227 -> 17677 bytes docs/locale/ko/LC_MESSAGES/scenarios/speed.po | 422 +++++++++--------- 2 files changed, 223 insertions(+), 199 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo b/docs/locale/ko/LC_MESSAGES/scenarios/speed.mo index fcd5e17e7355a13de75b5ca7e4414f6bfe8c917b..47cb013fd4b8a0fef8678c104abdf4b5258476c2 100644 GIT binary patch literal 17677 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 delta 621 zcmX}oKWGzS7{~EnthJg5f~ZTWzA9RaUQAQ9dim4FHnD}fYOIRgJn#&~Bv+DF5TyYp zv4}&_#lgW}=ym$sw99vs3=n869ooyL#k zr9;wH^aj+@Q5Nq8q%sY^aT|H!uyhwMV>fF# zuVH$_3r|W9vHO%nNssY4uHg&%@7T;E4`-t}ewoEQg-1E*4<_=`PTV}ggS#<-{TTkr zp-#3t`y~v&^lZnOk@l;umwm0$MaMBy1-EFjMYk~Nj26bn&ljhs^Kr+kR~EdAZ=37E z|6pD4y;@i?S;rZz&L)FKB_BUmU1)e!s}wY9P21Gx{>5f)Fk_-+E){nt-J*5LZ!~9v bx@`uNsrXn>pZAwP?48+|CbeI8?dtmr8wG58 diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po index 8e1eed663..a79a14033 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/speed.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/speed.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,174 +23,206 @@ msgstr "" #: ../../scenarios/speed.rst:4 msgid "Speed" -msgstr "" +msgstr "속도" #: ../../scenarios/speed.rst:8 msgid "" -"CPython, the most commonly used implementation of Python, is slow for CPU" -" bound tasks. `PyPy`_ is fast." -msgstr "" +"CPython, the most commonly used implementation of Python, is slow for CPU " +"bound tasks. `PyPy`_ is fast." +msgstr "파이썬의 가장 일반적으로 사용되는 구현체인 CPython은 CPU 바운드 작업에서 느립니다. `PyPy`_ 는 빠릅니다." #: ../../scenarios/speed.rst:11 msgid "" -"Using a slightly modified version of `David Beazley's`_ CPU bound test " -"code (added loop for multiple tests), you can see the difference between " -"CPython and PyPy's processing." +"Using a slightly modified version of `David Beazley's`_ CPU bound test code " +"(added loop for multiple tests), you can see the difference between CPython " +"and PyPy's processing." msgstr "" +"`David Beazley의`_ CPU 바운드 테스트 코드를 약간 수정한 버전(여러 번의 테스트를 위해 루프 추가)을 사용하여, " +"CPython과 PyPy의 처리 차이를 볼 수 있습니다." #: ../../scenarios/speed.rst:43 msgid "Context" -msgstr "" +msgstr "배경" #: ../../scenarios/speed.rst:47 ../../scenarios/speed.rst:65 msgid "The GIL" -msgstr "" +msgstr "GIL" #: ../../scenarios/speed.rst:49 msgid "" -"`The GIL`_ (Global Interpreter Lock) is how Python allows multiple " -"threads to operate at the same time. Python's memory management isn't " -"entirely thread-safe, so the GIL is required to prevent multiple threads " -"from running the same Python code at once." +"`The GIL`_ (Global Interpreter Lock) is how Python allows multiple threads " +"to operate at the same time. Python's memory management isn't entirely " +"thread-safe, so the GIL is required to prevent multiple threads from running" +" the same Python code at once." msgstr "" +"`GIL`_ (Global Interpreter Lock)은 파이썬이 여러 스레드가 동시에 동작하도록 허용하는 방식입니다. 파이썬의 " +"메모리 관리는 완전히 스레드 안전하지 않기 때문에, 여러 스레드가 동시에 같은 파이썬 코드를 실행하는 것을 막기 위해 GIL이 " +"필요합니다." #: ../../scenarios/speed.rst:54 msgid "" -"David Beazley has a great `guide`_ on how the GIL operates. He also " -"covers the `new GIL`_ in Python 3.2. His results show that maximizing " -"performance in a Python application requires a strong understanding of " -"the GIL, how it affects your specific application, how many cores you " -"have, and where your application bottlenecks are." +"David Beazley has a great `guide`_ on how the GIL operates. He also covers " +"the `new GIL`_ in Python 3.2. His results show that maximizing performance " +"in a Python application requires a strong understanding of the GIL, how it " +"affects your specific application, how many cores you have, and where your " +"application bottlenecks are." msgstr "" +"David Beazley는 GIL이 어떻게 동작하는지에 대한 훌륭한 `가이드`_ 를 가지고 있습니다. 그는 또한 파이썬 3.2의 `새로운" +" GIL`_ 도 다룹니다. 그의 결과는 파이썬 응용에서 성능을 극대화하려면 GIL에 대한 강한 이해, 그것이 특정 응용에 어떻게 영향을 " +"미치는지, 코어가 몇 개인지, 그리고 응용의 병목이 어디인지에 대한 강한 이해가 필요함을 보여줍니다." #: ../../scenarios/speed.rst:61 ../../scenarios/speed.rst:73 msgid "C Extensions" -msgstr "" +msgstr "C 확장" #: ../../scenarios/speed.rst:67 msgid "" "`Special care`_ must be taken when writing C extensions to make sure you " "register your threads with the interpreter." -msgstr "" +msgstr "C 확장을 작성할 때는 스레드를 인터프리터에 등록하도록 `각별한 주의`_ 를 기울여야 합니다." #: ../../scenarios/speed.rst:77 msgid "Cython" -msgstr "" +msgstr "Cython" #: ../../scenarios/speed.rst:79 msgid "" -"`Cython `_ implements a superset of the Python " -"language with which you are able to write C and C++ modules for Python. " -"Cython also allows you to call functions from compiled C libraries. Using" -" Cython allows you to take advantage of Python's strong typing of " -"variables and operations." +"`Cython `_ implements a superset of the Python language" +" with which you are able to write C and C++ modules for Python. Cython also " +"allows you to call functions from compiled C libraries. Using Cython allows " +"you to take advantage of Python's strong typing of variables and operations." msgstr "" +"`Cython `_ 은 파이썬 언어의 상위 집합(superset)을 구현하여, 그것으로 파이썬을 " +"위한 C 및 C++ 모듈을 작성할 수 있게 해줍니다. Cython은 또한 컴파일된 C 라이브러리의 함수를 호출할 수 있게 해줍니다. " +"Cython을 사용하면 파이썬의 변수와 연산에 대한 강타입(strong typing)의 이점을 누릴 수 있습니다." #: ../../scenarios/speed.rst:84 msgid "Here's an example of strong typing with Cython:" -msgstr "" +msgstr "다음은 Cython으로 강타입을 사용하는 예시입니다:" #: ../../scenarios/speed.rst:111 msgid "" "This implementation of an algorithm to find prime numbers has some " -"additional keywords compared to the next one, which is implemented in " -"pure Python:" -msgstr "" +"additional keywords compared to the next one, which is implemented in pure " +"Python:" +msgstr "소수를 찾는 알고리즘의 이 구현은 순수 파이썬으로 구현된 다음 것과 비교했을 때 몇 가지 추가 키워드를 가지고 있습니다:" #: ../../scenarios/speed.rst:136 msgid "" -"Notice that in the Cython version you declare integers and integer arrays" -" to be compiled into C types while also creating a Python list:" -msgstr "" +"Notice that in the Cython version you declare integers and integer arrays to" +" be compiled into C types while also creating a Python list:" +msgstr "Cython 버전에서는 파이썬 리스트를 만드는 동시에, C 타입으로 컴파일될 정수와 정수 배열을 선언하는 것을 눈여겨보세요:" #: ../../scenarios/speed.rst:159 msgid "" "What is the difference? In the upper Cython version you can see the " -"declaration of the variable types and the integer array in a similar way " -"as in standard C. For example `cdef int n,k,i` in line 3. This additional" -" type declaration (i.e. integer) allows the Cython compiler to generate " -"more efficient C code from the second version. While standard Python code" -" is saved in :file:`*.py` files, Cython code is saved in :file:`*.pyx` " -"files." +"declaration of the variable types and the integer array in a similar way as " +"in standard C. For example `cdef int n,k,i` in line 3. This additional type " +"declaration (i.e. integer) allows the Cython compiler to generate more " +"efficient C code from the second version. While standard Python code is " +"saved in :file:`*.py` files, Cython code is saved in :file:`*.pyx` files." msgstr "" +"차이가 무엇일까요? 위의 Cython 버전에서는 표준 C와 유사한 방식으로 변수 타입과 정수 배열의 선언을 볼 수 있습니다. 예를 들어 " +"3번째 줄의 `cdef int n,k,i` 같은 것입니다. 이러한 추가 타입 선언(즉, 정수) 덕분에 Cython 컴파일러는 두 번째 " +"버전으로부터 더 효율적인 C 코드를 생성할 수 있습니다. 표준 파이썬 코드가 :file:`*.py` 파일에 저장되는 반면, Cython " +"코드는 :file:`*.pyx` 파일에 저장됩니다." #: ../../scenarios/speed.rst:166 msgid "What's the difference in speed? Let's try it!" -msgstr "" +msgstr "속도 차이는 어떨까요? 시도해봅시다!" #: ../../scenarios/speed.rst:190 msgid "These lines both need a remark:" -msgstr "" +msgstr "이 두 줄은 모두 설명이 필요합니다:" #: ../../scenarios/speed.rst:198 msgid "" "The `pyximport` module allows you to import :file:`*.pyx` files (e.g., " ":file:`primesCy.pyx`) with the Cython-compiled version of the `primes` " -"function. The `pyximport.install()` command allows the Python interpreter" -" to start the Cython compiler directly to generate C code, which is " -"automatically compiled to a :file:`*.so` C library. Cython is then able " -"to import this library for you in your Python code, easily and " -"efficiently. With the `time.time()` function you are able to compare the " -"time between these 2 different calls to find 500 prime numbers. On a " -"standard notebook (dual core AMD E-450 1.6 GHz), the measured values are:" -msgstr "" +"function. The `pyximport.install()` command allows the Python interpreter to" +" start the Cython compiler directly to generate C code, which is " +"automatically compiled to a :file:`*.so` C library. Cython is then able to " +"import this library for you in your Python code, easily and efficiently. " +"With the `time.time()` function you are able to compare the time between " +"these 2 different calls to find 500 prime numbers. On a standard notebook " +"(dual core AMD E-450 1.6 GHz), the measured values are:" +msgstr "" +"`pyximport` 모듈은 :file:`*.pyx` 파일(예: :file:`primesCy.pyx`)을 Cython으로 컴파일된 버전의" +" `primes` 함수와 함께 임포트할 수 있게 해줍니다. `pyximport.install()` 명령은 파이썬 인터프리터가 Cython" +" 컴파일러를 직접 시작하여 C 코드를 생성하게 하고, 그 C 코드는 자동으로 :file:`*.so` C 라이브러리로 컴파일됩니다. 그러면" +" Cython은 여러분의 파이썬 코드에서 이 라이브러리를 쉽고 효율적으로 임포트할 수 있게 해줍니다. `time.time()` 함수를 " +"사용하면 500개의 소수를 찾기 위한 이 두 가지 다른 호출 사이의 시간을 비교할 수 있습니다. 표준 노트북(듀얼 코어 AMD E-450" +" 1.6 GHz)에서 측정된 값은 다음과 같습니다:" #: ../../scenarios/speed.rst:215 msgid "" "And here is the output of an embedded `ARM beaglebone " "`_ machine:" msgstr "" +"그리고 다음은 임베디드 `ARM beaglebone `_ " +"머신의 출력입니다:" #: ../../scenarios/speed.rst:225 msgid "Pyrex" -msgstr "" +msgstr "Pyrex" #: ../../scenarios/speed.rst:229 msgid "Shedskin?" -msgstr "" +msgstr "Shedskin?" #: ../../scenarios/speed.rst:234 msgid "Concurrency" -msgstr "" +msgstr "동시성" #: ../../scenarios/speed.rst:238 msgid "Concurrent.futures" -msgstr "" +msgstr "Concurrent.futures" #: ../../scenarios/speed.rst:240 msgid "" -"The `concurrent.futures`_ module is a module in the standard library that" -" provides a \"high-level interface for asynchronously executing " -"callables\". It abstracts away a lot of the more complicated details " -"about using multiple threads or processes for concurrency, and allows the" -" user to focus on accomplishing the task at hand." +"The `concurrent.futures`_ module is a module in the standard library that " +"provides a \"high-level interface for asynchronously executing callables\". " +"It abstracts away a lot of the more complicated details about using multiple" +" threads or processes for concurrency, and allows the user to focus on " +"accomplishing the task at hand." msgstr "" +"`concurrent.futures`_ 모듈은 \"콜러블을 비동기적으로 실행하기 위한 고수준 인터페이스\"를 제공하는 표준 라이브러리의 " +"모듈입니다. 동시성을 위해 여러 스레드나 프로세스를 사용하는 더 복잡한 세부 사항을 많이 추상화하여, 사용자가 당면한 작업을 완수하는 데" +" 집중할 수 있게 해줍니다." #: ../../scenarios/speed.rst:246 msgid "" "The `concurrent.futures`_ module exposes two main classes, the " -"`ThreadPoolExecutor` and the `ProcessPoolExecutor`. The " -"ThreadPoolExecutor will create a pool of worker threads that a user can " -"submit jobs to. These jobs will then be executed in another thread when " -"the next worker thread becomes available." +"`ThreadPoolExecutor` and the `ProcessPoolExecutor`. The ThreadPoolExecutor " +"will create a pool of worker threads that a user can submit jobs to. These " +"jobs will then be executed in another thread when the next worker thread " +"becomes available." msgstr "" +"`concurrent.futures`_ 모듈은 두 가지 주요 클래스, `ThreadPoolExecutor` 와 " +"`ProcessPoolExecutor` 를 노출합니다. ThreadPoolExecutor는 사용자가 작업을 제출할 수 있는 워커 스레드 " +"풀을 만듭니다. 이러한 작업은 다음 워커 스레드를 사용할 수 있게 되면 다른 스레드에서 실행됩니다." #: ../../scenarios/speed.rst:252 msgid "" "The ProcessPoolExecutor works in the same way, except instead of using " -"multiple threads for its workers, it will use multiple processes. This " -"makes it possible to side-step the GIL; however, because of the way " -"things are passed to worker processes, only picklable objects can be " -"executed and returned." +"multiple threads for its workers, it will use multiple processes. This makes" +" it possible to side-step the GIL; however, because of the way things are " +"passed to worker processes, only picklable objects can be executed and " +"returned." msgstr "" +"ProcessPoolExecutor도 같은 방식으로 동작하지만, 워커로 여러 스레드 대신 여러 프로세스를 사용한다는 점이 다릅니다. " +"이로써 GIL을 우회할 수 있습니다. 다만 워커 프로세스로 전달되는 방식 때문에, picklable한 객체만 실행하고 반환할 수 " +"있습니다." #: ../../scenarios/speed.rst:257 msgid "" "Because of the way the GIL works, a good rule of thumb is to use a " -"ThreadPoolExecutor when the task being executed involves a lot of " -"blocking (i.e. making requests over the network) and to use a " -"ProcessPoolExecutor executor when the task is computationally expensive." +"ThreadPoolExecutor when the task being executed involves a lot of blocking " +"(i.e. making requests over the network) and to use a ProcessPoolExecutor " +"executor when the task is computationally expensive." msgstr "" +"GIL의 동작 방식 때문에, 좋은 경험 법칙은 실행하는 작업이 블로킹을 많이 동반할 때(예: 네트워크 요청)는 " +"ThreadPoolExecutor를 사용하고, 계산이 무거운 작업일 때는 ProcessPoolExecutor를 사용하는 것입니다." #: ../../scenarios/speed.rst:262 msgid "" @@ -199,165 +231,191 @@ msgid "" "almost exactly like the builtin `map()` function, except it will execute " "everything in parallel." msgstr "" +"두 Executor를 사용하여 병렬로 작업을 실행하는 주요 방법은 두 가지가 있습니다. 한 가지는 `map(func, " +"iterables)` 메소드를 사용하는 것입니다. 이는 내장 `map()` 함수와 거의 동일하게 동작하지만, 모든 것을 병렬로 실행한다는" +" 점이 다릅니다." #: ../../scenarios/speed.rst:284 msgid "" "For even more control, the `submit(func, *args, **kwargs)` method will " -"schedule a callable to be executed ( as `func(*args, **kwargs)`) and " -"returns a `Future`_ object that represents the execution of the callable." +"schedule a callable to be executed ( as `func(*args, **kwargs)`) and returns" +" a `Future`_ object that represents the execution of the callable." msgstr "" +"더 세밀한 제어를 위해, `submit(func, *args, **kwargs)` 메소드는 콜러블을 실행하도록 " +"스케줄링하고(`func(*args, **kwargs)` 형태로), 콜러블의 실행을 나타내는 `Future`_ 객체를 반환합니다." #: ../../scenarios/speed.rst:288 msgid "" -"The Future object provides various methods that can be used to check on " -"the progress of the scheduled callable. These include:" +"The Future object provides various methods that can be used to check on the " +"progress of the scheduled callable. These include:" msgstr "" +"Future 객체는 스케줄링된 콜러블의 진행 상황을 확인하는 데 사용할 수 있는 다양한 메소드를 제공합니다. 다음과 같은 것들이 " +"있습니다:" #: ../../scenarios/speed.rst:291 msgid "cancel()" -msgstr "" +msgstr "cancel()" #: ../../scenarios/speed.rst:292 msgid "Attempt to cancel the call." -msgstr "" +msgstr "호출을 취소하려고 시도합니다." #: ../../scenarios/speed.rst:293 msgid "cancelled()" -msgstr "" +msgstr "cancelled()" #: ../../scenarios/speed.rst:294 msgid "Return True if the call was successfully cancelled." -msgstr "" +msgstr "호출이 성공적으로 취소되었다면 True를 반환합니다." #: ../../scenarios/speed.rst:296 msgid "running()" -msgstr "" +msgstr "running()" #: ../../scenarios/speed.rst:296 msgid "" -"Return True if the call is currently being executed and cannot be " -"cancelled." -msgstr "" +"Return True if the call is currently being executed and cannot be cancelled." +msgstr "호출이 현재 실행 중이고 취소할 수 없다면 True를 반환합니다." #: ../../scenarios/speed.rst:298 msgid "done()" -msgstr "" +msgstr "done()" #: ../../scenarios/speed.rst:299 -msgid "Return True if the call was successfully cancelled or finished running." -msgstr "" +msgid "" +"Return True if the call was successfully cancelled or finished running." +msgstr "호출이 성공적으로 취소되었거나 실행이 끝났다면 True를 반환합니다." #: ../../scenarios/speed.rst:301 msgid "result()" -msgstr "" +msgstr "result()" #: ../../scenarios/speed.rst:301 msgid "" -"Return the value returned by the call. Note that this call will block " -"until the scheduled callable returns by default." -msgstr "" +"Return the value returned by the call. Note that this call will block until " +"the scheduled callable returns by default." +msgstr "호출이 반환한 값을 반환합니다. 기본적으로 이 호출은 스케줄링된 콜러블이 반환할 때까지 블로킹된다는 점에 유의하세요." #: ../../scenarios/speed.rst:304 msgid "exception()" -msgstr "" +msgstr "exception()" #: ../../scenarios/speed.rst:304 msgid "" "Return the exception raised by the call. If no exception was raised then " "this returns None. Note that this will block just like `result()`." msgstr "" +"호출이 발생시킨 예외를 반환합니다. 예외가 발생하지 않았다면 None을 반환합니다. `result()` 와 마찬가지로 이 호출도 " +"블로킹된다는 점에 유의하세요." #: ../../scenarios/speed.rst:309 msgid "add_done_callback(fn)" -msgstr "" +msgstr "add_done_callback(fn)" #: ../../scenarios/speed.rst:307 msgid "" -"Attach a callback function that will be executed (as `fn(future)`) when " -"the scheduled callable returns." -msgstr "" +"Attach a callback function that will be executed (as `fn(future)`) when the " +"scheduled callable returns." +msgstr "스케줄링된 콜러블이 반환할 때 (`fn(future)` 형태로) 실행될 콜백 함수를 부착합니다." #: ../../scenarios/speed.rst:348 msgid "" -"The `concurrent.futures`_ module contains two helper functions for " -"working with Futures. The `as_completed(futures)` function returns an " -"iterator over the list of futures, yielding the futures as they complete." +"The `concurrent.futures`_ module contains two helper functions for working " +"with Futures. The `as_completed(futures)` function returns an iterator over " +"the list of futures, yielding the futures as they complete." msgstr "" +"`concurrent.futures`_ 모듈에는 Future를 다루기 위한 두 가지 헬퍼 함수가 들어 있습니다. " +"`as_completed(futures)` 함수는 future 리스트에 대한 이터레이터를 반환하며, future가 완료되는 대로 " +"yield합니다." #: ../../scenarios/speed.rst:352 msgid "" -"The `wait(futures)` function will simply block until all futures in the " -"list of futures provided have completed." -msgstr "" +"The `wait(futures)` function will simply block until all futures in the list" +" of futures provided have completed." +msgstr "`wait(futures)` 함수는 단순히 제공된 future 리스트의 모든 future가 완료될 때까지 블로킹됩니다." #: ../../scenarios/speed.rst:355 msgid "" -"For more information, on using the `concurrent.futures`_ module, consult " -"the official documentation." -msgstr "" +"For more information, on using the `concurrent.futures`_ module, consult the" +" official documentation." +msgstr "`concurrent.futures`_ 모듈 사용에 대한 더 많은 정보는 공식 문서를 참고하세요." #: ../../scenarios/speed.rst:359 msgid "threading" -msgstr "" +msgstr "threading" #: ../../scenarios/speed.rst:361 msgid "" -"The standard library comes with a `threading`_ module that allows a user " -"to work with multiple threads manually." -msgstr "" +"The standard library comes with a `threading`_ module that allows a user to " +"work with multiple threads manually." +msgstr "표준 라이브러리에는 사용자가 여러 스레드를 수동으로 다룰 수 있게 해주는 `threading`_ 모듈이 함께 제공됩니다." #: ../../scenarios/speed.rst:364 msgid "" -"Running a function in another thread is as simple as passing a callable " -"and its arguments to `Thread`'s constructor and then calling `start()`:" +"Running a function in another thread is as simple as passing a callable and " +"its arguments to `Thread`'s constructor and then calling `start()`:" msgstr "" +"다른 스레드에서 함수를 실행하는 것은 콜러블과 그 인자를 `Thread` 생성자에 전달한 다음 `start()` 를 호출하기만 하면 될 " +"정도로 간단합니다:" #: ../../scenarios/speed.rst:379 msgid "To wait until the thread has terminated, call `join()`:" -msgstr "" +msgstr "스레드가 종료될 때까지 기다리려면, `join()` 을 호출하세요:" #: ../../scenarios/speed.rst:385 msgid "" -"After calling `join()`, it is always a good idea to check whether the " -"thread is still alive (because the join call timed out):" +"After calling `join()`, it is always a good idea to check whether the thread" +" is still alive (because the join call timed out):" msgstr "" +"`join()` 을 호출한 다음에는 (join 호출이 타임아웃되었기 때문일 수 있으므로) 스레드가 여전히 살아 있는지 확인하는 것이 항상" +" 좋은 생각입니다:" #: ../../scenarios/speed.rst:395 msgid "" "Because multiple threads have access to the same section of memory, " -"sometimes there might be situations where two or more threads are trying " -"to write to the same resource at the same time or where the output is " -"dependent on the sequence or timing of certain events. This is called a " -"`data race`_ or race condition. When this happens, the output will be " -"garbled or you may encounter problems which are difficult to debug. A " -"good example is this `Stack Overflow post`_." -msgstr "" +"sometimes there might be situations where two or more threads are trying to " +"write to the same resource at the same time or where the output is dependent" +" on the sequence or timing of certain events. This is called a `data race`_ " +"or race condition. When this happens, the output will be garbled or you may " +"encounter problems which are difficult to debug. A good example is this " +"`Stack Overflow post`_." +msgstr "" +"여러 스레드가 메모리의 같은 영역에 접근하기 때문에, 두 개 이상의 스레드가 동시에 같은 리소스에 쓰려고 하거나, 출력이 특정 이벤트의 " +"순서나 타이밍에 의존하는 상황이 발생할 수 있습니다. 이를 `데이터 레이스`_ 또는 경합 상황(race condition)이라고 합니다." +" 이런 일이 발생하면 출력이 엉망이 되거나 디버깅하기 어려운 문제에 부딪힐 수 있습니다. 좋은 예시는 이 `Stack Overflow " +"글`_ 입니다." #: ../../scenarios/speed.rst:402 msgid "" -"The way this can be avoided is by using a `Lock`_ that each thread needs " -"to acquire before writing to a shared resource. Locks can be acquired and" -" released through either the contextmanager protocol (`with` statement), " -"or by using `acquire()` and `release()` directly. Here is a (rather " -"contrived) example:" +"The way this can be avoided is by using a `Lock`_ that each thread needs to " +"acquire before writing to a shared resource. Locks can be acquired and " +"released through either the contextmanager protocol (`with` statement), or " +"by using `acquire()` and `release()` directly. Here is a (rather contrived) " +"example:" msgstr "" +"이를 피하는 방법은 각 스레드가 공유 리소스에 쓰기 전에 획득해야 하는 `Lock`_ 을 사용하는 것입니다. 락은 " +"contextmanager 프로토콜(`with` 구문)을 통해 또는 `acquire()` 와 `release()` 를 직접 사용하여 " +"획득하고 해제할 수 있습니다. 다음은 (다소 인위적인) 예시입니다:" #: ../../scenarios/speed.rst:434 msgid "" -"Here, we have a bunch of threads checking for changes on a list of sites " -"and whenever there are any changes, they attempt to write those changes " -"to a file by calling `log(changes)`. When `log()` is called, it will wait" -" to acquire the lock with `with file_lock:`. This ensures that at any one" -" time, only one thread is writing to the file." +"Here, we have a bunch of threads checking for changes on a list of sites and" +" whenever there are any changes, they attempt to write those changes to a " +"file by calling `log(changes)`. When `log()` is called, it will wait to " +"acquire the lock with `with file_lock:`. This ensures that at any one time, " +"only one thread is writing to the file." msgstr "" +"여기서는 여러 스레드가 사이트 목록의 변경을 확인하고, 변경 사항이 있을 때마다 `log(changes)` 를 호출하여 그 변경을 파일에" +" 쓰려고 합니다. `log()` 가 호출되면, `with file_lock:` 으로 락을 획득할 때까지 기다립니다. 이로써 어느 " +"시점에서든 오직 하나의 스레드만 파일에 쓰도록 보장됩니다." #: ../../scenarios/speed.rst:441 msgid "Spawning Processes" -msgstr "" +msgstr "프로세스 생성" #: ../../scenarios/speed.rst:445 msgid "Multiprocessing" -msgstr "" +msgstr "Multiprocessing" #~ msgid "" #~ msgstr "" @@ -372,97 +430,63 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "`Cython `_ implements a " -#~ "superset of the Python language with " -#~ "which you are able to write C " -#~ "and C++ modules for Python. Cython " -#~ "also allows you to call functions " -#~ "from compiled C libraries. Using Cython" -#~ " allows you to take advantage of " -#~ "Python's strong typing of variables and" -#~ " operations." +#~ "`Cython `_ implements a superset of the Python language " +#~ "with which you are able to write C and C++ modules for Python. Cython also " +#~ "allows you to call functions from compiled C libraries. Using Cython allows " +#~ "you to take advantage of Python's strong typing of variables and operations." #~ msgstr "" #~ msgid "" -#~ "The `pyximport` module allows you to " -#~ "import :file:`*.pyx` files (e.g., " -#~ ":file:`primesCy.pyx`) with the Cython-compiled" -#~ " version of the `primes` function. " -#~ "The `pyximport.install()` command allows the" -#~ " Python interpreter to start the " -#~ "Cython compiler directly to generate " -#~ "C-code, which is automatically compiled " -#~ "to a :file:`*.so` C-library. Cython is" -#~ " then able to import this library " -#~ "for you in your Python code, " -#~ "easily and efficiently. With the " -#~ "`time.time()` function you are able to" -#~ " compare the time between these 2 " -#~ "different calls to find 500 prime " -#~ "numbers. On a standard notebook (dual" -#~ " core AMD E-450 1.6 GHz), the " -#~ "measured values are:" +#~ "The `pyximport` module allows you to import :file:`*.pyx` files (e.g., " +#~ ":file:`primesCy.pyx`) with the Cython-compiled version of the `primes` " +#~ "function. The `pyximport.install()` command allows the Python interpreter to" +#~ " start the Cython compiler directly to generate C-code, which is " +#~ "automatically compiled to a :file:`*.so` C-library. Cython is then able to " +#~ "import this library for you in your Python code, easily and efficiently. " +#~ "With the `time.time()` function you are able to compare the time between " +#~ "these 2 different calls to find 500 prime numbers. On a standard notebook " +#~ "(dual core AMD E-450 1.6 GHz), the measured values are:" #~ msgstr "" #~ msgid "" -#~ "And here the output of an embedded" -#~ " `ARM beaglebone " +#~ "And here the output of an embedded `ARM beaglebone " #~ "`_ machine:" #~ msgstr "" #~ msgid "" -#~ "The ProcessPoolExecutor works in the " -#~ "same way, except instead of using " -#~ "multiple threads for its workers, it " -#~ "will use multiple processes. This makes" -#~ " it possible to side-step the " -#~ "GIL, however because of the way " -#~ "things are passed to worker processes," -#~ " only picklable objects can be " -#~ "executed and returned." +#~ "The ProcessPoolExecutor works in the same way, except instead of using " +#~ "multiple threads for its workers, it will use multiple processes. This makes" +#~ " it possible to side-step the GIL, however because of the way things are " +#~ "passed to worker processes, only picklable objects can be executed and " +#~ "returned." #~ msgstr "" #~ msgid "" -#~ "There are two main ways of " -#~ "executing things in parallel using the" -#~ " two Executors. One way is with " -#~ "the `map(func, iterables)` method. This " -#~ "works almost exactly like the builtin" -#~ " `map()` function, except it will " -#~ "execute everything in parallel. :" +#~ "There are two main ways of executing things in parallel using the two " +#~ "Executors. One way is with the `map(func, iterables)` method. This works " +#~ "almost exactly like the builtin `map()` function, except it will execute " +#~ "everything in parallel. :" #~ msgstr "" #~ msgid "" -#~ "Return the exception raised by the " -#~ "call. If no exception was raised " -#~ "then this returns `None`. Note that " -#~ "this will block just like `result()`." +#~ "Return the exception raised by the call. If no exception was raised then " +#~ "this returns `None`. Note that this will block just like `result()`." #~ msgstr "" #~ msgid "Threading" #~ msgstr "" #~ msgid "" -#~ "Running a function in another thread " -#~ "is as simple as passing a callable" -#~ " and it's arguments to `Thread`'s " -#~ "constructor and then calling `start()`:" +#~ "Running a function in another thread is as simple as passing a callable and " +#~ "it's arguments to `Thread`'s constructor and then calling `start()`:" #~ msgstr "" #~ msgid "" -#~ "Because multiple threads have access to" -#~ " the same section of memory, " -#~ "sometimes there might be situations " -#~ "where two or more threads are " -#~ "trying to write to the same " -#~ "resource at the same time or where" -#~ " the output is dependent on the " -#~ "sequence or timing of certain events." -#~ " This is called a `data race`_ " -#~ "or race condition. When this happens," -#~ " the output will be garbled or " -#~ "you may encounter problems which are " -#~ "difficult to debug. A good example " -#~ "is this `stackoverflow post`_." +#~ "Because multiple threads have access to the same section of memory, " +#~ "sometimes there might be situations where two or more threads are trying to " +#~ "write to the same resource at the same time or where the output is dependent" +#~ " on the sequence or timing of certain events. This is called a `data race`_ " +#~ "or race condition. When this happens, the output will be garbled or you may " +#~ "encounter problems which are difficult to debug. A good example is this " +#~ "`stackoverflow post`_." #~ msgstr "" - From 786ad95d12032afdccc598329af151b291237777 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:29:01 +0900 Subject: [PATCH 114/117] Translate shipping/freezing.po (85 entries: bbFreeze, py2exe, PyInstaller, cx_Freeze, py2app) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../ko/LC_MESSAGES/shipping/freezing.mo | Bin 15527 -> 16710 bytes .../ko/LC_MESSAGES/shipping/freezing.po | 371 ++++++++++-------- 2 files changed, 208 insertions(+), 163 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo b/docs/locale/ko/LC_MESSAGES/shipping/freezing.mo index 64da1a3da1a3f59d74e603530b81482de2a5a3d7..2b32b0f7c1991d8caab00ac22fcaf5e259df2506 100644 GIT binary patch literal 16710 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 diff --git a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po index 0a465c68e..bd9da351e 100644 --- a/docs/locale/ko/LC_MESSAGES/shipping/freezing.po +++ b/docs/locale/ko/LC_MESSAGES/shipping/freezing.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-15 08:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,189 +23,200 @@ msgstr "" #: ../../shipping/freezing.rst:6 msgid "Freezing Your Code" -msgstr "" +msgstr "코드 프리징하기" #: ../../shipping/freezing.rst:10 msgid "" "\"Freezing\" your code is creating a single-file executable file to " -"distribute to end-users, that contains all of your application code as " -"well as the Python interpreter." +"distribute to end-users, that contains all of your application code as well " +"as the Python interpreter." msgstr "" +"코드를 \"프리징(freezing)\"한다는 것은 최종 사용자에게 배포할, 응용의 모든 코드와 파이썬 인터프리터를 포함한 단일 파일 실행" +" 파일을 만드는 것입니다." #: ../../shipping/freezing.rst:14 msgid "" "Applications such as 'Dropbox', 'Eve Online', 'Civilization IV', and " "BitTorrent clients do this." msgstr "" +"'Dropbox', 'Eve Online', 'Civilization IV', BitTorrent 클라이언트 같은 응용이 이렇게 합니다." #: ../../shipping/freezing.rst:17 msgid "" -"The advantage of distributing this way is that your application will " -"\"just work\", even if the user doesn't already have the required version" -" of Python (or any) installed. On Windows, and even on many Linux " -"distributions and OS X, the right version of Python will not already be " -"installed." +"The advantage of distributing this way is that your application will \"just " +"work\", even if the user doesn't already have the required version of Python" +" (or any) installed. On Windows, and even on many Linux distributions and OS" +" X, the right version of Python will not already be installed." msgstr "" +"이런 식으로 배포하는 장점은 사용자가 필요한 파이썬 버전(또는 어떤 파이썬도)을 이미 설치하지 않았더라도 응용이 \"그냥 동작한다\"는 " +"점입니다. Windows에서, 그리고 많은 리눅스 배포판과 OS X에서도, 알맞은 버전의 파이썬이 이미 설치되어 있지 않을 것입니다." #: ../../shipping/freezing.rst:22 msgid "" -"Besides, end-user software should always be in an executable format. " -"Files ending in ``.py`` are for software engineers and system " -"administrators." +"Besides, end-user software should always be in an executable format. Files " +"ending in ``.py`` are for software engineers and system administrators." msgstr "" +"게다가 최종 사용자용 소프트웨어는 항상 실행 가능한 포맷이어야 합니다. ``.py`` 로 끝나는 파일은 소프트웨어 엔지니어와 시스템 " +"관리자를 위한 것입니다." #: ../../shipping/freezing.rst:25 msgid "" "One disadvantage of freezing is that it will increase the size of your " -"distribution by about 2–12 MB. Also, you will be responsible for shipping" -" updated versions of your application when security vulnerabilities to " -"Python are patched." +"distribution by about 2–12 MB. Also, you will be responsible for shipping " +"updated versions of your application when security vulnerabilities to Python" +" are patched." msgstr "" +"프리징의 한 가지 단점은 배포본의 크기가 약 2–12 MB 늘어난다는 점입니다. 또한 파이썬의 보안 취약점이 패치되면 그에 맞춰 응용의 " +"갱신된 버전을 배포해야 하는 책임도 지게 됩니다." #: ../../shipping/freezing.rst:33 msgid "Alternatives to Freezing" -msgstr "" +msgstr "프리징의 대안" #: ../../shipping/freezing.rst:35 msgid "" ":ref:`Packaging your code ` is for distributing " "libraries or tools to other developers." msgstr "" +":ref:`코드 패키징 ` 은 라이브러리나 도구를 다른 개발자에게 배포하기 위한 것입니다." #: ../../shipping/freezing.rst:38 msgid "" "On Linux, an alternative to freezing is to :ref:`create a Linux distro " -"package ` (e.g. .deb files for " -"Debian or Ubuntu, or .rpm files for Red Hat and SuSE.)" +"package ` (e.g. .deb files for Debian" +" or Ubuntu, or .rpm files for Red Hat and SuSE.)" msgstr "" +"리눅스에서는 프리징의 대안으로 :ref:`리눅스 배포판 패키지를 만드는 것 ` (예: Debian이나 Ubuntu용 .deb 파일, Red Hat과 SuSE용 .rpm 파일)이 " +"있습니다." #: ../../shipping/freezing.rst msgid "Todo" -msgstr "" +msgstr "할 일" #: ../../shipping/freezing.rst:42 msgid "Fill in \"Freezing Your Code\" stub" -msgstr "" +msgstr "\"코드 프리징하기\" 스텁 채우기" #: ../../shipping/freezing.rst:47 msgid "Comparison of Freezing Tools" -msgstr "" +msgstr "프리징 도구 비교" #: ../../shipping/freezing.rst:49 msgid "" "Date of this writing: Oct 5, 2019 Solutions and platforms/features " "supported:" -msgstr "" +msgstr "작성일: 2019년 10월 5일. 솔루션과 지원되는 플랫폼/기능:" #: ../../shipping/freezing.rst:53 msgid "Solution" -msgstr "" +msgstr "솔루션" #: ../../shipping/freezing.rst:53 ../../shipping/freezing.rst:75 msgid "Windows" -msgstr "" +msgstr "Windows" #: ../../shipping/freezing.rst:53 ../../shipping/freezing.rst:220 msgid "Linux" -msgstr "" +msgstr "Linux" #: ../../shipping/freezing.rst:53 ../../shipping/freezing.rst:164 msgid "OS X" -msgstr "" +msgstr "OS X" #: ../../shipping/freezing.rst:53 msgid "Python 3" -msgstr "" +msgstr "Python 3" #: ../../shipping/freezing.rst:53 msgid "License" -msgstr "" +msgstr "라이선스" #: ../../shipping/freezing.rst:53 msgid "One-file mode" -msgstr "" +msgstr "단일 파일 모드" #: ../../shipping/freezing.rst:53 msgid "Zipfile import" -msgstr "" +msgstr "Zipfile 임포트" #: ../../shipping/freezing.rst:53 msgid "Eggs" -msgstr "" +msgstr "Egg" #: ../../shipping/freezing.rst:53 msgid "pkg_resources support" -msgstr "" +msgstr "pkg_resources 지원" #: ../../shipping/freezing.rst:53 msgid "Latest release date" -msgstr "" +msgstr "최신 릴리즈 일자" #: ../../shipping/freezing.rst:55 ../../shipping/freezing.rst:78 #: ../../shipping/freezing.rst:224 msgid "bbFreeze" -msgstr "" +msgstr "bbFreeze" #: ../../shipping/freezing.rst:55 ../../shipping/freezing.rst:56 #: ../../shipping/freezing.rst:57 ../../shipping/freezing.rst:58 #: ../../shipping/freezing.rst:59 msgid "yes" -msgstr "" +msgstr "예" #: ../../shipping/freezing.rst:55 ../../shipping/freezing.rst:56 #: ../../shipping/freezing.rst:57 ../../shipping/freezing.rst:58 #: ../../shipping/freezing.rst:59 msgid "no" -msgstr "" +msgstr "아니오" #: ../../shipping/freezing.rst:55 ../../shipping/freezing.rst:56 #: ../../shipping/freezing.rst:59 msgid "MIT" -msgstr "" +msgstr "MIT" #: ../../shipping/freezing.rst:55 msgid "Jan 20, 2014" -msgstr "" +msgstr "2014년 1월 20일" #: ../../shipping/freezing.rst:56 ../../shipping/freezing.rst:124 msgid "py2exe" -msgstr "" +msgstr "py2exe" #: ../../shipping/freezing.rst:56 msgid "Oct 21, 2014" -msgstr "" +msgstr "2014년 10월 21일" #: ../../shipping/freezing.rst:57 msgid "pyInstaller" -msgstr "" +msgstr "pyInstaller" #: ../../shipping/freezing.rst:57 msgid "GPL" -msgstr "" +msgstr "GPL" #: ../../shipping/freezing.rst:57 msgid "Jul 9, 2019" -msgstr "" +msgstr "2019년 7월 9일" #: ../../shipping/freezing.rst:58 msgid "cx_Freeze" -msgstr "" +msgstr "cx_Freeze" #: ../../shipping/freezing.rst:58 msgid "PSF" -msgstr "" +msgstr "PSF" #: ../../shipping/freezing.rst:58 msgid "Aug 29, 2019" -msgstr "" +msgstr "2019년 8월 29일" #: ../../shipping/freezing.rst:59 ../../shipping/freezing.rst:168 msgid "py2app" -msgstr "" +msgstr "py2app" #: ../../shipping/freezing.rst:59 msgid "Mar 25, 2019" -msgstr "" +msgstr "2019년 3월 25일" #: ../../shipping/freezing.rst:63 msgid "" @@ -214,234 +225,283 @@ msgid "" "`_." msgstr "" +"리눅스에서 파이썬 코드를 Windows 실행 파일로 프리징하는 기능은 PyInstaller에서 한때만 지원되었고 `이후 지원이 " +"중단되었습니다 `_." #: ../../shipping/freezing.rst:68 msgid "" "All solutions need a Microsoft Visual C++ to be installed on the target " -"machine, except py2app. Only PyInstaller makes a self-executable exe that" -" bundles the appropriate DLL when passing ``--onefile`` to " +"machine, except py2app. Only PyInstaller makes a self-executable exe that " +"bundles the appropriate DLL when passing ``--onefile`` to " ":file:`Configure.py`." msgstr "" +"py2app을 제외한 모든 솔루션은 대상 머신에 Microsoft Visual C++가 설치되어 있어야 합니다. " +":file:`Configure.py` 에 ``--onefile`` 을 전달했을 때 적절한 DLL을 함께 묶어 자가 실행 가능한 exe를 " +"만드는 것은 PyInstaller뿐입니다." #: ../../shipping/freezing.rst:80 msgid "" -"Prerequisite is to install :ref:`Python, Setuptools and pywin32 " -"dependency on Windows `." +"Prerequisite is to install :ref:`Python, Setuptools and pywin32 dependency " +"on Windows `." msgstr "" +"사전 요구사항은 :ref:`Windows에 Python, Setuptools, pywin32 의존성을 설치 ` 하는 것입니다." #: ../../shipping/freezing.rst:82 msgid "Install :code:`bbfreeze`:" -msgstr "" +msgstr ":code:`bbfreeze` 설치:" #: ../../shipping/freezing.rst:88 msgid "Write most basic :file:`bb_setup.py`" -msgstr "" +msgstr "가장 기본적인 :file:`bb_setup.py` 작성" #: ../../shipping/freezing.rst:100 msgid "" "This will work for the most basic one file scripts. For more advanced " "freezing you will have to provide include and exclude paths like so:" msgstr "" +"이것은 가장 기본적인 단일 파일 스크립트에 대해 동작합니다. 더 고급 프리징을 위해서는 다음과 같이 include 및 exclude " +"경로를 제공해야 합니다:" #: ../../shipping/freezing.rst:107 msgid "(Optionally) include icon" -msgstr "" +msgstr "(선택) 아이콘 포함" #: ../../shipping/freezing.rst:113 msgid "" -"4. Provide the Microsoft Visual C++ runtime DLL for the freezer. It might" -" be possible to append your :code:`sys.path` with the Microsoft Visual " -"Studio path but I find it easier to drop :file:`msvcp90.dll` in the same " -"folder where your script resides." +"4. Provide the Microsoft Visual C++ runtime DLL for the freezer. It might be" +" possible to append your :code:`sys.path` with the Microsoft Visual Studio " +"path but I find it easier to drop :file:`msvcp90.dll` in the same folder " +"where your script resides." msgstr "" +"4. 프리저에 Microsoft Visual C++ 런타임 DLL을 제공합니다. :code:`sys.path` 에 Microsoft " +"Visual Studio 경로를 추가할 수도 있겠지만, 저는 스크립트가 있는 폴더에 :file:`msvcp90.dll` 을 넣는 편이 더" +" 쉽다고 느낍니다." #: ../../shipping/freezing.rst:117 msgid "Freeze!" -msgstr "" +msgstr "프리징!" #: ../../shipping/freezing.rst:126 msgid "" -"Prerequisite is to install :ref:`Python on Windows `. " -"The last release of py2exe is from the year 2014. There is not active " +"Prerequisite is to install :ref:`Python on Windows `. The " +"last release of py2exe is from the year 2014. There is not active " "development." msgstr "" +"사전 요구사항은 :ref:`Windows에 Python 설치 ` 입니다. py2exe의 마지막 릴리즈는 " +"2014년입니다. 활발한 개발은 이루어지고 있지 않습니다." #: ../../shipping/freezing.rst:128 -msgid "Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" -msgstr "" +msgid "" +"Download and install http://sourceforge.net/projects/py2exe/files/py2exe/" +msgstr "http://sourceforge.net/projects/py2exe/files/py2exe/ 에서 다운로드하여 설치합니다." #: ../../shipping/freezing.rst:130 msgid "" "Write :file:`setup.py` (`List of configuration options " "`_):" msgstr "" +":file:`setup.py` 작성 (`설정 옵션 목록 " +"`_):" #: ../../shipping/freezing.rst:141 -msgid "(Optionally) `include icon `_" -msgstr "" +msgid "" +"(Optionally) `include icon `_" +msgstr "(선택) `아이콘 포함 `_" #: ../../shipping/freezing.rst:143 msgid "" -"(Optionally) `one-file mode `_" +"(Optionally) `one-file mode " +"`_" msgstr "" +"(선택) `단일 파일 모드 `_" #: ../../shipping/freezing.rst:145 msgid "Generate :file:`.exe` into :file:`dist` directory:" -msgstr "" +msgstr ":file:`dist` 디렉토리에 :file:`.exe` 생성:" #: ../../shipping/freezing.rst:151 msgid "" -"Provide the Microsoft Visual C++ runtime DLL. Two options: `globally " -"install dll on target machine `_ or `distribute dll alongside with .exe " "`_." msgstr "" +"Microsoft Visual C++ 런타임 DLL을 제공합니다. 두 가지 선택지: `대상 머신에 dll을 전역적으로 설치 " +"`_ 하거나 `dll을 " +".exe와 함께 배포 `_ 합니다." #: ../../shipping/freezing.rst:154 ../../shipping/freezing.rst:171 #: ../../shipping/freezing.rst:263 msgid "PyInstaller" -msgstr "" +msgstr "PyInstaller" #: ../../shipping/freezing.rst:156 msgid "" "Prerequisite is to have installed :ref:`Python, Setuptools and pywin32 " "dependency on Windows `." msgstr "" +"사전 요구사항은 :ref:`Windows에 Python, Setuptools, pywin32 의존성이 설치 ` 되어 있는 것입니다." #: ../../shipping/freezing.rst:158 msgid "" "`Most basic tutorial `_" msgstr "" +"`가장 기본적인 튜토리얼 `_" #: ../../shipping/freezing.rst:159 msgid "`Manual `_" -msgstr "" +msgstr "`매뉴얼 `_" #: ../../shipping/freezing.rst:173 msgid "" -"PyInstaller can be used to build Unix executables and windowed apps on " -"Mac OS X 10.6 (Snow Leopard) or newer." +"PyInstaller can be used to build Unix executables and windowed apps on Mac " +"OS X 10.6 (Snow Leopard) or newer." msgstr "" +"PyInstaller는 Mac OS X 10.6 (Snow Leopard) 이상에서 Unix 실행 파일과 윈도우 앱을 빌드하는 데 사용할" +" 수 있습니다." #: ../../shipping/freezing.rst:175 msgid "To install PyInstaller, use pip:" -msgstr "" +msgstr "PyInstaller를 설치하려면 pip을 사용하세요:" #: ../../shipping/freezing.rst:181 msgid "To create a standard Unix executable, from say :code:`script.py`, use:" -msgstr "" +msgstr "예를 들어 :code:`script.py` 로부터 표준 Unix 실행 파일을 만들려면 다음을 사용하세요:" #: ../../shipping/freezing.rst:187 msgid "This creates:" -msgstr "" +msgstr "이것은 다음을 생성합니다:" #: ../../shipping/freezing.rst:189 msgid "a :code:`script.spec` file, analogous to a :code:`make` file" -msgstr "" +msgstr ":code:`make` 파일에 해당하는 :code:`script.spec` 파일" #: ../../shipping/freezing.rst:190 msgid "a :code:`build` folder, that holds some log files" -msgstr "" +msgstr "일부 로그 파일을 담는 :code:`build` 폴더" #: ../../shipping/freezing.rst:191 msgid "" -"a :code:`dist` folder, that holds the main executable :code:`script`, and" -" some dependent Python libraries" -msgstr "" +"a :code:`dist` folder, that holds the main executable :code:`script`, and " +"some dependent Python libraries" +msgstr "메인 실행 파일 :code:`script` 와 일부 의존하는 파이썬 라이브러리를 담는 :code:`dist` 폴더" #: ../../shipping/freezing.rst:193 msgid "" -"all in the same folder as :code:`script.py`. PyInstaller puts all the " -"Python libraries used in :code:`script.py` into the :code:`dist` folder, " -"so when distributing the executable, distribute the whole :code:`dist` " -"folder." +"all in the same folder as :code:`script.py`. PyInstaller puts all the Python" +" libraries used in :code:`script.py` into the :code:`dist` folder, so when " +"distributing the executable, distribute the whole :code:`dist` folder." msgstr "" +"이 모두가 :code:`script.py` 와 같은 폴더에 생깁니다. PyInstaller는 :code:`script.py` 에서 사용된" +" 모든 파이썬 라이브러리를 :code:`dist` 폴더에 넣으므로, 실행 파일을 배포할 때는 :code:`dist` 폴더 전체를 " +"배포하세요." #: ../../shipping/freezing.rst:195 msgid "" "The :code:`script.spec` file can be edited to `customise the build " -"`_, with " -"options such as:" +"`_, with options " +"such as:" msgstr "" +":code:`script.spec` 파일을 편집하여 `빌드를 사용자 정의 " +"`_ 할 수 있으며, 다음과 같은" +" 옵션이 있습니다:" #: ../../shipping/freezing.rst:197 msgid "bundling data files with the executable" -msgstr "" +msgstr "실행 파일과 함께 데이터 파일 묶기" #: ../../shipping/freezing.rst:198 msgid "" "including run-time libraries (:code:`.dll` or :code:`.so` files) that " "PyInstaller can't infer automatically" msgstr "" +"PyInstaller가 자동으로 추론할 수 없는 런타임 라이브러리(:code:`.dll` 또는 :code:`.so` 파일) 포함하기" #: ../../shipping/freezing.rst:199 msgid "adding Python run-time options to the executable" -msgstr "" +msgstr "실행 파일에 파이썬 런타임 옵션 추가하기" #: ../../shipping/freezing.rst:201 msgid "" "Now :code:`script.spec` can be run with :code:`pyinstaller` (instead of " "using :code:`script.py` again):" msgstr "" +"이제 (:code:`script.py` 를 다시 사용하는 대신) :code:`pyinstaller` 로 " +":code:`script.spec` 을 실행할 수 있습니다:" #: ../../shipping/freezing.rst:207 msgid "" -"To create a standalone windowed OS X application, use the " -":code:`--windowed` option:" -msgstr "" +"To create a standalone windowed OS X application, use the :code:`--windowed`" +" option:" +msgstr "독립 실행 가능한 윈도우드 OS X 응용을 만들려면 :code:`--windowed` 옵션을 사용하세요:" #: ../../shipping/freezing.rst:213 msgid "" -"This creates a :code:`script.app` in the :code:`dist` folder. Make sure " -"to use GUI packages in your Python code, like `PyQt " +"This creates a :code:`script.app` in the :code:`dist` folder. Make sure to " +"use GUI packages in your Python code, like `PyQt " "`_ or `PySide " -"`_, to control the graphical parts of the" -" app." +"`_, to control the graphical parts of the " +"app." msgstr "" +"이것은 :code:`dist` 폴더에 :code:`script.app` 을 생성합니다. 앱의 그래픽 부분을 제어하려면 파이썬 코드에서 " +"`PyQt `_ 나 `PySide " +"`_ 같은 GUI 패키지를 사용해야 합니다." #: ../../shipping/freezing.rst:215 msgid "" "There are several options in :code:`script.spec` related to Mac OS X app " "bundles `here `_. For example, to specify an icon " -"for the app, use the :code:`icon=\\path\\to\\icon.icns` option." +"file-options-for-a-mac-os-x-bundle>`_. For example, to specify an icon for " +"the app, use the :code:`icon=\\path\\to\\icon.icns` option." msgstr "" +":code:`script.spec` 에는 Mac OS X 앱 번들과 관련된 옵션이 여럿 `여기 " +"`_ 에 있습니다. 예를 들어 앱의 아이콘을 지정하려면 " +":code:`icon=\\path\\to\\icon.icns` 옵션을 사용하세요." #: ../../shipping/freezing.rst:225 msgid "" "bbFreeze will ONLY work in Python 2.x environment, since it's no longer " -"being maintained as stated by it's former maintainer. If you're " -"interested in it, check the repository in `here " -"`_." +"being maintained as stated by it's former maintainer. If you're interested " +"in it, check the repository in `here `_." msgstr "" +"bbFreeze는 이전 유지보수자가 밝힌 대로 더 이상 유지보수되지 않기 때문에, 파이썬 2.x 환경에서만 동작합니다. 관심이 있다면 " +"`여기 `_ 에서 저장소를 확인하세요." #: ../../shipping/freezing.rst:227 msgid "" -"bbFreeze can be used with all distributions that has Python installed " -"along with pip2 and/or easy_install." -msgstr "" +"bbFreeze can be used with all distributions that has Python installed along " +"with pip2 and/or easy_install." +msgstr "bbFreeze는 pip2 및/또는 easy_install과 함께 파이썬이 설치된 모든 배포판에서 사용할 수 있습니다." #: ../../shipping/freezing.rst:229 msgid "For pip2, use the following:" -msgstr "" +msgstr "pip2의 경우 다음을 사용하세요:" #: ../../shipping/freezing.rst:235 msgid "Or, for easy_install:" -msgstr "" +msgstr "또는 easy_install의 경우:" #: ../../shipping/freezing.rst:241 msgid "With bbFreeze installed, you're ready to freeze your applications." -msgstr "" +msgstr "bbFreeze가 설치되면 응용을 프리징할 준비가 된 것입니다." #: ../../shipping/freezing.rst:243 msgid "" "Let's assume you have a script, say, \"hello.py\" and a module called " "\"module.py\" and you have a function in it that's being used in your " -"script. No need to worry, you can just ask to freeze the main entrypoint " -"of your script and it should freeze entirely:" +"script. No need to worry, you can just ask to freeze the main entrypoint of " +"your script and it should freeze entirely:" msgstr "" +"예를 들어 \"hello.py\" 라는 스크립트와 \"module.py\" 라는 모듈이 있고, 그 모듈에 스크립트에서 사용되는 함수가 " +"있다고 합시다. 걱정하지 마세요. 스크립트의 메인 엔트리포인트만 프리징하도록 요청해도 전체가 프리징됩니다:" #: ../../shipping/freezing.rst:250 msgid "" @@ -449,24 +509,27 @@ msgid "" "executable of the script and required .so (shared objects) files linked " "against libraries used within the Python script." msgstr "" +"이것은 dist/ 라는 폴더를 생성하며, 그 안에는 스크립트의 실행 파일과 파이썬 스크립트에서 사용된 라이브러리에 링크된 필요한 " +".so(공유 객체) 파일이 들어 있습니다." #: ../../shipping/freezing.rst:252 msgid "" -"Alternatively, you can create a script that does the freezing for you. An" -" API for the freezer is available from the library within:" -msgstr "" +"Alternatively, you can create a script that does the freezing for you. An " +"API for the freezer is available from the library within:" +msgstr "또는 프리징을 대신 수행하는 스크립트를 만들 수도 있습니다. 라이브러리 안에서 프리저용 API를 사용할 수 있습니다:" #: ../../shipping/freezing.rst:264 msgid "" -"PyInstaller can be used in a similar fashion as in OS X. The installation" -" goes in the same manner as shown in the OS X section." +"PyInstaller can be used in a similar fashion as in OS X. The installation " +"goes in the same manner as shown in the OS X section." msgstr "" +"PyInstaller는 OS X에서와 유사한 방식으로 사용할 수 있습니다. 설치는 OS X 섹션에서 보인 것과 같은 방식으로 진행됩니다." #: ../../shipping/freezing.rst:266 msgid "" "Don't forget to have dependencies such as Python and pip installed for " "usage." -msgstr "" +msgstr "사용을 위해 Python과 pip 같은 의존성을 설치하는 것을 잊지 마세요." #~ msgid "" #~ msgstr "" @@ -490,34 +553,26 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "One disadvantage of freezing is that " -#~ "it will increase the size of your" -#~ " distribution by about 2–12MB. Also, " -#~ "you will be responsible for shipping " -#~ "updated versions of your application " -#~ "when security vulnerabilities to Python " -#~ "are patched." +#~ "One disadvantage of freezing is that it will increase the size of your " +#~ "distribution by about 2–12MB. Also, you will be responsible for shipping " +#~ "updated versions of your application when security vulnerabilities to Python" +#~ " are patched." #~ msgstr "" #~ msgid "Solutions and platforms/features supported:" #~ msgstr "" #~ msgid "" -#~ "Freezing Python code on Linux into " -#~ "a Windows executable was only once " -#~ "supported in PyInstaller `and later " -#~ "dropped. `_." +#~ "Freezing Python code on Linux into a Windows executable was only once " +#~ "supported in PyInstaller `and later dropped. " +#~ "`_." #~ msgstr "" #~ msgid "" -#~ "All solutions need MS Visual C++ " -#~ "dll to be installed on target " -#~ "machine, except py2app. Only Pyinstaller " -#~ "makes self-executable exe that bundles" -#~ " the dll when passing :option:`--onefile`" -#~ " to :file:`Configure.py`." +#~ "All solutions need MS Visual C++ dll to be installed on target machine, " +#~ "except py2app. Only Pyinstaller makes self-executable exe that bundles the " +#~ "dll when passing :option:`--onefile` to :file:`Configure.py`." #~ msgstr "" #~ msgid "Write steps for most basic .exe" @@ -528,17 +583,15 @@ msgstr "" #~ msgid "" #~ "(Optionally) `one-file mode " -#~ "`_" +#~ "`_" #~ msgstr "" #~ msgid "" -#~ "Provide the Microsoft Visual C runtime" -#~ " DLL. Two options: `globally install " -#~ "dll on target machine " -#~ "`_" -#~ " or `distribute dll alongside with " -#~ ".exe `_." +#~ "Provide the Microsoft Visual C runtime DLL. Two options: `globally install " +#~ "dll on target machine `_ or `distribute dll alongside with .exe " +#~ "`_." #~ msgstr "" #~ msgid "" @@ -550,35 +603,27 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "a :code:`dist` folder, that holds the" -#~ " main executable :code:`script`, and some" -#~ " dependent Python libraries," +#~ "a :code:`dist` folder, that holds the main executable :code:`script`, and " +#~ "some dependent Python libraries," #~ msgstr "" #~ msgid "" -#~ "The :code:`script.spec` file can be " -#~ "edited to `customise the build " -#~ "`_, with options such as" +#~ "The :code:`script.spec` file can be edited to `customise the build " +#~ "`_, with options " +#~ "such as" #~ msgstr "" #~ msgid "adding Python run-time options to the executable," #~ msgstr "" #~ msgid "" -#~ "To create a standalone windowed OS " -#~ "X application, use the :code:`--windowed` " -#~ "option" +#~ "To create a standalone windowed OS X application, use the :code:`--windowed`" +#~ " option" #~ msgstr "" #~ msgid "" -#~ "There are several options in " -#~ ":code:`script.spec` related to Mac OS X" -#~ " app bundles `here " -#~ "`_. For example," -#~ " to specify an icon for the " -#~ "app, use the :code:`icon=\\path\\to\\icon.icns` " -#~ "option." +#~ "There are several options in :code:`script.spec` related to Mac OS X app " +#~ "bundles `here `_. For example, to specify an icon for the app, use the " +#~ ":code:`icon=\\path\\to\\icon.icns` option." #~ msgstr "" - From 9b52f9570a96f5480f1cda203ff0083eeb8bcc55 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:31:56 +0900 Subject: [PATCH 115/117] Translate intro/learning.po (127 entries: Python learning resources) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/intro/learning.mo | Bin 384 -> 32765 bytes docs/locale/ko/LC_MESSAGES/intro/learning.po | 731 ++++++++++--------- 2 files changed, 399 insertions(+), 332 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.mo b/docs/locale/ko/LC_MESSAGES/intro/learning.mo index e64754bdfaae516a10071360018eec59c6c71757..12c1027061c6bcd92d515ca3c663294525658f1b 100644 GIT binary patch literal 32765 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 delta 83 zcmezSpRs{i=bjMDR0bem1Y#K=RsnI4fDVuy1eDYT(vxlN7f85;`uHgLIr_RP*tq&S Tdippxy0`?n1_w|6XFmr3B0&$- diff --git a/docs/locale/ko/LC_MESSAGES/intro/learning.po b/docs/locale/ko/LC_MESSAGES/intro/learning.po index cf2029aee..5012a39d5 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/learning.po +++ b/docs/locale/ko/LC_MESSAGES/intro/learning.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -23,414 +23,480 @@ msgstr "" #: ../../intro/learning.rst:5 msgid "Learning Python" -msgstr "" +msgstr "파이썬 배우기" #: ../../intro/learning.rst:12 msgid "Beginner" -msgstr "" +msgstr "초보자" #: ../../intro/learning.rst:15 msgid "The Python Tutorial" -msgstr "" +msgstr "파이썬 튜토리얼" #: ../../intro/learning.rst:17 msgid "" -"This is the official tutorial. It covers all the basics, and offers a " -"tour of the language and the standard library. Recommended for those who " -"need a quick-start guide to the language." +"This is the official tutorial. It covers all the basics, and offers a tour " +"of the language and the standard library. Recommended for those who need a " +"quick-start guide to the language." msgstr "" +"이것은 공식 튜토리얼입니다. 모든 기초를 다루며, 언어와 표준 라이브러리에 대한 둘러보기를 제공합니다. 언어에 대한 빠른 시작 가이드가 " +"필요한 분들에게 추천합니다." #: ../../intro/learning.rst:21 msgid "`The Python Tutorial `_" -msgstr "" +msgstr "`파이썬 튜토리얼 `_" #: ../../intro/learning.rst:24 msgid "Real Python" -msgstr "" +msgstr "Real Python" #: ../../intro/learning.rst:26 msgid "" -"Real Python is a repository of free and in-depth Python tutorials created" -" by a diverse team of professional Python developers. At Real Python you " -"can learn all things Python from the ground up. Everything from the " -"absolute basics of Python, to web development and web scraping, to data " +"Real Python is a repository of free and in-depth Python tutorials created by" +" a diverse team of professional Python developers. At Real Python you can " +"learn all things Python from the ground up. Everything from the absolute " +"basics of Python, to web development and web scraping, to data " "visualization, and beyond." msgstr "" +"Real Python은 다양한 전문 파이썬 개발자 팀이 만든 무료의 깊이 있는 파이썬 튜토리얼 저장소입니다. Real Python에서는 " +"파이썬의 모든 것을 처음부터 배울 수 있습니다. 파이썬의 가장 기초적인 부분부터 웹 개발, 웹 스크래핑, 데이터 시각화 등 그 이상까지 " +"다룹니다." #: ../../intro/learning.rst:28 msgid "`Real Python `_" -msgstr "" +msgstr "`Real Python `_" #: ../../intro/learning.rst:31 msgid "Python Basics" -msgstr "" +msgstr "Python Basics" #: ../../intro/learning.rst:33 msgid "" "pythonbasics.org is an introductory tutorial for beginners. The tutorial " -"includes exercises. It covers the basics and there are also in-depth " -"lessons like object oriented programming and regular expressions." +"includes exercises. It covers the basics and there are also in-depth lessons" +" like object oriented programming and regular expressions." msgstr "" +"pythonbasics.org는 초보자를 위한 입문 튜토리얼입니다. 이 튜토리얼에는 연습 문제가 포함되어 있습니다. 기초를 다루며 " +"객체지향 프로그래밍과 정규 표현식 같은 깊이 있는 강의도 있습니다." #: ../../intro/learning.rst:35 msgid "`Python basics `_" -msgstr "" +msgstr "`Python basics `_" #: ../../intro/learning.rst:38 msgid "Python for Beginners" -msgstr "" +msgstr "Python for Beginners" #: ../../intro/learning.rst:40 msgid "" -"thepythonguru.com is a tutorial focused on beginner programmers. It " -"covers many Python concepts in depth. It also teaches you some advanced " -"constructs of Python like lambda expressions and regular expressions. And" -" last it finishes off with the tutorial \"How to access MySQL db using " -"Python\"" +"thepythonguru.com is a tutorial focused on beginner programmers. It covers " +"many Python concepts in depth. It also teaches you some advanced constructs " +"of Python like lambda expressions and regular expressions. And last it " +"finishes off with the tutorial \"How to access MySQL db using Python\"" msgstr "" +"thepythonguru.com은 초보 프로그래머에 초점을 맞춘 튜토리얼입니다. 많은 파이썬 개념을 깊이 다룹니다. 람다 표현식과 정규 " +"표현식 같은 파이썬의 일부 고급 구조도 가르쳐 줍니다. 그리고 마지막에는 \"파이썬으로 MySQL db에 접근하는 방법\" 튜토리얼로 " +"마무리합니다." #: ../../intro/learning.rst:44 msgid "`Python for Beginners `_" -msgstr "" +msgstr "`Python for Beginners `_" #: ../../intro/learning.rst:47 msgid "Learn Python Interactive Tutorial" -msgstr "" +msgstr "Learn Python 인터랙티브 튜토리얼" #: ../../intro/learning.rst:49 msgid "" -"Learnpython.org is an easy non-intimidating way to get introduced to " -"Python. The website takes the same approach used on the popular `Try Ruby" -" `_ website. It has an interactive Python" -" interpreter built into the site that allows you to go through the " -"lessons without having to install Python locally." +"Learnpython.org is an easy non-intimidating way to get introduced to Python." +" The website takes the same approach used on the popular `Try Ruby " +"`_ website. It has an interactive Python " +"interpreter built into the site that allows you to go through the lessons " +"without having to install Python locally." msgstr "" +"Learnpython.org는 파이썬을 접하는 쉽고 위협적이지 않은 방법입니다. 이 웹사이트는 인기 있는 `Try Ruby " +"`_ 웹사이트에서 사용된 것과 같은 접근 방식을 취합니다. 사이트에 인터랙티브한" +" 파이썬 인터프리터가 내장되어 있어 파이썬을 로컬에 설치하지 않고도 강의를 따라갈 수 있습니다." #: ../../intro/learning.rst:55 msgid "`Learn Python `_" -msgstr "" +msgstr "`Learn Python `_" #: ../../intro/learning.rst:58 msgid "Python for You and Me" -msgstr "" +msgstr "Python for You and Me" #: ../../intro/learning.rst:60 msgid "" -"If you want a more traditional book, *Python For You and Me* is an " -"excellent resource for learning all aspects of the language." +"If you want a more traditional book, *Python For You and Me* is an excellent" +" resource for learning all aspects of the language." msgstr "" +"더 전통적인 책을 원한다면, *Python For You and Me* 는 언어의 모든 측면을 배울 수 있는 훌륭한 자료입니다." #: ../../intro/learning.rst:63 msgid "`Python for You and Me `_" -msgstr "" +msgstr "`Python for You and Me `_" #: ../../intro/learning.rst:66 msgid "Learn Python Step by Step" -msgstr "" +msgstr "Learn Python Step by Step" #: ../../intro/learning.rst:68 msgid "" "Techbeamers.com provides step-by-step tutorials to teach Python. Each " "tutorial is supplemented with logically added coding snippets and equips " -"with a follow-up quiz on the subject learned. There is a section for " -"`Python interview questions `_ to help job seekers. You can also read" -" essential `Python tips `_ and learn `best coding practices " +"with a follow-up quiz on the subject learned. There is a section for `Python" +" interview questions `_ to help job seekers. You can also read essential " +"`Python tips `_ and learn `best coding practices " "`_ for " -"writing quality code. Here, you'll get the right platform to learn Python" -" quickly." +"writing quality code. Here, you'll get the right platform to learn Python " +"quickly." msgstr "" +"Techbeamers.com는 파이썬을 가르치기 위한 단계별 튜토리얼을 제공합니다. 각 튜토리얼은 논리적으로 추가된 코딩 스니펫으로 " +"보강되며, 학습한 주제에 대한 후속 퀴즈가 포함되어 있습니다. 구직자를 돕기 위한 `파이썬 면접 질문 " +"`_ 섹션도 " +"있습니다. 또한 필수 `파이썬 팁 `_ 을 읽고, 품질 좋은 코드를 작성하기 위한 `최선의 코딩 관행 " +"`_ 을 배울 수 " +"있습니다. 이곳에서 파이썬을 빠르게 배울 수 있는 적절한 플랫폼을 만날 수 있습니다." #: ../../intro/learning.rst:70 msgid "" "`Learn Python Basic to Advanced `_" msgstr "" +"`Learn Python Basic to Advanced `_" #: ../../intro/learning.rst:74 msgid "Online Python Tutor" -msgstr "" +msgstr "Online Python Tutor" #: ../../intro/learning.rst:76 msgid "" -"Online Python Tutor gives you a visual step-by-step representation of how" -" your program runs. Python Tutor helps people overcome a fundamental " -"barrier to learning programming by understanding what happens as the " -"computer executes each line of a program's source code." +"Online Python Tutor gives you a visual step-by-step representation of how " +"your program runs. Python Tutor helps people overcome a fundamental barrier " +"to learning programming by understanding what happens as the computer " +"executes each line of a program's source code." msgstr "" +"Online Python Tutor는 프로그램이 어떻게 실행되는지에 대한 시각적이고 단계별인 표현을 제공합니다. Python Tutor는" +" 컴퓨터가 프로그램 소스 코드의 각 줄을 실행할 때 무슨 일이 일어나는지 이해하게 해주어, 프로그래밍을 배우는 근본적인 장벽을 사람들이 " +"극복할 수 있도록 돕습니다." #: ../../intro/learning.rst:82 msgid "`Online Python Tutor `_" -msgstr "" +msgstr "`Online Python Tutor `_" #: ../../intro/learning.rst:85 msgid "Invent Your Own Computer Games with Python" -msgstr "" +msgstr "Invent Your Own Computer Games with Python" #: ../../intro/learning.rst:87 msgid "" "This beginner's book is for those with no programming experience at all. " "Each chapter has the source code to a small game, using these example " -"programs to demonstrate programming concepts to give the reader an idea " -"of what programs \"look like\"." +"programs to demonstrate programming concepts to give the reader an idea of " +"what programs \"look like\"." msgstr "" +"이 초보자 책은 프로그래밍 경험이 전혀 없는 분들을 위한 책입니다. 각 장에는 작은 게임의 소스 코드가 있으며, 이러한 예시 프로그램을 " +"사용하여 프로그래밍 개념을 보여주고 독자에게 프로그램이 \"어떻게 생겼는지\" 감을 줍니다." #: ../../intro/learning.rst:92 msgid "" -"`Invent Your Own Computer Games with Python " -"`_" +"`Invent Your Own Computer Games with Python `_" msgstr "" +"`Invent Your Own Computer Games with Python `_" #: ../../intro/learning.rst:96 msgid "Hacking Secret Ciphers with Python" -msgstr "" +msgstr "Hacking Secret Ciphers with Python" #: ../../intro/learning.rst:98 msgid "" "This book teaches Python programming and basic cryptography for absolute " -"beginners. The chapters provide the source code for various ciphers, as " -"well as programs that can break them." +"beginners. The chapters provide the source code for various ciphers, as well" +" as programs that can break them." msgstr "" +"이 책은 완전 초보자를 위해 파이썬 프로그래밍과 기초 암호학을 가르칩니다. 각 장은 여러 가지 암호와 그것들을 깰 수 있는 프로그램의 " +"소스 코드를 제공합니다." #: ../../intro/learning.rst:102 msgid "" -"`Hacking Secret Ciphers with Python " -"`_" +"`Hacking Secret Ciphers with Python `_" msgstr "" +"`Hacking Secret Ciphers with Python `_" #: ../../intro/learning.rst:106 msgid "Learn Python the Hard Way" -msgstr "" +msgstr "Learn Python the Hard Way" #: ../../intro/learning.rst:108 msgid "" "This is an excellent beginner programmer's guide to Python. It covers " "\"hello world\" from the console to the web." -msgstr "" +msgstr "이것은 훌륭한 초보 프로그래머용 파이썬 가이드입니다. 콘솔에서 웹에 이르기까지 \"hello world\"를 다룹니다." #: ../../intro/learning.rst:111 msgid "`Learn Python the Hard Way `_" msgstr "" +"`Learn Python the Hard Way `_" #: ../../intro/learning.rst:115 msgid "Crash into Python" -msgstr "" +msgstr "Crash into Python" #: ../../intro/learning.rst:117 msgid "" "Also known as *Python for Programmers with 3 Hours*, this guide gives " "experienced developers from other languages a crash course on Python." msgstr "" +"*Python for Programmers with 3 Hours* 로도 알려진 이 가이드는 다른 언어를 사용해본 경험 있는 개발자에게 " +"파이썬에 대한 속성 과정을 제공합니다." #: ../../intro/learning.rst:120 msgid "`Crash into Python `_" -msgstr "" +msgstr "`Crash into Python `_" #: ../../intro/learning.rst:124 msgid "Dive Into Python 3" -msgstr "" +msgstr "Dive Into Python 3" #: ../../intro/learning.rst:126 msgid "" -"Dive Into Python 3 is a good book for those ready to jump in to Python 3." -" It's a good read if you are moving from Python 2 to 3 or if you already " -"have some experience programming in another language." +"Dive Into Python 3 is a good book for those ready to jump in to Python 3. " +"It's a good read if you are moving from Python 2 to 3 or if you already have" +" some experience programming in another language." msgstr "" +"Dive Into Python 3은 파이썬 3에 뛰어들 준비가 된 분들을 위한 좋은 책입니다. 파이썬 2에서 3으로 옮겨가고 있거나, " +"다른 언어로 이미 어느 정도 프로그래밍 경험이 있다면 좋은 읽을거리입니다." #: ../../intro/learning.rst:130 msgid "`Dive Into Python 3 `_" -msgstr "" +msgstr "`Dive Into Python 3 `_" #: ../../intro/learning.rst:134 msgid "Think Python: How to Think Like a Computer Scientist" -msgstr "" +msgstr "Think Python: How to Think Like a Computer Scientist" #: ../../intro/learning.rst:136 msgid "" -"Think Python attempts to give an introduction to basic concepts in " -"computer science through the use of the Python language. The focus was to" -" create a book with plenty of exercises, minimal jargon, and a section in" -" each chapter devoted to the subject of debugging." +"Think Python attempts to give an introduction to basic concepts in computer " +"science through the use of the Python language. The focus was to create a " +"book with plenty of exercises, minimal jargon, and a section in each chapter" +" devoted to the subject of debugging." msgstr "" +"Think Python은 파이썬 언어를 사용하여 컴퓨터 과학의 기본 개념을 소개하려 시도합니다. 연습 문제가 풍부하고 전문 용어는 " +"최소화하며, 각 장에 디버깅 주제를 다루는 섹션이 있는 책을 만드는 데 초점을 두었습니다." #: ../../intro/learning.rst:141 msgid "" -"While exploring the various features available in the Python language the" -" author weaves in various design patterns and best practices." -msgstr "" +"While exploring the various features available in the Python language the " +"author weaves in various design patterns and best practices." +msgstr "파이썬 언어에서 사용할 수 있는 다양한 기능을 탐색하면서, 저자는 다양한 디자인 패턴과 모범 사례를 함께 엮어 넣습니다." #: ../../intro/learning.rst:144 msgid "" -"The book also includes several case studies which have the reader explore" -" the topics discussed in the book in greater detail by applying those " -"topics to real-world examples. Case studies include assignments in GUI " -"programming and Markov Analysis." +"The book also includes several case studies which have the reader explore " +"the topics discussed in the book in greater detail by applying those topics " +"to real-world examples. Case studies include assignments in GUI programming " +"and Markov Analysis." msgstr "" +"이 책에는 또한 책에서 논의된 주제를 실제 세계의 예시에 적용하여 더 깊이 탐색하게 해주는 여러 케이스 스터디가 포함되어 있습니다. " +"케이스 스터디에는 GUI 프로그래밍과 마르코프 분석 과제가 포함됩니다." #: ../../intro/learning.rst:149 msgid "`Think Python `_" msgstr "" +"`Think Python `_" #: ../../intro/learning.rst:153 msgid "Python Koans" -msgstr "" +msgstr "Python Koans" #: ../../intro/learning.rst:155 msgid "" "Python Koans is a port of Edgecase's Ruby Koans. It uses a test-driven " -"approach to provide an interactive tutorial teaching basic Python " -"concepts. By fixing assertion statements that fail in a test script, " -"this provides sequential steps to learning Python." +"approach to provide an interactive tutorial teaching basic Python concepts." +" By fixing assertion statements that fail in a test script, this provides " +"sequential steps to learning Python." msgstr "" +"Python Koans는 Edgecase의 Ruby Koans를 이식한 것입니다. 테스트 주도 접근 방식을 사용하여 파이썬의 기본 개념을" +" 가르치는 인터랙티브 튜토리얼을 제공합니다. 테스트 스크립트에서 실패하는 단언(assertion) 구문을 고쳐 나가면서, 파이썬을 배우기" +" 위한 순차적인 단계를 제공합니다." #: ../../intro/learning.rst:160 msgid "" -"For those used to languages and figuring out puzzles on their own, this " -"can be a fun, attractive option. For those new to Python and programming," -" having an additional resource or reference will be helpful." +"For those used to languages and figuring out puzzles on their own, this can " +"be a fun, attractive option. For those new to Python and programming, having" +" an additional resource or reference will be helpful." msgstr "" +"언어에 익숙하고 스스로 퍼즐을 푸는 데에 익숙한 분들에게는 재미있고 매력적인 선택지가 될 수 있습니다. 파이썬과 프로그래밍에 새로 " +"입문하는 분들에게는 추가 자료나 참고 자료가 있는 편이 도움이 됩니다." #: ../../intro/learning.rst:164 msgid "`Python Koans `_" -msgstr "" +msgstr "`Python Koans `_" #: ../../intro/learning.rst:166 msgid "" "More information about test driven development can be found at these " "resources:" -msgstr "" +msgstr "테스트 주도 개발에 대한 더 많은 정보는 다음 자료에서 찾을 수 있습니다:" #: ../../intro/learning.rst:168 msgid "" "`Test Driven Development `_" msgstr "" +"`Test Driven Development `_" #: ../../intro/learning.rst:172 msgid "A Byte of Python" -msgstr "" +msgstr "A Byte of Python" #: ../../intro/learning.rst:174 msgid "" "A free introductory book that teaches Python at the beginner level, it " "assumes no previous programming experience." -msgstr "" +msgstr "초보 수준에서 파이썬을 가르치는 무료 입문서로, 사전 프로그래밍 경험을 가정하지 않습니다." #: ../../intro/learning.rst:177 msgid "" "`A Byte of Python for Python 2.x " -"`_ `A Byte of Python" -" for Python 3.x `_" +"`_ `A Byte of Python " +"for Python 3.x `_" msgstr "" +"`A Byte of Python for Python 2.x " +"`_ `A Byte of Python " +"for Python 3.x `_" #: ../../intro/learning.rst:182 msgid "Computer Science Path on Codecademy" -msgstr "" +msgstr "Codecademy의 Computer Science Path" #: ../../intro/learning.rst:184 msgid "" "A Codecademy course for the absolute Python beginner. This free and " -"interactive course provides and teaches the basics (and beyond) of Python" -" programming while testing the user's knowledge in between progress. This" -" course also features a built-in interpreter for receiving instant " -"feedback on your learning." +"interactive course provides and teaches the basics (and beyond) of Python " +"programming while testing the user's knowledge in between progress. This " +"course also features a built-in interpreter for receiving instant feedback " +"on your learning." msgstr "" +"완전 파이썬 초보자를 위한 Codecademy 강좌입니다. 이 무료의 인터랙티브 강좌는 파이썬 프로그래밍의 기초(와 그 이상)를 제공하고" +" 가르치며, 진행 중간중간 사용자의 지식을 테스트합니다. 이 강좌에는 학습에 대한 즉각적인 피드백을 받을 수 있는 내장 인터프리터도 들어" +" 있습니다." #: ../../intro/learning.rst:189 msgid "" "`Computer Science Path on Codecademy " "`_" msgstr "" +"`Codecademy의 Computer Science Path " +"`_" #: ../../intro/learning.rst:193 msgid "Code the blocks" -msgstr "" +msgstr "Code the blocks" #: ../../intro/learning.rst:195 msgid "" "*Code the blocks* provides free and interactive Python tutorials for " -"beginners. It combines Python programming with a 3D environment where you" -" \"place blocks\" and construct structures. The tutorials teach you how " -"to use Python to create progressively more elaborate 3D structures, " -"making the process of learning Python fun and engaging." +"beginners. It combines Python programming with a 3D environment where you " +"\"place blocks\" and construct structures. The tutorials teach you how to " +"use Python to create progressively more elaborate 3D structures, making the " +"process of learning Python fun and engaging." msgstr "" +"*Code the blocks* 는 초보자를 위한 무료 인터랙티브 파이썬 튜토리얼을 제공합니다. 파이썬 프로그래밍과 \"블록을 " +"배치\"하여 구조물을 만드는 3D 환경을 결합합니다. 튜토리얼은 점점 더 정교한 3D 구조물을 만들기 위해 파이썬을 사용하는 방법을 " +"가르쳐, 파이썬을 배우는 과정을 재미있고 흥미롭게 만들어줍니다." #: ../../intro/learning.rst:201 msgid "`Code the blocks `_" -msgstr "" +msgstr "`Code the blocks `_" #: ../../intro/learning.rst:206 msgid "Intermediate" -msgstr "" +msgstr "중급자" #: ../../intro/learning.rst:209 msgid "Python Tricks: The Book" -msgstr "" +msgstr "Python Tricks: The Book" #: ../../intro/learning.rst:211 msgid "" -"Discover Python's best practices with simple examples and start writing " -"even more beautiful + Pythonic code. *Python Tricks: The Book* shows you " -"exactly how." +"Discover Python's best practices with simple examples and start writing even" +" more beautiful + Pythonic code. *Python Tricks: The Book* shows you exactly" +" how." msgstr "" +"간단한 예시로 파이썬의 모범 사례를 발견하고, 더 아름답고 파이썬다운 코드를 작성하기 시작하세요. *Python Tricks: The " +"Book* 이 그 방법을 정확하게 보여줍니다." #: ../../intro/learning.rst:213 msgid "" "You’ll master intermediate and advanced-level features in Python with " "practical examples and a clear narrative." -msgstr "" +msgstr "실용적인 예시와 명확한 서술을 통해 파이썬의 중급 및 고급 수준 기능들을 마스터하게 됩니다." #: ../../intro/learning.rst:215 msgid "" "`Python Tricks: The Book `_" msgstr "" +"`Python Tricks: The Book `_" #: ../../intro/learning.rst:218 msgid "Effective Python" -msgstr "" +msgstr "Effective Python" #: ../../intro/learning.rst:220 msgid "" -"This book contains 59 specific ways to improve writing Pythonic code. At " -"227 pages, it is a very brief overview of some of the most common " -"adaptations programmers need to make to become efficient intermediate " -"level Python programmers." +"This book contains 59 specific ways to improve writing Pythonic code. At 227" +" pages, it is a very brief overview of some of the most common adaptations " +"programmers need to make to become efficient intermediate level Python " +"programmers." msgstr "" +"이 책에는 파이썬다운 코드 작성을 개선하는 59가지 구체적인 방법이 담겨 있습니다. 227페이지로, 효율적인 중급 수준의 파이썬 " +"프로그래머가 되기 위해 프로그래머가 해야 할 가장 일반적인 적응 사항 일부에 대한 매우 간단한 개요입니다." #: ../../intro/learning.rst:225 msgid "`Effective Python `_" -msgstr "" +msgstr "`Effective Python `_" #: ../../intro/learning.rst:230 msgid "Advanced" -msgstr "" +msgstr "고급자" #: ../../intro/learning.rst:233 msgid "Pro Python" -msgstr "" +msgstr "Pro Python" #: ../../intro/learning.rst:235 msgid "" -"This book is for intermediate to advanced Python programmers who are " -"looking to understand how and why Python works the way it does and how " -"they can take their code to the next level." +"This book is for intermediate to advanced Python programmers who are looking" +" to understand how and why Python works the way it does and how they can " +"take their code to the next level." msgstr "" +"이 책은 파이썬이 왜 이런 방식으로 동작하는지, 그리고 자신의 코드를 한 단계 더 발전시키는 방법을 이해하고자 하는 중급에서 고급 파이썬" +" 프로그래머를 위한 책입니다." #: ../../intro/learning.rst:239 msgid "`Pro Python `_" -msgstr "" +msgstr "`Pro Python `_" #: ../../intro/learning.rst:243 msgid "Expert Python Programming" -msgstr "" +msgstr "Expert Python Programming" #: ../../intro/learning.rst:244 msgid "" -"Expert Python Programming deals with best practices in programming Python" -" and is focused on the more advanced crowd." +"Expert Python Programming deals with best practices in programming Python " +"and is focused on the more advanced crowd." msgstr "" +"Expert Python Programming은 파이썬 프로그래밍의 모범 사례를 다루며, 보다 고급의 독자층에 초점을 맞춥니다." #: ../../intro/learning.rst:247 msgid "" @@ -438,39 +504,50 @@ msgid "" "manager case studies), method resolution order, using super() and meta-" "programming, and general :pep:`8` best practices." msgstr "" +"데코레이터(캐싱, 프록시, 컨텍스트 매니저 케이스 스터디 포함), 메소드 결정 순서(MRO), super() 사용과 메타 프로그래밍, " +"그리고 일반적인 :pep:`8` 모범 사례 같은 주제로 시작합니다." #: ../../intro/learning.rst:251 msgid "" "It has a detailed, multi-chapter case study on writing and releasing a " "package and eventually an application, including a chapter on using " "zc.buildout. Later chapters detail best practices such as writing " -"documentation, test-driven development, version control, optimization, " -"and profiling." +"documentation, test-driven development, version control, optimization, and " +"profiling." msgstr "" +"패키지와 궁극적으로는 응용을 작성하고 릴리즈하는 것에 대한 자세한 다중 장 케이스 스터디가 있으며, zc.buildout 사용에 대한 " +"장도 포함되어 있습니다. 후반부 장들은 문서 작성, 테스트 주도 개발, 버전 관리, 최적화, 프로파일링 같은 모범 사례를 자세히 " +"다룹니다." #: ../../intro/learning.rst:256 msgid "" -"`Expert Python Programming `_" +"`Expert Python Programming `_" msgstr "" +"`Expert Python Programming `_" #: ../../intro/learning.rst:260 msgid "A Guide to Python's Magic Methods" -msgstr "" +msgstr "A Guide to Python's Magic Methods" #: ../../intro/learning.rst:262 msgid "" "This is a collection of blog posts by Rafe Kettler which explain 'magic " -"methods' in Python. Magic methods are surrounded by double underscores " -"(i.e. __init__) and can make classes and objects behave in different and " -"magical ways." +"methods' in Python. Magic methods are surrounded by double underscores (i.e." +" __init__) and can make classes and objects behave in different and magical " +"ways." msgstr "" +"이것은 파이썬의 '매직 메소드(magic methods)'를 설명하는 Rafe Kettler의 블로그 글 모음입니다. 매직 메소드는 더블" +" 언더스코어로 둘러싸여 있으며(예: __init__), 클래스와 객체를 다양하고 마술 같은 방식으로 동작하게 만들 수 있습니다." #: ../../intro/learning.rst:266 msgid "" "`A Guide to Python's Magic Methods " "`_" msgstr "" +"`A Guide to Python's Magic Methods " +"`_" #: ../../intro/learning.rst:268 msgid "" @@ -479,14 +556,17 @@ msgid "" "Methods (repo on GitHub) " "`_" msgstr "" +"Rafekettler.com이 현재 다운되어 있어, GitHub 버전으로 바로 갈 수 있습니다. 여기서 PDF 버전을 찾을 수 있습니다:" +" `A Guide to Python's Magic Methods (GitHub 저장소) " +"`_" #: ../../intro/learning.rst:274 msgid "For Engineers and Scientists" -msgstr "" +msgstr "엔지니어와 과학자를 위해" #: ../../intro/learning.rst:277 msgid "A Primer on Scientific Programming with Python" -msgstr "" +msgstr "A Primer on Scientific Programming with Python" #: ../../intro/learning.rst:279 msgid "" @@ -494,23 +574,28 @@ msgid "" "Langtangen, mainly covers Python's usage in the scientific field. In the " "book, examples are chosen from mathematics and the natural sciences." msgstr "" +"Hans Petter Langtangen이 쓴 A Primer on Scientific Programming with Python은 주로" +" 과학 분야에서의 파이썬 사용을 다룹니다. 이 책에서는 수학과 자연과학에서 예시를 골랐습니다." #: ../../intro/learning.rst:283 msgid "" "`A Primer on Scientific Programming with Python " "`_" msgstr "" +"`A Primer on Scientific Programming with Python " +"`_" #: ../../intro/learning.rst:286 msgid "Numerical Methods in Engineering with Python" -msgstr "" +msgstr "Numerical Methods in Engineering with Python" #: ../../intro/learning.rst:288 msgid "" "Numerical Methods in Engineering with Python, written by Jaan Kiusalaas, " -"puts the emphasis on numerical methods and how to implement them in " -"Python." +"puts the emphasis on numerical methods and how to implement them in Python." msgstr "" +"Jaan Kiusalaas가 쓴 Numerical Methods in Engineering with Python은 수치 해석 방법과 " +"그것들을 파이썬으로 구현하는 방법에 중점을 둡니다." #: ../../intro/learning.rst:291 msgid "" @@ -519,216 +604,257 @@ msgid "" "mathematics-and-programming/numerical-methods-engineering-python-2nd-" "edition>`_" msgstr "" +"`Numerical Methods in Engineering with Python " +"`_" #: ../../intro/learning.rst:296 msgid "Miscellaneous Topics" -msgstr "" +msgstr "기타 주제" #: ../../intro/learning.rst:299 msgid "Problem Solving with Algorithms and Data Structures" -msgstr "" +msgstr "Problem Solving with Algorithms and Data Structures" #: ../../intro/learning.rst:301 msgid "" -"Problem Solving with Algorithms and Data Structures covers a range of " -"data structures and algorithms. All concepts are illustrated with Python " -"code along with interactive samples that can be run directly in the " -"browser." +"Problem Solving with Algorithms and Data Structures covers a range of data " +"structures and algorithms. All concepts are illustrated with Python code " +"along with interactive samples that can be run directly in the browser." msgstr "" +"Problem Solving with Algorithms and Data Structures는 다양한 자료구조와 알고리즘을 다룹니다. " +"모든 개념은 파이썬 코드와 브라우저에서 바로 실행할 수 있는 인터랙티브 샘플로 설명됩니다." #: ../../intro/learning.rst:305 msgid "" "`Problem Solving with Algorithms and Data Structures " "`_" msgstr "" +"`Problem Solving with Algorithms and Data Structures " +"`_" #: ../../intro/learning.rst:309 msgid "Programming Collective Intelligence" -msgstr "" +msgstr "Programming Collective Intelligence" #: ../../intro/learning.rst:311 msgid "" -"Programming Collective Intelligence introduces a wide array of basic " -"machine learning and data mining methods. The exposition is not very " -"mathematically formal, but rather focuses on explaining the underlying " -"intuition and shows how to implement the algorithms in Python." +"Programming Collective Intelligence introduces a wide array of basic machine" +" learning and data mining methods. The exposition is not very mathematically" +" formal, but rather focuses on explaining the underlying intuition and shows" +" how to implement the algorithms in Python." msgstr "" +"Programming Collective Intelligence는 광범위한 기본 머신러닝과 데이터 마이닝 방법을 소개합니다. 수학적으로 " +"매우 형식적이지는 않으며, 오히려 그 밑에 깔린 직관을 설명하는 데 초점을 맞추고 파이썬으로 알고리즘을 구현하는 방법을 보여줍니다." #: ../../intro/learning.rst:316 msgid "" "`Programming Collective Intelligence " "`_" msgstr "" +"`Programming Collective Intelligence " +"`_" #: ../../intro/learning.rst:320 msgid "Transforming Code into Beautiful, Idiomatic Python" -msgstr "" +msgstr "Transforming Code into Beautiful, Idiomatic Python" #: ../../intro/learning.rst:322 msgid "" "Transforming Code into Beautiful, Idiomatic Python is a video by Raymond " "Hettinger. Learn to take better advantage of Python's best features and " -"improve existing code through a series of code transformations: \"When " -"you see this, do that instead.\"" +"improve existing code through a series of code transformations: \"When you " +"see this, do that instead.\"" msgstr "" +"Transforming Code into Beautiful, Idiomatic Python은 Raymond Hettinger의 " +"동영상입니다. 파이썬의 최고 기능을 더 잘 활용하는 법을 배우고, 일련의 코드 변환을 통해 기존 코드를 개선하세요: \"이것을 보면, " +"대신 저것을 하세요.\"" #: ../../intro/learning.rst:326 msgid "" "`Transforming Code into Beautiful, Idiomatic Python " "`_" msgstr "" +"`Transforming Code into Beautiful, Idiomatic Python " +"`_" #: ../../intro/learning.rst:330 msgid "Fullstack Python" -msgstr "" +msgstr "Fullstack Python" #: ../../intro/learning.rst:332 msgid "" "Fullstack Python offers a complete top-to-bottom resource for web " "development using Python." -msgstr "" +msgstr "Fullstack Python은 파이썬을 사용한 웹 개발에 대한 완전한 위에서 아래까지의 자료를 제공합니다." #: ../../intro/learning.rst:335 msgid "" "From setting up the web server, to designing the front-end, choosing a " "database, optimizing/scaling, etc." -msgstr "" +msgstr "웹 서버 설정부터 프론트엔드 디자인, 데이터베이스 선택, 최적화/확장 등에 이르기까지." #: ../../intro/learning.rst:338 msgid "" "As the name suggests, it covers everything you need to build and run a " "complete web app from scratch." -msgstr "" +msgstr "이름이 시사하듯, 완전한 웹 앱을 처음부터 빌드하고 실행하는 데 필요한 모든 것을 다룹니다." #: ../../intro/learning.rst:341 msgid "`Fullstack Python `_" -msgstr "" +msgstr "`Fullstack Python `_" #: ../../intro/learning.rst:345 msgid "PythonistaCafe" -msgstr "" +msgstr "PythonistaCafe" #: ../../intro/learning.rst:347 msgid "" -"PythonistaCafe is an invite-only, online community of Python and software" -" development enthusiasts helping each other succeed and grow. Think of it" -" as a club of mutual improvement for Pythonistas where a broad range of " -"programming questions, career advice, and other topics are discussed " -"every day." +"PythonistaCafe is an invite-only, online community of Python and software " +"development enthusiasts helping each other succeed and grow. Think of it as " +"a club of mutual improvement for Pythonistas where a broad range of " +"programming questions, career advice, and other topics are discussed every " +"day." msgstr "" +"PythonistaCafe는 초대 전용 온라인 커뮤니티로, 파이썬과 소프트웨어 개발 애호가들이 서로의 성공과 성장을 돕는 곳입니다. " +"광범위한 프로그래밍 질문, 커리어 조언, 기타 주제가 매일 논의되는 파이썬 사용자(Pythonista)를 위한 상호 발전 클럽이라고 " +"생각하면 됩니다." #: ../../intro/learning.rst:349 msgid "`PythonistaCafe `_" -msgstr "" +msgstr "`PythonistaCafe `_" #: ../../intro/learning.rst:354 msgid "References" -msgstr "" +msgstr "참고 문헌" #: ../../intro/learning.rst:357 msgid "Python in a Nutshell" -msgstr "" +msgstr "Python in a Nutshell" #: ../../intro/learning.rst:359 msgid "" -"Python in a Nutshell, written by Alex Martelli, covers most cross-" -"platform Python usage, from its syntax to built-in libraries to advanced " -"topics such as writing C extensions." +"Python in a Nutshell, written by Alex Martelli, covers most cross-platform " +"Python usage, from its syntax to built-in libraries to advanced topics such " +"as writing C extensions." msgstr "" +"Alex Martelli가 쓴 Python in a Nutshell은 문법부터 내장 라이브러리, 그리고 C 확장 작성과 같은 고급 주제에" +" 이르기까지, 대부분의 크로스 플랫폼 파이썬 사용법을 다룹니다." #: ../../intro/learning.rst:363 -msgid "`Python in a Nutshell `_" +msgid "" +"`Python in a Nutshell `_" msgstr "" +"`Python in a Nutshell `_" #: ../../intro/learning.rst:366 msgid "The Python Language Reference" -msgstr "" +msgstr "The Python Language Reference" #: ../../intro/learning.rst:368 msgid "" "This is Python's reference manual. It covers the syntax and the core " "semantics of the language." -msgstr "" +msgstr "이것은 파이썬의 레퍼런스 매뉴얼입니다. 언어의 문법과 핵심 의미론을 다룹니다." #: ../../intro/learning.rst:371 msgid "" "`The Python Language Reference " "`_" msgstr "" +"`The Python Language Reference " +"`_" #: ../../intro/learning.rst:374 msgid "Python Essential Reference" -msgstr "" +msgstr "Python Essential Reference" #: ../../intro/learning.rst:376 msgid "" "Python Essential Reference, written by David Beazley, is the definitive " -"reference guide to Python. It concisely explains both the core language " -"and the most essential parts of the standard library. It covers Python 3 " -"and 2.6 versions." +"reference guide to Python. It concisely explains both the core language and " +"the most essential parts of the standard library. It covers Python 3 and 2.6" +" versions." msgstr "" +"David Beazley가 쓴 Python Essential Reference는 파이썬에 대한 결정판 레퍼런스 가이드입니다. 핵심 언어와" +" 표준 라이브러리에서 가장 필수적인 부분을 간결하게 설명합니다. 파이썬 3과 2.6 버전을 다룹니다." #: ../../intro/learning.rst:380 msgid "`Python Essential Reference `_" -msgstr "" +msgstr "`Python Essential Reference `_" #: ../../intro/learning.rst:383 msgid "Python Pocket Reference" -msgstr "" +msgstr "Python Pocket Reference" #: ../../intro/learning.rst:385 msgid "" -"Python Pocket Reference, written by Mark Lutz, is an easy to use " -"reference to the core language, with descriptions of commonly used " -"modules and toolkits. It covers Python 3 and 2.6 versions." +"Python Pocket Reference, written by Mark Lutz, is an easy to use reference " +"to the core language, with descriptions of commonly used modules and " +"toolkits. It covers Python 3 and 2.6 versions." msgstr "" +"Mark Lutz가 쓴 Python Pocket Reference는 핵심 언어에 대한 쉽게 사용할 수 있는 레퍼런스이며, 일반적으로 " +"사용되는 모듈과 툴킷에 대한 설명이 들어 있습니다. 파이썬 3과 2.6 버전을 다룹니다." #: ../../intro/learning.rst:389 msgid "" "`Python Pocket Reference " "`_" msgstr "" +"`Python Pocket Reference " +"`_" #: ../../intro/learning.rst:392 msgid "Python Cookbook" -msgstr "" +msgstr "Python Cookbook" #: ../../intro/learning.rst:394 msgid "" -"Python Cookbook, written by David Beazley and Brian K. Jones, is packed " -"with practical recipes. This book covers the core Python language as well" -" as tasks common to a wide variety of application domains." +"Python Cookbook, written by David Beazley and Brian K. Jones, is packed with" +" practical recipes. This book covers the core Python language as well as " +"tasks common to a wide variety of application domains." msgstr "" +"David Beazley와 Brian K. Jones가 쓴 Python Cookbook은 실용적인 레시피로 가득합니다. 이 책은 핵심 " +"파이썬 언어뿐만 아니라 다양한 응용 도메인에 공통적인 작업을 다룹니다." #: ../../intro/learning.rst:398 msgid "`Python Cookbook `_" -msgstr "" +msgstr "`Python Cookbook `_" #: ../../intro/learning.rst:401 msgid "Writing Idiomatic Python" -msgstr "" +msgstr "Writing Idiomatic Python" #: ../../intro/learning.rst:403 msgid "" -"Writing Idiomatic Python, written by Jeff Knupp, contains the most common" -" and important Python idioms in a format that maximizes identification " -"and understanding. Each idiom is presented as a recommendation of a way " -"to write some commonly used piece of code, followed by an explanation of " -"why the idiom is important. It also contains two code samples for each " -"idiom: the \"Harmful\" way to write it and the \"Idiomatic\" way." +"Writing Idiomatic Python, written by Jeff Knupp, contains the most common " +"and important Python idioms in a format that maximizes identification and " +"understanding. Each idiom is presented as a recommendation of a way to " +"write some commonly used piece of code, followed by an explanation of why " +"the idiom is important. It also contains two code samples for each idiom: " +"the \"Harmful\" way to write it and the \"Idiomatic\" way." msgstr "" +"Jeff Knupp이 쓴 Writing Idiomatic Python에는 식별과 이해를 극대화하는 형식으로 가장 흔하고 중요한 파이썬 " +"이디엄이 담겨 있습니다. 각 이디엄은 자주 사용되는 코드 조각을 작성하는 권장 방식으로 제시되며, 그 이디엄이 왜 중요한지에 대한 설명이" +" 뒤따릅니다. 또한 각 이디엄에 대해 두 가지 코드 샘플, 즉 \"해로운(Harmful)\" 작성 방식과 " +"\"이디엄적(Idiomatic)\" 방식을 담고 있습니다." #: ../../intro/learning.rst:410 msgid "" "`For Python 2.7.3+ `_" msgstr "" +"`Python 2.7.3+ 용 `_" #: ../../intro/learning.rst:412 msgid "" "`For Python 3.3+ `_" msgstr "" +"`Python 3.3+ 용 `_" #~ msgid "" #~ msgstr "" @@ -737,41 +863,28 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "thepythonguru.com is a tutorial focuses " -#~ "on beginner programmers. It covers many" -#~ " python concepts in depth. It also" -#~ " teaches you some advance constructs " -#~ "of python like lambda expression, " -#~ "regular expression. At last it finishes" -#~ " off with tutorial \"How to access" -#~ " MySQL db using python\"" +#~ "thepythonguru.com is a tutorial focuses on beginner programmers. It covers " +#~ "many python concepts in depth. It also teaches you some advance constructs " +#~ "of python like lambda expression, regular expression. At last it finishes " +#~ "off with tutorial \"How to access MySQL db using python\"" #~ msgstr "" #~ msgid "`Python for beginners `_" #~ msgstr "" #~ msgid "" -#~ "Learnpython.org is an easy non-" -#~ "intimidating way to get introduced to" -#~ " Python. The website takes the same" -#~ " approach used on the popular `Try" -#~ " Ruby `_ website, it " -#~ "has an interactive Python interpreter " -#~ "built into the site that allows " -#~ "you to go through the lessons " -#~ "without having to install Python " -#~ "locally." +#~ "Learnpython.org is an easy non-intimidating way to get introduced to Python." +#~ " The website takes the same approach used on the popular `Try Ruby " +#~ "`_ website, it has an interactive Python interpreter " +#~ "built into the site that allows you to go through the lessons without having" +#~ " to install Python locally." #~ msgstr "" #~ msgid "" -#~ "Online Python Tutor gives you a " -#~ "visual step by step representation of" -#~ " how your program runs. Python Tutor" -#~ " helps people overcome a fundamental " -#~ "barrier to learning programming by " -#~ "understanding what happens as the " -#~ "computer executes each line of a " -#~ "program's source code." +#~ "Online Python Tutor gives you a visual step by step representation of how " +#~ "your program runs. Python Tutor helps people overcome a fundamental barrier " +#~ "to learning programming by understanding what happens as the computer " +#~ "executes each line of a program's source code." #~ msgstr "" #~ msgid "`Learn Python the Hard Way `_" @@ -784,81 +897,61 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "Think Python attempts to give an " -#~ "introduction to basic concepts in " -#~ "computer science through the use of " -#~ "the Python language. The focus was " -#~ "to create a book with plenty of" -#~ " exercises, minimal jargon and a " -#~ "section in each chapter devoted to " -#~ "the subject of debugging." +#~ "Think Python attempts to give an introduction to basic concepts in computer " +#~ "science through the use of the Python language. The focus was to create a " +#~ "book with plenty of exercises, minimal jargon and a section in each chapter " +#~ "devoted to the subject of debugging." #~ msgstr "" #~ msgid "" -#~ "The book also includes several case " -#~ "studies which have the reader explore" -#~ " the topics discussed in the book " -#~ "in greater detail by applying those " -#~ "topics to real-world examples. Case " -#~ "studies include assignments in GUI and" -#~ " Markov Analysis." +#~ "The book also includes several case studies which have the reader explore " +#~ "the topics discussed in the book in greater detail by applying those topics " +#~ "to real-world examples. Case studies include assignments in GUI and Markov " +#~ "Analysis." #~ msgstr "" #~ msgid "" -#~ "Python Koans is a port of " -#~ "Edgecase's Ruby Koans. It uses a " -#~ "test-driven approach, q.v. TEST DRIVEN " -#~ "DESIGN SECTION to provide an interactive" -#~ " tutorial teaching basic Python concepts." -#~ " By fixing assertion statements that " -#~ "fail in a test script, this " -#~ "provides sequential steps to learning " -#~ "Python." +#~ "Python Koans is a port of Edgecase's Ruby Koans. It uses a test-driven " +#~ "approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive tutorial" +#~ " teaching basic Python concepts. By fixing assertion statements that fail " +#~ "in a test script, this provides sequential steps to learning Python." #~ msgstr "" #~ msgid "`Python Koans `_" #~ msgstr "" #~ msgid "" -#~ "`Test Driven Development " -#~ "`_" +#~ "`Test Driven Development `_" #~ msgstr "" #~ msgid "" -#~ "`A Byte of Python for Python 2.x" -#~ " `_ `A" -#~ " Byte of Python for Python 3.x " -#~ "`_" +#~ "`A Byte of Python for Python 2.x " +#~ "`_ `A Byte of Python " +#~ "for Python 3.x `_" #~ msgstr "" #~ msgid "Learn to Program in Python with Codeacademy" #~ msgstr "" #~ msgid "" -#~ "A Codeacademy course for the absolute" -#~ " Python beginner. This free and " -#~ "interactive course provides and teaches " -#~ "the basics (and beyond) of Python " -#~ "programming whilst testing the user's " -#~ "knowledge in between progress. This " -#~ "course also features a built-in " -#~ "interpreter for receiving instant feedback " +#~ "A Codeacademy course for the absolute Python beginner. This free and " +#~ "interactive course provides and teaches the basics (and beyond) of Python " +#~ "programming whilst testing the user's knowledge in between progress. This " +#~ "course also features a built-in interpreter for receiving instant feedback " #~ "on your learning." #~ msgstr "" #~ msgid "" -#~ "`Learn to Program in Python with " -#~ "Codeacademy `_" +#~ "`Learn to Program in Python with Codeacademy " +#~ "`_" #~ msgstr "" #~ msgid "" -#~ "This book contains 59 specific ways " -#~ "to improve writing Pythonic code. At " -#~ "227 pages, it is a very brief " -#~ "overview of some of the most " -#~ "commons adapations programmers need to " -#~ "make to become efficient intermediate " -#~ "level Python programmers." +#~ "This book contains 59 specific ways to improve writing Pythonic code. At 227" +#~ " pages, it is a very brief overview of some of the most commons adapations " +#~ "programmers need to make to become efficient intermediate level Python " +#~ "programmers." #~ msgstr "" #~ msgid "`Effective Python `_" @@ -868,114 +961,88 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "It starts with topics like decorators" -#~ " (with caching, proxy, and context " -#~ "manager case-studies), method resolution " -#~ "order, using super() and meta-" -#~ "programming, and general :pep:`8` best " -#~ "practices." +#~ "It starts with topics like decorators (with caching, proxy, and context " +#~ "manager case-studies), method resolution order, using super() and meta-" +#~ "programming, and general :pep:`8` best practices." #~ msgstr "" #~ msgid "" -#~ "It has a detailed, multi-chapter " -#~ "case study on writing and releasing " -#~ "a package and eventually an application," -#~ " including a chapter on using " -#~ "zc.buildout. Later chapters detail best " -#~ "practices such as writing documentation, " -#~ "test-driven development, version control, " -#~ "optimization and profiling." +#~ "It has a detailed, multi-chapter case study on writing and releasing a " +#~ "package and eventually an application, including a chapter on using " +#~ "zc.buildout. Later chapters detail best practices such as writing " +#~ "documentation, test-driven development, version control, optimization and " +#~ "profiling." #~ msgstr "" #~ msgid "" -#~ "`Expert Python Programming `_" +#~ "`Expert Python Programming `_" #~ msgstr "" #~ msgid "" -#~ "`A Primer on Scientific Programming with" -#~ " Python " +#~ "`A Primer on Scientific Programming with Python " #~ "`_" #~ msgstr "" #~ msgid "" -#~ "`Numerical Methods in Engineering with " -#~ "Python " -#~ "`_" +#~ "`Numerical Methods in Engineering with Python " +#~ "`_" #~ msgstr "" #~ msgid "Miscellaneous topics" #~ msgstr "" #~ msgid "" -#~ "Transforming Code into Beautiful, Idiomatic" -#~ " Python is a video by Raymond " -#~ "Hettinger. Learn to take better " -#~ "advantage of Python's best features and" -#~ " improve existing code through a " -#~ "series of code transformations, \"When " -#~ "you see this, do that instead.\"" +#~ "Transforming Code into Beautiful, Idiomatic Python is a video by Raymond " +#~ "Hettinger. Learn to take better advantage of Python's best features and " +#~ "improve existing code through a series of code transformations, \"When you " +#~ "see this, do that instead.\"" #~ msgstr "" #~ msgid "" -#~ "From setting up the webserver, to " -#~ "designing the front-end, choosing a " +#~ "From setting up the webserver, to designing the front-end, choosing a " #~ "database, optimizing/scaling, etc." #~ msgstr "" #~ msgid "" -#~ "Python in a Nutshell, written by " -#~ "Alex Martelli, covers most cross-" -#~ "platform Python's usage, from its syntax" -#~ " to built-in libraries to advanced" -#~ " topics such as writing C extensions." +#~ "Python in a Nutshell, written by Alex Martelli, covers most cross-platform " +#~ "Python's usage, from its syntax to built-in libraries to advanced topics " +#~ "such as writing C extensions." #~ msgstr "" #~ msgid "" -#~ "This is Python's reference manual, it" -#~ " covers the syntax and the core " +#~ "This is Python's reference manual, it covers the syntax and the core " #~ "semantics of the language." #~ msgstr "" #~ msgid "" -#~ "Python Cookbook, written by David " -#~ "Beazley and Brian K. Jones, is " -#~ "packed with practical recipes. This book" -#~ " covers the core python language as" -#~ " well as tasks common to a wide" -#~ " variety of application domains." +#~ "Python Cookbook, written by David Beazley and Brian K. Jones, is packed with" +#~ " practical recipes. This book covers the core python language as well as " +#~ "tasks common to a wide variety of application domains." #~ msgstr "" #~ msgid "" -#~ "\"Writing Idiomatic Python\", written by " -#~ "Jeff Knupp, contains the most common " -#~ "and important Python idioms in a " -#~ "format that maximizes identification and " -#~ "understanding. Each idiom is presented " -#~ "as a recommendation of a way to" -#~ " write some commonly used piece of" -#~ " code, followed by an explanation of" -#~ " why the idiom is important. It " -#~ "also contains two code samples for " -#~ "each idiom: the \"Harmful\" way to " -#~ "write it and the \"Idiomatic\" way." +#~ "\"Writing Idiomatic Python\", written by Jeff Knupp, contains the most " +#~ "common and important Python idioms in a format that maximizes identification" +#~ " and understanding. Each idiom is presented as a recommendation of a way to" +#~ " write some commonly used piece of code, followed by an explanation of why " +#~ "the idiom is important. It also contains two code samples for each idiom: " +#~ "the \"Harmful\" way to write it and the \"Idiomatic\" way." #~ msgstr "" #~ msgid "" -#~ "`For Python 2.7.3+ `_" +#~ "`For Python 2.7.3+ `_" #~ msgstr "" #~ msgid "" -#~ "`For Python 3.3+ `_" +#~ "`For Python 3.3+ `_" #~ msgstr "" #~ msgid "" -#~ "`Expert Python Programming `_" +#~ "`Expert Python Programming `_" #~ msgstr "" - From a3378a5af2d247368a1ab3777d96b25dd76874fb Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 09:37:19 +0900 Subject: [PATCH 116/117] =?UTF-8?q?Normalize=20Django=20=E2=86=92=20?= =?UTF-8?q?=EC=9E=A5=EA=B3=A0=20(not=20=EC=9F=9D=EA=B3=A0)=20across=20tran?= =?UTF-8?q?slations?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Affected files: scenarios/web.po, scenarios/db.po, intro/duction.po, starting/install3/osx.po. Also fixed typos in db.po (는는→는, 과과→과, 비슷합니다다→비슷합니다). Per user instruction: "Django는 일괄 '장고'로 번역하라. '쟝고'가 아니다". Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/locale/ko/LC_MESSAGES/intro/duction.mo | Bin 7151 -> 7151 bytes docs/locale/ko/LC_MESSAGES/intro/duction.po | 2 +- docs/locale/ko/LC_MESSAGES/scenarios/db.mo | Bin 7962 -> 7942 bytes docs/locale/ko/LC_MESSAGES/scenarios/db.po | 10 +- docs/locale/ko/LC_MESSAGES/scenarios/web.mo | Bin 34802 -> 34802 bytes docs/locale/ko/LC_MESSAGES/scenarios/web.po | 933 ++++++++---------- .../ko/LC_MESSAGES/starting/install3/osx.mo | Bin 8489 -> 8489 bytes .../ko/LC_MESSAGES/starting/install3/osx.po | 122 ++- 8 files changed, 462 insertions(+), 605 deletions(-) diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.mo b/docs/locale/ko/LC_MESSAGES/intro/duction.mo index 556b56d4b5610567b178cd2c096b0384396d50de..55229e95e0f1dc2e937d5e51a7d64cf07ba65913 100644 GIT binary patch delta 23 fcmaEF{@#3pt^nJcc}rhyUNE_VS$T7qz)Wrci}MPi delta 16 XcmaEF{@#3puE69fX3foE0yDV*Jue0@ diff --git a/docs/locale/ko/LC_MESSAGES/intro/duction.po b/docs/locale/ko/LC_MESSAGES/intro/duction.po index 279d6850a..b0768fd44 100644 --- a/docs/locale/ko/LC_MESSAGES/intro/duction.po +++ b/docs/locale/ko/LC_MESSAGES/intro/duction.po @@ -76,7 +76,7 @@ msgid "" "`_ set of math routines." msgstr "" "또한 `Python Package Index `_ 가 있어 사용자가 자신의 패키지를 등록하여 널리 " -"사용되게 할 수 있습니다. 이는 Perl의 `CPAN `_ 과 비슷합니다. `Django " +"사용되게 할 수 있습니다. 이는 Perl의 `CPAN `_ 과 비슷합니다. `장고 " "`_ 웹 프레임워크와 `NumPy `_" " 수학 루틴 모음과 같은 매우 강력한 파이썬 프레임워크와 도구가 번성하는 커뮤니티가 존재합니다." diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.mo b/docs/locale/ko/LC_MESSAGES/scenarios/db.mo index 5fedae01f89a06535667e417cb0572b3f116cd2f..94e38fd48d9903e7e610868fea9dc86e8a679571 100644 GIT binary patch delta 263 zcmbPb*JihYg|VKCfq~&6KLf)-ApHhNy8`KT0t^fhK>7=iJ_@9L1sNEGfV41>U<1-> zK$;y$>jG(zep4XL38Wo>bT5$h0@8kr3=B7bG|)%}brA*zHz3~}NM8ohb)pOmFM;Ag z;tc8x!9W2U2?hoaAU#2nfgv48-;`ot*viDf;3&huzz0-{sj?HUja~T1dYC-n^ delta 276 zcmZp(n`O6wg|S|Ufq~&6KLf)-ApHeMy8`KL0t^fhK>81mJ_@8m1sNDX>ZE}L8<5rm z((FLm6i9OcXmJzJ82Ast9Rkz!!j$Hc(kBg4SJ2UN%{zj+m-1)u2rxvw@a&~V90 z%uCPLRPYb-Wq31x?&kOWF-$yQDUi^cxeb%KS+qAd3CXi;o+tKzP33jh6a}C>Ef diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/db.po b/docs/locale/ko/LC_MESSAGES/scenarios/db.po index 6e13ea156..6529453aa 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/db.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/db.po @@ -102,14 +102,14 @@ msgstr "" #: ../../scenarios/db.rst:66 msgid "Django ORM" -msgstr "쟝고(Django) ORM" +msgstr "장고 ORM" #: ../../scenarios/db.rst:68 msgid "" "The Django ORM is the interface used by `Django " "`_ to provide database access." msgstr "" -"쟝고 ORM은 `Django `_ 가 데이터베이스에 접근하기 위해 사용하는 " +"장고 ORM은 `장고 `_ 가 데이터베이스에 접근하기 위해 사용하는 " "인터페이스입니다. " #: ../../scenarios/db.rst:71 @@ -138,7 +138,7 @@ msgid "" "Django gives you an automatically-generated database-access API; see `Making" " queries `__." msgstr "" -"쟝고는 자동으로 만들어진 데이터베이스 엑세스 API를 제공합니다. `Making queries " +"장고는 자동으로 만들어진 데이터베이스 엑세스 API를 제공합니다. `Making queries " "`__ 문서를 확인하세요." #: ../../scenarios/db.rst:85 @@ -162,7 +162,7 @@ msgstr "" "`peewee `_ 는 파이썬 2.6 이상을 지원하면서 3.2 " "이상도 지원하는 가벼운 ORM입니다. SQLite, MySQL, 그리고 PostgreSQL을 기본적으로 지원합니다. `model " "layer `_ 는는 쟝고 ORM과과 비슷합니다다. `SQL 비스무리한 메소드 " +"definition>`_ 는 장고 ORM과 비슷합니다. `SQL 비스무리한 메소드 " "`_ 로로 데이터를를 쿼리할 수도도 있습니다. SQLite, MySQL, PostgreSQL을 기본 지원하며 `다양한 애드온 " "`_ " @@ -182,7 +182,7 @@ msgid "" "Oracle." msgstr "" "`PonyORM `_ 은 데이터베이스 쿼리를 위한 새로운 접근방식을 취하는 ORM입니다. SQL과 " -"비슷한 언어나 불리언 표현식을 작성하는 대신, 파이썬의 제너레이터 구문을 사용합니다. PonyORM 엔티티를 생성할 수 있는는 그래픽 " +"비슷한 언어나 불리언 표현식을 작성하는 대신, 파이썬의 제너레이터 구문을 사용합니다. PonyORM 엔티티를 생성할 수 있는 그래픽 " "스키마 편집기도 제공합니다. 파이썬 2.6 이상과 파이썬 3.3 이상을 지원하고 SQLite, MySQL, PostgreSQL, " "Oracle에 연결할 수 있습니다." diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.mo b/docs/locale/ko/LC_MESSAGES/scenarios/web.mo index 58430d232abc1e311c9f2a9ecaad8a11c399fce9..16b239c2ff646f924e4b3402a02a772944d9f826 100644 GIT binary patch delta 78 zcmey=&-AIEX+w-V=e(t_HZNd!GjHkURQGGlOhDS!J5>xsFG<|Q4Wc7*ox$RB3(m0s U`IB=?e}Jg;vRaVrvoan*0J4rGE&u=k delta 78 zcmey=&-AIEX+w-V=lr>^HZNd!Gk@;pRQGGlOhDS!J5>xsFG<|Q4Wc7*ox$RB3(m0s U`IB=?e}Jg;vRaVrvoan*0I97b?*IS* diff --git a/docs/locale/ko/LC_MESSAGES/scenarios/web.po b/docs/locale/ko/LC_MESSAGES/scenarios/web.po index 0e996d78a..01592a1a9 100644 --- a/docs/locale/ko/LC_MESSAGES/scenarios/web.po +++ b/docs/locale/ko/LC_MESSAGES/scenarios/web.po @@ -27,11 +27,10 @@ msgstr "웹 어플리케이션 & 프레임워크" #: ../../scenarios/web.rst:8 msgid "" -"As a powerful scripting language adapted to both fast prototyping and " -"bigger projects, Python is widely used in web application development." +"As a powerful scripting language adapted to both fast prototyping and bigger" +" projects, Python is widely used in web application development." msgstr "" -"파이썬은 빠른 프로토타이핑과 거대한 프로젝트에 두루 사용되는 강력한 스크립트 언어로서, " -"웹 어플리케이션 개발에 널리 사용된다." +"파이썬은 빠른 프로토타이핑과 거대한 프로젝트에 두루 사용되는 강력한 스크립트 언어로서, 웹 어플리케이션 개발에 널리 사용된다." #: ../../scenarios/web.rst:15 msgid "Context" @@ -45,17 +44,15 @@ msgstr "WSGI" msgid "" "The Web Server Gateway Interface (or \"WSGI\" for short) is a standard " "interface between web servers and Python web application frameworks. By " -"standardizing behavior and communication between web servers and Python " -"web frameworks, WSGI makes it possible to write portable Python web code " -"that can be deployed in any :ref:`WSGI-compliant web server `. WSGI is documented in :pep:`3333`." +"standardizing behavior and communication between web servers and Python web " +"frameworks, WSGI makes it possible to write portable Python web code that " +"can be deployed in any :ref:`WSGI-compliant web server `. " +"WSGI is documented in :pep:`3333`." msgstr "" -"Web Server Gateway Interface(웹 서버 게이트웨이 인터페이스)(줄여서 \"WSGI\") " -"는 웹서버와 파이썬 웹 어플리케이션 프레임워크 간의 표준 인터페이스입니다. " -"웹 서버와 파이썬 웹 프레임워크 간의 동작과 통신을 표준화함으로써 " -"WSGI는 모든 :ref:`WSGI 호환 웹서버 ` 에 복사해 넣어 배포할 수 있는 " -"파이썬 웹서버 코드를 작성할 수 있도록 합니다." +"Web Server Gateway Interface(웹 서버 게이트웨이 인터페이스)(줄여서 \"WSGI\") 는 웹서버와 파이썬 웹 " +"어플리케이션 프레임워크 간의 표준 인터페이스입니다. 웹 서버와 파이썬 웹 프레임워크 간의 동작과 통신을 표준화함으로써 WSGI는 모든 " +":ref:`WSGI 호환 웹서버 ` 에 복사해 넣어 배포할 수 있는 파이썬 웹서버 코드를 작성할 수 " +"있도록 합니다." #: ../../scenarios/web.rst:32 msgid "Frameworks" @@ -63,14 +60,14 @@ msgstr "프레임워크" #: ../../scenarios/web.rst:34 msgid "" -"Broadly speaking, a web framework consists of a set of libraries and a " -"main handler within which you can build custom code to implement a web " +"Broadly speaking, a web framework consists of a set of libraries and a main " +"handler within which you can build custom code to implement a web " "application (i.e. an interactive web site). Most web frameworks include " "patterns and utilities to accomplish at least the following:" msgstr "" -"일반적으로 웹 프레임워크란 웹 어플리케이션(예를 들면 대화형 웹사이트)을 구현하기 위해 사용되는" -"일련의 라이브러리 묶음과 사용자 정의 코드를 빌드할 수 있는 기본 핸들러로 구성됩니다." -"대부분의 웹 프레임워크는 적어도 다음과 같은 사항들을 달성하기 위한 패턴과 유틸리티를 갖추고 있습니다:" +"일반적으로 웹 프레임워크란 웹 어플리케이션(예를 들면 대화형 웹사이트)을 구현하기 위해 사용되는일련의 라이브러리 묶음과 사용자 정의 " +"코드를 빌드할 수 있는 기본 핸들러로 구성됩니다.대부분의 웹 프레임워크는 적어도 다음과 같은 사항들을 달성하기 위한 패턴과 유틸리티를 " +"갖추고 있습니다:" #: ../../scenarios/web.rst:41 msgid "URL Routing" @@ -78,8 +75,8 @@ msgstr "URL 라우팅" #: ../../scenarios/web.rst:40 msgid "" -"Matches an incoming HTTP request to a particular piece of Python code to " -"be invoked" +"Matches an incoming HTTP request to a particular piece of Python code to be " +"invoked" msgstr "들어오는 HTTP 요청을 특정 파이썬 코드 조각에 연결시켜 실행합니다." #: ../../scenarios/web.rst:44 @@ -96,11 +93,9 @@ msgstr "템플릿 엔진" #: ../../scenarios/web.rst:47 msgid "" -"Allows for separating Python code implementing an application's logic " -"from the HTML (or other) output that it produces" -msgstr "" -"어플리케이션의 로직을 구현하는 파이썬 코드를 " -"그 파이썬 코드가 생성하는 HTML(또는 다른 무언가)로부터 분리합니다." +"Allows for separating Python code implementing an application's logic from " +"the HTML (or other) output that it produces" +msgstr "어플리케이션의 로직을 구현하는 파이썬 코드를 그 파이썬 코드가 생성하는 HTML(또는 다른 무언가)로부터 분리합니다." #: ../../scenarios/web.rst:53 msgid "Development Web Server" @@ -111,38 +106,36 @@ msgid "" "Runs an HTTP server on development machines to enable rapid development; " "often automatically reloads server-side code when files are updated" msgstr "" -"신속한 개발이 가능하도록 개발용 머신에 " -"HTTP 서버를 실행합니다. " -"그리고 파일이 업데이트 될 때 자동으로 서버 측 코드를 다시 불러옵니다." +"신속한 개발이 가능하도록 개발용 머신에 HTTP 서버를 실행합니다. 그리고 파일이 업데이트 될 때 자동으로 서버 측 코드를 다시 " +"불러옵니다." #: ../../scenarios/web.rst:56 msgid "Django" -msgstr "쟝고" +msgstr "장고" #: ../../scenarios/web.rst:58 msgid "" -"`Django `_ is a \"batteries included\" web" -" application framework, and is an excellent choice for creating content-" -"oriented websites. By providing many utilities and patterns out of the " -"box, Django aims to make it possible to build complex, database-backed " -"web applications quickly, while encouraging best practices in code " -"written using it." +"`Django `_ is a \"batteries included\" web " +"application framework, and is an excellent choice for creating content-" +"oriented websites. By providing many utilities and patterns out of the box, " +"Django aims to make it possible to build complex, database-backed web " +"applications quickly, while encouraging best practices in code written using" +" it." msgstr "" -"`쟝고 `_ 는 \"batteries included\" 웹 어플리케이션 프레임워크입니다. " -"컨텐츠 중심 웹사이트를 위한 훌륭한 선택입니다. " -"많은 유틸리티와 패턴을 기본적으로 제공함으로써 쟝고는 " -"복잡한 데이터베이스 기반 웹 어플리케이션을 빠르게 개발할 수 있도록 해줍니다. " -"또한 쟝고를 사용하면 베스트 프랙티스라 할 코드 작성이 쉽습니다. " +"`장고 `_ 는 \"batteries included\" 웹 어플리케이션 " +"프레임워크입니다. 컨텐츠 중심 웹사이트를 위한 훌륭한 선택입니다. 많은 유틸리티와 패턴을 기본적으로 제공함으로써 장고는 복잡한 " +"데이터베이스 기반 웹 어플리케이션을 빠르게 개발할 수 있도록 해줍니다. 또한 장고를 사용하면 베스트 프랙티스라 할 코드 작성이 쉽습니다." +" " #: ../../scenarios/web.rst:64 msgid "" "Django has a large and active community, and many pre-built `re-usable " -"modules `_ that can be incorporated into a " -"new project as-is, or customized to fit your needs." +"modules `_ that can be incorporated into a new " +"project as-is, or customized to fit your needs." msgstr "" -"쟝고는 크고 활발한 커뮤니티를 가지고 있고, 바로 사용할 수 있는 다양한 " -"`재사용 가능 모듈 `_ 이 있다. " -"이 것을 새 프로젝트에 바로 적용할 수도 있고 필요하다면 커스터마이징 해서 사용할 수도 있다. " +"장고는 크고 활발한 커뮤니티를 가지고 있고, 바로 사용할 수 있는 다양한 `재사용 가능 모듈 " +"`_ 이 있다. 이 것을 새 프로젝트에 바로 적용할 수도 있고 필요하다면 커스터마이징 " +"해서 사용할 수도 있다. " #: ../../scenarios/web.rst:68 msgid "" @@ -150,14 +143,13 @@ msgid "" "`_, `Europe `_, and `Australia " "`_." msgstr "" -"`미국 " -"`_, `유렵 `_, 그리고 `오스트레일리아 " -"`_ " -"에서 매년 쟝고 컨퍼런스를 한다." +"`미국 `_, `유렵 `_, 그리고 `오스트레일리아 " +"`_ 에서 매년 장고 컨퍼런스를 한다." #: ../../scenarios/web.rst:71 -msgid "The majority of new Python web applications today are built with Django." -msgstr "요즘 새로 개발하는 파이썬 웹 어플리케이션은 대부분 쟝고로 만든다." +msgid "" +"The majority of new Python web applications today are built with Django." +msgstr "요즘 새로 개발하는 파이썬 웹 어플리케이션은 대부분 장고로 만든다." #: ../../scenarios/web.rst:74 msgid "Flask" @@ -165,22 +157,19 @@ msgstr "플라스크" #: ../../scenarios/web.rst:76 msgid "" -"`Flask `_ is a \"microframework\" for Python, " -"and is an excellent choice for building smaller applications, APIs, and " -"web services." +"`Flask `_ is a \"microframework\" for Python, and " +"is an excellent choice for building smaller applications, APIs, and web " +"services." msgstr "" -"`Flask `_ 는 파이썬의 \"마이크로프레임워크\" 입니다. " -"플라스크는 작은 어플리케이션, API, 웹 서비스를 만들기에 좋습니다." +"`Flask `_ 는 파이썬의 \"마이크로프레임워크\" 입니다. 플라스크는 작은 " +"어플리케이션, API, 웹 서비스를 만들기에 좋습니다." #: ../../scenarios/web.rst:79 msgid "" -"Building an app with Flask is a lot like writing standard Python modules," -" except some functions have routes attached to them. It's really " -"beautiful." +"Building an app with Flask is a lot like writing standard Python modules, " +"except some functions have routes attached to them. It's really beautiful." msgstr "" -"플라스크로 앱을 만드는 일은 " -"라우터가 연결된 함수라는 점을 제외하고는 파이썬 표준 모듈을 작성하는 것과 비슷합니다." -"정말 아름다워요." +"플라스크로 앱을 만드는 일은 라우터가 연결된 함수라는 점을 제외하고는 파이썬 표준 모듈을 작성하는 것과 비슷합니다.정말 아름다워요." #: ../../scenarios/web.rst:82 msgid "" @@ -188,8 +177,8 @@ msgid "" "implements the most commonly-used core components of a web application " "framework, like URL routing, request and response objects, and templates." msgstr "" -"플라스크의 목표는 필요할지 어떨지도 모를 모든 것들을 제공하는 게 아닙니다. " -"플라스크는 웹 어플리케이션에서 가장 많이 쓰이는 핵심 구성요소들(URL 라우팅, 리퀘스트-리스폰스 오브젝트, 템플릿)을 구현합니다. " +"플라스크의 목표는 필요할지 어떨지도 모를 모든 것들을 제공하는 게 아닙니다. 플라스크는 웹 어플리케이션에서 가장 많이 쓰이는 핵심 " +"구성요소들(URL 라우팅, 리퀘스트-리스폰스 오브젝트, 템플릿)을 구현합니다. " #: ../../scenarios/web.rst:86 msgid "" @@ -197,27 +186,25 @@ msgid "" "application, if any. For example, database access or form generation and " "validation are not built-in functions of Flask." msgstr "" -"플라스크를 사용할 때 어플리케이션을 어떻게 구성할 것인지는 전적으로 당신에게 달려있습니다. " -"예를 들어 데이터베이스 접근, 폼 생성 및 유효성 체크는 플라스크의 빌트인 함수가 아닙니다." +"플라스크를 사용할 때 어플리케이션을 어떻게 구성할 것인지는 전적으로 당신에게 달려있습니다. 예를 들어 데이터베이스 접근, 폼 생성 및 " +"유효성 체크는 플라스크의 빌트인 함수가 아닙니다." #: ../../scenarios/web.rst:90 msgid "" -"This is great, because many web applications don't need those features. " -"For those that do, there are many `Extensions " -"`_ available that may suit your " -"needs. Or, you can easily use any library you want yourself!" +"This is great, because many web applications don't need those features. For " +"those that do, there are many `Extensions " +"`_ available that may suit your needs. " +"Or, you can easily use any library you want yourself!" msgstr "" -"많은 웹 어플리케이션은 이런 기능을 필요로 하지 않습니다. 그러니 이런 기능이 내장되어 있지 않다는 것은 좋은 일입니다. " -"이런 기능이 필요하다면 " -"적당한 `익스텐션 `_ 이 많이 있습니다. " -"달리 사용하고 싶은 라이브러리를 써도 됩니다! " +"많은 웹 어플리케이션은 이런 기능을 필요로 하지 않습니다. 그러니 이런 기능이 내장되어 있지 않다는 것은 좋은 일입니다. 이런 기능이 " +"필요하다면 적당한 `익스텐션 `_ 이 많이 있습니다. 달리 사용하고 싶은" +" 라이브러리를 써도 됩니다! " #: ../../scenarios/web.rst:95 msgid "" -"Flask is default choice for any Python web application that isn't a good " -"fit for Django." -msgstr "" -"플라스크는 쟝고에 적당하지 않은 파이썬 웹 어플리케이션을 위한 기본 선택지입니다. " +"Flask is default choice for any Python web application that isn't a good fit" +" for Django." +msgstr "플라스크는 장고에 적당하지 않은 파이썬 웹 어플리케이션을 위한 기본 선택지입니다. " #: ../../scenarios/web.rst:99 msgid "Falcon" @@ -225,32 +212,31 @@ msgstr "팔콘" #: ../../scenarios/web.rst:101 msgid "" -"`Falcon `_ is a good choice when your goal " -"is to build RESTful API microservices that are fast and scalable." +"`Falcon `_ is a good choice when your goal is " +"to build RESTful API microservices that are fast and scalable." msgstr "" -"`Falcon `_ 은 " -"빠르고 확장 가능한 RESTful API 마이크로서비스 개발을 위한 좋은 선택입니다." +"`Falcon `_ 은 빠르고 확장 가능한 RESTful API 마이크로서비스 " +"개발을 위한 좋은 선택입니다." #: ../../scenarios/web.rst:104 msgid "" -"It is a reliable, high-performance Python web framework for building " -"large-scale app backends and microservices. Falcon encourages the REST " -"architectural style of mapping URIs to resources, trying to do as little " -"as possible while remaining highly effective." +"It is a reliable, high-performance Python web framework for building large-" +"scale app backends and microservices. Falcon encourages the REST " +"architectural style of mapping URIs to resources, trying to do as little as " +"possible while remaining highly effective." msgstr "" -"팔콘은 대규모 앱 백엔드와 마이크로서비스를 개발하기 위한 신뢰성 있고 성능 좋은 파이썬 웹 프레임워크입니다." -"Falcon은 URI를 리소스에 매핑하는 REST 아키텍처 스타일을 권장하며, 높은 효율성을 유지하면서 가능한 한 적은 작업을 시도합니다." +"팔콘은 대규모 앱 백엔드와 마이크로서비스를 개발하기 위한 신뢰성 있고 성능 좋은 파이썬 웹 프레임워크입니다.Falcon은 URI를 " +"리소스에 매핑하는 REST 아키텍처 스타일을 권장하며, 높은 효율성을 유지하면서 가능한 한 적은 작업을 시도합니다." #: ../../scenarios/web.rst:108 msgid "" -"Falcon highlights four main focuses: speed, reliability, flexibility, and" -" debuggability. It implements HTTP through \"responders\" such as " -"``on_get()``, ``on_put()``, etc. These responders receive intuitive " -"request and response objects." +"Falcon highlights four main focuses: speed, reliability, flexibility, and " +"debuggability. It implements HTTP through \"responders\" such as " +"``on_get()``, ``on_put()``, etc. These responders receive intuitive request " +"and response objects." msgstr "" -"Falcon은 주요 4요소에 집중합니다. 속도, 신뢰성, 유연성 및 디버깅." -"on_get(), on_put() 등과 같은 \"응답자\"를 통해 HTTP를 구현합니다. " -"이러한 응답자는 직관적인 request 및 response 오브젝트를 수신 받습니다." +"Falcon은 주요 4요소에 집중합니다. 속도, 신뢰성, 유연성 및 디버깅.on_get(), on_put() 등과 같은 \"응답자\"를 " +"통해 HTTP를 구현합니다. 이러한 응답자는 직관적인 request 및 response 오브젝트를 수신 받습니다." #: ../../scenarios/web.rst:113 msgid "Tornado" @@ -258,14 +244,14 @@ msgstr "토네이도" #: ../../scenarios/web.rst:115 msgid "" -"`Tornado `_ is an asynchronous web framework " -"for Python that has its own event loop. This allows it to natively " -"support WebSockets, for example. Well-written Tornado applications are " -"known to have excellent performance characteristics." +"`Tornado `_ is an asynchronous web framework for" +" Python that has its own event loop. This allows it to natively support " +"WebSockets, for example. Well-written Tornado applications are known to have" +" excellent performance characteristics." msgstr "" -"`Tornado `_ 는 자체 이벤트 루프가 있는 파이썬을 위한 비동기 웹 프레임워크입니다. " -"이를 통해 웹소켓을 네이티브하게 지원합니다. " -"잘 작성된 토네이도 어플리케이션은 우서한 성능이 특징인 것으로 잘 알려져 있습니다.." +"`Tornado `_ 는 자체 이벤트 루프가 있는 파이썬을 위한 비동기 웹 " +"프레임워크입니다. 이를 통해 웹소켓을 네이티브하게 지원합니다. 잘 작성된 토네이도 어플리케이션은 우서한 성능이 특징인 것으로 잘 알려져 " +"있습니다.." #: ../../scenarios/web.rst:120 msgid "I do not recommend using Tornado unless you think you need it." @@ -281,14 +267,13 @@ msgid "" "heavy focus on modularity. It comes with a small number of libraries " "(\"batteries\") built-in, and encourages users to extend its base " "functionality. A set of provided cookiecutter templates helps making new " -"project decisions for users. It powers one of the most important parts of" -" python infrastructure `PyPI `_." +"project decisions for users. It powers one of the most important parts of " +"python infrastructure `PyPI `_." msgstr "" -"`Pyramid `_ 는 모듈성에 크게 중점을 둔 유연한 프레임워크다. " -"빌트인 라이브러리 (\"배터리\") 가 많이 포함되어 있지 않기 때문에, " -"피라미드는 사용자가 피라미드의 기본 기능을 확장하도록 지원합니다. " -"붕어빵 틀처럼 쓸 수 있는 템플릿들을 제공하여 사용자가 새 프로젝트를 어떻게 만들지를 돕습니다. " -"피라미드는 가장 중요한 파이썬 인프라스트럭쳐 중 하나인 `PyPI `_ 를 지원합니다." +"`Pyramid `_ 는 모듈성에 크게 중점을 둔 유연한 프레임워크다. 빌트인 라이브러리 " +"(\"배터리\") 가 많이 포함되어 있지 않기 때문에, 피라미드는 사용자가 피라미드의 기본 기능을 확장하도록 지원합니다. 붕어빵 틀처럼" +" 쓸 수 있는 템플릿들을 제공하여 사용자가 새 프로젝트를 어떻게 만들지를 돕습니다. 피라미드는 가장 중요한 파이썬 인프라스트럭쳐 중 " +"하나인 `PyPI `_ 를 지원합니다." #: ../../scenarios/web.rst:132 msgid "" @@ -296,9 +281,8 @@ msgid "" "capable framework, but not a very popular choice for new Python web " "applications today." msgstr "" -"비록 피라미드의 사용자 수는 쟝고나 플라스크만큼 많지 않습니다. " -"피라미드는 써봄직한 프레임워크지만 " -"오늘날 새 파이썬 웹 어플리케이션에는 인기가 없습니다." +"비록 피라미드의 사용자 수는 장고나 플라스크만큼 많지 않습니다. 피라미드는 써봄직한 프레임워크지만 오늘날 새 파이썬 웹 어플리케이션에는 " +"인기가 없습니다." #: ../../scenarios/web.rst:137 msgid "Masonite" @@ -309,21 +293,19 @@ msgid "" "`Masonite `_ is a modern and developer " "centric, \"batteries included\", web framework." msgstr "" -"`Masonite `_ 는 " -"모던하고 개발자 중심적이며 " -"\"batteries included\" 인 웹 프레임워크입니다. " +"`Masonite `_ 는 모던하고 개발자 중심적이며 \"batteries " +"included\" 인 웹 프레임워크입니다. " #: ../../scenarios/web.rst:141 msgid "" -"The Masonite framework follows the MVC (Model-View-Controller) " -"architecture pattern and is heavily inspired by frameworks such as Rails " -"and Laravel, so if you are coming to Python from a Ruby or PHP background" -" then you will feel right at home!" +"The Masonite framework follows the MVC (Model-View-Controller) architecture " +"pattern and is heavily inspired by frameworks such as Rails and Laravel, so " +"if you are coming to Python from a Ruby or PHP background then you will feel" +" right at home!" msgstr "" -"매서나이트 프레임워크는 MVC(Model-View-Controller) 아키텍쳐 패턴을 따릅니다. " -"그리고 레일즈와 라바렐 같은 프레임워크로부터 강하게 영감을 받았습니다. " -"그렇기 때문에 루비나 PHP를 개발하다가 파이썬으로 오셨다면 " -"내 집 같은 편안함을 느끼실겁니다. " +"매서나이트 프레임워크는 MVC(Model-View-Controller) 아키텍쳐 패턴을 따릅니다. 그리고 레일즈와 라바렐 같은 " +"프레임워크로부터 강하게 영감을 받았습니다. 그렇기 때문에 루비나 PHP를 개발하다가 파이썬으로 오셨다면 내 집 같은 편안함을 " +"느끼실겁니다. " #: ../../scenarios/web.rst:143 msgid "" @@ -331,18 +313,17 @@ msgid "" "powerful IOC container with auto resolving dependency injection, craft " "command line tools, and the Orator active record style ORM." msgstr "" -"매서나이트는 의존성 자둥 주입 기능이 있는 강력한 IOC 컨테이너, " -"정교한 커맨드라인 툴, Orator active record style ORM를 제공합니다." +"매서나이트는 의존성 자둥 주입 기능이 있는 강력한 IOC 컨테이너, 정교한 커맨드라인 툴, Orator active record " +"style ORM를 제공합니다." #: ../../scenarios/web.rst:145 msgid "" -"Masonite is perfect for beginners or experienced developers alike and " -"works hard to be fast and easy from install through to deployment. Try it" -" once and you’ll fall in love." +"Masonite is perfect for beginners or experienced developers alike and works " +"hard to be fast and easy from install through to deployment. Try it once and" +" you’ll fall in love." msgstr "" -"매서나이트는 초보자부터 숙련된 개발자에 이르기까지 모두에게 적합합니다. " -"설치부터 개발에 이르기까지 빠르고 쉽게 작업할 수 있습니다. " -"한 번만 써보시면 사랑에 빠지게 될겁니다." +"매서나이트는 초보자부터 숙련된 개발자에 이르기까지 모두에게 적합합니다. 설치부터 개발에 이르기까지 빠르고 쉽게 작업할 수 있습니다. 한 " +"번만 써보시면 사랑에 빠지게 될겁니다." #: ../../scenarios/web.rst:148 msgid "FastAPI" @@ -353,8 +334,8 @@ msgid "" "`FastAPI `_ is a modern web framework for " "building APIs with Python 3.6+." msgstr "" -"`FastAPI `_ 는 파이썬 3.6 이상 버전으로 API 개발을 하기 위한" -" 모던 웹 프레임워크입니다. " +"`FastAPI `_ 는 파이썬 3.6 이상 버전으로 API 개발을 하기 위한 모던" +" 웹 프레임워크입니다. " #: ../../scenarios/web.rst:153 msgid "" @@ -362,29 +343,28 @@ msgid "" "`_ and `Pydantic `_." msgstr "" -"`Starlette `_ 와 " -"`Pydantic `_ 을 기반으로하여 매우 높은 성능을 가지고 있습니다" +"`Starlette `_ 와 `Pydantic `_ 을 기반으로하여 매우 높은 성능을 가지고 있습니다" #: ../../scenarios/web.rst:156 msgid "" "FastAPI takes advantage of standard Python type declarations in function " -"parameters to declare request parameters and bodies, perform data " -"conversion (serialization, parsing), data validation, and automatic API " -"documentation with **OpenAPI 3** (including **JSON Schema**)." +"parameters to declare request parameters and bodies, perform data conversion" +" (serialization, parsing), data validation, and automatic API documentation " +"with **OpenAPI 3** (including **JSON Schema**)." msgstr "" -"FastAPI는 함수 매개 변수의 표준 Python 형식 선언을 활용하여 요청 매개 변수 및 본문을 선언하고, " -"데이터 변환(시리얼화, 구문 분석), 데이터 유효성 검사 및 " -"**OpenAPI 3** (**JSON Schema** 포함) 를 사용한 API 문서 자동화 기능을 제공합니다. " +"FastAPI는 함수 매개 변수의 표준 Python 형식 선언을 활용하여 요청 매개 변수 및 본문을 선언하고, 데이터 변환(시리얼화, " +"구문 분석), 데이터 유효성 검사 및 **OpenAPI 3** (**JSON Schema** 포함) 를 사용한 API 문서 자동화 기능을" +" 제공합니다. " #: ../../scenarios/web.rst:161 msgid "" -"It includes tools and utilities for security and authentication " -"(including OAuth2 with JWT tokens), a dependency injection system, " -"automatic generation of interactive API documentation, and other " -"features." +"It includes tools and utilities for security and authentication (including " +"OAuth2 with JWT tokens), a dependency injection system, automatic generation" +" of interactive API documentation, and other features." msgstr "" -"여기에는 보안 및 인증을 위한 툴과 유틸리티(JWT 토큰이 있는 OAuth2 포함), " -"종속 주입 시스템, 대화형 API 문서의 자동 생성 및 기타 기능이 포함됩니다." +"여기에는 보안 및 인증을 위한 툴과 유틸리티(JWT 토큰이 있는 OAuth2 포함), 종속 주입 시스템, 대화형 API 문서의 자동 생성" +" 및 기타 기능이 포함됩니다." #: ../../scenarios/web.rst:168 msgid "Web Servers" @@ -396,19 +376,17 @@ msgstr "Nginx" #: ../../scenarios/web.rst:175 msgid "" -"`Nginx `_ (pronounced \"engine-x\") is a web server " -"and reverse-proxy for HTTP, SMTP, and other protocols. It is known for " -"its high performance, relative simplicity, and compatibility with many " -"application servers (like WSGI servers). It also includes handy features " -"like load-balancing, basic authentication, streaming, and others. " -"Designed to serve high-load websites, Nginx is gradually becoming quite " -"popular." +"`Nginx `_ (pronounced \"engine-x\") is a web server and " +"reverse-proxy for HTTP, SMTP, and other protocols. It is known for its high " +"performance, relative simplicity, and compatibility with many application " +"servers (like WSGI servers). It also includes handy features like load-" +"balancing, basic authentication, streaming, and others. Designed to serve " +"high-load websites, Nginx is gradually becoming quite popular." msgstr "" -"`Nginx `_ (\"엔진-엑스\" 라고 발음함) 는 " -"HTTP, SMTP, 그리고 다른 프로토콜을 위한 웹서버 및 리버스 프록시 입니다. " -"고성능, 상대적으로 단순함 및 WSGI 서버와 같은 많은 애플리케이션 서버와의 호환성으로 유명합니다. " -"또한 로드 밸런싱, 기본 인증, 스트리밍 등과 같은 편리한 기능도 포함합니다. " -"Nginx는 부하가 많은 웹 사이트를 제공하도록 설계되었으며, 점점 인기가 많아지고 있습니다." +"`Nginx `_ (\"엔진-엑스\" 라고 발음함) 는 HTTP, SMTP, 그리고 다른 프로토콜을 " +"위한 웹서버 및 리버스 프록시 입니다. 고성능, 상대적으로 단순함 및 WSGI 서버와 같은 많은 애플리케이션 서버와의 호환성으로 " +"유명합니다. 또한 로드 밸런싱, 기본 인증, 스트리밍 등과 같은 편리한 기능도 포함합니다. Nginx는 부하가 많은 웹 사이트를 " +"제공하도록 설계되었으며, 점점 인기가 많아지고 있습니다." #: ../../scenarios/web.rst:188 msgid "WSGI Servers" @@ -416,11 +394,9 @@ msgstr "WSGI 서버" #: ../../scenarios/web.rst:190 msgid "" -"Stand-alone WSGI servers typically use less resources than traditional " -"web servers and provide top performance [1]_." -msgstr "" -"스탠드얼론 WSGI 서버는 일반적으로 전통적인 웹서버보다 리소스를 덜 잡아먹습니다. " -" 그리고 성능이 좋습니다 [1]_." +"Stand-alone WSGI servers typically use less resources than traditional web " +"servers and provide top performance [1]_." +msgstr "스탠드얼론 WSGI 서버는 일반적으로 전통적인 웹서버보다 리소스를 덜 잡아먹습니다. 그리고 성능이 좋습니다 [1]_." #: ../../scenarios/web.rst:196 msgid "Gunicorn" @@ -428,30 +404,27 @@ msgstr "지유니콘(Gunicorn)" #: ../../scenarios/web.rst:198 msgid "" -"`Gunicorn `_ (Green Unicorn) is a pure-Python WSGI" -" server used to serve Python applications. Unlike other Python web " -"servers, it has a thoughtful user interface, and is extremely easy to use" -" and configure." +"`Gunicorn `_ (Green Unicorn) is a pure-Python WSGI " +"server used to serve Python applications. Unlike other Python web servers, " +"it has a thoughtful user interface, and is extremely easy to use and " +"configure." msgstr "" -"`지유니콘 `_ (그린 유니콘)은 순수 파이썬 WSGI 서버로서 " -"파이썬 어플리케이션을 서비스하는 데 쓰입니다. " -"다른 파이썬 웹서버와 달리 유저 인터페이스가 좋고 " -"사용하기도 편하고 설정하기도 편합니다. " +"`지유니콘 `_ (그린 유니콘)은 순수 파이썬 WSGI 서버로서 파이썬 어플리케이션을 서비스하는" +" 데 쓰입니다. 다른 파이썬 웹서버와 달리 유저 인터페이스가 좋고 사용하기도 편하고 설정하기도 편합니다. " #: ../../scenarios/web.rst:203 msgid "" -"Gunicorn has sane and reasonable defaults for configurations. However, " -"some other servers, like uWSGI, are tremendously more customizable, and " +"Gunicorn has sane and reasonable defaults for configurations. However, some " +"other servers, like uWSGI, are tremendously more customizable, and " "therefore, are much more difficult to effectively use." msgstr "" -"지유니콘은 건전하고 합리적인 기본 설정을 두고 있습니다. " -"대조적으로 uWSGI 같은 다른 서버들은 무서울 정도로 커스터마이징이 가능한 대신 " -"효율적으로 사용하기는 어렵습니다." +"지유니콘은 건전하고 합리적인 기본 설정을 두고 있습니다. 대조적으로 uWSGI 같은 다른 서버들은 무서울 정도로 커스터마이징이 가능한 " +"대신 효율적으로 사용하기는 어렵습니다." #: ../../scenarios/web.rst:207 -msgid "Gunicorn is the recommended choice for new Python web applications today." -msgstr "" -"지유니콘을 현재 새로 만드는 파이썬 웹 어플리케이션을 위한 선택으로 추천드립니다. " +msgid "" +"Gunicorn is the recommended choice for new Python web applications today." +msgstr "지유니콘을 현재 새로 만드는 파이썬 웹 어플리케이션을 위한 선택으로 추천드립니다. " #: ../../scenarios/web.rst:211 msgid "Waitress" @@ -459,21 +432,19 @@ msgstr "웨이트리스(Waitress)" #: ../../scenarios/web.rst:213 msgid "" -"`Waitress `_ is a pure-Python WSGI " -"server that claims \"very acceptable performance\". Its documentation is " -"not very detailed, but it does offer some nice functionality that " -"Gunicorn doesn't have (e.g. HTTP request buffering)." +"`Waitress `_ is a pure-Python WSGI server " +"that claims \"very acceptable performance\". Its documentation is not very " +"detailed, but it does offer some nice functionality that Gunicorn doesn't " +"have (e.g. HTTP request buffering)." msgstr "" -"`Waitress `_ 는 순수 파이썬으로 만들어진 " -" WSGI 서버로서 \"납득하고도 남을 만한 성능\" 이 있다고 주장합니다. " -"문서는 상세하지 않습니다. 하지만 Gunicorn에 없는 멋진 기능(예를 들면 HTTP 리퀘스트 버퍼링)을 제공합니다." +"`Waitress `_ 는 순수 파이썬으로 만들어진 WSGI 서버로서 " +"\"납득하고도 남을 만한 성능\" 이 있다고 주장합니다. 문서는 상세하지 않습니다. 하지만 Gunicorn에 없는 멋진 기능(예를 들면 " +"HTTP 리퀘스트 버퍼링)을 제공합니다." #: ../../scenarios/web.rst:218 msgid "" -"Waitress is gaining popularity within the Python web development " -"community." -msgstr "" -"웨이트리스는 파이썬 웹 개발 커뮤니티 사이에서 인기를 얻고 있습니다. " +"Waitress is gaining popularity within the Python web development community." +msgstr "웨이트리스는 파이썬 웹 개발 커뮤니티 사이에서 인기를 얻고 있습니다. " #: ../../scenarios/web.rst:223 msgid "uWSGI" @@ -481,30 +452,26 @@ msgstr "uWSGI" #: ../../scenarios/web.rst:225 msgid "" -"`uWSGI `_ is a full stack for building" -" hosting services. In addition to process management, process " -"monitoring, and other functionality, uWSGI acts as an application server " -"for various programming languages and protocols -- including Python and " -"WSGI. uWSGI can either be run as a stand-alone web router, or be run " -"behind a full web server (such as Nginx or Apache). In the latter case, " -"a web server can configure uWSGI and an application's operation over the " -"`uwsgi protocol `_. uWSGI's web server " -"support allows for dynamically configuring Python, passing environment " -"variables, and further tuning. For full details, see `uWSGI magic " -"variables `_." -msgstr "" -"`uWSGI `_ 는 호스팅 서비스를 구축하는 용도로 쓰이는 " -"풀스택 서버입니다. 프로세스 관리 뿐 아니라 프로세스 모니터링, 그리고 다른 기능까지 " -"uWSGI는 다양한 프로그래밍 언어와 프로토콜(파이썬과 WSGI 포함)을 위한 어플리케이션 서버로서 동작합니다. " -"uWSGI는 스탠드얼론 웹 라우터로서도 사용할 수 있고, (엔진엑스나 아피치 같은) 완전한 웹서버 뒤에서 동작할 수도 있습니다. " -"후자의 경우 웹서버는 `uwsgi protocol `_ " -"를 통해 uWSGI와 어플리케이션을 설정할 수 있다. " -"uWSGI의 웹서버 지원 덕분에 파이썬의 설정을 동적으로 변경할 수 있고 " -"환경변수도 넘길 수 있으며 추가 튜닝도 가능합니다. " -"더이상의 자세한 설명은 생략한다. " -"`uWSGI magic variables `_ 을 참고하도록." +"`uWSGI `_ is a full stack for building " +"hosting services. In addition to process management, process monitoring, " +"and other functionality, uWSGI acts as an application server for various " +"programming languages and protocols -- including Python and WSGI. uWSGI can " +"either be run as a stand-alone web router, or be run behind a full web " +"server (such as Nginx or Apache). In the latter case, a web server can " +"configure uWSGI and an application's operation over the `uwsgi protocol " +"`_. uWSGI's web " +"server support allows for dynamically configuring Python, passing " +"environment variables, and further tuning. For full details, see `uWSGI " +"magic variables `_." +msgstr "" +"`uWSGI `_ 는 호스팅 서비스를 구축하는 용도로 쓰이는 풀스택 " +"서버입니다. 프로세스 관리 뿐 아니라 프로세스 모니터링, 그리고 다른 기능까지 uWSGI는 다양한 프로그래밍 언어와 프로토콜(파이썬과 " +"WSGI 포함)을 위한 어플리케이션 서버로서 동작합니다. uWSGI는 스탠드얼론 웹 라우터로서도 사용할 수 있고, (엔진엑스나 아피치 " +"같은) 완전한 웹서버 뒤에서 동작할 수도 있습니다. 후자의 경우 웹서버는 `uwsgi protocol `_ 를 통해 uWSGI와 어플리케이션을 설정할 수 있다." +" uWSGI의 웹서버 지원 덕분에 파이썬의 설정을 동적으로 변경할 수 있고 환경변수도 넘길 수 있으며 추가 튜닝도 가능합니다. 더이상의 " +"자세한 설명은 생략한다. `uWSGI magic variables `_ 을 참고하도록." #: ../../scenarios/web.rst:238 msgid "I do not recommend using uWSGI unless you know why you need it." @@ -516,23 +483,21 @@ msgstr "서버 베스트 프랙티스" #: ../../scenarios/web.rst:247 msgid "" -"The majority of self-hosted Python applications today are hosted with a " -"WSGI server such as :ref:`Gunicorn `, either directly or " -"behind a lightweight web server such as :ref:`nginx `." +"The majority of self-hosted Python applications today are hosted with a WSGI" +" server such as :ref:`Gunicorn `, either directly or behind a " +"lightweight web server such as :ref:`nginx `." msgstr "" -"요즘은 자체 호스팅할 경우 대부분의 파이썬 어플리케이션을 :ref:`Gunicorn ` " -"같은 WSGI 서버에 바로 호스팅합니다. " -"그렇지 않으면 :ref:`nginx ` 처럼 가벼운 웹서버 뒤에서 호스팅합니다." +"요즘은 자체 호스팅할 경우 대부분의 파이썬 어플리케이션을 :ref:`Gunicorn ` 같은 WSGI 서버에 " +"바로 호스팅합니다. 그렇지 않으면 :ref:`nginx ` 처럼 가벼운 웹서버 뒤에서 호스팅합니다." #: ../../scenarios/web.rst:251 msgid "" -"The WSGI servers serve the Python applications while the web server " -"handles tasks better suited for it such as static file serving, request " -"routing, DDoS protection, and basic authentication." +"The WSGI servers serve the Python applications while the web server handles " +"tasks better suited for it such as static file serving, request routing, " +"DDoS protection, and basic authentication." msgstr "" -"WSGI서버는 웹서버가 정적 파일 전송, 리퀘스트 라우팅, 디도스 보호, " -"기본적인 인증 같이 웹서버가 보다 잘하는 작업들을 수행하는 동안 " -"파이썬 어플리케이션을 서빙합니다. " +"WSGI서버는 웹서버가 정적 파일 전송, 리퀘스트 라우팅, 디도스 보호, 기본적인 인증 같이 웹서버가 보다 잘하는 작업들을 수행하는 동안" +" 파이썬 어플리케이션을 서빙합니다. " #: ../../scenarios/web.rst:258 msgid "Hosting" @@ -542,13 +507,13 @@ msgstr "호스팅" msgid "" "Platform-as-a-Service (PaaS) is a type of cloud computing infrastructure " "which abstracts and manages infrastructure, routing, and scaling of web " -"applications. When using a PaaS, application developers can focus on " -"writing application code rather than needing to be concerned with " -"deployment details." +"applications. When using a PaaS, application developers can focus on writing" +" application code rather than needing to be concerned with deployment " +"details." msgstr "" -"Platform-as-a-Service (PaaS)는 인프라스트럭쳐와 라우팅, 웹 어플리케이션 확장을 " -"추상화하고 관리하는 유형의 클라우드 컴퓨팅 인프라스트럭쳐입니다. " -"PaaS를 사용하면 어플리케이션 개발자가 배포에 관해서 신경 쓸 필요없이 어플리케이션 코드 작성에 집중할 수 있습니다. " +"Platform-as-a-Service (PaaS)는 인프라스트럭쳐와 라우팅, 웹 어플리케이션 확장을 추상화하고 관리하는 유형의 클라우드" +" 컴퓨팅 인프라스트럭쳐입니다. PaaS를 사용하면 어플리케이션 개발자가 배포에 관해서 신경 쓸 필요없이 어플리케이션 코드 작성에 집중할 " +"수 있습니다. " #: ../../scenarios/web.rst:267 msgid "Heroku" @@ -559,8 +524,8 @@ msgid "" "`Heroku `_ offers first-class support for " "Python 2.7–3.5 applications." msgstr "" -"`Heroku `_ 는 파이썬 2.7부터 3.5까지의 모든 어플리케이션을 " -"확실하게 지원 보증합니다. " +"`Heroku `_ 는 파이썬 2.7부터 3.5까지의 모든 어플리케이션을 확실하게" +" 지원 보증합니다. " #: ../../scenarios/web.rst:272 msgid "" @@ -569,30 +534,27 @@ msgid "" "application is ready for production, you can upgrade to a Hobby or " "Professional application." msgstr "" -"헤로쿠는 모든 종류의 파이썬 웹 어플리케이션과 서버 그리고 프레임워크를 지원합니다. " -"어플리케이션을 헤로쿠에 공짜로 배포할 수 있습니다. " -"일단 어플리케이션 배포 준비가 다 끝났다면 취미용 어플리케이션으로든 프로페셔널한 어플리케이션으로든 " -"업그레이드 가능합니다." +"헤로쿠는 모든 종류의 파이썬 웹 어플리케이션과 서버 그리고 프레임워크를 지원합니다. 어플리케이션을 헤로쿠에 공짜로 배포할 수 있습니다. " +"일단 어플리케이션 배포 준비가 다 끝났다면 취미용 어플리케이션으로든 프로페셔널한 어플리케이션으로든 업그레이드 가능합니다." #: ../../scenarios/web.rst:276 msgid "" "Heroku maintains `detailed articles " -"`_ on using " -"Python with Heroku, as well as `step-by-step instructions " -"`_ on " -"how to set up your first application." +"`_ on using Python " +"with Heroku, as well as `step-by-step instructions " +"`_ on how" +" to set up your first application." msgstr "" "헤로쿠는 파이썬을 헤로쿠에서 돌리기 위한 `상세한 글 " -"`_ 을 제공합니다. " -"뿐만 아니라 첫 어플리케이션을 셋업하기 위한 `step-by-step 안내서 " -"`_ 도 제공합니다." +"`_ 을 제공합니다. 뿐만 아니라 첫" +" 어플리케이션을 셋업하기 위한 `step-by-step 안내서 " +"`_ 도 " +"제공합니다." #: ../../scenarios/web.rst:281 msgid "" -"Heroku is the recommended PaaS for deploying Python web applications " -"today." -msgstr "" -"현대 파이썬 웹 어플리케이션 배포를 위한 PaaS로 헤로쿠를 추천합니다. " +"Heroku is the recommended PaaS for deploying Python web applications today." +msgstr "현대 파이썬 웹 어플리케이션 배포를 위한 PaaS로 헤로쿠를 추천합니다. " #: ../../scenarios/web.rst:286 msgid "Templating" @@ -600,69 +562,60 @@ msgstr "템플릿" #: ../../scenarios/web.rst:288 msgid "" -"Most WSGI applications are responding to HTTP requests to serve content " -"in HTML or other markup languages. Instead of directly generating textual" -" content from Python, the concept of separation of concerns advises us to" -" use templates. A template engine manages a suite of template files, with" -" a system of hierarchy and inclusion to avoid unnecessary repetition, and" -" is in charge of rendering (generating) the actual content, filling the " -"static content of the templates with the dynamic content generated by the" -" application." +"Most WSGI applications are responding to HTTP requests to serve content in " +"HTML or other markup languages. Instead of directly generating textual " +"content from Python, the concept of separation of concerns advises us to use" +" templates. A template engine manages a suite of template files, with a " +"system of hierarchy and inclusion to avoid unnecessary repetition, and is in" +" charge of rendering (generating) the actual content, filling the static " +"content of the templates with the dynamic content generated by the " +"application." msgstr "" -"대부분의 WSGI 어플리케이션은 HTTP 요청에 대한 응답으로 HTML이나 다른 마크업 언어 형식의 컨텐츠를 제공합니다. " -"파이썬에서 직접 텍스트 컨텐츠를 들기보다는 " -"관심사의 분리 개념을 적용하여 템플릿을 사용해봅시다. " -"템플릿 엔진은 " -"불필요한 반복을 피하기 위해 계층 구조 및 포함 구조로서 여러 템플릿 파일들을 관리합니다. " -"그리고 템플릿의 정적 컨텐츠를 어플리케이션에서 만들어진 동적 컨텐츠로 채워서 실제 컨텐츠를 렌더링(생성)하는 역할을 합니다. " +"대부분의 WSGI 어플리케이션은 HTTP 요청에 대한 응답으로 HTML이나 다른 마크업 언어 형식의 컨텐츠를 제공합니다. 파이썬에서 직접" +" 텍스트 컨텐츠를 들기보다는 관심사의 분리 개념을 적용하여 템플릿을 사용해봅시다. 템플릿 엔진은 불필요한 반복을 피하기 위해 계층 구조 " +"및 포함 구조로서 여러 템플릿 파일들을 관리합니다. 그리고 템플릿의 정적 컨텐츠를 어플리케이션에서 만들어진 동적 컨텐츠로 채워서 실제 " +"컨텐츠를 렌더링(생성)하는 역할을 합니다. " #: ../../scenarios/web.rst:296 msgid "" "As template files are sometimes written by designers or front-end " "developers, it can be difficult to handle increasing complexity." -msgstr "" -"템플릿 파일은 종종 디자이너나 프론트엔드 개발자가 작성하는데, 이러면 복잡성이 올라가 다루기 힘들어질 수 있습니다. " +msgstr "템플릿 파일은 종종 디자이너나 프론트엔드 개발자가 작성하는데, 이러면 복잡성이 올라가 다루기 힘들어질 수 있습니다. " #: ../../scenarios/web.rst:300 msgid "" "Some general good practices apply to the part of the application passing " "dynamic content to the template engine, and to the templates themselves." -msgstr "" -"몇 가지 일반적인 good 프랙티스를 적용하여 템플릿 엔진에 동적 컨텐츠를 전달하거나, " -"아니면 템플릿 자체를 전달해봅시다." +msgstr "몇 가지 일반적인 good 프랙티스를 적용하여 템플릿 엔진에 동적 컨텐츠를 전달하거나, 아니면 템플릿 자체를 전달해봅시다." #: ../../scenarios/web.rst:303 msgid "" -"Template files should be passed only the dynamic content that is needed " -"for rendering the template. Avoid the temptation to pass additional " -"content \"just in case\": it is easier to add some missing variable when " -"needed than to remove a likely unused variable later." +"Template files should be passed only the dynamic content that is needed for " +"rendering the template. Avoid the temptation to pass additional content " +"\"just in case\": it is easier to add some missing variable when needed than" +" to remove a likely unused variable later." msgstr "" -"템플릿에 동적 컨텐츠를 전달할 때는 템플릿 렌더링에 필요한 것들만 넘겨야 합니다. " -"\"만약의 경우\": 를 대비한 추가적인 컨텐츠를 템플릿에 전달하지 마세요. " -"사용하지 않는 변수를 제거하는 것보다 빼먹은 변수를 추가하는 게 더 쉽다. " +"템플릿에 동적 컨텐츠를 전달할 때는 템플릿 렌더링에 필요한 것들만 넘겨야 합니다. \"만약의 경우\": 를 대비한 추가적인 컨텐츠를 " +"템플릿에 전달하지 마세요. 사용하지 않는 변수를 제거하는 것보다 빼먹은 변수를 추가하는 게 더 쉽다. " #: ../../scenarios/web.rst:309 msgid "" "Many template engines allow for complex statements or assignments in the " "template itself, and many allow some Python code to be evaluated in the " -"templates. This convenience can lead to uncontrolled increase in " -"complexity, and often make it harder to find bugs." +"templates. This convenience can lead to uncontrolled increase in complexity," +" and often make it harder to find bugs." msgstr "" -"많은 템플릿 엔진이 템플릿 자체 내에서 복잡한 구문과 할당을 합니다. " -"그리고 템플릿 안에서 파이썬 코드들이 평가되도록 합니다. " -"이 방법은 편리하지만 감당할 수 없는 복잡성을 증가시킵니다. " -"가끔은 버그를 찾기 힘들게 합니다. " +"많은 템플릿 엔진이 템플릿 자체 내에서 복잡한 구문과 할당을 합니다. 그리고 템플릿 안에서 파이썬 코드들이 평가되도록 합니다. 이 방법은" +" 편리하지만 감당할 수 없는 복잡성을 증가시킵니다. 가끔은 버그를 찾기 힘들게 합니다. " #: ../../scenarios/web.rst:315 msgid "" "It is often necessary to mix JavaScript templates with HTML templates. A " -"sane approach to this design is to isolate the parts where the HTML " -"template passes some variable content to the JavaScript code." +"sane approach to this design is to isolate the parts where the HTML template" +" passes some variable content to the JavaScript code." msgstr "" -"자바스크립트 템플릿과 HTML 템플릿을 섞어 써야 할 때가 있습니다. " -"이러한 디자인에 대한 제정신 박힌 접근법은 " -"HTML 템플릿에서 자바스크립트로 값을 전달하는 부분을 분리하는 것입니다." +"자바스크립트 템플릿과 HTML 템플릿을 섞어 써야 할 때가 있습니다. 이러한 디자인에 대한 제정신 박힌 접근법은 HTML 템플릿에서 " +"자바스크립트로 값을 전달하는 부분을 분리하는 것입니다." #: ../../scenarios/web.rst:323 msgid "Jinja2" @@ -670,22 +623,18 @@ msgstr "Jinja2" #: ../../scenarios/web.rst:324 msgid "" -"`Jinja2 `_ is a very well-regarded template " -"engine." -msgstr "" -"`Jinja2 `_ 는 아주 잘 다듬어진 템플릿 엔진입니다. " +"`Jinja2 `_ is a very well-regarded template engine." +msgstr "`Jinja2 `_ 는 아주 잘 다듬어진 템플릿 엔진입니다. " #: ../../scenarios/web.rst:326 msgid "" -"It uses a text-based template language and can thus be used to generate " -"any type of markup, not just HTML. It allows customization of filters, " -"tags, tests, and globals. It features many improvements over Django's " -"templating system." +"It uses a text-based template language and can thus be used to generate any " +"type of markup, not just HTML. It allows customization of filters, tags, " +"tests, and globals. It features many improvements over Django's templating " +"system." msgstr "" -"텍스트 기반 템플릿 언어를 사용하기 때문에 HTML뿐만 아니라 모든 유형의 " -"마크업을 생성하는 데 사용할 수 있으며 " -"필터 태그, 테스트 및 전역 변수의 사용자 지정을 허용합니다. " -"Django의 템플릿 시스템에 비해 많은 개선점을 가지고 있습니다." +"텍스트 기반 템플릿 언어를 사용하기 때문에 HTML뿐만 아니라 모든 유형의 마크업을 생성하는 데 사용할 수 있으며 필터 태그, 테스트 및" +" 전역 변수의 사용자 지정을 허용합니다. Django의 템플릿 시스템에 비해 많은 개선점을 가지고 있습니다." #: ../../scenarios/web.rst:330 msgid "Here some important HTML tags in Jinja2:" @@ -695,37 +644,31 @@ msgstr "Jinja2의 중요한 HTML 태그를 소개합니다: " msgid "" "The next listings are an example of a web site in combination with the " "Tornado web server. Tornado is not very complicated to use." -msgstr "" -"다음은 토네이도 웹서버와 함께 Jinja2를 사용하는 예시입니다. " -"토네이도는 사용하기에 복잡하지 않습니다. " +msgstr "다음은 토네이도 웹서버와 함께 Jinja2를 사용하는 예시입니다. 토네이도는 사용하기에 복잡하지 않습니다. " #: ../../scenarios/web.rst:391 msgid "" -"The :file:`base.html` file can be used as base for all site pages which " -"are for example implemented in the content block." +"The :file:`base.html` file can be used as base for all site pages which are " +"for example implemented in the content block." msgstr "" -"예를 들어 :file:`base.html` base.html 파일은 컨텐츠 블록에 구현된 " -"모든 사이트 페이지의 기준으로 사용할 수 있습니다." +"예를 들어 :file:`base.html` base.html 파일은 컨텐츠 블록에 구현된 모든 사이트 페이지의 기준으로 사용할 수 " +"있습니다." #: ../../scenarios/web.rst:416 msgid "" -"The next listing is our site page (:file:`site.html`) loaded in the " -"Python app which extends :file:`base.html`. The content block is " -"automatically set into the corresponding block in the :file:`base.html` " -"page." +"The next listing is our site page (:file:`site.html`) loaded in the Python " +"app which extends :file:`base.html`. The content block is automatically set " +"into the corresponding block in the :file:`base.html` page." msgstr "" -"다음 예시는 :file:`base.html` 파일을 확장해서 " -"python 앱에 사이트 페이지 (:file:`site.html`) 를 로드한 경우입니다. " -"base.html을 확장합니다. " -"컨텐츠 블록은 :file:`base.html` 페이지의 해당 " -"블록으로 자동 설정됩니다." +"다음 예시는 :file:`base.html` 파일을 확장해서 python 앱에 사이트 페이지 (:file:`site.html`) 를 " +"로드한 경우입니다. base.html을 확장합니다. 컨텐츠 블록은 :file:`base.html` 페이지의 해당 블록으로 자동 " +"설정됩니다." #: ../../scenarios/web.rst:438 msgid "" "Jinja2 is the recommended templating library for new Python web " "applications." -msgstr "" -"새 파이썬 웹 엎ㄹ리케이션을 위한 템플릿 라이브러리로 Jinja2를 추천합니다. " +msgstr "새 파이썬 웹 엎ㄹ리케이션을 위한 템플릿 라이브러리로 Jinja2를 추천합니다. " #: ../../scenarios/web.rst:441 msgid "Chameleon" @@ -734,51 +677,45 @@ msgstr "카멜레온(Chameleon)" #: ../../scenarios/web.rst:443 msgid "" "`Chameleon `_ Page Templates are an " -"HTML/XML template engine implementation of the `Template Attribute " -"Language (TAL) " -"`_, `TAL " +"HTML/XML template engine implementation of the `Template Attribute Language " +"(TAL) `_, `TAL " "Expression Syntax (TALES) " "`_, and `Macro Expansion TAL (Metal) " -"`_ syntaxes." +"`_ " +"syntaxes." msgstr "" -"`Chameleon `_ Page Templates 은 " -"HTML/XML template engine 구현체로서, `Template Attribute " -"Language (TAL) " +"`Chameleon `_ Page Templates 은 HTML/XML " +"template engine 구현체로서, `Template Attribute Language (TAL) " "`_, `TAL " "Expression Syntax (TALES) " "`_, 그리고 `Macro Expansion TAL (Metal) " -"`_ 구문을 사용합니다." +"`_ " +"구문을 사용합니다." #: ../../scenarios/web.rst:448 msgid "" -"Chameleon is available for Python 2.5 and up (including 3.x and PyPy), " -"and is commonly used by the `Pyramid Framework " -"`_." +"Chameleon is available for Python 2.5 and up (including 3.x and PyPy), and " +"is commonly used by the `Pyramid Framework `_." msgstr "" -"카멜레온은 파이썬 2.5와 그 이상 (3.x와 PyPy 포함)에서 사용 가능하며, " -"`Pyramid Framework " +"카멜레온은 파이썬 2.5와 그 이상 (3.x와 PyPy 포함)에서 사용 가능하며, `Pyramid Framework " "`_ 에서 일반적으로 사용합니다." #: ../../scenarios/web.rst:451 msgid "" -"Page Templates add within your document structure special element " -"attributes and text markup. Using a set of simple language constructs, " -"you control the document flow, element repetition, text replacement, and " -"translation. Because of the attribute-based syntax, unrendered page " -"templates are valid HTML and can be viewed in a browser and even edited " -"in WYSIWYG editors. This can make round-trip collaboration with designers" -" and prototyping with static files in a browser easier." +"Page Templates add within your document structure special element attributes" +" and text markup. Using a set of simple language constructs, you control the" +" document flow, element repetition, text replacement, and translation. " +"Because of the attribute-based syntax, unrendered page templates are valid " +"HTML and can be viewed in a browser and even edited in WYSIWYG editors. This" +" can make round-trip collaboration with designers and prototyping with " +"static files in a browser easier." msgstr "" -"페이지 템플릿은 문서 구조에 특수 엘리먼트 어트리뷰트와 텍스트 마크업을 추가합니다. " -"간단한 언어 구문으로 문서의 흐름과 엘리먼트의 반복, 텍스트 교체, 다국어 처리가 가능합니다. " -"어트리뷰트에 기반한 구문 덕분에 렌더링 되지 않은 페이지도 HTML 포맷으로 유효하며 " -"브라우저에서 볼 수 있고 WYSIWYG 에디터로 수정도 가능합니다. " -"이를 통해 디자이너와 양방향 협업이 가능하고 " -"브라우저에서 정적 파일을 프로토타이핑 하기도 쉽습니다. " +"페이지 템플릿은 문서 구조에 특수 엘리먼트 어트리뷰트와 텍스트 마크업을 추가합니다. 간단한 언어 구문으로 문서의 흐름과 엘리먼트의 반복," +" 텍스트 교체, 다국어 처리가 가능합니다. 어트리뷰트에 기반한 구문 덕분에 렌더링 되지 않은 페이지도 HTML 포맷으로 유효하며 " +"브라우저에서 볼 수 있고 WYSIWYG 에디터로 수정도 가능합니다. 이를 통해 디자이너와 양방향 협업이 가능하고 브라우저에서 정적 파일을" +" 프로토타이핑 하기도 쉽습니다. " #: ../../scenarios/web.rst:459 msgid "The basic TAL language is simple enough to grasp from an example:" @@ -787,13 +724,13 @@ msgstr "기본 TAL 언어는 예제 하나만 봐도 이해할 수 있을 만큼 #: ../../scenarios/web.rst:477 msgid "" "The `` pattern for text insertion is " -"common enough that if you do not require strict validity in your " -"unrendered templates, you can replace it with a more terse and readable " -"syntax that uses the pattern `${expression}`, as follows:" +"common enough that if you do not require strict validity in your unrendered " +"templates, you can replace it with a more terse and readable syntax that " +"uses the pattern `${expression}`, as follows:" msgstr "" -"`` 패턴을 텍스트 삽입에 사용하고 " -"렌더링 되기 전의 템플릿이 유효한 HTML 구문일 필요가 없다면 " -"다음과 같이 `${expression}` 패턴을 사용해서 보다 간결하고 가독성 높은 구문으로 바꿀 수 있다." +"`` 패턴을 텍스트 삽입에 사용하고 렌더링 되기 전의 템플릿이 유효한 " +"HTML 구문일 필요가 없다면 다음과 같이 `${expression}` 패턴을 사용해서 보다 간결하고 가독성 높은 구문으로 바꿀 수 " +"있다." #: ../../scenarios/web.rst:498 msgid "" @@ -801,13 +738,12 @@ msgid "" "Text` syntax also allows for default content in the unrendered " "template." msgstr "" -"하지만 `Default " -"Text` 구문이 렌더링 되지 않았을 때 Default Text가 기본 값으로 찍힌다는 것을 명심하세요." +"하지만 `Default Text` 구문이 렌더링 되지 않았을 때 " +"Default Text가 기본 값으로 찍힌다는 것을 명심하세요." #: ../../scenarios/web.rst:501 msgid "Being from the Pyramid world, Chameleon is not widely used." -msgstr "" -"Pyramid를 사용하는 사람들은 Chameleon은 잘 안 씁니다." +msgstr "Pyramid를 사용하는 사람들은 Chameleon은 잘 안 씁니다." #: ../../scenarios/web.rst:504 msgid "Mako" @@ -815,17 +751,15 @@ msgstr "마코(Mako)" #: ../../scenarios/web.rst:506 msgid "" -"`Mako `_ is a template language that " -"compiles to Python for maximum performance. Its syntax and API are " -"borrowed from the best parts of other templating languages like Django " -"and Jinja2 templates. It is the default template language included with " -"the `Pylons and Pyramid `_ web frameworks." +"`Mako `_ is a template language that compiles" +" to Python for maximum performance. Its syntax and API are borrowed from the" +" best parts of other templating languages like Django and Jinja2 templates. " +"It is the default template language included with the `Pylons and Pyramid " +"`_ web frameworks." msgstr "" -"`Mako `_ 는 파이썬의 최대 성능을 내기 위해 " -"파이썬으로 컴파일 작업을 하는 템플릿 엔진입니다. " -"Django와 Jinja2 같이 다른 템플릿 언어로부터 멋진 부분을 가져와 구문과 API를 만들었습니다. " -"`Pylons 과 Pyramid `_ 웹 프레임워크의 " -"기본 템플릿 언어입니다. " +"`Mako `_ 는 파이썬의 최대 성능을 내기 위해 파이썬으로 컴파일 작업을 하는" +" 템플릿 엔진입니다. Django와 Jinja2 같이 다른 템플릿 언어로부터 멋진 부분을 가져와 구문과 API를 만들었습니다. " +"`Pylons 과 Pyramid `_ 웹 프레임워크의 기본 템플릿 언어입니다. " #: ../../scenarios/web.rst:512 msgid "An example template in Mako looks like:" @@ -845,11 +779,11 @@ msgstr "참고" #: ../../scenarios/web.rst:545 msgid "" -"`Benchmark of Python WSGI Servers `_" +"`Benchmark of Python WSGI Servers `_" msgstr "" -"`Python WSGI Servers 벤치마크 `_" +"`Python WSGI Servers 벤치마크 `_" #~ msgid "" #~ msgstr "" @@ -870,250 +804,175 @@ msgstr "" #~ msgstr "" #~ msgid "" -#~ "`Django `_ is a " -#~ "\"batteries included\" web application " -#~ "framework, and is an excellent choice" -#~ " for creating content-oriented websites." -#~ " By providing many utilities and " -#~ "patterns out of the box, Django " -#~ "aims to make it possible to build" -#~ " complex, database-backed web applications" -#~ " quickly, while encouraging best practices" -#~ " in code written using it." +#~ "`Django `_ is a \"batteries included\" web " +#~ "application framework, and is an excellent choice for creating content-" +#~ "oriented websites. By providing many utilities and patterns out of the box, " +#~ "Django aims to make it possible to build complex, database-backed web " +#~ "applications quickly, while encouraging best practices in code written using" +#~ " it." #~ msgstr "" #~ msgid "" -#~ "There are annual Django conferences `in" -#~ " the United States `_ " -#~ "and `in Europe `_." +#~ "There are annual Django conferences `in the United States " +#~ "`_ and `in Europe `_." #~ msgstr "" #~ msgid "" -#~ "`Tornado `_ is an " -#~ "asyncronous web framework for Python " -#~ "that has its own event loop. This" -#~ " allows it to natively support " -#~ "WebSockets, for example. Well-written " -#~ "Tornado applications are known to have" +#~ "`Tornado `_ is an asyncronous web framework for " +#~ "Python that has its own event loop. This allows it to natively support " +#~ "WebSockets, for example. Well-written Tornado applications are known to have" #~ " excellent performance characteristics." #~ msgstr "" #~ msgid "" -#~ "`Pyramid `_ is a very" -#~ " flexible framework with a heavy " -#~ "focus on modularity. It comes with " -#~ "a small number of libraries " -#~ "(\"batteries\") built-in, and encourages " -#~ "users to extend its base functionality." +#~ "`Pyramid `_ is a very flexible framework with a " +#~ "heavy focus on modularity. It comes with a small number of libraries " +#~ "(\"batteries\") built-in, and encourages users to extend its base " +#~ "functionality." #~ msgstr "" #~ msgid "" -#~ "`Nginx `_ (pronounced " -#~ "\"engine-x\") is a web server and " -#~ "reverse-proxy for HTTP, SMTP and " -#~ "other protocols. It is known for " -#~ "its high performance, relative simplicity, " -#~ "and compatibility with many application " -#~ "servers (like WSGI servers). It also " -#~ "includes handy features like load-" -#~ "balancing, basic authentication, streaming, " -#~ "and others. Designed to serve high-" -#~ "load websites, Nginx is gradually " -#~ "becoming quite popular." +#~ "`Nginx `_ (pronounced \"engine-x\") is a web server and " +#~ "reverse-proxy for HTTP, SMTP and other protocols. It is known for its high " +#~ "performance, relative simplicity, and compatibility with many application " +#~ "servers (like WSGI servers). It also includes handy features like load-" +#~ "balancing, basic authentication, streaming, and others. Designed to serve " +#~ "high-load websites, Nginx is gradually becoming quite popular." #~ msgstr "" #~ msgid "" -#~ "Stand-alone WSGI servers typically use" -#~ " less resources than traditional web " -#~ "servers and provide top performance " -#~ "[3]_." +#~ "Stand-alone WSGI servers typically use less resources than traditional web " +#~ "servers and provide top performance [3]_." #~ msgstr "" #~ msgid "" -#~ "`Gunicorn `_ (Green Unicorn)" -#~ " is a pure-python WSGI server " -#~ "used to serve Python applications. " -#~ "Unlike other Python web servers, it " -#~ "has a thoughtful user-interface, and " -#~ "is extremely easy to use and " +#~ "`Gunicorn `_ (Green Unicorn) is a pure-python WSGI " +#~ "server used to serve Python applications. Unlike other Python web servers, " +#~ "it has a thoughtful user-interface, and is extremely easy to use and " #~ "configure." #~ msgstr "" #~ msgid "" -#~ "`Waitress `_ is a" -#~ " pure-python WSGI server that claims" -#~ " \"very acceptable performance\". Its " -#~ "documentation is not very detailed, but" -#~ " it does offer some nice " -#~ "functionality that Gunicorn doesn't have " -#~ "(e.g. HTTP request buffering)." +#~ "`Waitress `_ is a pure-python WSGI server " +#~ "that claims \"very acceptable performance\". Its documentation is not very " +#~ "detailed, but it does offer some nice functionality that Gunicorn doesn't " +#~ "have (e.g. HTTP request buffering)." #~ msgstr "" #~ msgid "" -#~ "`uWSGI `_ is " -#~ "a full stack for building hosting " -#~ "services. In addition to process " -#~ "management, process monitoring, and other " -#~ "functionality, uWSGI acts as an " -#~ "application server for various programming " -#~ "languages and protocols - including " -#~ "Python and WSGI. uWSGI can either " -#~ "be run as a stand-alone web " -#~ "router, or be run behind a full" -#~ " web server (such as Nginx or " -#~ "Apache). In the latter case, a " -#~ "web server can configure uWSGI and " -#~ "an application's operation over the " -#~ "`uwsgi protocol `_. uWSGI's " -#~ "web server support allows for " -#~ "dynamically configuring Python, passing " -#~ "environment variables and further tuning. " -#~ "For full details, see `uWSGI magic " -#~ "variables `_." +#~ "`uWSGI `_ is a full stack for building " +#~ "hosting services. In addition to process management, process monitoring, " +#~ "and other functionality, uWSGI acts as an application server for various " +#~ "programming languages and protocols - including Python and WSGI. uWSGI can " +#~ "either be run as a stand-alone web router, or be run behind a full web " +#~ "server (such as Nginx or Apache). In the latter case, a web server can " +#~ "configure uWSGI and an application's operation over the `uwsgi protocol " +#~ "`_. uWSGI's web " +#~ "server support allows for dynamically configuring Python, passing " +#~ "environment variables and further tuning. For full details, see `uWSGI " +#~ "magic variables `_." #~ msgstr "" #~ msgid "" -#~ "`Heroku `_ offers " -#~ "first-class support for Python 2.7–3.5 " -#~ "applications." +#~ "`Heroku `_ offers first-class support for " +#~ "Python 2.7–3.5 applications." #~ msgstr "" #~ msgid "" #~ "Heroku maintains `detailed articles " -#~ "`_ on " -#~ "using Python with Heroku, as well " -#~ "as `step-by-step instructions " -#~ "`_ on how to set up " -#~ "your first application." +#~ "`_ on using Python with " +#~ "Heroku, as well as `step-by-step instructions " +#~ "`_ on how" +#~ " to set up your first application." #~ msgstr "" #~ msgid "Gondor" #~ msgstr "" #~ msgid "" -#~ "`Gondor `_ is a PaaS " -#~ "specialized for deploying Django and " -#~ "Pinax applications. Gondor recommends Django" -#~ " version 1.6 and supports any WSGI" -#~ " application on Python version 2.7. " -#~ "Gondor can automatically configure your " -#~ "Django site if you use " -#~ ":file:`local_settings.py` for site-specific " -#~ "configuration information." +#~ "`Gondor `_ is a PaaS specialized for deploying Django " +#~ "and Pinax applications. Gondor recommends Django version 1.6 and supports " +#~ "any WSGI application on Python version 2.7. Gondor can automatically " +#~ "configure your Django site if you use :file:`local_settings.py` for site-" +#~ "specific configuration information." #~ msgstr "" #~ msgid "" -#~ "Gondor has a guide on deploying " -#~ "`Django projects " +#~ "Gondor has a guide on deploying `Django projects " #~ "`_." #~ msgstr "" #~ msgid "" -#~ "Gondor is run by a small company" -#~ " and focuses on helping businesses " -#~ "find success with Python and Django." +#~ "Gondor is run by a small company and focuses on helping businesses find " +#~ "success with Python and Django." #~ msgstr "" #~ msgid "" -#~ "Most WSGI applications are responding to" -#~ " HTTP requests to serve content in" -#~ " HTML or other markup languages. " -#~ "Instead of generating directly textual " -#~ "content from Python, the concept of " -#~ "separation of concerns advises us to " -#~ "use templates. A template engine manages" -#~ " a suite of template files, with " -#~ "a system of hierarchy and inclusion " -#~ "to avoid unnecessary repetition, and is" -#~ " in charge of rendering (generating) " -#~ "the actual content, filling the static" -#~ " content of the templates with the" -#~ " dynamic content generated by the " +#~ "Most WSGI applications are responding to HTTP requests to serve content in " +#~ "HTML or other markup languages. Instead of generating directly textual " +#~ "content from Python, the concept of separation of concerns advises us to use" +#~ " templates. A template engine manages a suite of template files, with a " +#~ "system of hierarchy and inclusion to avoid unnecessary repetition, and is in" +#~ " charge of rendering (generating) the actual content, filling the static " +#~ "content of the templates with the dynamic content generated by the " #~ "application." #~ msgstr "" #~ msgid "" -#~ "It uses a text-based template " -#~ "language and can thus be used to" -#~ " generate any type markup, not just" -#~ " HTML. It allows customization of " -#~ "filters, tags, tests and globals. It " -#~ "features many improvements over Django's " -#~ "templating system." +#~ "It uses a text-based template language and can thus be used to generate any " +#~ "type markup, not just HTML. It allows customization of filters, tags, tests " +#~ "and globals. It features many improvements over Django's templating system." #~ msgstr "" #~ msgid "Here some important html tags in Jinja2:" #~ msgstr "" #~ msgid "" -#~ "The next listings is an example of" -#~ " a web site in combination with " -#~ "the Tornado web server. Tornado is " -#~ "not very complicated to use." +#~ "The next listings is an example of a web site in combination with the " +#~ "Tornado web server. Tornado is not very complicated to use." #~ msgstr "" #~ msgid "" -#~ "`Chameleon `_ Page " -#~ "Templates are an HTML/XML template " -#~ "engine implementation of the `Template " -#~ "Attribute Language (TAL) " -#~ "`_, " -#~ "`TAL Expression Syntax (TALES) " -#~ "`_, and `Macro Expansion " -#~ "TAL (Metal) " -#~ "`_ syntaxes." +#~ "`Chameleon `_ Page Templates are an " +#~ "HTML/XML template engine implementation of the `Template Attribute Language " +#~ "(TAL) `_, `TAL " +#~ "Expression Syntax (TALES) " +#~ "`_, and `Macro Expansion TAL (Metal) " +#~ "`_ " +#~ "syntaxes." #~ msgstr "" #~ msgid "" -#~ "Chameleon is available for Python 2.5" -#~ " and up (including 3.x and pypy), " -#~ "and is commonly used by the " -#~ "`Pyramid Framework `_." +#~ "Chameleon is available for Python 2.5 and up (including 3.x and pypy), and " +#~ "is commonly used by the `Pyramid Framework `_." #~ msgstr "" #~ msgid "" -#~ "Page Templates add within your document" -#~ " structure special element attributes and" -#~ " text markup. Using a set of " -#~ "simple language constructs, you control " -#~ "the document flow, element repetition, " -#~ "text replacement and translation. Because " -#~ "of the attribute-based syntax, " -#~ "unrendered page templates are valid HTML" -#~ " and can be viewed in a browser" -#~ " and even edited in WYSIWYG editors." -#~ " This can make round-trip " -#~ "collaboration with designers and prototyping" -#~ " with static files in a browser " -#~ "easier." +#~ "Page Templates add within your document structure special element attributes" +#~ " and text markup. Using a set of simple language constructs, you control the" +#~ " document flow, element repetition, text replacement and translation. " +#~ "Because of the attribute-based syntax, unrendered page templates are valid " +#~ "HTML and can be viewed in a browser and even edited in WYSIWYG editors. This" +#~ " can make round-trip collaboration with designers and prototyping with " +#~ "static files in a browser easier." #~ msgstr "" #~ msgid "" -#~ "`Mako `_ is a " -#~ "template language that compiles to " -#~ "Python for maximum performance. Its " -#~ "syntax and api is borrowed from " -#~ "the best parts of other templating " -#~ "languages like Django and Jinja2 " -#~ "templates. It is the default template" -#~ " language included with the `Pylons " -#~ "and Pyramid `_ web" -#~ " frameworks." +#~ "`Mako `_ is a template language that compiles" +#~ " to Python for maximum performance. Its syntax and api is borrowed from the " +#~ "best parts of other templating languages like Django and Jinja2 templates. " +#~ "It is the default template language included with the `Pylons and Pyramid " +#~ "`_ web frameworks." #~ msgstr "" #~ msgid "" -#~ "`The mod_python project is now " -#~ "officially dead `_" +#~ "`The mod_python project is now officially dead " +#~ "`_" #~ msgstr "" #~ msgid "" #~ "`mod_wsgi vs mod_python " #~ "`_" #~ msgstr "" - diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.mo b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.mo index 5fd309a6b8bf1d10693c1e1fc395e6bb750c7e54..4a715cb747b9a59da02410091b08299a589b9998 100644 GIT binary patch delta 48 zcmZ4Kw9;vVlK@X-eraBMaB6;@f@8*JKLLAIwm0*ZzS_KC@?=p1D0A~k(FAS)-A5Gl delta 48 ycmZ4Kw9;vVlK_unMxH`seraBMaBBW$KLLAIHkYi#y!8CZlSK`n%*`i76Sx7L!Vtp% diff --git a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po index 479459f55..ad8030ff1 100644 --- a/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po +++ b/docs/locale/ko/LC_MESSAGES/starting/install3/osx.po @@ -14,7 +14,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2026-05-21 08:26+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: Ahn YoungSeon \n" +"Last-Translator: YoungSeon Ahn \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -27,23 +27,23 @@ msgstr "Mac OS X에 파이썬3 설치하기" #: ../../starting/install3/osx.rst:12 msgid "" -"**Mac OS X comes with Python 2.7 out of the box between versions 10.8 and" -" 12.3.**" +"**Mac OS X comes with Python 2.7 out of the box between versions 10.8 and " +"12.3.**" msgstr "**Mac OS X 10.8부터 12.3 사이의 버전에는 파이썬 2.7이 기본적으로 설치되어서 나온다.**" #: ../../starting/install3/osx.rst:14 msgid "" -"If your Mac OS X version is between the above versions, you do not need " -"to install or configure anything else to use Python 2. These instructions" -" document the installation of Python 3." +"If your Mac OS X version is between the above versions, you do not need to " +"install or configure anything else to use Python 2. These instructions " +"document the installation of Python 3." msgstr "" "맥 OS X 버전이 위의 범위에 해당한다면 파이썬2를 따로 설치하거나 설정할 필요는 없다. 이 안내문은 파이썬3 설치를 다룬다." #: ../../starting/install3/osx.rst:18 msgid "" -"The version of Python that ships with OS X is great for learning, but " -"it's not good for development. The version shipped with OS X may be out " -"of date from the `official current Python release " +"The version of Python that ships with OS X is great for learning, but it's " +"not good for development. The version shipped with OS X may be out of date " +"from the `official current Python release " "`_, which is considered the " "stable production version." msgstr "" @@ -61,63 +61,62 @@ msgstr "이제 진짜 파이썬 버전을 설치해보자." #: ../../starting/install3/osx.rst:30 msgid "" -"Before installing Python, you'll need to install GCC. GCC can be obtained" -" by downloading `Xcode `_, the " -"smaller `Command Line Tools `_ " -"(must have an Apple account) or the even smaller `OSX-GCC-Installer " +"Before installing Python, you'll need to install GCC. GCC can be obtained by" +" downloading `Xcode `_, the smaller " +"`Command Line Tools `_ (must have an" +" Apple account) or the even smaller `OSX-GCC-Installer " "`_ package." msgstr "" "파이썬을 설치하기 전에 GCC를 설치해야 한다. GCC는 `Xcode " "`_, 더 작은 `Command Line Tools " -"`_ (Apple 계정이 있어야 함) 또는 더 작은 " -"`OSX-GCC-Installer `_ 패키지를 다운로드하여 얻을 수 있다." +"`_ (Apple 계정이 있어야 함) 또는 더 작은 `OSX-" +"GCC-Installer `_ " +"패키지를 다운로드하여 얻을 수 있다." #: ../../starting/install3/osx.rst:37 msgid "" -"If you already have Xcode installed, do not install OSX-GCC-Installer. In" -" combination, the software can cause issues that are difficult to " -"diagnose." +"If you already have Xcode installed, do not install OSX-GCC-Installer. In " +"combination, the software can cause issues that are difficult to diagnose." msgstr "" -"Xcode가 이미 설치되어 있다면 OSX-GCC-Installer를 설치하면 안된다. 둘 다 설치해서 GCC가 꼬여버리면 뭔지도 " -"모를 문제가 발생할 수도 있다." +"Xcode가 이미 설치되어 있다면 OSX-GCC-Installer를 설치하면 안된다. 둘 다 설치해서 GCC가 꼬여버리면 뭔지도 모를 " +"문제가 발생할 수도 있다." #: ../../starting/install3/osx.rst:42 msgid "" "If you perform a fresh install of Xcode, you will also need to add the " "commandline tools by running ``xcode-select --install`` on the terminal." msgstr "" -"Xcode를 새로 설치한다면 터미널에서 ``xcode-select --install`` 을 실행하여 commandline " -"tools을 추가해야 한다." +"Xcode를 새로 설치한다면 터미널에서 ``xcode-select --install`` 을 실행하여 commandline tools을 " +"추가해야 한다." #: ../../starting/install3/osx.rst:45 msgid "" -"While OS X comes with a large number of Unix utilities, those familiar " -"with Linux systems will notice one key component missing: a package " -"manager. `Homebrew `_ fills this void." +"While OS X comes with a large number of Unix utilities, those familiar with " +"Linux systems will notice one key component missing: a package manager. " +"`Homebrew `_ fills this void." msgstr "" -"OS X에는 다양한 Unix 유틸리티가 포함되어 있지만, 리눅스에 익숙한 사람이라면 한 가지 중요한 구성요소가 빠졌다는 사실을 " -"알아챌 것이다. 바로 패키지 매니저다. `Homebrew `_ 가 그 빈자리를 메꾼다." +"OS X에는 다양한 Unix 유틸리티가 포함되어 있지만, 리눅스에 익숙한 사람이라면 한 가지 중요한 구성요소가 빠졌다는 사실을 알아챌 " +"것이다. 바로 패키지 매니저다. `Homebrew `_ 가 그 빈자리를 메꾼다." #: ../../starting/install3/osx.rst:49 msgid "" -"To `install Homebrew `_, open :file:`Terminal` " -"or your favorite OS X terminal emulator and run" +"To `install Homebrew `_, open :file:`Terminal` or " +"your favorite OS X terminal emulator and run" msgstr "" -"`Homebrew를 설치 `_ 하려면, :file:`Terminal` 이든 아니면 " -"달리 좋아하는 OS X의 터미널 에뮬레이터를 아래 스크립트를 실행해라." +"`Homebrew를 설치 `_ 하려면, :file:`Terminal` 이든 아니면 달리 " +"좋아하는 OS X의 터미널 에뮬레이터를 아래 스크립트를 실행해라." #: ../../starting/install3/osx.rst:56 msgid "" -"The script will explain what changes it will make and prompt you before " -"the installation begins. Once you've installed Homebrew, insert the " -"Homebrew directory at the top of your :envvar:`PATH` environment " -"variable. You can do this by adding the following line at the bottom of " -"your :file:`~/.profile` file" +"The script will explain what changes it will make and prompt you before the " +"installation begins. Once you've installed Homebrew, insert the Homebrew " +"directory at the top of your :envvar:`PATH` environment variable. You can do" +" this by adding the following line at the bottom of your :file:`~/.profile` " +"file" msgstr "" -"이 스크립트는 설치를 시작하기 전에 변경 사항 설명 메시지를 표시한다. Homebrew가 이미 설치되어 있다면 " -":envvar:`PATH` 환경 변수 최상단에 Homebrew의 디렉토리를 추가하자. 하기 라인을 :file:`~/.profile`" -" 의 마지막 라인에 추가하면 된다. " +"이 스크립트는 설치를 시작하기 전에 변경 사항 설명 메시지를 표시한다. Homebrew가 이미 설치되어 있다면 :envvar:`PATH`" +" 환경 변수 최상단에 Homebrew의 디렉토리를 추가하자. 하기 라인을 :file:`~/.profile` 의 마지막 라인에 추가하면 " +"된다. " #: ../../starting/install3/osx.rst:66 msgid "If you have OS X 10.12 (Sierra) or older use this line instead" @@ -162,12 +161,12 @@ msgstr "위 명령은 Homebrew로 설치한 파이썬2 인터프리터(있으면 #: ../../starting/install3/osx.rst:113 msgid "" -"If the Homebrew version of Python 2 is installed then ``pip2`` will point" -" to Python 2. If the Homebrew version of Python 3 is installed then " -"``pip`` will point to Python 3." +"If the Homebrew version of Python 2 is installed then ``pip2`` will point to" +" Python 2. If the Homebrew version of Python 3 is installed then ``pip`` " +"will point to Python 3." msgstr "" -"파이썬2의 Homebrew 버전이 설치되었다면 ``pip2`` 는 파이썬2를 가리킨다. 파이썬3의 Homebrew 버전이 " -"설치되었다면 ``pip`` 는 파이썬3를 가리킨다." +"파이썬2의 Homebrew 버전이 설치되었다면 ``pip2`` 는 파이썬2를 가리킨다. 파이썬3의 Homebrew 버전이 설치되었다면 " +"``pip`` 는 파이썬3를 가리킨다." #: ../../starting/install3/osx.rst:116 msgid "The rest of the guide will assume that ``python`` references Python 3." @@ -187,34 +186,33 @@ msgstr "그 다음 순서로 Pipenv를 설치하여 디펜던시를 설치하고 msgid "" "A Virtual Environment is a tool to keep the dependencies required by " "different projects in separate places, by creating virtual Python " -"environments for them. It solves the \"Project X depends on version 1.x " -"but, Project Y needs 4.x\" dilemma, and keeps your global site-packages " +"environments for them. It solves the \"Project X depends on version 1.x but," +" Project Y needs 4.x\" dilemma, and keeps your global site-packages " "directory clean and manageable." msgstr "" -"Virtual Environment(이하 가상 환경 -역주)은 가상의 파이썬 환경을 만들어 서로 다른 프로젝트에 필요한 디펜던시를 " -"별도의 위치에 두는 도구이다. \"프로젝트 X는 버전 1.x에 의존하지만 프로젝트 Y는 4.x가 필요합니다\"라는 딜레마를 해결하고" -" 전역 패키지 디렉토리를 깨끗하게 관리할 수 ​​있도록 한다." +"Virtual Environment(이하 가상 환경 -역주)은 가상의 파이썬 환경을 만들어 서로 다른 프로젝트에 필요한 디펜던시를 별도의" +" 위치에 두는 도구이다. \"프로젝트 X는 버전 1.x에 의존하지만 프로젝트 Y는 4.x가 필요합니다\"라는 딜레마를 해결하고 전역 " +"패키지 디렉토리를 깨끗하게 관리할 수 ​​있도록 한다." #: ../../starting/install3/osx.rst:136 msgid "" -"For example, you can work on a project which requires Django 1.10 while " -"also maintaining a project which requires Django 1.8." -msgstr "예를들어 Django 1.10으로 프로젝트를 진행하는 한편 Django 1.8로 만들어진 프로젝트를 유지보수 하고 있다면 " +"For example, you can work on a project which requires Django 1.10 while also" +" maintaining a project which requires Django 1.8." +msgstr "예를들어 장고 1.10으로 프로젝트를 진행하는 한편 장고 1.8로 만들어진 프로젝트를 유지보수 하고 있다면 " #: ../../starting/install3/osx.rst:139 msgid "" -"So, onward! To the :ref:`Pipenv & Virtual Environments " -"` docs!" +"So, onward! To the :ref:`Pipenv & Virtual Environments ` docs!" msgstr "" -"전진! :ref:`Pipenv & 가상 환경(Virtual Environments) `" -" 문서를 향해!" +"전진! :ref:`Pipenv & 가상 환경(Virtual Environments) ` " +"문서를 향해!" #: ../../starting/install3/osx.rst:143 msgid "" "This page is a remixed version of `another guide " -"`_, " -"which is available under the same license." +"`_, which" +" is available under the same license." msgstr "" -"이 페이지는 같은 라이선스를 사용하는 `다른 가이드 `_ 의 리믹스 버전이다." - +"이 페이지는 같은 라이선스를 사용하는 `다른 가이드 `_ 의 리믹스 버전이다." From 9e75706f6f6a38006d6a3c0d607fba257d5a7d08 Mon Sep 17 00:00:00 2001 From: "youngseon.ahn" Date: Thu, 21 May 2026 10:01:37 +0900 Subject: [PATCH 117/117] Add Read the Docs v2 config for Korean build MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - .readthedocs.yaml: v2 build config (ubuntu-22.04 + python 3.11) so RTD no longer rejects the project for missing config. - docs/requirements.txt: modern Sphinx pins (>=7,<10) plus sphinx-intl, sphinx-rtd-theme, sphinx-sitemap. The root requirements.txt is pinned to 2018 versions that don't install on current Python. - docs/conf.py: set language = 'ko' so RTD builds Korean by default for this fork. Verified locally with the same toolchain RTD uses (Python 3.13 sphinx- build of docs/) — output renders Korean titles (e.g. 'index' → '파이썬을 여행하는 히치하이커를 위한 안내서!'). Co-Authored-By: Claude Opus 4.7 (1M context) --- .readthedocs.yaml | 20 ++++++++++++++++++++ docs/conf.py | 2 +- docs/requirements.txt | 4 ++++ 3 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 .readthedocs.yaml create mode 100644 docs/requirements.txt diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 000000000..4a760f963 --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,20 @@ +# Read the Docs configuration file for Sphinx projects +# Docs: https://docs.readthedocs.io/en/stable/config-file/v2.html + +version: 2 + +build: + os: ubuntu-22.04 + tools: + python: "3.11" + +sphinx: + configuration: docs/conf.py + builder: html + fail_on_warning: false + +python: + install: + - requirements: docs/requirements.txt + +formats: [] diff --git a/docs/conf.py b/docs/conf.py index 5e797b01e..e58a94d31 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -64,7 +64,7 @@ # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. -#language = None +language = 'ko' # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 000000000..c6d95fba4 --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,4 @@ +sphinx>=7,<10 +sphinx-intl +sphinx-rtd-theme +sphinx-sitemap