Общий синтаксис
Эту страницу не рекомендуется править на локальной-вики, лучше воспользуйтесь ThisSite.Syntax. Если это действительно необходимо, внесите правки через корневую вики вашей фермы.
ThisSite: локальные настройки макета дизайна, css-классы и т.д. а также все, что должно быть под рукой
Настройки данного макета дизайна
(:noheader:)
- скрыть хедер сайта
(:nobread:)
- скрыть хлебные крошки
(:notitle:)
- скрыть заголовок h1
(:noleft:)
- скрыть левую панель
(:nofooter:)
- скрыть футер сайта
Вспомогательные CSS-классы:
hidden-for-users
- скрывает элемент от неавторизованных пользователей
ph-speedups.less: стандартизированные вспомогательные классы
Памятка по основам (начинающим авторам)
Официальная документация: Сложные слои
- параграф
<p>
генерируется автоматически, когда пуста строка, предшествующая текущей \
"притягивает" последующую строку, а\\\
добавляет пустую строку<br>
не прерывая параграф.[[<<]]
делает clear:both$переменные
вставляем с помощью!
,!!
,!!!
- это h1, h2, h3 соответственно, а!!!!
делает h4 и всегда вызывает аккордеон%newwin% ...
-> открывать ссылки в новом окне. Все внешние ссылки это автоматически.%class%text%%
-><span class="class">text</span>
- действия
%чего_угодно% ...
прервется в конце текущего блока, или на%%
>>class<<text
-> создаст<div class="class">
, который закроется только на>><<
[[PmWikiPh/Syntax|+]]
-> ссылка с названием целевой страницы[[PmWikiPh/Syntax|вот сюда]]
-> ссылка "вот сюда"[[http://example.com/|внешняя страница]]
= ссылка "внешняя страница"[[#anchor]]
= поставить якорь "anchor"[[PmWikiPh/Syntax#anchor|якорь]]
= ссылка на якорь?
Таблицы, цитаты, всплывающие подсказки
Официальная документация: Таблицы | Сложные
|| class="table table-bordered" ||! Заголовок простой таблицы !|| ||!ЗагЛев ||! ЗагЦент ||! ЗагПрав|| ||cell 1 || cell 2 || cell 3|| |
|
<blockquote> Цитату проще написать в html <cite>мысль Finar</cite> </blockquote> |
|
<span class='ph-dotted' title='сделано просто в чистом html'>текст со всплывающей подсказкой</span> | текст со всплывающей подсказкой |
Отступы и приступы
-> отступ --> двойной ---> тройной ----> и т.д. Это позволяет создавать хорошо структурированные тексты без буллитов. Не очень понятно, зачем это нужно, но есть гипотеза: если, например, сюда на 4й уровень поставить еще и скажем фотогалерею, то потом, на следующей строке, можно будет снова продолжить писать текст без буллитов сразу . -< '''Хитрый приступ''' отодвигает весь текст, кроме первой строчки. Тоже не слишком понятно, зачем это может пригодиться :) Но как фича для необычного оформления канает. | отступ
двойной
тройной
и т.д. Это позволяет создавать хорошо структурированные тексты без буллитов. Не очень понятно, зачем это нужно, но есть гипотеза: если, например, сюда на 4й уровень поставить еще и скажем фотогалерею, то потом, на следующей строке, можно будет снова продолжить писать текст без буллитов сразу .
Хитрый приступ отодвигает весь текст, кроме первой строчки. Тоже не слишком понятно, зачем это может пригодиться :) Но как фича для необычного оформления канает.
|
Оформление исходных кодов базовое, на основе ядра
[@ Блок, содержащий любой '''код''' без форматирования. Аналогичный эффект даст строка, начинающаяся с пробела. @] | Блок, содержащий любой '''код''' без форматирования. Аналогичный эффект даст строка, начинающаяся с пробела. |
(:markup caption='Заголовок' class=horiz:) wiki-код (:markupend:)
- опциональное обрамление wiki-кода по аналогии с примером выше): выводит сам код, пример его исполнения и опциональный заголовок, поясняющий суть происходяшего.
А вот [@$переменная@] в тексте. | А вот |
Программирование: базовые inline-команды
(:country:Transylvania:)
- создать Page Text Variable{$:country}
- вызвать ее(:if auth edit:) ... (:ifend:)
- выводить только для редакторов(:nogroupheader:) | (:nogroupfooter:)
- не выводить общие инклюды группы(:robots noindex,nofollow:)
- закрыть страницу от индексации
Программирование: внедренные решения
Подменяемые картинки: синтаксис
Вывод превью, по клику - полноразмерные:
>>phImageSwapper<<
Mini:PmWikiPh/MiniPhotogallery-Examples/doom2-plut-066.jpg,doom2-plut-087.jpg
>><<
Вывод полноразмерных:
>>phImageSwapper<<
Attach:PmWikiPh/MiniPhotogallery-Examples/doom2-plut-066.jpg
Attach:PmWikiPh/MiniPhotogallery-Examples/doom2-plut-087.jpg
>><<
Фотогалерея Mini: синтаксис
Рецепт Mini, оригинальная докуметация
Mini:picture.jpg
сгенерить превьюшку picture.jpgMini:pic1.jpg,pic2.jpg,pic3.jpg
сгенерить галерею из этих картинокMini:*
сгенерить галерею из всех картинок данной страницыMini:r*,S*,t*
сгенерить галерею из картинок, начинающихся на R, S или T (чувствительно к регистру).Mini:*.jpg,-pic1.jpg
все JPG'и кроме pic1.jpgMini:pic1.jpg,*
сначала показать pic1.jpg, затем все остальные, кроме него.Mini:*,pic1.jpg
сработает аналогично, точно указанные картинки всегда будут идти перед общими масками[[Other page | mini:picture.jpg ]]
- превьюшка, ссылающая на другую страницу (а не на оригинал изображения). Достигается за счет строчной буквы "m",
В целом синтаксис Mini такой же, как Attach, т.е. можно написать, например: Mini:PmWikiPh/SomePage/*7*
Создание галерей с масштабированием - MiniN:*
, где:
- при N = 1 - 151x111
- при N = 2 - 314x234 (в два раза больше Mini1 по сторонам)
- при N = 3 - 640x360 (16/9)
- при N = 4 - 640x480 (в четыре раза больше Mini1 по сторонам)
(:mini 120x120:)
, или, в общем случае(:mini m1=80x80 m2=90x45 m3=141x100 m9=0x128x50x0x90x000000:)
- определить собственные параметры масштабирования на данной странице
>>width=652px ...<<
- формирует столбец, шириной как Mini4. Красиво.
>>width=978px ...<<
- формирует столбец, шириной как Mini4 + Mini2.
Мультитеги: синтаксис
(:multytags:off:)
: на текущей странице отключить механизм выбора "связанных страниц". Вместо него автоматически включится встроенный в PmWiki функционал, автоматически собирающий все вики-ссылки контента страницы. Внимание! Чтобы команда работала, необходимо учесть ее обработку в условиях запуска Мультитегов здесь Настройки режима редактирования.
Мультаплоадер: синтаксис
Пример настроек для Ph:PmWikiPh/Adding-Custom-Frontend-Code
<script type='text/javascript'> var showThumbs = 0; var checkText = false; </script>
Подсветка синтаксиса
Разметка для вывода исходного кода с подсветкой синтаксиса, параметры:
lang=XXX - подсветка по правилам языка XXX, популярные:
html5
javascript
jquery
php
css
text
linenum - включить нумерацию строк
tabwidth=N - ширина при отображении табуляций, работает только при заданном lang
@ ] <- тут без пробела!
Все поддерживаемые языки
Geshi Version: 1.0.8.12
lang | full name |
---|---|
4cs | GADV 4CS |
6502acme | MOS 6502 (6510) ACME Cross Assembler format |
6502kickass | MOS 6502 (6510) Kick Assembler format |
6502tasm | MOS 6502 (6510) TASM/64TASS 1.46 Assembler format |
68000devpac | Motorola 68000 - HiSoft Devpac ST 2 Assembler format |
abap | ABAP |
actionscript | ActionScript |
actionscript3 | ActionScript 3 |
ada | Ada |
aimms | AIMMS3 |
algol68 | ALGOL 68 |
apache | Apache configuration |
applescript | AppleScript |
apt_sources | Apt sources |
arm | ARM ASSEMBLER |
asm | ASM |
asp | ASP |
asymptote | asymptote |
autoconf | Autoconf |
autohotkey | Autohotkey |
autoit | AutoIt |
avisynth | AviSynth |
awk | awk |
bascomavr | BASCOM AVR |
bash | Bash |
basic4gl | Basic4GL |
bf | Brainfuck |
bibtex | BibTeX |
blitzbasic | BlitzBasic |
bnf | bnf |
boo | Boo |
c | C |
c_loadrunner | C (LoadRunner) |
c_mac | C (Mac) |
c_winapi | C (WinAPI) |
caddcl | CAD DCL |
cadlisp | CAD Lisp |
cfdg | CFDG |
cfm | ColdFusion |
chaiscript | ChaiScript |
chapel | Chapel |
cil | CIL |
clojure | Clojure |
cmake | CMake |
cobol | COBOL |
coffeescript | CoffeeScript |
cpp | C++ |
cpp-qt | C++ (Qt) |
cpp-winapi | C++ (WinAPI) |
csharp | C# |
css | CSS |
cuesheet | Cuesheet |
d | D |
dart | Dart |
dcl | DCL |
dcpu16 | DCPU-16 Assembly |
dcs | DCS |
delphi | Delphi |
diff | Diff |
div | DIV |
dos | DOS |
dot | dot |
e | E |
ecmascript | ECMAScript |
eiffel | Eiffel |
email | eMail (mbox) |
epc | EPC |
erlang | Erlang |
euphoria | Euphoria |
ezt | EZT |
f1 | Formula One |
falcon | Falcon |
fo | FO (abas-ERP) |
fortran | Fortran |
freebasic | FreeBasic |
freeswitch | FreeSWITCH |
fsharp | F# |
gambas | GAMBAS |
gdb | GDB |
genero | genero |
genie | Genie |
gettext | GNU Gettext |
glsl | glSlang |
gml | GML |
gnuplot | Gnuplot |
go | Go |
groovy | Groovy |
gwbasic | GwBasic |
haskell | Haskell |
haxe | Haxe |
hicest | HicEst |
hq9plus | HQ9+ |
html4strict | HTML |
html5 | HTML5 |
icon | Icon |
idl | Uno Idl |
ini | INI |
inno | Inno |
intercal | INTERCAL |
io | Io |
ispfpanel | ISPF Panel |
j | J |
java | Java |
java5 | Java(TM) 2 Platform Standard Edition 5.0 |
javascript | Javascript |
jcl | JCL |
jquery | jQuery |
kixtart | KiXtart |
klonec | KLone C |
klonecpp | KLone C++ |
latex | LaTeX |
lb | Liberty BASIC |
ldif | LDIF |
lisp | Lisp |
llvm | LLVM Intermediate Representation |
locobasic | Locomotive Basic |
logtalk | Logtalk |
lolcode | LOLcode |
lotusformulas | Lotus Notes @Formulas |
lotusscript | LotusScript |
lscript | LScript |
lsl2 | LSL2 |
lua | Lua |
m68k | Motorola 68000 Assembler |
magiksf | MagikSF |
make | GNU make |
mapbasic | MapBasic |
matlab | Matlab M |
mirc | mIRC Scripting |
mmix | MMIX |
modula2 | Modula-2 |
modula3 | Modula-3 |
mpasm | Microchip Assembler |
mxml | MXML |
mysql | MySQL |
nagios | Nagios |
netrexx | NetRexx |
newlisp | newlisp |
nginx | nginx |
nimrod | Nimrod |
nsis | NSIS |
oberon2 | Oberon-2 |
objc | Objective-C |
objeck | Objeck Programming Language |
ocaml | OCaml |
ocaml-brief | OCaml (brief) |
octave | GNU/Octave |
oobas | OpenOffice.org Basic |
oorexx | ooRexx |
oracle11 | Oracle 11 SQL |
oracle8 | Oracle 8 SQL |
oxygene | Oxygene |
oz | OZ |
parasail | ParaSail |
parigp | PARI/GP |
pascal | Pascal |
pcre | PCRE |
per | per |
perl | Perl |
perl6 | Perl 6 |
pf | OpenBSD Packet Filter |
php | PHP |
php-brief | PHP (brief) |
pic16 | PIC16 |
pike | Pike |
pixelbender | Pixel Bender 1.0 |
pli | PL/I |
plsql | PL/SQL |
postgresql | PostgreSQL |
postscript | PostScript |
povray | POVRAY |
powerbuilder | PowerBuilder |
powershell | PowerShell |
proftpd | ProFTPd configuration |
progress | Progress |
prolog | Prolog |
properties | PROPERTIES |
providex | ProvideX |
purebasic | PureBasic |
pycon | Python (console mode) |
pys60 | Python for S60 |
python | Python |
q | q/kdb+ |
qbasic | QBasic/QuickBASIC |
qml | QML |
racket | Racket |
rails | Rails |
rbs | RBScript |
rebol | REBOL |
reg | Microsoft Registry |
rexx | rexx |
robots | robots.txt |
rpmspec | RPM Specification File |
rsplus | R / S+ |
ruby | Ruby |
rust | Rust |
sas | SAS |
scala | Scala |
scheme | Scheme |
scilab | SciLab |
scl | SCL |
sdlbasic | sdlBasic |
smalltalk | Smalltalk |
smarty | Smarty |
spark | SPARK |
sparql | SPARQL |
sql | SQL |
standardml | StandardML |
stonescript | StoneScript |
systemverilog | SystemVerilog |
tcl | TCL |
teraterm | Tera Term Macro |
text | Text |
thinbasic | thinBasic |
tsql | T-SQL |
typoscript | TypoScript |
unicon | Unicon (Unified Extended Dialect of Icon) |
upc | UPC |
urbi | Urbi |
uscript | Unreal Script |
vala | Vala |
vb | Visual Basic |
vbnet | vb.net |
vbscript | VBScript |
vedit | Vedit macro language |
verilog | Verilog |
vhdl | VHDL |
vim | Vim Script |
visualfoxpro | Visual Fox Pro |
visualprolog | Visual Prolog |
whitespace | Whitespace |
whois | Whois (RPSL format) |
winbatch | Winbatch |
xbasic | XBasic |
xml | XML |
xorg_conf | Xorg configuration |
xpp | X++ |
yaml | YAML |
z80 | ZiLOG Z80 Assembler |
zxbasic | ZXBasic |
Кнопки-раскрывашки: синтаксис
!!!!Заголовок
- любой заголовок h4 создает раскрывающийся слайд. Любой последующий элемент будет скрыт под ним, по-умолчанию это первый параграф.
>>toggler<< Текстовая кнопка
- вместо кнопки создает прерывисто подчеркнутый текст с аналогичным функционалом
>><<
(:div:)...(:divend:)
- оберните слоем скрываемый контент, если его больше чем один параграф
>>ph-shower<<
- так можно создать контентный блок, раскрытый по-умолчанию (актуально для аккордеонов)
Викирама: синтаксис
Отключить вертикальное масштабирование: %apply=a minilink wikirama-noresize% Mini:*
Заполнить футер модального окна:
%apply=a id=test% Mini:file.jpg >>id=footer-test<< любой код в модальное окно >><<
- Ph:PmWikiPh/SourceBlockAjaxer: исполнение вики-кода ajax'ом
Bootstrap, html-спецсимволы
Bootstrap:
>>alert alert-success<<
- зеленая плашка
>>alert alert-info<<
- голубая плашка
>>alert alert-warning<<
- желтая плашка
>>alert alert-danger<<
- красная плашка
%text-muted%
- тихий текст
Спецсимволы:
« | « |
» | » |
& | & |
– | – |
— | — |
← | ← |
↑ | ↑ |
→ | → |
↓ | ↓ |
↔ | ↔ |
Известные проблемы и баги
- код вида
>>red<<123456789ABCDEFGHI
не работает (см. тут), добавляйте пробел между скобкой и контеном
Site.EditQuickReference дефолтный хелп от автора PmWiki
Paragraphs: for a new paragraph, use a blank line; |
Line break: \\ or [[<<]] |
-> to indent text, -< hanging text |
Join line: \ |
Lists: * for bulleted, # for numbered, :term:definition for definition lists | |
Emphasis:
''italics''
'''bold'''
'''''bold italics'''''
@@ | |
References: [[another page]], [[http://example.com/]], [[another page | link text]], [[#anchor]], [[#anchor | link text]] |
Signatures: name: ~~~ |
Groups: [[Group/Page]] displays Page, [[Group.Page]] displays Group.Page, [[Group(.Page)]] displays Group, [[Group/]] links Group homepage |
name and date: ~~~~ |
Separators: !!, !!! for headings, ---- for horizontal line |
Prevent formatting: [=...=] |
Other:
[+big+]
[++bigger++]
[-small-]
[--smaller--]
'^superscript^'
'_subscript_'
{+inserted+}
{- |
Preformatted: [@...@] or >>pre<<...>><< |