Rozszerzenie:CodeEditor
![]() Status wydania: stabilne |
|
---|---|
![]() |
|
Opis | Dostarcza podświetlający składnię zintegrowany z zaawansowanym edytorem wikitekstu edytor kodu dla stron JS, CSS oraz modułów Lua. |
Autor(zy) |
|
Polityka zgodności | Snapshots releases along with MediaWiki. Master is not backward compatible. |
MediaWiki | 1.32+ |
Zmiany w bazie danych | Nie |
Licencja | GPL-2.0-or-later AND BSD-3-Clause |
Pobieranie | |
|
|
Przetłumacz rozszerzenie CodeEditor jeżeli jest dostępne na translatewiki.net | |
Problemy | Otwarte zadania · Zgłoś błąd |
Rozszerzenie CodeEditor poszerza zakres możliwości WikiEditora poprzez osadzenie widżetu edytora Ace, dostarczającego pewne funkcje przydatne na stronach JS oraz CSS, a gdy zainstalowane jest także Scribunto , to również w przestrzeni nazw Moduł: The code editor does not show on regular wiki pages, i.e. wiki pages with the "wikitext" content model. (See Extension:CodeMirror for syntax highlighting of wikitext when using the source editor.)
It provides the following features:
- podświetlanie składni JavaScriptu, CSS oraz Lua
- automatyczne dodawanie wcięć
- klawisz tab tworzy wcięcia przy użyciu tabulacji (od 1.22), wcześniej miękkie wcięcia
- dodanie/usunięcie wcięcia z sekcji przy użyciu klawiszy tab/shift-tab
sprawdzanie poprawności składni dla JavaScriptu
- parowanie nawiasów, nawiasów klamrowych oraz kwadratowych
Instalacja
- Pobierz i umieść plik(i) w katalogu o nazwie
CodeEditor
w folderzeextensions/
. - Dodaj poniższy kod na dole swojego pliku
LocalSettings.php
:wfLoadExtension( 'CodeEditor' ); $wgDefaultUserOptions['usebetatoolbar'] = 1; // user option provided by WikiEditor extension
- Skonfiguruj zgodnie z wymaganiami.
Zrobione – Przejdź do Special:Version na swojej wiki, aby sprawdzić czy rozszerzenie zostało pomyślnie zainstalowane.
Vagrant installation:
- Jeżeli korzystasz z Vagrant , zainstaluj poprzez
vagrant roles enable codeeditor --provision
Konfiguracja
$wgCodeEditorEnableCore
- Aby wyłączyć edytor na stronach JavaScript i CSS w przestrzeniach nazw takich jak MediaWiki, użytkownik i inne, ustaw
$wgCodeEditorEnableCore = false;
(domyślna wartość to „true”)
$wgScribuntoUseCodeEditor
- Aby wyłączyć rozszerzenie dla Scribunto, tj. na stronach w przestrzeni Moduł, ustaw
$wgScribuntoUseCodeEditor = false;
(domyślna wartość to „true”)
JavaScript
Możliwa jest zmiana konfiguracji edytora ACE poprzez użycie haka MediaWiki (i.e. mw.hook( 'codeEditor.configure' ).add( ... )
).
Argumentem podanym do twojego haka będzie sesja edytora ACE.
Integracja z WikiEditorem
![]() | This page is outdated. |
I've been integrating CodeEditor into the pluggable portions of Extension:WikiEditor as prep for Future editor work, since we'll want to be able to extend it to edit things that aren't plain wikitext, which'll need some changes to the toolbar setup and whatnot. JS/CSS here still return plain text in the end, making it an easier intermediate project. --brion 00:26, 14 June 2011 (UTC)
Dobrze:
- special char insertions work, including quote pairs to surround text
- basic formatting insertions work, including link dialogs
- search/replace dialog works
- ace's built-in search/replace UI also triggers from keyboard commands, still need to disable them! (onCommandKey)
Źle:
- multi-line formatting doesn't apply correctly (but really should that apply here? :)
Do-zrobienia:
- remove toolbar buttons that don't apply (formatting, syntax help?)
- add toolbar buttons that are more directly useful
- indent/outdent
- insertion helpers for common keywords or code bits
- help reference to MW JS API reference, JS & CSS specs/documentation
Znane problemy
![]() | This page is outdated. |
- przystępność: klawisze tab/tab-shift są nadpisane. Czy istnieje spójna alternatywa dla użytkowników korzystających tylko z klawiatury?
- accessibility: access key on the original textarea needs to be moved over or otherwise handled
- scrollbar initializes too wide; need to trigger resize check after that's filled (maybe fixed?)
- cursor/scroll position not maintained over previews/show changes
Licencja
Choć rozszerzenie dostępne na zasadach licencji GNU General Public License v2.0 or later (GPL-2.0+), to wykorzystuje ono Ace oprogramowanie edytora Ace, które dostępne jest na licencji BSD 3-clause "New" or "Revised" License (BSD-3-Clause).
![]() | To rozszerzenie jest wykorzystywane przez jeden lub więcej projektów Wikimedia. Oznacza to prawdopodobnie, że to rozszerzenie jest stabilne i działa wystarczająco dobrze, aby wykorzystywać je na stronach o dużym natężeniu ruchu. Odnajdź nazwę tego rozszerzenia w plikach konfiguracyjnych Wikimedia CommonSettings.php oraz InitialiseSettings.php, aby zobaczyć gdzie są zainstalowane. Pełną listę rozszerzeń zainstalowanych na określonej wiki można znaleźć na stronie Special:Version na danej wiki. |
![]() | This extension is included in the following packages and/or wiki farms: |
- Extensions bundled with MediaWiki 1.31/pl
- Stable extensions/pl
- Extensions with invalid or missing type/pl
- Extensions with unknown license/pl
- Extensions in Wikimedia version control/pl
- EditPage::showEditForm:initial extensions/pl
- EditPage::showReadOnlyForm:initial extensions/pl
- GetPreferences extensions/pl
- All extensions/pl
- Outdated pages/pl
- Extensions used on Wikimedia/pl
- Extensions included in BlueSpice/pl
- Extensions included in Canasta/pl
- Extensions included in Fandom/pl
- Extensions included in Miraheze/pl
- Extensions included in MyWikis/pl
- Extensions included in ProWiki/pl
- Extensions included in semantic::core/pl
- Syntax highlighting extensions/pl
- Scribunto extensions/pl
- Edit extensions/pl