You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+48Lines changed: 48 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -55,3 +55,51 @@ Available templates for Haxe:
55
55
*`.while` – uses expression as loop condition `while (expr)`
56
56
*`.dowhile` – uses expression as loop condition `do{...} while(expr);`
57
57
*`.sel` – selects expression in editor
58
+
59
+
60
+
## Как добавить сниппеты для постфиксного автокомплита самому?
61
+
Сниппеты для постфиксного автокомплита представляют из себя улучшенный вид стандартных сниппетов и по умолчанию распологаются в `FlashDevelop\Snippets\Language\postfixgenerators`, также в настройках плагина можно подключить пользовательские директории.
62
+
63
+
### Синтаксис
64
+
*`$(PCCMember)` - любая единица кода
65
+
*`$(PCCBoolean)` - логическое
66
+
*`$(PCCNullable)` - единица кода, которая может принимать значение null
67
+
*`$(PCCCollection)` - Коллекция элементов, расположенных в памяти непосредственно друг за другом
Маркеры можно использовать вместе используя разделитель `|`, например сниппет `if($(PCCBoolean|PCCNullable)$(EntryPoint))` будет работать как для логических так и для любых единиц кода, которые могут принимать значени null.
73
+
Кроме этого сниппеты поддерживают условия, для которых использутся разделитель #pcc:Тип, например сниппет:
74
+
```
75
+
#pcc:PCCCollection
76
+
for (var $(ItmUniqueVar):int = 0; $(ItmUniqueVar) < $(PCCCollection).length; $(ItmUniqueVar)++) $(CSLB){
77
+
$(EntryPoint)
78
+
}
79
+
#pcc:PCCNumber
80
+
for (var $(ItmUniqueVar):int = 0; $(ItmUniqueVar) < $(PCCNumber); $(ItmUniqueVar)++) $(CSLB){
81
+
$(EntryPoint)
82
+
}
83
+
#pcc:flash.display.DisplayObjectContainer
84
+
for (var $(ItmUniqueVar):int = $(flash.display.DisplayObjectContainer).numChildren; $(ItmUniqueVar) >= 0; $(ItmUniqueVar)--) $(CSLB){
85
+
$(EntryPoint)
86
+
}
87
+
```
88
+
развернется для массива в код:
89
+
```
90
+
for (var i:int = 0; i < expr.length; i++) {
91
+
|
92
+
}
93
+
```
94
+
для числовых:
95
+
```
96
+
for (var i:int = 0; i < expr; i++) {
97
+
|
98
+
}
99
+
```
100
+
для `flash.display.Sprite`:
101
+
```
102
+
for (var i:int = expr.numChildren; i < expr; i++) {
0 commit comments