{"id":1325,"date":"2018-04-12T14:56:44","date_gmt":"2018-04-12T12:56:44","guid":{"rendered":"http:\/\/ictknow-how.ch\/blog\/?p=1325"},"modified":"2023-05-08T10:39:26","modified_gmt":"2023-05-08T08:39:26","slug":"python-code-mit-visual-studio-2017-debuggen-part-3-die-sache-mit-gettext","status":"publish","type":"post","link":"https:\/\/ictknow-how.ch\/blog\/2018\/04\/12\/python-code-mit-visual-studio-2017-debuggen-part-3-die-sache-mit-gettext\/","title":{"rendered":"Python-Code mit Visual Studio 2017 debuggen? Part 3 &#8211; Die Sache mit GetText"},"content":{"rendered":"<p>Im Artikel zum <a href=\"https:\/\/ictknow-how.ch\/blog\/2018\/04\/12\/python-code-mit-visual-studio-2017-debuggen-part-1-die-installation\/\">Einrichten der Python-Entwicklungsumgebung in Visual Studio 2017<\/a> habe ich erw\u00e4hnt, dass man f\u00fcr <a href=\"https:\/\/picard.musicbrainz.org\/\" target=\"_blank\" rel=\"noopener\"><em>Picard<\/em><\/a> die <a href=\"https:\/\/ictknow-how.ch\/blog\/2018\/04\/12\/python-code-mit-visual-studio-2017-debuggen-part-1-die-installation\/#5\">\u00dcbersetzungen<\/a> zuerst manuell einrichten muss. Der Vollst\u00e4ndigkeit halber sind hier die notwendigen Schritte erkl\u00e4rt. Vorausgesetzt wird, dass die statische <a href=\"https:\/\/github.com\/mlocati\/gettext-iconv-windows\/releases\/download\/v0.19.8.1-v1.15\/gettext0.19.8.1-iconv1.15-static-64.exe\" target=\"_blank\" rel=\"noopener\"><code>gettext0.19.8.1-iconv1.15-static-64.exe<\/code><\/a>&nbsp;bereits installiert ist:<\/p>\n<p>1.) In VS und geladenem Picard-Pythoncode klickt man im Tab \u00abPython-Umgebungen\u00bb auf \u00ab\u00dcbersicht\u00bb und darin auf den Eintrag mit dem Commandline-Symbol und \u00abIn PowerShell \u00f6ffnen\u00bb<\/p>\n<p>2.) In der PowerShell wechselt man einfachheitshalber zuerst in das Verzeichnis mit dem Source-Code, also z.B.<br \/>\n<code>CD \"C:\\Users\\UserXYZ\\Documents\\Visual Studio 2017\\Projects\\picard-2.0.0dev6\"<\/code><\/p>\n<p>3.) Im neuen Verzeichnis tippt man folgenden Befehl ein um die \u00dcbersetzungen vorzubereiten:<br \/>\n<code>py setup.py build_locales -i<\/code><br \/>\nEine lange Liste mit sehr \u00e4hnlichen LC_MESSAGES scrollt \u00fcber den Bildschirm.<\/p>\n<p>&nbsp;<\/p>\n<p>Weil man hier gleich am richtigen Ort steht<br \/>\n4.) um auch die notwendige C-Erweiterung&nbsp;<code>astrcmp<\/code> zu erzeugen, tippt man praktischerweise hier folgenden weiteren Befehl ein:<br \/>\n<code>py setup.py build_ext -i<\/code><\/p>\n<p>Als Antwort bekommt man nur zwei Zeilen und den Hinweis auf eine Kopie der erzeugten Datei in&nbsp;-&gt; <code>picard\\util<\/code><\/p>\n<p>Warum dann beim <a href=\"https:\/\/ictknow-how.ch\/blog\/2018\/04\/12\/python-code-mit-visual-studio-2017-debuggen-part-2-gewoehnungsbeduerftiges-ausfuehren\/\">Ausf\u00fchren des Codes<\/a> diese Variante trotzdem zu einem Ausf\u00fchrungsstopp f\u00fchrt, habe ich bisher nicht herausgefunden. Hinweise und Kommentare sind wie immer willkommen.<\/p>\n\n\n<div class=\"kk-star-ratings kksr-auto kksr-align-left kksr-valign-bottom\"\n    data-payload='{&quot;align&quot;:&quot;left&quot;,&quot;id&quot;:&quot;1325&quot;,&quot;slug&quot;:&quot;default&quot;,&quot;valign&quot;:&quot;bottom&quot;,&quot;ignore&quot;:&quot;&quot;,&quot;reference&quot;:&quot;auto&quot;,&quot;class&quot;:&quot;&quot;,&quot;count&quot;:&quot;0&quot;,&quot;legendonly&quot;:&quot;&quot;,&quot;readonly&quot;:&quot;&quot;,&quot;score&quot;:&quot;0&quot;,&quot;starsonly&quot;:&quot;&quot;,&quot;best&quot;:&quot;5&quot;,&quot;gap&quot;:&quot;5&quot;,&quot;greet&quot;:&quot;Rate this post&quot;,&quot;legend&quot;:&quot;0\\\/5 - (0 votes)&quot;,&quot;size&quot;:&quot;24&quot;,&quot;title&quot;:&quot;Python-Code mit Visual Studio 2017 debuggen? Part 3 - Die Sache mit GetText&quot;,&quot;width&quot;:&quot;0&quot;,&quot;_legend&quot;:&quot;{score}\\\/{best} - ({count} {votes})&quot;,&quot;font_factor&quot;:&quot;1.25&quot;}'>\n            \n<div class=\"kksr-stars\">\n    \n<div class=\"kksr-stars-inactive\">\n            <div class=\"kksr-star\" data-star=\"1\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"2\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"3\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"4\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"5\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n    \n<div class=\"kksr-stars-active\" style=\"width: 0px;\">\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n                \n\n<div class=\"kksr-legend\" style=\"font-size: 19.2px;\">\n            <span class=\"kksr-muted\">Rate this post<\/span>\n    <\/div>\n    <\/div>\n","protected":false},"excerpt":{"rendered":"<p>Im Artikel zum Einrichten der Python-Entwicklungsumgebung in Visual Studio 2017 habe ich erw\u00e4hnt, dass man f\u00fcr Picard die \u00dcbersetzungen zuerst manuell einrichten muss. Der Vollst\u00e4ndigkeit halber sind hier die notwendigen Schritte erkl\u00e4rt. Vorausgesetzt wird, dass die statische gettext0.19.8.1-iconv1.15-static-64.exe&nbsp;bereits installiert ist: 1.) In VS und geladenem Picard-Pythoncode klickt man im Tab \u00abPython-Umgebungen\u00bb auf \u00ab\u00dcbersicht\u00bb und darin &#8230; <a title=\"Python-Code mit Visual Studio 2017 debuggen? Part 3 &#8211; Die Sache mit GetText\" class=\"read-more\" href=\"https:\/\/ictknow-how.ch\/blog\/2018\/04\/12\/python-code-mit-visual-studio-2017-debuggen-part-3-die-sache-mit-gettext\/\" aria-label=\"Mehr Informationen \u00fcber Python-Code mit Visual Studio 2017 debuggen? Part 3 &#8211; Die Sache mit GetText\">Weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[28],"tags":[256,112,113],"class_list":["post-1325","post","type-post","status-publish","format-standard","hentry","category-software","tag-debugging","tag-python","tag-visual-studio-2017"],"_links":{"self":[{"href":"https:\/\/ictknow-how.ch\/blog\/wp-json\/wp\/v2\/posts\/1325","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ictknow-how.ch\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ictknow-how.ch\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ictknow-how.ch\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ictknow-how.ch\/blog\/wp-json\/wp\/v2\/comments?post=1325"}],"version-history":[{"count":0,"href":"https:\/\/ictknow-how.ch\/blog\/wp-json\/wp\/v2\/posts\/1325\/revisions"}],"wp:attachment":[{"href":"https:\/\/ictknow-how.ch\/blog\/wp-json\/wp\/v2\/media?parent=1325"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ictknow-how.ch\/blog\/wp-json\/wp\/v2\/categories?post=1325"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ictknow-how.ch\/blog\/wp-json\/wp\/v2\/tags?post=1325"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}