Ich möchte alle Abschrift-Zellen, die ich sowohl in Spanisch und Englisch habe, und haben nur die spanischen angezeigt, wenn das als Hauptsprache des laufenden Systems oder vielleicht eine Sprache ausgewählt ist oben umschalten? Gibt es eine Jupiter-Erweiterung, die dies ermöglichen würde? Oder einige arbeiten herum? Ich habe noch nichts gefunden.Unterstützung mehrerer menschlicher Sprachen in Jupyter-Notebooks
Antwort
Nach meinem Wissen, die nächste Internationalisierung Arbeit ist i8n impelemenation in der neuesten Version des Notebooks (5.1.0).
Siehe folgende pull request und README für Details:
Sie könnten Ihre eigene Erweiterung schreiben, die auf die Zell-Tags funktioniert. Sie können die englischen Zellen mit #english und Spanisch mit # spanish markieren (unter View > Cell Toolbar > Tags
)
Hier ist ein funktionierendes Beispiel für einen Code, der ein Dropdown-Menü für die verschiedenen Sprachen hinzufügt (in diesem Fall nur ich Englisch und Spanisch kodiert, aber es ist erweiterbar) und registriert die Aktionen in der Befehlspalette von Jupyter. Dadurch werden alle Zellen ausgeblendet, die Tags enthalten, die nicht mit Ihrem speziellen Sprach-Tag versehen sind. Daher sollten Sie diese möglicherweise an Ihre Anforderungen anpassen. Oder lassen Sie es ist, als ob es in Ordnung ist :)
define([
'base/js/namespace'
], function(
Jupyter
) {
console.log("Language switcher working!");
var show_selected_language = function(language) {
language = String.toLowerCase(language);
console.log("switching languages...");
// Find all cells with specific language
var cells = Jupyter.notebook.get_cells();
cells.forEach(function(cell) {
if(cell.hasOwnProperty("metadata") && cell.metadata.hasOwnProperty("tags") && cell.metadata.tags.indexOf(language) !== -1) {
cell.element.show('slow');
} else if (cell.hasOwnProperty("metadata") && cell.metadata.hasOwnProperty("tags") && cell.metadata.tags.indexOf(language) === -1) {
cell.element.hide('slow');
}
});
};
var load_ipython_extension = function() {
var lang_dropdown = $("<div/>").addClass("dropdown btn-group").attr("id","lang-menu");
var lang_button = $("<button/>")
.addClass("btn btn-default dropdown-toggle")
.attr("type","button")
.attr("data-toggle","dropdown")
.attr("title", "Switch Language")
.text("Lang");
var lang_caret = $("<span>").addClass("caret");
lang_button.append(lang_caret);
var lang_dropdown_ul = $("<ul/>")
.attr("id","lang_menu")
.addClass("dropdown-menu");
lang_dropdown.append(lang_button).append(lang_dropdown_ul);
$(Jupyter.toolbar.selector).append(lang_dropdown);
function add_new_item(menu, display_text, id) {
menu.append($("<li/>").attr("id",id)
.append($("<a/>")
.attr("href","#")
.text(display_text))
.click(function() { show_selected_language(display_text);}));
}
add_new_item(lang_dropdown_ul, "English", "switch-lang-english");
add_new_item(lang_dropdown_ul, "Spanish", "switch-lang-spanish");
var english_action = {
help: "Switch language to English",
help_index: "a",
icon: "fa-language",
handler : function() { show_selected_language("english");},
};
var english_prefix = "language_switcher";
var english_action_name = "switch-lang-english";
Jupyter.actions.register(english_action, english_action_name, english_prefix);
var spanish_action = {
help: "Switch language to Spanish",
help_index: "a",
icon: "fa-language",
handler : function() { show_selected_language("spanish");},
};
var spanish_prefix = "language_switcher";
var spanish_action_name = "switch-lang-spanish";
Jupyter.actions.register(spanish_action, spanish_action_name, spanish_prefix);
};
return {
load_ipython_extension : load_ipython_extension
};
});
speichern es als eine JavaScript-Datei und dann installieren und aktivieren sie wie jede Frontend-Erweiterung.
- 1. Elasticsearch für Unterstützung mehrerer Sprachen
- 2. Unterstützung mehrerer Sprachen in einer Winforms-Anwendung
- 3. Unterstützung mehrerer Sprachen in einem einzigen Bot
- 4. Unterstützung mehrerer Sprachen, die nicht in TextMesh Pro funktionieren
- 5. ASP MVC-Technik für die Unterstützung mehrerer Sprachen
- 6. Chatbase-Unterstützung in mehreren Sprachen
- 7. Verwenden mehrerer Sprachen in Pyteser
- 8. Android Wear - Unterstützung verschiedener Sprachen
- 9. Funktionale Sprachen & Unterstützung für Memoization
- 10. Dompdf Paket andere Sprachen Unterstützung in Laravel
- 11. Unterstützung zwei Sprachen in travis.ci Datei
- 12. Wie mehrere Sprachen Unterstützung in Nodejs
- 13. Unterstützung mehrerer Datenbanken in Symfony
- 14. Android: Unterstützung mehrerer Bildschirme
- 15. Wie lade ich Dateien dynamisch in JupyterNotebooks?
- 16. So erstellen Sie einen Bot mit LUIS zur Unterstützung mehrerer Sprachen in Bot Framework (C# SDK)
- 17. Android mehrere Sprachen Unterstützung für dynamische Inhalte
- 18. Edmodo Image Cropper Unterstützung für verschiedene Sprachen
- 19. Sprachen mit nativer/syntaktischer/Inline-Graph-Unterstützung?
- 20. Unterstützung nur eine begrenzte Anzahl von Sprachen
- 21. SEO und Unterstützung für mehrere Sprachen
- 22. iOS App - Unterstützung für mehrere Sprachen Layout
- 23. dynamische Stylesheet-Sprachen und Browser-Unterstützung
- 24. Intelligentes Datumsbereichs-Parsing menschlicher Eingaben?
- 25. Unterstützung mehrerer Größe des Bildschirms
- 26. Android-Layout Unterstützung mehrerer Bildschirme
- 27. Wie Unterstützung mehrerer Bildschirme dimensionieren
- 28. Wie wird WinWait für die automatische Installation des Assistenten zur Unterstützung mehrerer Sprachen aufgerufen?
- 29. Android: Unterstützung mehrerer Bildschirme fehlgeschlagen
- 30. Unterstützung mehrerer Assemblys in ASP.NET \ C# -Projekten