MediaWiki Diskussion:Gadget-SemanticTemplates.js
Einige Fragen[Bearbeiten]
Negation[Bearbeiten]
1) Es gibt einige Buttons, die nur bedingt erscheinen mittels einer if-Umgebung, wie z.B.
if(wgPageName.match(/Definition$/)){ mwCustomEditButtons[mwCustomEditButtons.length] = { "imageFile": "http://upload.wikimedia.org/wikipedia/commons/7/7b/Button_clipboard_bold.gif", "speedTip": "Definitionswort", "tagOpen": " {{Definitionswort|", "tagClose": "|SZ=}} ", "sampleText": " Definitionswort "}; }
Wie kann man es umgekehrt erreichen, dass gewisse Sachen bedingt nicht erscheinen. Mit sowas wie ifnot?
- Z.B.: if(!wgPageName.match(/Definition$/)){
- Das ! dreht die Lösung der Bedingung um, also wenn normalerweise die Bedingung wahr wäre, dann führt das ! dazu, dass die Bedingung falsch ist. Das gleiche passiert anders herum(normalerweise falsch, durch ! wahr) => Anweisungen(zwischen { und }) wird nur ausgeführt, wenn die ursprüngliche Bedingung falsch ist.
- Gruß -- Jan Luca (Diskussion · Beiträge) 19:31, 14. Jun. 2009 (CEST)
- Sowas wie ifnot gibt es natürlich, nur wird es formal etwas anders ausgedrückt:
- Nehmen wir:
if(wgPageName.match(/Definition$/))
- wollen wir die Bedienung umgekehrt, also wenn es nicht übereinstimmt, geht es einfach mit ! hier im Beispiel also:
if(!wgPageName.match(/Definition$/))
Kategorie[Bearbeiten]
2) Wie muss man (wenn man eine bedingte Verwendung möchte) den vorderen Teil eines Seitennamens ansprechen, etwa eine Vorlage oder eine Kategorie?
- Du meinst wohl den Namensraum. Die Variabeln dazu heissen
wgCanonicalNamespace wgNamespaceNumber
- Da du schätzungsweise gerne mit Text arbeitest, empfehle ich wgCanonicalNamespace
- Beachte: Das ist der interne Name für Mediawiki. Da dies ein deutschsprachiges Projekt ist, kann es sein das er vom angezeigten Namen abweicht.
- -- MichaelFrey 19:50, 14. Jun. 2009 (CEST)
- ich hab jetzt mal
if(wgCanonicalNamespace.match(/Vorlage$/)){ mwCustomEditButtons[mwCustomEditButtons.length] = { "imageFile": "http://upload.wikimedia.org/wikipedia/commons/7/74/Button_oeil.png", "speedTip": "Strukturvorlage", "tagOpen": "<includeonly>{{#switch:{{{opt|}}}\n|wort=\n|#default=\n {{#switch: {{#titleparts:{{FULLPAGENAME}}|1|-1}}\n|latex=\n|#default=", "tagClose": "\n}}\n}}</includeonly><noinclude>{{Operatorvorlage| |}}</noinclude>", "sampleText": "Struktur"}; }
ausprobiert (und zwar auch ohne die / und ohne $), der Button ist dann aber immer verschwunden, egal ob unter Vorlage: oder nicht. Was muss ich ändern? Vielen Dank schon mal an euch beide für die vielen und schnellen Tipps, ich brauch noch was Zeit, um es umzusetzen.--Bocardodarapti 22:53, 14. Jun. 2009 (CEST)
- Du hast zwei { geöffnet und nur ein } geschlossen:
if(wgCanonicalNamespace.match(/Vorlage$/)){ mwCustomEditButtons[mwCustomEditButtons.length] = { "imageFile": "http://upload.wikimedia.org/wikipedia/commons/7/74/Button_oeil.png", "speedTip": "Strukturvorlage", "tagOpen": "<includeonly>{{#switch:{{{opt|}}}\n|wort=\n|#default=\n {{#switch: {{#titleparts:{{FULLPAGENAME}}|1|-1}}\n|latex=\n|#default=", "tagClose": "\n}}\n}}</includeonly><noinclude>{{Operatorvorlage| |}}</noinclude>", "sampleText": "Struktur"}; } }
- [1] oder [2]
- Du musst also den englischen Namen des Namensraumes verwenden.
- -- MichaelFrey 18:50, 15. Jun. 2009 (CEST)
- Vielen Dank, das passt, Gruß--Bocardodarapti 08:50, 16. Jun. 2009 (CEST)
Ausblenden von Buttons[Bearbeiten]
3) Wie könnte man noch die Standardbuttons wegkriegen (na ja, die Unterschrift und nowiki braucht man, für alles andere gibt es eine semantische Variante.
- Die Buttons haben eigene CSS Klassen. Der für fetten Text hat z.B.
mw-editbutton-bold
- Du kannst die Button per CSS ausblenden. Damit verschwindet z.B. der Knopf für die Fettschreibung.
- Damit dein Gadget CSS verwenden kann, kannst du eine CSS Datei bei MediaWiki:Gadgets-definition eintragen.
- Alternativ kann ich es dir auch machen. Sag mir einfach welche Buttons und ich mach es dir.
- -- MichaelFrey 19:50, 14. Jun. 2009 (CEST)
aufteilen des Codes[Bearbeiten]
4) Kann man in eine solchen js-Datei auch eine kleinere js-Datei einlesen (also gewisse Teile auslagern)?--Bocardodarapti 17:51, 14. Jun. 2009 (CEST)
- Z.B. importScript ('MediaWiki:Gadget-ToolbarExtension-SemanticTemplates-Hauptfunctionen.js'); => importScript (' Name unter dem die das Skript zu finden ist ');
- Gruß -- Jan Luca (Diskussion · Beiträge) 19:31, 14. Jun. 2009 (CEST)
- Ja das geht, dazu gibt es mehre Mechanismen.
- Dazu aber erst eine gegenfrage:
- Wieso willst du es spalten?
- Deine Beweggründe sollen ein Kriterum bei der Wahl der Technik sein.
- Wenn du z.B. Code für ein anderes Gadget auch gebrauchen kannst, ist das etwas anderes als wenn du "nur" den Code übersichtlicher haben möchtest.
- -- MichaelFrey 19:50, 14. Jun. 2009 (CEST)
Bemerkungen[Bearbeiten]
if(wgPageName.match(/Situation$/)){ mwCustomEditButtons[mwCustomEditButtons.length] = { "imageFile": "http://upload.wikimedia.org/wikipedia/commons/e/ec/Button_aviso_borrado.png", "speedTip": "Situationsbeschreibung", "tagOpen": " ", "tagClose": "<noinclude>\n{{Mathematischer Text \n|TEXTART=Situation \n|KATEGORIE= \n|KATEGORIE2= \n|KATEGORIE3= \n|STICHWORT= \n|OBJEKTKATEGORIE= \n|BEARBEITUNGSSTAND= \n|VERMERK1= \n}}</noinclude>", "sampleText": "Subjekt (Grammatik)"}; }
Match-Begriffe müssen immer in / / stehen.
if(wgPageName.match(/Mastalink/)){ mwCustomEditButtons[mwCustomEditButtons.length] = { "imageFile": "http://upload.wikimedia.org/wikipedia/commons/7/74/Button_oeil.png", "speedTip": "Standardlink", "tagOpen": "#REDIRECT [[", "tagClose": "/Definition|{{{1|}}}]][[Kategorie:Mathematische Standardlinks]]", "sampleText": "Linkseitenname"}; }
Das folgende hatte einiges durcheinandergebracht. Die Aufklappfunktion (Definitionsliste und inputfaktbeweisklappe) hat nicht mehr funktioniert.
if(wgPageName.match(Vorlage)){ mwCustomEditButtons[mwCustomEditButtons.length] = { "imageFile": "http://upload.wikimedia.org/wikipedia/commons/7/74/Button_oeil.png", "speedTip": "Vorlagenumgebung", "tagOpen": "<includeonly>{{#switch: {{#titleparts:{{FULLPAGENAME}}|1|-1}}\n|latex=\n#default=", "tagClose": "\n}}</includeonly><noinclude>[[Kategorie:/Strukturvorlagen|/Strukturvorlagen]]</noinclude>", "sampleText": "Wirkungsweise"}; }
--Bocardodarapti 21:37, 5. Mai 2009 (CEST)
Die neuen Buttons für Vorlage und Parameter passen nicht zu den Clipboards, der Smiley passt inhaltlich nicht zu Parameter und ist eine Notlösung.--Bocardodarapti 17:03, 17. Jan. 2009 (CET)