~ubuntu-branches/ubuntu/trusty/kde-l10n-uk/trusty-proposed

« back to all changes in this revision

Viewing changes to docs/kde-baseapps/kate/advanced.docbook

  • Committer: Package Import Robot
  • Author(s): Jonathan Riddell
  • Date: 2013-04-04 14:14:50 UTC
  • mfrom: (1.12.27)
  • Revision ID: package-import@ubuntu.com-20130404141450-5s8lp7y4ms2y2ls6
Tags: 4:4.10.2-0ubuntu1
New upstream release

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<chapter id="advanced-editing-tools">
2
 
<chapterinfo>
3
 
<authorgroup>
4
 
<author
5
 
>&Anders.Lund; &Anders.Lund.mail;</author>
6
 
<author
7
 
>&Dominik.Haumann; &Dominik.Haumann.mail;</author>
8
 
<othercredit role="translator"
9
 
><firstname
10
 
>Юрій</firstname
11
 
><surname
12
 
>Чорноіван</surname
13
 
><affiliation
14
 
><address
15
 
><email
16
 
>yurchor@ukr.net</email
17
 
></address
18
 
></affiliation
19
 
><contrib
20
 
>Переклад українською</contrib
21
 
></othercredit
22
 
23
 
</authorgroup>
24
 
</chapterinfo>
25
 
<title
26
 
>Додаткові інструменти редагування</title>
27
 
 
28
 
<sect1 id="advanced-editing-tools-comment">
29
 
 
30
 
<title
31
 
>Додавання/Вилучення позначок коментаря</title>
32
 
 
33
 
<para
34
 
>За допомогою пунктів «Закоментувати» і «Розкоментувати» меню <guimenu
35
 
>Інструменти</guimenu
36
 
> ви зможете додавати або вилучати позначки коментарів до позначеного фрагмента або поточного рядка (у разі, якщо нічого не позначено), якщо коментарі підтримуються форматом файла, який ви редагуєте.</para>
37
 
 
38
 
<para
39
 
>Правила коментування визначаються у файлі визначень синтаксису, отже, якщо не використано ніяких правил підсвічування синтаксису, коментування/вилучення коментарів буде неможливим. </para>
40
 
 
41
 
<para
42
 
>У деяких форматах файлів можливе коментування лише окремих рядків, у деяких форматах передбачено коментування одразу декількох рядків парою позначок коментаря, а у деяких форматах можливі обидва варіанти. Якщо коментування парою позначок не передбачено форматом файла, коментування останнього рядка за неповного його позначення у багаторядковому фрагменті тексту буде неможливим.</para>
43
 
 
44
 
<para
45
 
>Якщо форматом файла передбачено позначки для коментування окремого рядка, використанню цих позначок слід надавати перевагу, оскільки за такого варіанта ви уникнете проблем з вкладеними коментарями.</para>
46
 
 
47
 
<para
48
 
>Якщо ви вилучаєте позначки коментарів, вам не слід позначати фрагментів тексту, які не було закоментовано. Під час вилучення коментування парою позначок з позначеного фрагмента тексту всі пробільні рядки поза позначками коментарів у позначеному фрагменті буде проігноровано.</para>
49
 
 
50
 
<para
51
 
><indexterm
52
 
><primary
53
 
>закоментувати</primary
54
 
></indexterm
55
 
> Щоб додати позначки коментарів, скористайтеся пунктом меню <menuchoice
56
 
><guimenu
57
 
>Інструменти</guimenu
58
 
> <guimenuitem
59
 
>Закоментувати</guimenuitem
60
 
></menuchoice
61
 
> або відповідною комбінацією клавіш, типовою комбінацією є <keycombo action="simul"
62
 
>&Ctrl;<keycap
63
 
>D</keycap
64
 
></keycombo
65
 
>.</para>
66
 
 
67
 
<para
68
 
><indexterm
69
 
><primary
70
 
>розкоментувати</primary
71
 
></indexterm
72
 
> Щоб вилучити позначки коментарів, скористайтеся пунктом меню <menuchoice
73
 
><guimenu
74
 
>Інструменти</guimenu
75
 
> <guimenuitem
76
 
>Розкоментувати</guimenuitem
77
 
></menuchoice
78
 
> або відповідною комбінацією клавіш, типовою комбінацією є <keycombo action="simul"
79
 
>&Ctrl;&Shift;<keycap
80
 
>D</keycap
81
 
></keycombo
82
 
>.</para>
83
 
 
84
 
</sect1>
85
 
 
86
 
<sect1 id="advanced-editing-tools-commandline">
87
 
<title
88
 
>Командний рядок компонента редактора</title>
89
 
 
90
 
<para
91
 
>У компонент редактора &kappname; вбудовано інструмент для роботи з командним рядком, за допомогою якого ви зможете виконувати різноманітні дії за мінімального графічного інтерфейсу. Командний рядок — це текстова панель у нижній частині вікна редактора, щоб увімкнути показ цієї панелі скористайтеся пунктом меню <menuchoice
92
 
><guimenu
93
 
>Перегляд</guimenu
94
 
> <guimenuitem
95
 
>Перемкнутися до командного рядка</guimenuitem
96
 
></menuchoice
97
 
> або скористайтеся клавіатурним скороченням (типовим клавіатурним скороченням є <keycombo action="simul"
98
 
><keycap
99
 
>F7</keycap
100
 
></keycombo
101
 
>). У редакторі передбачено набір команд, документацію з яких наведено нижче, та додаткові команди, за допомогою яких можна керувати додатками до програми.</para>
102
 
 
103
 
<para
104
 
>Щоб виконати команду, введіть цю команду до командного рядка і натисніть клавішу &Enter;. За командним рядком ви зможете визначити, чи було виконано команду, у ньому ж можна переглянути повідомлення, яке могло бути виведено у відповідь на команду. Якщо ви вводили команду за після натискання клавіші <keycap
105
 
>F7</keycap
106
 
>, за декілька секунд панель командного рядка буде приховано. Щоб витерти виведене командою повідомлення і ввести нову команду, натисніть клавішу <keycap
107
 
>F7</keycap
108
 
> ще раз.</para>
109
 
 
110
 
<para
111
 
>У командний рядок вбудовано довідкову систему. Щоб розпочати роботу з довідкою, введіть команду <command
112
 
>help</command
113
 
>. Щоб переглянути список можливих команд, введіть команду <command
114
 
>help list</command
115
 
>. Щоб переглянути довідку з окремої команди, виконайте команду <command
116
 
>help <replaceable
117
 
>назва_команди</replaceable
118
 
></command
119
 
>.</para>
120
 
 
121
 
<para
122
 
>Під час роботи з командним рядком ви можете скористатися вбудованим журналом команд, таким чином ви можете зменшити час доступу до команд, які вже раніше було введено. Для навігації журналом команд скористайтеся клавішами <keycap
123
 
>Стрілка вгору</keycap
124
 
> і <keycap
125
 
>Стрілка вниз</keycap
126
 
>. Під час показу команд з журналу буде позначено параметри команди, — це спростить вам перезапис параметрів команди.</para>
127
 
 
128
 
<sect2 id="advanced-editing-tools-commandline-commands">
129
 
<title
130
 
>Стандартні команди командного рядка</title>
131
 
 
132
 
<variablelist>
133
 
<title
134
 
>Типи аргументів</title>
135
 
 
136
 
<varlistentry>
137
 
<term
138
 
>BOOLEAN</term>
139
 
<listitem
140
 
><para
141
 
>Цей тип використовується для команд, які вмикають або вимикаю певні налаштування. Можливими значеннями таких параметрів є <userinput
142
 
>on</userinput
143
 
>, <userinput
144
 
>off</userinput
145
 
>, <userinput
146
 
>true</userinput
147
 
>, <userinput
148
 
>false</userinput
149
 
>, <userinput
150
 
>1</userinput
151
 
> і <userinput
152
 
>0</userinput
153
 
>.</para
154
 
></listitem>
155
 
</varlistentry>
156
 
 
157
 
<varlistentry>
158
 
<term
159
 
>INTEGER</term>
160
 
<listitem
161
 
><para
162
 
>Ціле число.</para
163
 
></listitem>
164
 
</varlistentry>
165
 
 
166
 
<varlistentry>
167
 
<term
168
 
>STRING</term>
169
 
<listitem
170
 
><para
171
 
>Рядок, обмежений одинарними лапками (') або подвійними лапками ("), якщо у ньому містяться пробіли.</para
172
 
></listitem>
173
 
</varlistentry>
174
 
 
175
 
</variablelist>
176
 
 
177
 
 
178
 
 
179
 
<sect3 id="advanced-editing-tools-commandline-commands-configure">
180
 
<title
181
 
>Команди налаштування редактора</title>
182
 
 
183
 
<para
184
 
>Ці команди стосуються компонента редактора, за їх допомогою можна налаштовувати лише параметри показу поточного документа. Цими командами зручно користатися, якщо вам потрібно використати параметри, наприклад параметри відступів, відмінні від типових параметрів. </para>
185
 
 
186
 
<variablelist>
187
 
 
188
 
<varlistentry>
189
 
<term
190
 
><cmdsynopsis
191
 
><command
192
 
>set-tab-width</command
193
 
><arg choice="req"
194
 
>INTEGER ширина</arg
195
 
></cmdsynopsis
196
 
></term>
197
 
<listitem
198
 
><para
199
 
>Встановлює ширину табуляції у значення <userinput
200
 
>ширина</userinput
201
 
>.</para
202
 
></listitem>
203
 
</varlistentry>
204
 
 
205
 
<varlistentry>
206
 
<term
207
 
><cmdsynopsis
208
 
><command
209
 
>set-indent-width</command
210
 
><arg choice="req"
211
 
>INTEGER ширина</arg
212
 
></cmdsynopsis
213
 
></term>
214
 
<listitem
215
 
><para
216
 
>Встановлює відступ у значення кількості пробілів, визначене параметром <userinput
217
 
>ширина</userinput
218
 
>. Використовується, лише якщо увімкнено відступи з пробілів.</para
219
 
></listitem>
220
 
</varlistentry>
221
 
 
222
 
<varlistentry>
223
 
<term
224
 
><cmdsynopsis
225
 
><command
226
 
>set-word-wrap-column</command
227
 
><arg choice="req"
228
 
>INTEGER довжина</arg
229
 
></cmdsynopsis
230
 
></term>
231
 
<listitem
232
 
><para
233
 
>Встановлює для параметра максимальної довжини рядка для примусового перенесення значення <userinput
234
 
>довжина</userinput
235
 
>. Цей параметр використовується, якщо увімкнено автоматичне розбиття тексту на рядки.</para
236
 
></listitem>
237
 
</varlistentry>
238
 
 
239
 
<varlistentry>
240
 
<term
241
 
><cmdsynopsis
242
 
><command
243
 
>set-icon-border</command
244
 
><arg choice="req"
245
 
>BOOLEAN вмикання</arg
246
 
> </cmdsynopsis
247
 
></term>
248
 
<listitem
249
 
><para
250
 
>Встановлює видимість бічної смужки піктограм.</para
251
 
></listitem>
252
 
</varlistentry>
253
 
 
254
 
<varlistentry>
255
 
<term
256
 
><cmdsynopsis
257
 
><command
258
 
>set-folding-markers</command
259
 
><arg choice="req"
260
 
>BOOLEAN вмикання</arg
261
 
></cmdsynopsis
262
 
></term>
263
 
<listitem
264
 
><para
265
 
>Встановлює значення видимості позначок панелі згортання.</para
266
 
></listitem>
267
 
</varlistentry>
268
 
 
269
 
<varlistentry>
270
 
<term
271
 
><cmdsynopsis
272
 
><command
273
 
>set-line-numbers</command
274
 
><arg choice="req"
275
 
>BOOLEAN вмикання</arg
276
 
></cmdsynopsis
277
 
></term>
278
 
<listitem
279
 
><para
280
 
>Встановлює значення видимості панелі номерів рядків.</para
281
 
></listitem>
282
 
</varlistentry>
283
 
 
284
 
<varlistentry>
285
 
<term
286
 
><cmdsynopsis
287
 
><command
288
 
>set-replace-tabs</command
289
 
><arg choice="req"
290
 
>BOOLEAN вмикання</arg
291
 
></cmdsynopsis
292
 
></term>
293
 
<listitem
294
 
><para
295
 
>Якщо має значення «true», введені вами знаки табуляції буде замінено пробілами. </para
296
 
></listitem>
297
 
</varlistentry>
298
 
 
299
 
<varlistentry>
300
 
<term
301
 
><cmdsynopsis
302
 
><command
303
 
>set-remove-trailing-space</command
304
 
><arg choice="req"
305
 
>BOOLEAN вмикання</arg
306
 
></cmdsynopsis
307
 
></term>
308
 
<listitem
309
 
><para
310
 
>Якщо цей параметр буде увімкнено, після переведення курсора на інших рядок пробіли наприкінці поточного рядка вилучатимуться.</para
311
 
></listitem>
312
 
</varlistentry>
313
 
 
314
 
<varlistentry>
315
 
<term
316
 
><cmdsynopsis
317
 
><command
318
 
>set-show-tabs</command
319
 
><arg choice="req"
320
 
>BOOLEAN вмикання</arg
321
 
></cmdsynopsis
322
 
></term>
323
 
<listitem
324
 
><para
325
 
>Якщо буде увімкнено цей параметр, символи табуляції і пробіли наприкінці рядка буде показано у вигляді маленьких крапок.</para
326
 
></listitem>
327
 
</varlistentry>
328
 
 
329
 
<varlistentry>
330
 
<term
331
 
><cmdsynopsis
332
 
><command
333
 
>set-show-indent</command
334
 
><arg choice="req"
335
 
>BOOLEAN вмикання</arg
336
 
></cmdsynopsis
337
 
></term>
338
 
<listitem
339
 
><para
340
 
>Якщо буде увімкнено цей параметр, відступи буде показано вертикальною крапчастою лінією.</para
341
 
></listitem>
342
 
</varlistentry>
343
 
 
344
 
<varlistentry>
345
 
<term
346
 
><cmdsynopsis
347
 
><command
348
 
>set-indent-spaces</command
349
 
><arg choice="req"
350
 
>BOOLEAN вмикання</arg
351
 
></cmdsynopsis
352
 
></term>
353
 
<listitem
354
 
><para
355
 
>Якщо буде увімкнено цей параметр, редактор робитиме відступ на <option
356
 
>indent-width</option
357
 
> пробілів, замість символу табуляції, під час переходу на наступний рівень відступу.</para
358
 
></listitem>
359
 
</varlistentry>
360
 
 
361
 
<varlistentry>
362
 
<term
363
 
><cmdsynopsis
364
 
><command
365
 
>set-mixed-indent</command
366
 
><arg choice="req"
367
 
>BOOLEAN вмикання</arg
368
 
></cmdsynopsis
369
 
></term>
370
 
<listitem
371
 
><para
372
 
>Якщо буде увімкнено цей параметр, &kappname; використовуватиме суміш з символів табуляції і пробілів для додавання відступів. Ширина кожного з рівнів відступу визначатиметься значенням параметра <option
373
 
>indent-width</option
374
 
>, загальний же відступ буде оптимізовано так, щоб у ньому використовувалася максимальна кількість символів табуляції.</para>
375
 
<para
376
 
>Після виконання цієї команди буде увімкнено створення відступів пробілами, якщо ширину відступу не було вказано, буде встановлено значення ширини відступу у половину значення параметра документа <option
377
 
>tab-width</option
378
 
> на час виконання команди.</para
379
 
></listitem>
380
 
</varlistentry>
381
 
 
382
 
<varlistentry>
383
 
<term
384
 
><cmdsynopsis
385
 
><command
386
 
>set-word-wrap</command
387
 
><arg choice="req"
388
 
>BOOLEAN вмикання</arg
389
 
></cmdsynopsis
390
 
></term>
391
 
<listitem
392
 
><para
393
 
>Встановлює значення для динамічного перенесення слів у <userinput
394
 
>вмикання</userinput
395
 
> (true або false)</para
396
 
></listitem>
397
 
</varlistentry>
398
 
 
399
 
<varlistentry>
400
 
<term
401
 
><cmdsynopsis
402
 
><command
403
 
>set-replace-tabs-save</command
404
 
><arg choice="req"
405
 
>BOOLEAN вмикання</arg
406
 
></cmdsynopsis
407
 
></term>
408
 
<listitem
409
 
><para
410
 
>Якщо увімкнути цей параметр, під час збереження документа символи табуляції буде замінено на пробіли.</para
411
 
></listitem>
412
 
</varlistentry>
413
 
 
414
 
<varlistentry>
415
 
<term
416
 
><cmdsynopsis
417
 
><command
418
 
>set-remove-trailing-space-save</command
419
 
><arg choice="req"
420
 
>BOOLEAN вмикання</arg
421
 
></cmdsynopsis
422
 
></term>
423
 
<listitem
424
 
><para
425
 
>Якщо увімкнути цей параметр, під час збереження документа пробіли наприкінці рядків документа будуть вилучатися.</para
426
 
></listitem>
427
 
</varlistentry>
428
 
 
429
 
<varlistentry>
430
 
<term
431
 
><cmdsynopsis
432
 
><command
433
 
>set-indent-mode</command
434
 
><arg choice="req"
435
 
>STRING назва</arg
436
 
></cmdsynopsis
437
 
></term>
438
 
<listitem
439
 
><para
440
 
>Встановлює режим автоматичного встановлення відступів у значення <userinput
441
 
>назва</userinput
442
 
>. Якщо програмі не вдасться розпізнати параметр <userinput
443
 
>назва</userinput
444
 
>, буде встановлено режим 'none'. Коректними значеннями режиму є «none», «normal», «cstyle», «haskell», «lilypond», «lisp», «python», «ruby» і «xml».</para
445
 
></listitem>
446
 
</varlistentry>
447
 
 
448
 
<varlistentry>
449
 
<term
450
 
><cmdsynopsis
451
 
><command
452
 
>set-auto-ident</command
453
 
><arg choice="req"
454
 
>BOOLEAN скрипт</arg
455
 
></cmdsynopsis
456
 
></term>
457
 
<listitem
458
 
><para
459
 
>Увімкнути або вимкнути автоматичне встановлення відступів.</para
460
 
></listitem>
461
 
</varlistentry>
462
 
 
463
 
<varlistentry>
464
 
<term
465
 
><cmdsynopsis
466
 
><command
467
 
>set-highlight</command
468
 
><arg choice="req"
469
 
>STRING підсвічування</arg
470
 
></cmdsynopsis
471
 
></term>
472
 
<listitem
473
 
><para
474
 
>Визначає систему підсвічування синтаксису для поточного документа. Параметром команди має бути коректна назва підсвічування у тому вигляді, у якому ця система фігурує у меню <menuchoice
475
 
><guimenu
476
 
>Інструменти</guimenu
477
 
> <guisubmenu
478
 
>Підсвічування</guisubmenu
479
 
></menuchoice
480
 
>. У цій команді передбачено автоматичне доповнення параметра за списком.</para
481
 
></listitem>
482
 
</varlistentry>
483
 
 
484
 
<varlistentry>
485
 
<term
486
 
><cmdsynopsis
487
 
><command
488
 
>reload-scripts</command
489
 
></cmdsynopsis
490
 
></term>
491
 
<listitem
492
 
><para
493
 
>Перезавантажити всі <link linkend="advanced-editing-tools-scripting"
494
 
>скрипти JavaScript</link
495
 
>, використані Kate, зокрема скрипти встановлення відступів та скрипти командного рядка.</para
496
 
></listitem>
497
 
</varlistentry>
498
 
 
499
 
<varlistentry>
500
 
<term
501
 
><cmdsynopsis
502
 
><command
503
 
>set-mode</command
504
 
><arg choice="req"
505
 
>STRING режим</arg
506
 
></cmdsynopsis
507
 
></term>
508
 
<listitem
509
 
><para
510
 
>Вибрати схему типів файлів для поточного документа. </para
511
 
></listitem>
512
 
</varlistentry>
513
 
 
514
 
<varlistentry>
515
 
<term
516
 
><cmdsynopsis
517
 
><command
518
 
>nn[oremap]</command
519
 
><arg choice="req"
520
 
>STRING початкова</arg
521
 
> <arg choice="req"
522
 
>STRING відображена</arg
523
 
></cmdsynopsis
524
 
></term>
525
 
<listitem
526
 
><para
527
 
>Відобразити послідовність символів <userinput
528
 
>початкова</userinput
529
 
> на послідовність <userinput
530
 
>відображена</userinput
531
 
>.</para
532
 
></listitem>
533
 
</varlistentry>
534
 
 
535
 
</variablelist>
536
 
 
537
 
</sect3>
538
 
 
539
 
<sect3 id="advanced-editing-tools-commandline-commands-edit">
540
 
<title
541
 
>Команди редагування</title>
542
 
 
543
 
<para
544
 
>Наступні команди змінюють вміст поточного документа.</para>
545
 
 
546
 
<variablelist>
547
 
<varlistentry>
548
 
<term
549
 
><cmdsynopsis
550
 
><command
551
 
>indent</command
552
 
></cmdsynopsis
553
 
></term>
554
 
<listitem
555
 
><para
556
 
>Додає відступ у позначені рядки або поточний рядок.</para
557
 
></listitem>
558
 
</varlistentry>
559
 
 
560
 
<varlistentry>
561
 
<term
562
 
><cmdsynopsis
563
 
><command
564
 
>unindent</command
565
 
></cmdsynopsis
566
 
></term>
567
 
<listitem
568
 
><para
569
 
>Вилучає початковий відступ з позначених рядків або поточного рядка.</para
570
 
></listitem>
571
 
</varlistentry>
572
 
 
573
 
<varlistentry>
574
 
<term
575
 
><cmdsynopsis
576
 
><command
577
 
>cleanindent</command
578
 
></cmdsynopsis
579
 
></term>
580
 
<listitem
581
 
><para
582
 
>Вилучає відступи для позначених рядків або поточного рядка відповідно до параметрів відступів поточного документа. </para
583
 
></listitem>
584
 
</varlistentry>
585
 
 
586
 
<varlistentry>
587
 
<term
588
 
><cmdsynopsis
589
 
><command
590
 
>comment</command
591
 
></cmdsynopsis
592
 
></term>
593
 
<listitem
594
 
><para
595
 
>Додає позначки коментаря, які роблять позначений фрагмент тексту, позначені рядки або поточний рядок коментарями, відповідно до формату тексту, який визначено у параметрах підсвічування синтаксису поточного документа.</para
596
 
></listitem>
597
 
</varlistentry>
598
 
 
599
 
<varlistentry>
600
 
<term
601
 
><cmdsynopsis
602
 
><command
603
 
>uncomment</command
604
 
></cmdsynopsis
605
 
></term>
606
 
<listitem
607
 
><para
608
 
>Вилучає позначки коментаря, які роблять позначений фрагмент тексту, позначені рядки або поточний рядок коментарями, відповідно до формату тексту, який визначено у параметрах підсвічування синтаксису поточного документа.</para
609
 
></listitem>
610
 
</varlistentry>
611
 
 
612
 
<varlistentry>
613
 
<term
614
 
><cmdsynopsis
615
 
><command
616
 
>kill-line</command
617
 
></cmdsynopsis
618
 
></term>
619
 
<listitem
620
 
><para
621
 
>Вилучає поточний рядок.</para
622
 
></listitem>
623
 
</varlistentry>
624
 
 
625
 
<varlistentry>
626
 
<term
627
 
><cmdsynopsis
628
 
><command
629
 
>replace</command
630
 
><arg choice="req"
631
 
> STRING шаблон</arg
632
 
> <arg choice="req"
633
 
>STRING замінник</arg
634
 
></cmdsynopsis
635
 
></term>
636
 
<listitem
637
 
><para
638
 
>Замінює текст, що відповідає <userinput
639
 
>шаблону</userinput
640
 
>, на текст, вказаний у <userinput
641
 
>заміннику</userinput
642
 
>. Якщо вам потрібно включити пробіл у <userinput
643
 
>шаблон</userinput
644
 
>, вам слід взяти як <userinput
645
 
>шаблон</userinput
646
 
>, так і <userinput
647
 
>замінник</userinput
648
 
> у одинарні або подвійні лапки. Якщо у команді не буде лапок, перше зі слів-параметрів вважатиметься <userinput
649
 
>шаблоном</userinput
650
 
>, а решта — <userinput
651
 
>замінником</userinput
652
 
>. Якщо параметр <userinput
653
 
>замінник</userinput
654
 
> буде порожнім, всі рядки, які відповідають <userinput
655
 
>шаблону</userinput
656
 
> буде вилучено з тексту.</para>
657
 
<para
658
 
>Ви можете вказати прапорці налаштування пошуку за допомогою додавання двокрапки, за якою слід вказати одну або декілька літер, кожна з яких відповідатиме за налаштування. Команда викладатиме так: <userinput
659
 
>replace:параметри шаблон замінник</userinput
660
 
>. Можливі параметри: <variablelist>
661
 
 
662
 
<varlistentry>
663
 
<term
664
 
><userinput
665
 
>b</userinput
666
 
></term>
667
 
<listitem
668
 
><para
669
 
>Пошук назад.</para
670
 
></listitem>
671
 
</varlistentry>
672
 
 
673
 
<varlistentry>
674
 
<term
675
 
><userinput
676
 
>c</userinput
677
 
></term>
678
 
<listitem
679
 
><para
680
 
>Шукати від позиції курсора.</para
681
 
></listitem>
682
 
</varlistentry>
683
 
 
684
 
<varlistentry>
685
 
<term
686
 
><userinput
687
 
>e</userinput
688
 
></term>
689
 
<listitem
690
 
><para
691
 
>Шукати лише у позначеному фрагменті.</para
692
 
></listitem>
693
 
</varlistentry>
694
 
 
695
 
<varlistentry>
696
 
<term
697
 
><userinput
698
 
>r</userinput
699
 
></term>
700
 
<listitem
701
 
><para
702
 
>Пошук за формальним виразом. Якщо встановлено цей прапорець, ви зможете використовувати параметр <userinput
703
 
>\N</userinput
704
 
>, де N — номер підрядка у рядку «замінник».</para
705
 
></listitem>
706
 
</varlistentry>
707
 
 
708
 
<varlistentry>
709
 
<term
710
 
><userinput
711
 
>s</userinput
712
 
></term>
713
 
<listitem
714
 
><para
715
 
>Виконати пошук з врахуванням регістру.</para
716
 
></listitem>
717
 
</varlistentry>
718
 
 
719
 
<varlistentry>
720
 
<term
721
 
><userinput
722
 
>p</userinput
723
 
></term>
724
 
<listitem
725
 
><para
726
 
>Запитувати про дозвіл на заміну наступного елемента.</para
727
 
></listitem>
728
 
</varlistentry>
729
 
 
730
 
<varlistentry>
731
 
<term
732
 
><userinput
733
 
>w</userinput
734
 
></term>
735
 
<listitem
736
 
><para
737
 
>Шукати лише цілі слова.</para
738
 
></listitem>
739
 
</varlistentry>
740
 
 
741
 
</variablelist>
742
 
 
743
 
</para>
744
 
</listitem>
745
 
</varlistentry>
746
 
 
747
 
<varlistentry>
748
 
<term
749
 
><cmdsynopsis
750
 
><command
751
 
>date</command
752
 
><arg choice="req"
753
 
>STRING формат</arg
754
 
></cmdsynopsis
755
 
></term>
756
 
<listitem
757
 
><para
758
 
>Вставляє дату/час у форматі, визначеному параметром <userinput
759
 
>формат</userinput
760
 
>, або у форматі <quote
761
 
>yyyy-MM-dd hh:mm:ss</quote
762
 
>, якщо рядок формату не буде вказано. Під час обробки рядка <userinput
763
 
>формат</userinput
764
 
> буде використано такі перетворення: <informaltable
765
 
> <tgroup cols="2"
766
 
> <tbody>
767
 
<row
768
 
><entry
769
 
><literal
770
 
>d</literal
771
 
></entry
772
 
><entry
773
 
>Номер дня без початкового нуля (1-31).</entry
774
 
></row>
775
 
<row
776
 
><entry
777
 
><literal
778
 
>dd</literal
779
 
></entry
780
 
><entry
781
 
>Номер дня з початковим нулем (01-31).</entry
782
 
></row>
783
 
<row
784
 
><entry
785
 
><literal
786
 
>ddd</literal
787
 
></entry
788
 
><entry
789
 
>Скорочена локалізована назва дня тижня (наприклад «пн» або «нд»).</entry
790
 
></row>
791
 
<row
792
 
><entry
793
 
><literal
794
 
>dddd</literal
795
 
></entry
796
 
><entry
797
 
>Довга локалізована назва дня (наприклад «понеділок» або «неділя»).</entry
798
 
></row>
799
 
<row
800
 
><entry
801
 
><literal
802
 
>M</literal
803
 
></entry
804
 
><entry
805
 
>Номер місяця без початкового нуля (1-12).</entry
806
 
></row>
807
 
<row
808
 
><entry
809
 
><literal
810
 
>MM</literal
811
 
></entry
812
 
><entry
813
 
>Номер місяця з початковим нулем (01-12).</entry
814
 
></row>
815
 
<row
816
 
><entry
817
 
><literal
818
 
>MMMM</literal
819
 
></entry
820
 
><entry
821
 
>Повна локалізована назва місяця (наприклад, «січень» або «грудень»).</entry
822
 
></row>
823
 
<row
824
 
><entry
825
 
><literal
826
 
>MMM</literal
827
 
></entry
828
 
><entry
829
 
>Скорочена локалізована назва місяця (наприклад «січ» або «гру»).</entry
830
 
></row>
831
 
<row
832
 
><entry
833
 
><literal
834
 
>yy</literal
835
 
></entry
836
 
><entry
837
 
>Рік як двоцифрове значення (00-99).</entry
838
 
></row>
839
 
<row
840
 
><entry
841
 
><literal
842
 
>yyyy</literal
843
 
></entry
844
 
><entry
845
 
>Рік як чотирицифрове значення (1752-8000).</entry
846
 
></row>
847
 
<row
848
 
><entry
849
 
><literal
850
 
>h</literal
851
 
></entry
852
 
><entry
853
 
>Години без початкового нуля (0..23 або 1..12 з показом до опівдня/після опівдня).</entry
854
 
></row>
855
 
<row
856
 
><entry
857
 
><literal
858
 
>hh</literal
859
 
></entry
860
 
><entry
861
 
>Години з початковим нулем (00..23 або 01..12 з показом до опівдня/після опівдня).</entry
862
 
></row>
863
 
<row
864
 
><entry
865
 
><literal
866
 
>m</literal
867
 
></entry
868
 
><entry
869
 
>Хвилини без початкового нуля (0..59).</entry
870
 
></row>
871
 
<row
872
 
><entry
873
 
><literal
874
 
>mm</literal
875
 
></entry
876
 
><entry
877
 
>Хвилини з початковим нулем (00..59).</entry
878
 
></row>
879
 
<row
880
 
><entry
881
 
><literal
882
 
>s</literal
883
 
></entry
884
 
><entry
885
 
>Секунди без початкового нуля (0..59).</entry
886
 
></row>
887
 
<row
888
 
><entry
889
 
><literal
890
 
>ss</literal
891
 
></entry
892
 
><entry
893
 
>Секунди з початковим нулем (00..59).</entry
894
 
></row>
895
 
<row
896
 
><entry
897
 
><literal
898
 
>z</literal
899
 
></entry
900
 
><entry
901
 
>Мілісекунди без початкових нулів (0..999).</entry
902
 
></row>
903
 
<row
904
 
><entry
905
 
><literal
906
 
>zzz</literal
907
 
></entry
908
 
><entry
909
 
>Мілісекунди з початковими нулями (000..999).</entry
910
 
></row>
911
 
<row
912
 
><entry
913
 
><literal
914
 
>AP</literal
915
 
></entry
916
 
><entry
917
 
>Використовувати показ у форматі AM/PM (до опівдня/після опівдня). AP буде замінено на рядок «AM» або рядок «PM».</entry
918
 
></row>
919
 
<row
920
 
><entry
921
 
><literal
922
 
>ap</literal
923
 
></entry
924
 
><entry
925
 
>Використовувати показ у форматі am/pm (до опівдня/після опівдня). ap буде замінено на рядок «am» або рядок «pm».</entry
926
 
></row>
927
 
</tbody>
928
 
</tgroup>
929
 
</informaltable>
930
 
 
931
 
</para
932
 
></listitem>
933
 
</varlistentry>
934
 
 
935
 
<varlistentry>
936
 
<term
937
 
><cmdsynopsis
938
 
><command
939
 
>char</command
940
 
><arg choice="req"
941
 
>STRING ідентифікатор</arg
942
 
></cmdsynopsis
943
 
></term>
944
 
<listitem>
945
 
<para
946
 
>За допомогою цієї команди можна вводити символи за їх числовими ідентифікаторами у десятковій, вісімковій або шістнадцятковій формі. Щоб скористатися нею, відкрийте діалогове вікно редагування команди і введіть команду <userinput
947
 
>char: [число]</userinput
948
 
> у поле для введення, а потім натисніть кнопку <guibutton
949
 
>Гаразд</guibutton
950
 
>.</para>
951
 
 
952
 
<example>
953
 
<title
954
 
>Приклади команди <command
955
 
>char</command
956
 
></title>
957
 
 
958
 
<para
959
 
>Ввід: <userinput
960
 
>char:234</userinput
961
 
></para>
962
 
<para
963
 
>Вивід: <computeroutput
964
 
>&#234;</computeroutput
965
 
></para>
966
 
<para
967
 
>Ввід: <userinput
968
 
>char:0x1234</userinput
969
 
></para>
970
 
<para
971
 
>Вивід: <computeroutput
972
 
>&#x1234;</computeroutput
973
 
></para>
974
 
</example>
975
 
 
976
 
</listitem>
977
 
</varlistentry>
978
 
 
979
 
<varlistentry>
980
 
<term>
981
 
<indexterm
982
 
><primary
983
 
>заміна, sed-стиль</primary>
984
 
<secondary
985
 
>пошук, sed-стиль</secondary
986
 
></indexterm>
987
 
<command
988
 
>s///[ig]</command
989
 
> <command
990
 
>%s///[ig]</command
991
 
></term>
992
 
 
993
 
<listitem>
994
 
<para
995
 
>За допомогою цієї команди можна виконати дію з пошуку або заміни у стилі sed у поточному рядку або у всьому файлі (<command
996
 
>%s///</command
997
 
>).</para>
998
 
 
999
 
<para
1000
 
>Якщо коротко, у тексті буде виконано пошук за <emphasis
1001
 
>шаблоном пошуку</emphasis
1002
 
>, формальним виразом між першою і другою навскісними рисками, якщо буде знайдено відповідний фрагмент тексту, його буде замінено на вираз між середньою і останньою навскісними рисками у рядку. За допомогою круглих дужок можна створювати <emphasis
1003
 
>зворотні посилання</emphasis
1004
 
>: команда запам’ятає частину виразу, яка відповідає рядку між дужками і використає рядки, які будуть у пам’яті для шаблону заміни, — посилання на ці рядки можна вказати як <userinput
1005
 
>\1</userinput
1006
 
> для першого набору у дужках, <userinput
1007
 
>\2</userinput
1008
 
> для другого тощо.</para>
1009
 
 
1010
 
<para
1011
 
>Щоб знайти символ <literal
1012
 
>(</literal
1013
 
> або символ <literal
1014
 
>)</literal
1015
 
>, вам слід <emphasis
1016
 
>екранувати</emphasis
1017
 
> ці символи за допомогою зворотної навскісної риски: <userinput
1018
 
>\(\)</userinput
1019
 
></para>
1020
 
 
1021
 
<para
1022
 
>Якщо ви додасте ключ <userinput
1023
 
>i</userinput
1024
 
> в кінець виразу, під час пошуку буде враховано регістр символів. Якщо в кінець виразу додати <userinput
1025
 
>g</userinput
1026
 
>, буде замінено всі рядки, які відповідають шаблону, у іншому випадку буде замінено лише перший з цих рядків.</para>
1027
 
 
1028
 
<example>
1029
 
 
1030
 
<title
1031
 
>Заміна тексту у поточному рядку</title>
1032
 
 
1033
 
<para
1034
 
>Припустімо, компілятор, яким ви збирали вашу програму, повідомив вам про те, що клас <classname
1035
 
>myClass</classname
1036
 
>, який згадується у рядку 3902 коду вашої програми не визначено.</para>
1037
 
 
1038
 
<para
1039
 
>Ви подумаєте: «Оце тобі, то це ж має бути мій клас <classname
1040
 
>MyClass</classname
1041
 
>». Ви переходите до рядка 3902 і, замість спроб знайти потрібне слово у тексті, відкриваєте діалогове вікно редагування команди, вводите у нього <userinput
1042
 
>s/myclass/MyClass/i</userinput
1043
 
>, натискаєте кнопку <guibutton
1044
 
>Гаразд</guibutton
1045
 
>, зберігаєте файл і компілюєте його ще раз, — все, помилки немає.</para>
1046
 
 
1047
 
</example>
1048
 
 
1049
 
<example>
1050
 
<title
1051
 
>Заміна тексту у всьому файлі</title>
1052
 
 
1053
 
<para
1054
 
>Припустімо тепер, що у вас є файл, у якому ви згадуєте <quote
1055
 
>пані Іванченко</quote
1056
 
> декілька разів, і тут вам стає відомо, що ця особа нещодавно вийшла заміж за <quote
1057
 
>пана Петренка</quote
1058
 
>. Ну і, звісно ж, вам потрібно тепер замінити всі рядки з <quote
1059
 
>пані Іванченко</quote
1060
 
> на <quote
1061
 
>пані Петренко</quote
1062
 
>.</para>
1063
 
 
1064
 
<para
1065
 
>Відкрийте вікно командного рядка і введіть туди команду <userinput
1066
 
>%s/пані Іванченко/пані Петренко/</userinput
1067
 
>, а потім натисніть клавішу &Enter;, — решту зробить програма.</para>
1068
 
 
1069
 
</example>
1070
 
 
1071
 
<example>
1072
 
<title
1073
 
>Складніший приклад</title>
1074
 
 
1075
 
<para
1076
 
>У цьому прикладі ми познайомилися з використанням <emphasis
1077
 
>зворотніх посилань</emphasis
1078
 
>, а також <emphasis
1079
 
>класу символів</emphasis
1080
 
> (якщо вам не знайомі ці терміни, будь ласка, зверніться до відповідної документації, посилання на яку ви зможете знайти далі за текстом).</para>
1081
 
 
1082
 
<para
1083
 
>Припустімо, що у вас є такий рядок: <programlisting
1084
 
>void MyClass::DoStringOps( String      &amp;foo, String &amp;bar, String *p, int  &amp;a, int &amp;b )</programlisting>
1085
 
</para>
1086
 
<para
1087
 
>Тепер вам здається, що цей код виглядає кострубато: ви вирішили скористатися ключовим словом <constant
1088
 
>const</constant
1089
 
> для всіх параметрів <quote
1090
 
>address of</quote
1091
 
>, у яких назві аргументу передує оператор &amp;. Ви також бажаєте вилучити зайві пробіли так, щоб між будь-якими двома словами був лише один символ пробілу.</para>
1092
 
 
1093
 
<para
1094
 
>Відкрийте діалогове вікно редагування команди і введіть таку команду: <userinput
1095
 
>s/\s+(\w+)\s+(&amp;)/ const \1 \2/g</userinput
1096
 
>. Натисніть кнопку <guibutton
1097
 
>Гаразд</guibutton
1098
 
>. Літера <userinput
1099
 
>g</userinput
1100
 
> наприкінці виразу наказує програмі перебудовувати формальний вираз для кожного зі знайдених елементів, щоб зберегти  <emphasis
1101
 
>зворотні посилання</emphasis
1102
 
>.</para>
1103
 
 
1104
 
<para
1105
 
>Вивід: <computeroutput
1106
 
>void MyClass::DoStringOps( const String &amp;foo, const String &amp;bar String *p, const int &amp;a, const int &amp;b )</computeroutput
1107
 
></para>
1108
 
 
1109
 
<para
1110
 
>Справу зроблено! Що ж сталося? Гаразд, було виконано пошук інтервалу з пробілів (<literal
1111
 
>\s+</literal
1112
 
>), за яким слідує один або декілька символів абетки (<literal
1113
 
>\w+</literal
1114
 
>), за якими слідують ще пробіли (<literal
1115
 
>\s+</literal
1116
 
>), за якими слідує символ амперсанда. У процесі пошуку було збережено ланцюжок символів абетки і амперсанд для подальшого використання під час операції з заміни. Після цього було виконано заміну знайденого відповідника нашого рядка на рядок з пробілом, за яким слідує слово <quote
1117
 
>const</quote
1118
 
>, за яким слідує пробіл, за яким слідує наш ланцюжок символів абетки (<literal
1119
 
>\1</literal
1120
 
>), за яким слідує один пробіл, за яким слідує збережений нами символ амперсанда (<literal
1121
 
>\2</literal
1122
 
>)</para>
1123
 
 
1124
 
<para
1125
 
>Крім того, у деяких випадках ланцюжок символів абетки міг мати значення <quote
1126
 
>String</quote
1127
 
>, у деяких <quote
1128
 
>int</quote
1129
 
>, цього було досягнуто використанням класу <literal
1130
 
>\w</literal
1131
 
> і лічильника <literal
1132
 
>+</literal
1133
 
>.</para>
1134
 
 
1135
 
</example>
1136
 
 
1137
 
</listitem>
1138
 
 
1139
 
</varlistentry>
1140
 
 
1141
 
<varlistentry>
1142
 
<term
1143
 
><cmdsynopsis
1144
 
><command
1145
 
>sort</command
1146
 
></cmdsynopsis
1147
 
></term>
1148
 
<listitem
1149
 
><para
1150
 
>Впорядковує позначений фрагмент тексту або весь текст у документі.</para
1151
 
></listitem>
1152
 
</varlistentry>
1153
 
 
1154
 
<varlistentry>
1155
 
<term
1156
 
><cmdsynopsis
1157
 
><command
1158
 
>natsort</command
1159
 
></cmdsynopsis
1160
 
></term>
1161
 
<listitem
1162
 
><para
1163
 
>Впорядковує позначені рядки або увесь документ у природному порядку.</para>
1164
 
 
1165
 
<example>
1166
 
<title
1167
 
><command
1168
 
>sort</command
1169
 
> порівняно з <command
1170
 
>natsort</command
1171
 
></title>
1172
 
<para
1173
 
><userinput
1174
 
>sort(a10, a1, a2)</userinput
1175
 
> виведе <computeroutput
1176
 
>a1, a10, a2</computeroutput
1177
 
></para>
1178
 
<para
1179
 
><command
1180
 
>natsort(a10, a1, a2)</command
1181
 
> виведе <computeroutput
1182
 
>a1, a2, a10</computeroutput
1183
 
></para>
1184
 
</example
1185
 
></listitem>
1186
 
</varlistentry>
1187
 
 
1188
 
<varlistentry>
1189
 
<term
1190
 
><cmdsynopsis
1191
 
><command
1192
 
>moveLinesDown</command
1193
 
></cmdsynopsis
1194
 
></term>
1195
 
<listitem
1196
 
><para
1197
 
>Пересунути позначені рядки нижче.</para
1198
 
></listitem>
1199
 
</varlistentry>
1200
 
 
1201
 
<varlistentry>
1202
 
<term
1203
 
><cmdsynopsis
1204
 
><command
1205
 
>moveLinesUp</command
1206
 
></cmdsynopsis
1207
 
></term>
1208
 
<listitem
1209
 
><para
1210
 
>Пересунути позначені рядки вище.</para
1211
 
></listitem>
1212
 
</varlistentry>
1213
 
 
1214
 
<varlistentry>
1215
 
<term
1216
 
><cmdsynopsis
1217
 
><command
1218
 
>uniq</command
1219
 
></cmdsynopsis
1220
 
></term>
1221
 
<listitem
1222
 
><para
1223
 
>Вилучити рядки-дублікати з позначеного фрагмента тексту або всього документа.</para
1224
 
></listitem>
1225
 
</varlistentry>
1226
 
 
1227
 
<varlistentry>
1228
 
<term
1229
 
><cmdsynopsis
1230
 
><command
1231
 
>rtrim</command
1232
 
></cmdsynopsis
1233
 
></term>
1234
 
<listitem
1235
 
><para
1236
 
>Вилучити кінцевий пробіл з позначеного фрагмента тексту або всього документа.</para
1237
 
></listitem>
1238
 
</varlistentry>
1239
 
 
1240
 
<varlistentry>
1241
 
<term
1242
 
><cmdsynopsis
1243
 
><command
1244
 
>ltrim</command
1245
 
></cmdsynopsis
1246
 
></term>
1247
 
<listitem
1248
 
><para
1249
 
>Вилучити початковий пробіл з позначеного фрагмента тексту або всього документа.</para
1250
 
></listitem>
1251
 
</varlistentry>
1252
 
 
1253
 
<varlistentry>
1254
 
<term
1255
 
><cmdsynopsis
1256
 
><command
1257
 
>join</command
1258
 
><arg choice="opt"
1259
 
>STRING роздільник</arg
1260
 
></cmdsynopsis
1261
 
></term>
1262
 
<listitem
1263
 
><para
1264
 
>Об’єднати позначені рядки або рядки у всьому документі. Додатково можна визначити роздільник, наприклад: <userinput
1265
 
><command
1266
 
>join</command
1267
 
> ', '</userinput
1268
 
> </para
1269
 
></listitem>
1270
 
</varlistentry>
1271
 
 
1272
 
<varlistentry>
1273
 
<term
1274
 
><cmdsynopsis
1275
 
><command
1276
 
>rmblank</command
1277
 
></cmdsynopsis
1278
 
></term>
1279
 
<listitem
1280
 
><para
1281
 
>Вилучити всі пробіли з позначеного фрагмента тексту або всього документа.</para
1282
 
></listitem>
1283
 
</varlistentry>
1284
 
 
1285
 
<varlistentry>
1286
 
<term
1287
 
><cmdsynopsis
1288
 
><command
1289
 
>unwrap</command
1290
 
></cmdsynopsis
1291
 
></term>
1292
 
<listitem
1293
 
><para
1294
 
>Скасувати перенесення рядків у позначеному фрагменті тексту або всьому документі.</para
1295
 
></listitem>
1296
 
</varlistentry>
1297
 
 
1298
 
<varlistentry>
1299
 
<term
1300
 
><cmdsynopsis
1301
 
><command
1302
 
>each</command
1303
 
><arg choice="req"
1304
 
>STRING скрипт</arg
1305
 
></cmdsynopsis
1306
 
></term>
1307
 
<listitem
1308
 
><para
1309
 
>Викликати вказану як аргумент функцію JavaScript для обробки списку (позначених) рядків і замінити їх повернутим значенням виклику.</para>
1310
 
 
1311
 
<example>
1312
 
<title
1313
 
>Об’єднати позначені рядки</title>
1314
 
<para
1315
 
><userinput
1316
 
><command
1317
 
>each</command
1318
 
> 'function(lines){return lines.join(", ")}' </userinput
1319
 
></para>
1320
 
 
1321
 
<para
1322
 
>Або коротше:</para>
1323
 
<para
1324
 
><userinput
1325
 
><command
1326
 
>each</command
1327
 
> 'lines.join(", ")'</userinput
1328
 
></para>
1329
 
</example>
1330
 
 
1331
 
</listitem>
1332
 
</varlistentry>
1333
 
 
1334
 
 
1335
 
 
1336
 
<varlistentry>
1337
 
<term
1338
 
><cmdsynopsis
1339
 
><command
1340
 
>filter</command
1341
 
><arg choice="req"
1342
 
>STRING скрипт</arg
1343
 
></cmdsynopsis
1344
 
></term>
1345
 
<listitem
1346
 
><para
1347
 
>Викликати вказану як аргумент функцію JavaScript для обробки списку (позначених) рядків і вилучити ті з них, для яких буде повернуто false.</para>
1348
 
 
1349
 
<example>
1350
 
<title
1351
 
>Вилучити порожні рядки</title>
1352
 
<para
1353
 
><userinput
1354
 
><command
1355
 
>filter</command
1356
 
> 'function(1){return 1.length 
1357
 
> 0;}' </userinput
1358
 
></para>
1359
 
 
1360
 
<para
1361
 
>Або коротше:</para>
1362
 
<para
1363
 
><userinput
1364
 
><command
1365
 
>filter</command
1366
 
> 'line.length 
1367
 
> 0'</userinput
1368
 
></para>
1369
 
</example>
1370
 
 
1371
 
</listitem>
1372
 
</varlistentry>
1373
 
 
1374
 
<varlistentry>
1375
 
<term
1376
 
><cmdsynopsis
1377
 
><command
1378
 
>map</command
1379
 
><arg choice="req"
1380
 
>STRING скрипт</arg
1381
 
></cmdsynopsis
1382
 
></term>
1383
 
<listitem
1384
 
><para
1385
 
>Викликати вказану як аргумент функцію JavaScript для обробки списку (позначених) рядків і замінити рядок значенням, яке буде повернуто у відповідь на виклик.</para>
1386
 
 
1387
 
<example>
1388
 
<title
1389
 
>Вилучити порожні рядки</title>
1390
 
<para
1391
 
><userinput
1392
 
><command
1393
 
>map</command
1394
 
> 'function(line){return line.replace(/^s+/,"");}' </userinput
1395
 
></para>
1396
 
 
1397
 
<para
1398
 
>Або коротше:</para>
1399
 
<para
1400
 
><userinput
1401
 
><command
1402
 
>map</command
1403
 
> 'line.replace(/^s+/,"")'</userinput
1404
 
></para>
1405
 
</example>
1406
 
 
1407
 
</listitem>
1408
 
</varlistentry>
1409
 
 
1410
 
<varlistentry>
1411
 
<term
1412
 
><cmdsynopsis
1413
 
><command
1414
 
>duplicateLinesUp</command
1415
 
></cmdsynopsis
1416
 
></term>
1417
 
<listitem
1418
 
><para
1419
 
>Здублювати позначені рядки над поточним позначеним фрагментом.</para>
1420
 
</listitem>
1421
 
</varlistentry>
1422
 
 
1423
 
<varlistentry>
1424
 
<term
1425
 
><cmdsynopsis
1426
 
><command
1427
 
>duplicateLinesDown</command
1428
 
></cmdsynopsis
1429
 
></term>
1430
 
<listitem
1431
 
><para
1432
 
>Здублювати позначені рядки під поточним позначеним фрагментом.</para>
1433
 
</listitem>
1434
 
</varlistentry>
1435
 
 
1436
 
</variablelist>
1437
 
 
1438
 
</sect3>
1439
 
 
1440
 
<sect3 id="advanced-editing-tools-commandline-commands-navigation">
1441
 
<title
1442
 
>Команди навігації</title>
1443
 
 
1444
 
<variablelist>
1445
 
 
1446
 
<varlistentry>
1447
 
<term
1448
 
><cmdsynopsis
1449
 
><command
1450
 
>goto</command
1451
 
><arg choice="req"
1452
 
>INT рядок</arg
1453
 
></cmdsynopsis
1454
 
></term>
1455
 
<listitem
1456
 
><para
1457
 
>За допомогою цієї команди можна перейти до вказаного рядка.</para
1458
 
></listitem>
1459
 
</varlistentry>
1460
 
 
1461
 
<varlistentry>
1462
 
<term
1463
 
><cmdsynopsis
1464
 
><command
1465
 
>grep</command
1466
 
> <arg choice="req"
1467
 
>STRING шаблон</arg
1468
 
> </cmdsynopsis
1469
 
></term>
1470
 
<listitem
1471
 
><para
1472
 
>Знайти у документі рядки, що відповідають формальному виразу <userinput
1473
 
>шаблон</userinput
1474
 
>. Щоб дізнатися більше, зверніться до розділу <xref linkend="regular-expressions"/>.</para>
1475
 
</listitem>
1476
 
</varlistentry>
1477
 
 
1478
 
<varlistentry>
1479
 
<term
1480
 
><cmdsynopsis
1481
 
><command
1482
 
>find</command
1483
 
><arg choice="req"
1484
 
>STRING шаблон</arg
1485
 
></cmdsynopsis
1486
 
></term>
1487
 
<listitem
1488
 
><para
1489
 
>За допомогою цієї команди можна перейти до першого відповідника рядка <userinput
1490
 
>шаблон</userinput
1491
 
> у тексті, відповідно до налаштувань. Перейти до наступних відповідників можна за допомогою пункту меню <menuchoice
1492
 
><guimenu
1493
 
>Зміни</guimenu
1494
 
><guimenuitem
1495
 
>Знайти далі</guimenuitem
1496
 
></menuchoice
1497
 
> (типовим клавіатурним скороченням є <keycap
1498
 
>F3</keycap
1499
 
>).</para>
1500
 
<para
1501
 
>Команду пошуку можна налаштувати додаванням двокрапки, за якою можна вказати один або декілька параметрів, у формі <userinput
1502
 
>find:параметри шаблон</userinput
1503
 
>. Серед можливих параметрів:</para>
1504
 
 
1505
 
<variablelist>
1506
 
 
1507
 
<varlistentry>
1508
 
<term
1509
 
><userinput
1510
 
>b</userinput
1511
 
></term>
1512
 
<listitem
1513
 
><para
1514
 
>Пошук назад.</para
1515
 
></listitem>
1516
 
</varlistentry>
1517
 
 
1518
 
<varlistentry>
1519
 
<term
1520
 
><userinput
1521
 
>c</userinput
1522
 
></term>
1523
 
<listitem
1524
 
><para
1525
 
>Шукати від позиції курсора.</para
1526
 
></listitem>
1527
 
</varlistentry>
1528
 
 
1529
 
<varlistentry>
1530
 
<term
1531
 
><userinput
1532
 
>e</userinput
1533
 
></term>
1534
 
<listitem
1535
 
><para
1536
 
>Шукати лише у позначеному фрагменті.</para
1537
 
></listitem>
1538
 
</varlistentry>
1539
 
 
1540
 
<varlistentry>
1541
 
<term
1542
 
><userinput
1543
 
>r</userinput
1544
 
></term>
1545
 
<listitem
1546
 
><para
1547
 
>Пошук за формальним виразом. Якщо встановлено цей прапорець, ви зможете використовувати параметр <userinput
1548
 
>\N</userinput
1549
 
>, де N — номер підрядка у рядку «замінник».</para
1550
 
></listitem>
1551
 
</varlistentry>
1552
 
 
1553
 
<varlistentry>
1554
 
<term
1555
 
><userinput
1556
 
>s</userinput
1557
 
></term>
1558
 
<listitem
1559
 
><para
1560
 
>Виконати пошук з врахуванням регістру.</para
1561
 
></listitem>
1562
 
</varlistentry>
1563
 
 
1564
 
<varlistentry>
1565
 
<term
1566
 
><userinput
1567
 
>w</userinput
1568
 
></term>
1569
 
<listitem
1570
 
><para
1571
 
>Шукати лише цілі слова.</para
1572
 
></listitem>
1573
 
</varlistentry>
1574
 
 
1575
 
</variablelist>
1576
 
</listitem>
1577
 
 
1578
 
</varlistentry>
1579
 
 
1580
 
<varlistentry>
1581
 
<term
1582
 
><cmdsynopsis
1583
 
><command
1584
 
>ifind</command
1585
 
><arg choice="req"
1586
 
>STRING шаблон</arg
1587
 
></cmdsynopsis
1588
 
></term>
1589
 
<listitem
1590
 
><para
1591
 
>За допомогою цієї команди можна виконати <quote
1592
 
>інтерактивний</quote
1593
 
> пошук. Ви можете налаштувати пошук додаванням одного або декількох параметрів після символу двокрапки, ось так: <userinput
1594
 
>ifind:параметри шаблон</userinput
1595
 
>. Серед можливих параметрів: <variablelist>
1596
 
<varlistentry>
1597
 
<term
1598
 
><userinput
1599
 
>b</userinput
1600
 
></term>
1601
 
<listitem
1602
 
><para
1603
 
>Пошук назад.</para
1604
 
></listitem>
1605
 
</varlistentry>
1606
 
 
1607
 
<varlistentry>
1608
 
<term
1609
 
><userinput
1610
 
>r</userinput
1611
 
></term>
1612
 
<listitem
1613
 
><para
1614
 
>Виконати пошук за вказаним формальним виразом.</para
1615
 
></listitem>
1616
 
</varlistentry>
1617
 
 
1618
 
<varlistentry>
1619
 
<term
1620
 
><userinput
1621
 
>s</userinput
1622
 
></term>
1623
 
<listitem
1624
 
><para
1625
 
>Виконати пошук з врахуванням регістру.</para
1626
 
></listitem>
1627
 
</varlistentry>
1628
 
 
1629
 
<varlistentry>
1630
 
<term
1631
 
><userinput
1632
 
>c</userinput
1633
 
></term>
1634
 
<listitem
1635
 
><para
1636
 
>Шукати від позиції курсора.</para
1637
 
></listitem>
1638
 
</varlistentry>
1639
 
 
1640
 
</variablelist>
1641
 
</para
1642
 
></listitem>
1643
 
</varlistentry>
1644
 
 
1645
 
</variablelist>
1646
 
 
1647
 
</sect3>
1648
 
 
1649
 
 
1650
 
<sect3 id="advanced-editing-tools-commandline-commands-basic">
1651
 
<title
1652
 
>Команди базового керування редактором (залежать від використаного у програмі компонента редактора)</title>
1653
 
 
1654
 
<variablelist>
1655
 
 
1656
 
<varlistentry>
1657
 
<term
1658
 
><cmdsynopsis
1659
 
><command
1660
 
>w</command
1661
 
></cmdsynopsis
1662
 
></term>
1663
 
<listitem
1664
 
><para
1665
 
>Зберегти поточний документ.</para
1666
 
></listitem>
1667
 
</varlistentry>
1668
 
 
1669
 
<varlistentry>
1670
 
<term
1671
 
><cmdsynopsis
1672
 
><command
1673
 
>wa</command
1674
 
></cmdsynopsis
1675
 
></term>
1676
 
<listitem
1677
 
><para
1678
 
>Зберегти всі поточні відкриті документи.</para
1679
 
></listitem>
1680
 
</varlistentry>
1681
 
 
1682
 
<varlistentry>
1683
 
<term
1684
 
><cmdsynopsis
1685
 
><command
1686
 
>q</command
1687
 
></cmdsynopsis
1688
 
></term>
1689
 
<listitem
1690
 
><para
1691
 
>Закрити поточний документ.</para
1692
 
></listitem>
1693
 
</varlistentry>
1694
 
 
1695
 
<varlistentry>
1696
 
<term
1697
 
><cmdsynopsis
1698
 
><command
1699
 
>qa</command
1700
 
></cmdsynopsis
1701
 
></term>
1702
 
<listitem
1703
 
><para
1704
 
>Закрити всі відкриті документи.</para
1705
 
></listitem>
1706
 
</varlistentry>
1707
 
 
1708
 
<varlistentry>
1709
 
<term
1710
 
><cmdsynopsis
1711
 
><command
1712
 
>wq</command
1713
 
></cmdsynopsis
1714
 
></term>
1715
 
<listitem
1716
 
><para
1717
 
>Зберегти і закрити поточний документ.</para
1718
 
></listitem>
1719
 
</varlistentry>
1720
 
 
1721
 
<varlistentry>
1722
 
<term
1723
 
><cmdsynopsis
1724
 
><command
1725
 
>wqa</command
1726
 
></cmdsynopsis
1727
 
></term>
1728
 
<listitem
1729
 
><para
1730
 
>Зберегти і закрити всі поточні відкриті документи.</para
1731
 
></listitem>
1732
 
</varlistentry>
1733
 
 
1734
 
<varlistentry>
1735
 
<term
1736
 
><cmdsynopsis
1737
 
><command
1738
 
>x</command
1739
 
></cmdsynopsis
1740
 
></term>
1741
 
<listitem
1742
 
><para
1743
 
>Зберегти і закрити поточний документ, лише якщо його було змінено. </para
1744
 
></listitem>
1745
 
</varlistentry>
1746
 
 
1747
 
<varlistentry>
1748
 
<term
1749
 
><cmdsynopsis
1750
 
><command
1751
 
>x</command
1752
 
></cmdsynopsis
1753
 
></term>
1754
 
<listitem
1755
 
><para
1756
 
>Зберегти і закрити всі поточні відкриті документ, лише якщо до них було внесено зміни.</para
1757
 
></listitem>
1758
 
</varlistentry>
1759
 
 
1760
 
<varlistentry>
1761
 
<term
1762
 
><cmdsynopsis
1763
 
><command
1764
 
>bp</command
1765
 
></cmdsynopsis
1766
 
></term>
1767
 
<listitem
1768
 
><para
1769
 
>Перейти до попереднього документа у списку документів. </para
1770
 
></listitem>
1771
 
</varlistentry>
1772
 
 
1773
 
<varlistentry>
1774
 
<term
1775
 
><cmdsynopsis
1776
 
><command
1777
 
>bn</command
1778
 
></cmdsynopsis
1779
 
></term>
1780
 
<listitem
1781
 
><para
1782
 
>Перейти до наступного документа у списку документів. </para
1783
 
></listitem>
1784
 
</varlistentry>
1785
 
 
1786
 
<varlistentry>
1787
 
<term
1788
 
><cmdsynopsis
1789
 
><command
1790
 
>new</command
1791
 
></cmdsynopsis
1792
 
></term>
1793
 
<listitem
1794
 
><para
1795
 
>Відкрити новий документ на новій панелі, створеній горизонтальним поділом поточної панелі редагування. </para
1796
 
></listitem>
1797
 
</varlistentry>
1798
 
 
1799
 
<varlistentry>
1800
 
<term
1801
 
><cmdsynopsis
1802
 
><command
1803
 
>vnew</command
1804
 
></cmdsynopsis
1805
 
></term>
1806
 
<listitem
1807
 
><para
1808
 
>Відкрити новий документ на новій панелі, створеній вертикальним поділом поточної панелі редагування. </para
1809
 
></listitem>
1810
 
</varlistentry>
1811
 
 
1812
 
<varlistentry>
1813
 
<term
1814
 
><cmdsynopsis
1815
 
><command
1816
 
>e</command
1817
 
></cmdsynopsis
1818
 
></term>
1819
 
<listitem
1820
 
><para
1821
 
>Перезавантажити поточний документ, якщо його було змінено на диску. </para
1822
 
></listitem>
1823
 
</varlistentry>
1824
 
 
1825
 
<varlistentry>
1826
 
<term
1827
 
><cmdsynopsis
1828
 
><command
1829
 
>enew</command
1830
 
></cmdsynopsis
1831
 
></term>
1832
 
<listitem
1833
 
><para
1834
 
>Редагувати новий документ. </para
1835
 
></listitem>
1836
 
</varlistentry>
1837
 
 
1838
 
<varlistentry>
1839
 
<term
1840
 
><cmdsynopsis
1841
 
><command
1842
 
>print</command
1843
 
></cmdsynopsis
1844
 
></term>
1845
 
<listitem
1846
 
><para
1847
 
>Відкрити діалогове вікно друку, за допомогою якого ви зможете надрукувати поточний документ. </para
1848
 
></listitem>
1849
 
</varlistentry>
1850
 
 
1851
 
</variablelist>
1852
 
 
1853
 
</sect3>
1854
 
 
1855
 
 
1856
 
</sect2>
1857
 
 
1858
 
</sect1>
1859
 
 
1860
 
<sect1 id="advanced-editing-tools-code-folding">
1861
 
<title
1862
 
>Використання обгортки коду</title>
1863
 
 
1864
 
<para
1865
 
>За допомогою згортання коду ви можете приховувати частини документа у вікні редактора: так легше працювати з великими документами. У &kappname; діапазони рядків, придатні для згортання, визначаються правилами підсвічування синтаксису, тому згортання можливе не для всіх форматів файлів, — типово, згортання працює у коді програм, розмітки XML та подібних форматів. Під час редагування коду визначення підсвічування також можна вручну визначати діапазони згортання, зазвичай, такі діапазони визначаються за допомогою ключових слів <userinput
1866
 
>BEGIN</userinput
1867
 
> і <userinput
1868
 
>END</userinput
1869
 
>.</para>
1870
 
 
1871
 
<para
1872
 
>Щоб скористатися можливостями згортання, слід задіяти позначки згортання за допомогою пункту меню <menuchoice
1873
 
><guimenu
1874
 
>Перегляд</guimenu
1875
 
> <guimenuitem
1876
 
>Показувати маркери згортання</guimenuitem
1877
 
></menuchoice
1878
 
>, якщо цих позначок ще не показано у вікні редактора. На панелі позначок згортання з лівого боку екрана буде показано у графічному вигляді діапазони рядків, які можна згорнути. Символи-трикутники позначатимуть можливі дії з вказаним діапазоном: трикутник, вершина якого вказує вниз, означатиме розгорнутий діапазон рядків, — натискання позначки трикутника призведе до згортання діапазону, — тепер програма показуватиме трикутник з вершиною, спрямованою праворуч.</para>
1879
 
 
1880
 
<para
1881
 
>Передбачено одинадцять пунктів меню, за допомогою яких можна керувати станом областей згортання коду, їх перелік можна знайти у <link linkend="view-code-folding"
1882
 
>розділі, присвяченому меню</link
1883
 
>. </para>
1884
 
 
1885
 
<para
1886
 
>Програма запам’ятовує згортання після закриття файла. Коли ви наступного разу відкриєте файл для редагування, згорнуті вузли залишатимуться згорнутими. Це також стосується і дій з перезавантаження даних файлів.</para>
1887
 
 
1888
 
<para
1889
 
>Якщо ви не бажаєте користуватися можливістю згортання коду, ви можете зняти позначку з пункту <guilabel
1890
 
>Показувати маркери згортання (якщо наявні)</guilabel
1891
 
> на сторінці <link linkend="appearance"
1892
 
>Вигляд</link
1893
 
> налаштування редактора.</para>
1894
 
 
1895
 
</sect1>
1896
 
 
1897
 
<sect1 id="advanced-editing-tools-scripting">
1898
 
<title
1899
 
>Розширення можливостей &kappname; за допомогою скриптів</title>
1900
 
 
1901
 
<para
1902
 
>Починаючи з версії &kappname; 3.4 у KDE 4.4, можливості компонента редактора &kappname; можна дуже просто розширити за допомогою написання скриптів. Для написання скриптів слід використовувати мову ECMAScript (широко відому як JavaScript). У &kappname; передбачено підтримку двох типів скриптів: скрипти встановлення відступів та скрипти командного рядка. </para>
1903
 
 
1904
 
<sect2 id="advanced-editing-tools-scripting-indentation">
1905
 
<title
1906
 
>Скрипти додавання відступів</title>
1907
 
 
1908
 
<para
1909
 
>Скрипти встановлення відступів, які також будемо називати інструментами відступів, автоматично встановлюють відступи у тексті під час його введення. Наприклад, після натискання клавіші &Enter; програма зазвичай збільшує відступ у наступному рядку. </para>
1910
 
 
1911
 
<para
1912
 
>У наступних розділах наведено покрокові настанови щодо створення основи простого інструменту відступів. На першому кроці вам слід створити файл <filename
1913
 
>*.js</filename
1914
 
> з назвою, наприклад, <filename
1915
 
>javascript.js</filename
1916
 
> у локальній домашній теці <filename
1917
 
>$KDEHOME/share/apps/katepart/indentation</filename
1918
 
>. </para>
1919
 
 
1920
 
<sect3 id="advanced-editing-tools-scripting-indentation-header">
1921
 
<title
1922
 
>Заголовок скрипту додавання відступів</title>
1923
 
<para
1924
 
>Заголовок файла <filename
1925
 
>javascript.js</filename
1926
 
> подається у межах закоментованого блоку і має таку форму <programlisting>
1927
 
/* kate-script
1928
 
 * name: JavaScript
1929
 
 * author: Example Name &lt;example.name@some.address.org&gt;
1930
 
 * license: BSD
1931
 
 * revision: 1
1932
 
 * kate-version: 3.4
1933
 
 * required-syntax-style: javascript
1934
 
 * indent-languages: javascript
1935
 
 * priority: 0
1936
 
 * i18n-catalog: mycatalog
1937
 
 *
1938
 
 * A line without colon ':' stops header parsing. That is, you can add optional
1939
 
 * text here such as a detailed license.
1940
 
 */
1941
 
</programlisting
1942
 
> Нижче ми зупинимося докладніше на кожному з записів заголовка. <itemizedlist>
1943
 
<listitem
1944
 
><para
1945
 
><literal
1946
 
>kate-script</literal
1947
 
> [обов’язковий запис]: цей текст слід додавати у першому рядку файла <filename
1948
 
>*.js</filename
1949
 
>, інакше &kappname; просто відмовиться обробляти скрипт. </para
1950
 
></listitem>
1951
 
<listitem
1952
 
><para
1953
 
><literal
1954
 
>name</literal
1955
 
> [обов’язковий запис]: це назва інструменту відступів, яку буде показано у меню <menuchoice
1956
 
><guimenu
1957
 
>Інструменти</guimenu
1958
 
><guimenuitem
1959
 
>Відступ</guimenuitem
1960
 
></menuchoice
1961
 
> і діалогових вікнах налаштування. </para
1962
 
></listitem>
1963
 
<listitem
1964
 
><para
1965
 
><literal
1966
 
>author</literal
1967
 
> [необов’язковий запис]: ім’я автора та дані щодо способу встановлення з ним зв’язку. </para
1968
 
></listitem>
1969
 
<listitem
1970
 
><para
1971
 
><literal
1972
 
>license</literal
1973
 
> [необов’язковий запис]: скорочена форма умов ліцензування, зокрема BSD або LGPLv3. </para
1974
 
></listitem>
1975
 
<listitem
1976
 
><para
1977
 
><literal
1978
 
>revision</literal
1979
 
> [обов’язковий запис]: версія скрипту. Внесення змін до коду скрипту має призводити до збільшення його версії. </para
1980
 
></listitem>
1981
 
<listitem
1982
 
><para
1983
 
><literal
1984
 
>kate-version</literal
1985
 
> [обов’язковий запис]: мінімальне значення версії &kappname;, у якій працюватиме скрипт. </para
1986
 
></listitem>
1987
 
<listitem
1988
 
><para
1989
 
><literal
1990
 
>required-syntax-style</literal
1991
 
> [необов’язковий запис]: відокремлений комами список потрібних для роботи скрипту стилів підсвічування синтаксичних конструкцій. Цей запис є важливим для інструментів відступів, які працюють на основі певних даних щодо підсвічування у документі. Якщо буде вказано стиль синтаксичних конструкцій, інструментом відступів можна буде скористатися, лише якщо буде задіяно відповідний інструмент підсвічування тексту. Таким чином можна запобігти «невизначеній поведінці», спричиненій використанням інструменту відступів без потрібної для його роботи схеми підсвічування. Наприклад, у такий спосіб налаштовано інструмент відступів Ruby у файлах <filename
1992
 
>ruby.js</filename
1993
 
> і <filename
1994
 
>ruby.xml</filename
1995
 
>. </para
1996
 
></listitem>
1997
 
<listitem
1998
 
><para
1999
 
><literal
2000
 
>indent-languages</literal
2001
 
> [необов’язковий запис]: відокремлений комами список стилів синтаксичних конструкцій, які може обробляти інструмент відступів, наприклад c++, java. </para
2002
 
></listitem>
2003
 
<listitem
2004
 
><para
2005
 
><literal
2006
 
>priority</literal
2007
 
> [необов’язковий запис]: якщо якомусь файлу з визначеним підсвічуванням синтаксичних конструкцій відповідає декілька інструментів відступів, за допомогою цього запису буде встановлено пріоритет застосування інструменту відступів. </para
2008
 
></listitem>
2009
 
<listitem
2010
 
><para
2011
 
><literal
2012
 
>i18n-catalog</literal
2013
 
> [необов’язковий]: додатковий каталог повідомлень (файл <literal
2014
 
>po</literal
2015
 
>), завантажений для перекладу сторонніх інструментів відступів.</para
2016
 
></listitem>
2017
 
</itemizedlist>
2018
 
</para>
2019
 
 
2020
 
<para
2021
 
>&kappname; виконує читання всіх пар записів у формі <quote
2022
 
><replaceable
2023
 
>ключ</replaceable
2024
 
>:<replaceable
2025
 
>значення</replaceable
2026
 
></quote
2027
 
>, аж доки не буде вичерпано перелік рядків з двокрапками. Це означає, що у заголовку може міститися довільний текст, зокрема текст ліцензії, як це показано у нашому прикладі. </para>
2028
 
 
2029
 
</sect3>
2030
 
 
2031
 
<sect3 id="advanced-editing-tools-scripting-indentation-body">
2032
 
<title
2033
 
>Код інструменту відступів</title>
2034
 
<para
2035
 
>Тепер, озброєні знаннями про формат заголовка, ви можете перейти до вивчення того, як же працює сам скрипт встановлення відступів. Основа подібного скрипту виглядає так: <programlisting>
2036
 
// вимагаємо бібліотек JS katepart, наприклад range.js, якщо використовується Range
2037
 
require ("range.js");
2038
 
  
2039
 
triggerCharacters = "{}/:;";
2040
 
function indent(line, indentWidth, ch)
2041
 
{
2042
 
    //скрипт буде викликано під час обробки символу нового рядка (ch == '\n') і всіх символів, вказаних у
2043
 
    // загальній змінній triggerCharacters. Під час використання пункту меню <menuchoice
2044
 
><guimenu
2045
 
>Інструменти</guimenu
2046
 
><guimenuitem
2047
 
>Вирівняти</guimenuitem
2048
 
></menuchoice>
2049
 
    // змінна ch матиме порожнє значення, тобто ch == ''.
2050
 
    //
2051
 
    // див. також розділ «Інтерфейс (API) роботи зі скриптами»
2052
 
    return -2;
2053
 
}
2054
 
</programlisting
2055
 
> У функції <function
2056
 
>indent()</function
2057
 
> передбачено три параметри: <itemizedlist
2058
 
> <listitem
2059
 
><para
2060
 
><literal
2061
 
>line</literal
2062
 
>: рядок, у якому слід встановити відступ</para
2063
 
></listitem
2064
 
> <listitem
2065
 
><para
2066
 
><literal
2067
 
>indentWidth</literal
2068
 
>: ширина відступу у пробілах</para
2069
 
></listitem
2070
 
> <listitem
2071
 
><para
2072
 
><literal
2073
 
>ch</literal
2074
 
>: символ нового рядка (<literal
2075
 
>ch == '\n'</literal
2076
 
>), символ перемикання, вказаний за допомогою <literal
2077
 
>triggerCharacters</literal
2078
 
> або порожній рядок, якщо користувачем було обрано пункт меню <menuchoice
2079
 
><guimenu
2080
 
>Інструменти</guimenu
2081
 
> <guimenuitem
2082
 
>Вирівняти</guimenuitem
2083
 
></menuchoice
2084
 
>.</para
2085
 
></listitem
2086
 
> </itemizedlist
2087
 
> Значення, повернуте функцією <function
2088
 
>indent()</function
2089
 
>, визначатиме спосіб встановлення відступу у рядку. Якщо буде повернуто ціле число, його обробку буде виконано за такими варіантами: <itemizedlist
2090
 
> <listitem
2091
 
><para
2092
 
>повернуто значення <literal
2093
 
>-2</literal
2094
 
>: нічого не робити</para
2095
 
></listitem
2096
 
> <listitem
2097
 
><para
2098
 
>повернуто значення <literal
2099
 
>-1</literal
2100
 
>: зберегти відступ (його буде визначено на основі попереднього непорожнього рядка)</para
2101
 
></listitem
2102
 
> <listitem
2103
 
><para
2104
 
>повернуто значення <literal
2105
 
> 0</literal
2106
 
>: числа &gt;= 0 визначають глибину відступу у пробілах</para
2107
 
></listitem
2108
 
> </itemizedlist
2109
 
> Крім того, може бути повернуто масив з двох елементів: <itemizedlist
2110
 
> <listitem
2111
 
><para
2112
 
><literal
2113
 
>повернуто [ відступ, вирівнювання ];</literal
2114
 
></para
2115
 
></listitem
2116
 
> </itemizedlist
2117
 
> Першим елементом такого масиву є глибина відступу, подібна на значення, про яке ми говорили раніше. Інший же елемент є абсолютним значенням, що відповідає стовпчику «вирівнювання». Якщо це значення буде більшим за значення відступу, до відступу після додавання відступу, визначеного першим параметром, буде додано різницю між цими значенням. Якщо ж значення другого параметра буде меншим за відступ, його буде проігноровано. Одночасне використання для встановлення відступів пробілів і символів табуляції часто називають «мішаним режимом». </para>
2118
 
 
2119
 
<para
2120
 
>Розглянемо такий приклад: для встановлення відступів використовується символ табуляції, а ширину відступу визначено як 4 пробіли. У нашому прикладі, &lt;таб&gt; — це символ табуляції, а «.» — пробіл: <programlisting>
2121
 
1: &lt;таб&gt;&lt;таб&gt;foobar("привіт",
2122
 
2: &lt;таб&gt;&lt;таб&gt;......."світе");
2123
 
</programlisting
2124
 
> Під час встановлення відступу для рядка 2 функція <function
2125
 
>indent()</function
2126
 
> повертає значення [8, 15]. У результаті буде додано два символи табуляції для встановлення відступу до стовпчика 8, а потім буде додано 7 пробілів для вирівнювання за другим параметром, більшим за перший, отже рядок залишатиметься вирівняним під час перегляду файла за будь-якої встановленої ширити відступу табуляції. </para>
2127
 
 
2128
 
<para
2129
 
>У типовому пакунку KDE для &kappname; передбачено декілька інструментів відступів. Код цих інструментів мовою JavaScript зберігається у каталозі <filename
2130
 
>$KDEDIR/share/apps/katepart/script/indentation</filename
2131
 
>. </para>
2132
 
 
2133
 
<para
2134
 
>Під час розробки скрипту встановлення відступів корисним буває перезавантаження скриптів для перевірки коректності поведінки під час встановлення відступів. Замість перезапуску програми достатньо просто перейти до командного рядка і виконати команду <command
2135
 
>reload-scripts</command
2136
 
>. </para>
2137
 
 
2138
 
<para
2139
 
>Якщо вами було створено якийсь корисний скрипт, ви зробити його вашим власним внеском до проекту розробки &kappname;. Будь ласка, повідомте про вашу розробку у <ulink url="mailto:kwrite-devel@kde.org"
2140
 
>списку листування програми</ulink
2141
 
>. </para>
2142
 
 
2143
 
</sect3>
2144
 
</sect2>
2145
 
 
2146
 
<sect2 id="advanced-editing-tools-scripting-command-line">
2147
 
<title
2148
 
>Скрипти командного рядка</title>
2149
 
 
2150
 
<para
2151
 
>Оскільки всі користувачі мають різні потреби, у &kappname; передбачено підтримку невеличких допоміжних інструментів для пришвидшення роботи з фрагментами тексту за допомогою <link linkend="advanced-editing-tools-commandline"
2152
 
>вбудованого командного рядка</link
2153
 
>. Наприклад, команду <command
2154
 
>sort</command
2155
 
> (впорядкувати) реалізовано саме за допомогою такого інструменту або скрипту. У цьому розділі ви знайдете пояснення щодо способу створення файлів <filename
2156
 
>*.js</filename
2157
 
>, які допоможуть вам розширити можливості &kappname; додаванням допоміжних скриптів. </para>
2158
 
 
2159
 
<para
2160
 
>Скрипти командного рядка зберігаються у одній теці зі скриптами встановлення відступів. Отже на першому кроці вам слід створити файл <filename
2161
 
>*.js</filename
2162
 
> з назвою <filename
2163
 
>myutils.js</filename
2164
 
> у локальній домашній теці <filename
2165
 
>$KDEHOME/share/apps/katepart/script/commands</filename
2166
 
>. </para>
2167
 
 
2168
 
<sect3 id="advanced-editing-tools-scripting-command-line-header">
2169
 
<title
2170
 
>Заголовок скрипту командного рядка</title>
2171
 
<para
2172
 
>Заголовок файла <filename
2173
 
>javascript.js</filename
2174
 
> подається у межах закоментованого блоку і має таку форму <programlisting>
2175
 
/* kate-script
2176
 
 * author: Example Name &lt;example.name@some.address.org&gt;
2177
 
 * license: BSD
2178
 
 * revision: 1
2179
 
 * kate-version: 3.4
2180
 
 * functions: sort, format-paragraph
2181
 
 * i18n-catalog: mycatalog
2182
 
 *
2183
 
 * A line without colon ':' stops header parsing. That is, you can add optional
2184
 
 * text here such as a detailed license.
2185
 
 */
2186
 
</programlisting
2187
 
> Нижче наведено докладніший опис кожного з записів заголовка. <itemizedlist>
2188
 
<listitem
2189
 
><para
2190
 
><literal
2191
 
>kate-script</literal
2192
 
> [обов’язковий запис]: цей текст слід додавати у першому рядку файла <filename
2193
 
>*.js</filename
2194
 
>, інакше &kappname; просто відмовиться обробляти скрипт.</para
2195
 
></listitem>
2196
 
<listitem
2197
 
><para
2198
 
><literal
2199
 
>author</literal
2200
 
> [необов’язковий запис]: ім’я автора та дані щодо способу встановлення з ним зв’язку.</para
2201
 
></listitem>
2202
 
<listitem
2203
 
><para
2204
 
><literal
2205
 
>license</literal
2206
 
> [необов’язковий запис]: скорочена форма умов ліцензування, зокрема BSD або LGPLv3.</para
2207
 
></listitem>
2208
 
<listitem
2209
 
><para
2210
 
><literal
2211
 
>revision</literal
2212
 
> [обов’язковий запис]: версія скрипту. Внесення змін до коду скрипту має призводити до збільшення його версії.</para
2213
 
></listitem>
2214
 
<listitem
2215
 
><para
2216
 
><literal
2217
 
>kate-version</literal
2218
 
> [обов’язковий запис]: мінімальне значення версії &kappname;, у якій працюватиме скрипт.</para
2219
 
></listitem>
2220
 
<listitem
2221
 
><para
2222
 
><literal
2223
 
>functions</literal
2224
 
> [обов’язковий запис]: відокремлений комами список команд скрипту.</para
2225
 
></listitem>
2226
 
<listitem
2227
 
><para
2228
 
><literal
2229
 
>i18n-catalog</literal
2230
 
> [необов’язковий]: додатковий каталог повідомлень (файл <literal
2231
 
>po</literal
2232
 
>), завантажений для перекладу сторонніх скриптів.</para
2233
 
></listitem>
2234
 
</itemizedlist>
2235
 
</para>
2236
 
 
2237
 
<para
2238
 
>&kappname; виконує читання всіх пар записів у формі <quote
2239
 
><replaceable
2240
 
>ключ</replaceable
2241
 
>:<replaceable
2242
 
>значення</replaceable
2243
 
></quote
2244
 
>, аж доки не буде вичерпано перелік рядків з двокрапками. Це означає, що у заголовку може міститися довільний текст, зокрема текст ліцензії, як це показано у нашому прикладі. Значенням ключів функцій має бути відокремлений комами список параметрів командного рядка. Це означає, що у одному скрипті може міститися довільна кількість команд командного рядка. Доступ до функцій можна буде отримати за допомогою <link linkend="advanced-editing-tools-commandline"
2245
 
>вбудованого командного рядка</link
2246
 
> &kappname;. </para>
2247
 
</sect3>
2248
 
 
2249
 
<sect3 id="advanced-editing-tools-scripting-command-line-body">
2250
 
<title
2251
 
>Код скрипту командного рядка</title>
2252
 
 
2253
 
<para
2254
 
>Всі оголошені у заголовку функції має бути реалізовано у тілі скрипту. Наприклад, у файлі скрипту з наведеного вище прикладу слід реалізувати дві функції, <command
2255
 
>sort</command
2256
 
> і <command
2257
 
>format-paragraph</command
2258
 
>. Всі функції має бути записано відповідно до таких синтаксичних правил: <programlisting
2259
 
>// вимагаємо бібліотек JS katepart, наприклад range.js, якщо використовується Range
2260
 
require ("range.js");
2261
 
 
2262
 
function &lt;назва&gt;(параметр1, параметр2, ...)
2263
 
{
2264
 
    // ...реалізація, див. також: Інтерфейс (API) роботи зі скриптами
2265
 
}
2266
 
</programlisting>
2267
 
</para>
2268
 
 
2269
 
<para
2270
 
>Параметри у командному рядку передаються функції як <parameter
2271
 
>параметр1</parameter
2272
 
>, <parameter
2273
 
>параметр2</parameter
2274
 
> тощо. Щоб надати користувачам можливість ознайомлюватися з документацією щодо команди, просто реалізуйте функцію '<function
2275
 
>help</function
2276
 
>' у такий спосіб: <programlisting>
2277
 
function help(cmd)
2278
 
{
2279
 
    if (cmd == "sort") {
2280
 
        return i18n("Sort the selected text.");
2281
 
    } else if (cmd == "...") {
2282
 
        // ...
2283
 
    }
2284
 
}
2285
 
</programlisting
2286
 
>Після цього виконання команди <command
2287
 
>help sort</command
2288
 
> у командному рядку призведе до виклику відповідної функції довідки (help) з параметром <parameter
2289
 
>cmd</parameter
2290
 
> встановленим у назву вказаної команди, тобто, у нашому прикладі, <parameter
2291
 
>cmd == "sort"</parameter
2292
 
>. У відповідь на команду &kappname; покаже користувачеві визначений вами текст довідки. </para>
2293
 
 
2294
 
<sect4 id="advanced-editing-tools-scripting-command-line-shortcuts">
2295
 
<title
2296
 
>Призначення клавіатурних скорочень</title>
2297
 
<para
2298
 
>Призначення клавіатурних скорочень стане можливим, лише якщо у вашому скрипті є функція з назвою <literal
2299
 
>action</literal
2300
 
> у такому форматі: <programlisting>
2301
 
function action(cmd)
2302
 
{
2303
 
    var a = new Object();
2304
 
    if (cmd == "sort") {
2305
 
        a.text = i18n("Sort Selected Text");
2306
 
        a.icon = "";
2307
 
        a.category = "";
2308
 
        a.interactive = false;
2309
 
        a.shortcut = "";
2310
 
    } else if (cmd == "moveLinesDown") {
2311
 
        // same for next action
2312
 
    }
2313
 
    return a;
2314
 
}
2315
 
</programlisting
2316
 
> Параметр <literal
2317
 
>cmd</literal
2318
 
> цієї функції визначає команду, виконання якої буде пов’язано з клавіатурним скороченням. Для повернутого об’єкта javascript має бути визначено декілька значень полів: <itemizedlist>
2319
 
<listitem
2320
 
><para
2321
 
><literal
2322
 
>a.text</literal
2323
 
> [обов’язковий запис]: це текст пункту, який буде показано у меню <menuchoice
2324
 
><guimenu
2325
 
>Інструменти</guimenu
2326
 
><guisubmenu
2327
 
>Скрипти</guisubmenu
2328
 
></menuchoice
2329
 
>. Не забудьте вказати  <literal
2330
 
>i18n</literal
2331
 
> для перекладу.</para
2332
 
></listitem>
2333
 
<listitem
2334
 
><para
2335
 
><literal
2336
 
>a.icon</literal
2337
 
> [необов’язковий запис]: піктограма, яку буде показано поряд з текстом пункту меню. Можна використовувати назву будь-якої з піктограм KDE.</para
2338
 
></listitem>
2339
 
<listitem
2340
 
><para
2341
 
><literal
2342
 
>a.category</literal
2343
 
> [необов’язковий запис]: якщо буде вказано категорію, пункт скрипту буде додано у підменю. Не забудьте використати <literal
2344
 
>i18n</literal
2345
 
>, щоб уможливити переклад.</para
2346
 
></listitem>
2347
 
<listitem
2348
 
><para
2349
 
><literal
2350
 
>a.interactive</literal
2351
 
> [необов’язковий]: якщо для роботи скрипту потрібні дані, введені користувачем, встановіть значення <literal
2352
 
>true</literal
2353
 
>.</para
2354
 
></listitem>
2355
 
<listitem
2356
 
><para
2357
 
><literal
2358
 
>a.shortcut</literal
2359
 
> [необов’язковий запис]: клавіатурне скорочення, вказане за допомогою цього значення буде типовим. Приклад: Ctrl+Alt+t. Докладніше про можливі скорочення можна дізнатися з <ulink url="http://doc.qt.nokia.com/latest/qt.html#Key-enum"
2360
 
>документації до Qt</ulink
2361
 
>.</para
2362
 
></listitem>
2363
 
</itemizedlist>
2364
 
</para>
2365
 
 
2366
 
 
2367
 
<para
2368
 
>Під час розробки скрипту командного рядка корисним буває перезавантаження скриптів для перевірки коректності поведінки під час встановлення відступів. Замість перезапуску програми достатньо просто перейти до командного рядка і виконати команду <command
2369
 
>reload-scripts</command
2370
 
>. </para>
2371
 
 
2372
 
<para
2373
 
>Якщо вами було створено якийсь корисний скрипт, ви зробити його вашим власним внеском до проекту розробки &kappname;. Будь ласка, повідомте про вашу розробку у <ulink url="mailto:kwrite-devel@kde.org"
2374
 
>списку листування програми</ulink
2375
 
>. </para>
2376
 
 
2377
 
</sect4>
2378
 
</sect3>
2379
 
</sect2>
2380
 
 
2381
 
<sect2 id="advanced-editing-tools-scripting-api">
2382
 
<title
2383
 
>Інтерфейс (API) роботи зі скриптами</title>
2384
 
 
2385
 
<para
2386
 
>Програмним інтерфейсом роботи зі скриптами, основи якого викладено тут, можна користуватися у будь-яких скриптах, зокрема скриптах роботи з відступами та командному рядку програми. Класи <classname
2387
 
>Cursor</classname
2388
 
> і <classname
2389
 
>Range</classname
2390
 
> визначаються бібліотечними файлами у <filename
2391
 
>$KDEDIR/share/apps/katepart/libraries</filename
2392
 
>. Якщо вам потрібно ними скористатися у певному скрипті для використання якихось із функцій <classname
2393
 
>Document</classname
2394
 
> або <classname
2395
 
>View</classname
2396
 
>, будь ласка, включіть до скрипту потрібну вам бібліотеку такою командою: <programlisting
2397
 
>// вимагаємо бібліотек JS katepart, наприклад range.js, якщо використовується Range
2398
 
require ("range.js");
2399
 
</programlisting>
2400
 
</para>
2401
 
 
2402
 
<para
2403
 
>Щоб розширити стандартний програмний інтерфейс (API) для роботи зі скриптами власними функціями і прототипами просто створіть файл у локальній теці файлів налаштування KDE, <filename
2404
 
>$KDEHOME/share/apps/katepart/libraries</filename
2405
 
>, і включіть його до вашого скрипту за допомогою такого коду: <programlisting
2406
 
>require ("vashscript.js");
2407
 
</programlisting>
2408
 
 
2409
 
</para>
2410
 
 
2411
 
<para
2412
 
>Рекомендованим способом розширення можливостей прототипів, зокрема <classname
2413
 
>Cursor</classname
2414
 
> або <classname
2415
 
>Range</classname
2416
 
>, <emphasis
2417
 
>не</emphasis
2418
 
> є внесення змін до загальних файлів <filename
2419
 
>*.js</filename
2420
 
>. Для цього вам краще внести зміи до прототипу  <classname
2421
 
>Cursor</classname
2422
 
> у JavaScript після команди включення <filename
2423
 
>cursor.js</filename
2424
 
> до вашого скрипту за допомогою <literal
2425
 
>require</literal
2426
 
>. </para>
2427
 
 
2428
 
<sect3 id="advanced-editing-tools-scripting-api-prototypes">
2429
 
<title
2430
 
>Курсори і діапазони</title>
2431
 
 
2432
 
<para
2433
 
>Оскільки &kappname; є текстовим редактором, весь програмний інтерфейс (API) за можливості засновано на курсорах та діапазонах тексту. Об’єкт Cursor (курсор) є простим кортежем <literal
2434
 
>(line, column)</literal
2435
 
> (рядок, стовпчик), що визначає позицію у тексті документа. Об’єкт Range (діапазон) це фрагмент тексту від початкової позиції курсора до кінцевої позиції курсора. Докладніше про програмний інтерфейс (API) ми поговоримо у наступних розділах. </para>
2436
 
 
2437
 
<sect4 id="advanced-editing-tools-scripting-api-cursors">
2438
 
<title
2439
 
>Прототип Cursor (курсор)</title>
2440
 
 
2441
 
<variablelist
2442
 
><varlistentry>
2443
 
<term
2444
 
><synopsis
2445
 
>Cursor();
2446
 
</synopsis
2447
 
></term>
2448
 
<listitem
2449
 
><para
2450
 
>Конструктор. Повертає об’єкт Cursor (курсор) у позиції <literal
2451
 
>(0, 0)</literal
2452
 
>.</para>
2453
 
<para
2454
 
>Приклад: <function
2455
 
>var cursor = new Cursor();</function
2456
 
> </para
2457
 
></listitem>
2458
 
</varlistentry>
2459
 
 
2460
 
 
2461
 
<varlistentry>
2462
 
<term
2463
 
><synopsis
2464
 
>Cursor(<parameter
2465
 
>int <replaceable
2466
 
>рядок</replaceable
2467
 
></parameter
2468
 
>, <parameter
2469
 
>int <replaceable
2470
 
>стовпчик</replaceable
2471
 
></parameter
2472
 
>);
2473
 
</synopsis
2474
 
></term>
2475
 
<listitem
2476
 
><para
2477
 
>Конструктор. Повертає об’єкт Cursor (курсор) у позиції (рядок, стовпчик). </para>
2478
 
<para
2479
 
>Приклад: <function
2480
 
>var cursor = new Cursor(3, 42);</function
2481
 
> </para
2482
 
></listitem>
2483
 
</varlistentry>
2484
 
 
2485
 
 
2486
 
<varlistentry>
2487
 
<term
2488
 
><synopsis
2489
 
>Cursor(<parameter
2490
 
>Cursor <replaceable
2491
 
>інший</replaceable
2492
 
></parameter
2493
 
>);
2494
 
</synopsis
2495
 
></term>
2496
 
<listitem
2497
 
><para
2498
 
>Конструктор копіювання. Повертає копію курсора <replaceable
2499
 
>інший</replaceable
2500
 
>. </para>
2501
 
<para
2502
 
>Приклад: <function
2503
 
>var copy = new Cursor(other);</function
2504
 
> </para
2505
 
></listitem>
2506
 
</varlistentry>
2507
 
 
2508
 
 
2509
 
<varlistentry>
2510
 
<term
2511
 
><synopsis
2512
 
>Cursor Cursor.clone();
2513
 
</synopsis
2514
 
></term>
2515
 
<listitem
2516
 
><para
2517
 
>Повертає клон курсора.</para>
2518
 
<para
2519
 
>Приклад: <function
2520
 
>var clone = cursor.clone();</function
2521
 
> </para
2522
 
></listitem>
2523
 
</varlistentry>
2524
 
 
2525
 
 
2526
 
<varlistentry>
2527
 
<term
2528
 
><synopsis
2529
 
>bool Cursor.isValid();
2530
 
</synopsis
2531
 
></term>
2532
 
<listitem
2533
 
><para
2534
 
>Перевіряє, чи є курсор коректним. Курсор вважається некоректним, якщо значення його позицій у рядку і/або стовпчику дорівнюють <literal
2535
 
>-1</literal
2536
 
>. </para>
2537
 
<para
2538
 
>Приклад: <function
2539
 
>var valid = cursor.isValid();</function
2540
 
> </para
2541
 
></listitem>
2542
 
</varlistentry>
2543
 
 
2544
 
 
2545
 
<varlistentry>
2546
 
<term
2547
 
><synopsis
2548
 
>Cursor Cursor.invalid();
2549
 
</synopsis
2550
 
></term>
2551
 
<listitem
2552
 
><para
2553
 
>Повертає новий некоректний курсор, розташований у позиції <literal
2554
 
>(-1, -1)</literal
2555
 
>. </para>
2556
 
<para
2557
 
>Приклад: <function
2558
 
>var invalidCursor = cursor.invalid();</function
2559
 
> </para
2560
 
></listitem>
2561
 
</varlistentry>
2562
 
 
2563
 
<varlistentry>
2564
 
<term
2565
 
><synopsis
2566
 
>int Cursor.compareTo(<parameter
2567
 
>Cursor <replaceable
2568
 
>інший</replaceable
2569
 
></parameter
2570
 
>);
2571
 
</synopsis
2572
 
></term>
2573
 
<listitem
2574
 
><para
2575
 
>Порівнює поточний курсор з курсором <replaceable
2576
 
>інший</replaceable
2577
 
>. Повертає <itemizedlist>
2578
 
<listitem
2579
 
><para
2580
 
><literal
2581
 
>-1</literal
2582
 
>, якщо поточний курсор розташовано перед курсором <replaceable
2583
 
>інший</replaceable
2584
 
>,</para
2585
 
></listitem>
2586
 
<listitem
2587
 
><para
2588
 
><literal
2589
 
>0</literal
2590
 
>, якщо курсори у однакових позиціях і</para
2591
 
></listitem>
2592
 
<listitem
2593
 
><para
2594
 
><literal
2595
 
>+1</literal
2596
 
>, якщо поточний курсор розташовано після курсора <replaceable
2597
 
>інший</replaceable
2598
 
>.</para
2599
 
></listitem>
2600
 
</itemizedlist>
2601
 
</para
2602
 
></listitem>
2603
 
</varlistentry>
2604
 
 
2605
 
 
2606
 
<varlistentry>
2607
 
<term
2608
 
><synopsis
2609
 
>bool Cursor.equals(<parameter
2610
 
>Cursor <replaceable
2611
 
>інший</replaceable
2612
 
></parameter
2613
 
>);
2614
 
</synopsis
2615
 
></term>
2616
 
<listitem
2617
 
><para
2618
 
>Повертає <literal
2619
 
>true</literal
2620
 
>, якщо цей курсор і курсор <replaceable
2621
 
>інший</replaceable
2622
 
> є однаковими. Якщо це не так, повертає <literal
2623
 
>false</literal
2624
 
>. </para
2625
 
></listitem>
2626
 
</varlistentry>
2627
 
 
2628
 
 
2629
 
<varlistentry>
2630
 
<term
2631
 
><synopsis
2632
 
>String Cursor.toString();
2633
 
</synopsis
2634
 
></term>
2635
 
<listitem
2636
 
><para
2637
 
>Повертає об’єкт курсора як рядок у формі <quote
2638
 
><literal
2639
 
>Cursor(line, column)</literal
2640
 
></quote
2641
 
>. </para
2642
 
></listitem>
2643
 
</varlistentry
2644
 
></variablelist>
2645
 
 
2646
 
</sect4>
2647
 
 
2648
 
 
2649
 
<sect4 id="advanced-editing-tools-scripting-api-ranges">
2650
 
<title
2651
 
>Прототип Range (діапазон)</title>
2652
 
 
2653
 
<variablelist
2654
 
><varlistentry>
2655
 
<term
2656
 
><synopsis
2657
 
>Range();
2658
 
</synopsis
2659
 
></term>
2660
 
<listitem
2661
 
><para
2662
 
>Конструктор. Виклик <literal
2663
 
>new Range()</literal
2664
 
> повертає Range (діапазон) у (0, 0) - (0, 0). </para
2665
 
></listitem>
2666
 
</varlistentry>
2667
 
 
2668
 
 
2669
 
<varlistentry>
2670
 
<term
2671
 
><synopsis
2672
 
>Range(<parameter
2673
 
>Cursor <replaceable
2674
 
>початок</replaceable
2675
 
></parameter
2676
 
>, <parameter
2677
 
>Cursor <replaceable
2678
 
>кінець</replaceable
2679
 
></parameter
2680
 
>);
2681
 
</synopsis
2682
 
></term>
2683
 
<listitem
2684
 
><para
2685
 
>Конструктор. Виклик функції <literal
2686
 
>new Range(<replaceable
2687
 
>початок</replaceable
2688
 
>, <replaceable
2689
 
>кінець</replaceable
2690
 
>)</literal
2691
 
> повертає Range (діапазон)(<replaceable
2692
 
>початок</replaceable
2693
 
>, <replaceable
2694
 
>кінець</replaceable
2695
 
>). </para
2696
 
></listitem>
2697
 
</varlistentry>
2698
 
 
2699
 
 
2700
 
<varlistentry>
2701
 
<term
2702
 
><synopsis
2703
 
>Range(<parameter
2704
 
>int <replaceable
2705
 
>початковийРядок</replaceable
2706
 
></parameter
2707
 
>, <parameter
2708
 
>int <replaceable
2709
 
>початковийСтовпчик</replaceable
2710
 
></parameter
2711
 
>, <parameter
2712
 
>int <replaceable
2713
 
>кінцевийРядок</replaceable
2714
 
></parameter
2715
 
>, <parameter
2716
 
>int <replaceable
2717
 
>кінцевийСтовпчик</replaceable
2718
 
></parameter
2719
 
>);
2720
 
</synopsis
2721
 
></term>
2722
 
<listitem
2723
 
><para
2724
 
>Конструктор. Виклик функції <literal
2725
 
>new Range(<replaceable
2726
 
>початковийРядок</replaceable
2727
 
>, <replaceable
2728
 
>початковийСтовпчик</replaceable
2729
 
>, <replaceable
2730
 
>кінцевийРядок</replaceable
2731
 
>, <replaceable
2732
 
>кінцевийСтовпчик</replaceable
2733
 
>)</literal
2734
 
> повертає Range (діапазон) від позиції (<replaceable
2735
 
>початковийРядок</replaceable
2736
 
>, <replaceable
2737
 
>початковийСтовпчик</replaceable
2738
 
>) до позиції (<replaceable
2739
 
>кінцевийРядок</replaceable
2740
 
>, <replaceable
2741
 
>кінцевийСтовпчик</replaceable
2742
 
>). </para
2743
 
></listitem>
2744
 
</varlistentry>
2745
 
 
2746
 
 
2747
 
<varlistentry>
2748
 
<term
2749
 
><synopsis
2750
 
>Range(<parameter
2751
 
>Range <replaceable
2752
 
>інший</replaceable
2753
 
></parameter
2754
 
>);
2755
 
</synopsis
2756
 
></term>
2757
 
<listitem
2758
 
><para
2759
 
>Конструктор копіювання. Повертає копію Range <replaceable
2760
 
>інший</replaceable
2761
 
>. </para
2762
 
></listitem>
2763
 
</varlistentry>
2764
 
 
2765
 
 
2766
 
<varlistentry>
2767
 
<term
2768
 
><synopsis
2769
 
>Range Range.clone();
2770
 
</synopsis
2771
 
></term>
2772
 
<listitem
2773
 
><para
2774
 
>Повертає клон діапазону. </para>
2775
 
<para
2776
 
>Приклад: <function
2777
 
>var clone = range.clone();</function
2778
 
> </para
2779
 
></listitem>
2780
 
</varlistentry>
2781
 
 
2782
 
 
2783
 
<varlistentry>
2784
 
<term
2785
 
><synopsis
2786
 
>bool Range.isValid();
2787
 
</synopsis
2788
 
></term>
2789
 
<listitem
2790
 
><para
2791
 
>Повертає <literal
2792
 
>true</literal
2793
 
>, якщо початкова і кінцева позиції курсора є коректними. Якщо це не так, повертає <literal
2794
 
>false</literal
2795
 
>. </para>
2796
 
<para
2797
 
>Приклад: <function
2798
 
>var valid = range.isValid();</function
2799
 
> </para
2800
 
></listitem>
2801
 
</varlistentry>
2802
 
 
2803
 
 
2804
 
<varlistentry>
2805
 
<term
2806
 
><synopsis
2807
 
>bool Range.invalid();
2808
 
</synopsis
2809
 
></term>
2810
 
<listitem
2811
 
><para
2812
 
>Повертає Range (діапазон) від (-1, -1) до (-1, -1). </para
2813
 
></listitem>
2814
 
</varlistentry>
2815
 
 
2816
 
 
2817
 
<varlistentry>
2818
 
<term
2819
 
><synopsis
2820
 
>bool Range.contains(<parameter
2821
 
>Cursor <replaceable
2822
 
>курсор</replaceable
2823
 
></parameter
2824
 
>);
2825
 
</synopsis
2826
 
></term>
2827
 
<listitem
2828
 
><para
2829
 
>Повертає <literal
2830
 
>true</literal
2831
 
>, якщо позиція курсора міститься у діапазоні, у іншому випадку повертає <constant
2832
 
>false</constant
2833
 
>. </para
2834
 
></listitem>
2835
 
</varlistentry>
2836
 
 
2837
 
 
2838
 
<varlistentry>
2839
 
<term
2840
 
><synopsis
2841
 
>bool Range.contains(<parameter
2842
 
>Range <replaceable
2843
 
>інший</replaceable
2844
 
></parameter
2845
 
>);
2846
 
</synopsis
2847
 
></term>
2848
 
<listitem
2849
 
><para
2850
 
>Повертає <literal
2851
 
>true</literal
2852
 
>, якщо поточний діапазон містить діапазон <replaceable
2853
 
>інший</replaceable
2854
 
>. Якщо це не так, повертає <literal
2855
 
>false</literal
2856
 
>. </para
2857
 
></listitem>
2858
 
</varlistentry>
2859
 
 
2860
 
 
2861
 
<varlistentry>
2862
 
<term
2863
 
><synopsis
2864
 
>bool Range.containsColumn(<parameter
2865
 
>int <replaceable
2866
 
>стовпчик</replaceable
2867
 
></parameter
2868
 
>);
2869
 
</synopsis
2870
 
></term>
2871
 
<listitem
2872
 
><para
2873
 
>Повертає <literal
2874
 
>true</literal
2875
 
>, якщо <replaceable
2876
 
>стовпчик</replaceable
2877
 
> належить напіввідкритому інтервалу <literal
2878
 
>[start.column, end.column)</literal
2879
 
>. Якщо це не так, повертає <literal
2880
 
>false</literal
2881
 
>. </para
2882
 
></listitem>
2883
 
</varlistentry>
2884
 
 
2885
 
 
2886
 
<varlistentry>
2887
 
<term
2888
 
><synopsis
2889
 
>bool Range.containsLine(<parameter
2890
 
>int <replaceable
2891
 
>рядок</replaceable
2892
 
></parameter
2893
 
>);
2894
 
</synopsis
2895
 
></term>
2896
 
<listitem
2897
 
><para
2898
 
>Повертає <literal
2899
 
>true</literal
2900
 
>, якщо <replaceable
2901
 
>рядок</replaceable
2902
 
> належить до напіввідкритого інтервалу <literal
2903
 
>[start.line, end.line)</literal
2904
 
>. Якщо це не так, повертає <literal
2905
 
>false</literal
2906
 
>. </para
2907
 
></listitem>
2908
 
</varlistentry>
2909
 
 
2910
 
 
2911
 
<varlistentry>
2912
 
<term
2913
 
><synopsis
2914
 
>bool Range.overlaps(<parameter
2915
 
>Range <replaceable
2916
 
>інший</replaceable
2917
 
></parameter
2918
 
>);
2919
 
</synopsis
2920
 
></term>
2921
 
<listitem
2922
 
><para
2923
 
>Повертає <literal
2924
 
>true</literal
2925
 
>, якщо поточний діапазон і діапазон <replaceable
2926
 
>інший</replaceable
2927
 
> мають ненульовий перетин. Якщо це не так, повертає <literal
2928
 
>false</literal
2929
 
>. </para
2930
 
></listitem>
2931
 
</varlistentry>
2932
 
 
2933
 
 
2934
 
<varlistentry>
2935
 
<term
2936
 
><synopsis
2937
 
>bool Range.overlapsLine(<parameter
2938
 
>int <replaceable
2939
 
>рядок</replaceable
2940
 
></parameter
2941
 
>);
2942
 
</synopsis
2943
 
></term>
2944
 
<listitem
2945
 
><para
2946
 
>Повертає <literal
2947
 
>true</literal
2948
 
>, якщо <replaceable
2949
 
>рядок</replaceable
2950
 
> належить до інтервалу <literal
2951
 
>[start.line, end.line]</literal
2952
 
>. Якщо це не так, повертає <literal
2953
 
>false</literal
2954
 
>. </para
2955
 
></listitem>
2956
 
</varlistentry>
2957
 
 
2958
 
 
2959
 
<varlistentry>
2960
 
<term
2961
 
><synopsis
2962
 
>bool Range.overlapsColumn(<parameter
2963
 
>int <replaceable
2964
 
>стовпчик</replaceable
2965
 
></parameter
2966
 
>);
2967
 
</synopsis
2968
 
></term>
2969
 
<listitem
2970
 
><para
2971
 
>Повертає <literal
2972
 
>true</literal
2973
 
>, якщо <replaceable
2974
 
>стовпчик</replaceable
2975
 
> належить інтервалу <literal
2976
 
>[start.column, end.column]</literal
2977
 
>. Якщо це не так, повертає <literal
2978
 
>false</literal
2979
 
>. </para
2980
 
></listitem>
2981
 
</varlistentry>
2982
 
 
2983
 
 
2984
 
<varlistentry>
2985
 
<term
2986
 
><synopsis
2987
 
>bool Range.onSingleLine();
2988
 
</synopsis
2989
 
></term>
2990
 
<listitem
2991
 
><para
2992
 
>Повертає <literal
2993
 
>true</literal
2994
 
>, якщо діапазон починається і завершується на тому самому рядку, тобто якщо <replaceable
2995
 
>Range.start.line == Range.end.line</replaceable
2996
 
>. </para>
2997
 
<para
2998
 
>Актуальна версія: KDE 4.9 </para
2999
 
></listitem>
3000
 
</varlistentry>
3001
 
 
3002
 
 
3003
 
<varlistentry>
3004
 
<term
3005
 
><synopsis
3006
 
>bool Range.equals(<parameter
3007
 
>Range <replaceable
3008
 
>інший</replaceable
3009
 
></parameter
3010
 
>);
3011
 
</synopsis
3012
 
></term>
3013
 
<listitem
3014
 
><para
3015
 
>Повертає <literal
3016
 
>true</literal
3017
 
>, якщо поточний діапазон і діапазон <replaceable
3018
 
>інший</replaceable
3019
 
> тотожні. Якщо це не так, повертає <literal
3020
 
>false</literal
3021
 
>. </para
3022
 
></listitem>
3023
 
</varlistentry>
3024
 
 
3025
 
 
3026
 
<varlistentry>
3027
 
<term
3028
 
><synopsis
3029
 
>String Range.toString();
3030
 
</synopsis
3031
 
></term>
3032
 
<listitem
3033
 
><para
3034
 
>Повертає діапазон у форматі <quote
3035
 
><literal
3036
 
>Range(Cursor(line, column), Cursor(line, column))</literal
3037
 
></quote
3038
 
>. </para
3039
 
></listitem>
3040
 
</varlistentry
3041
 
></variablelist>
3042
 
 
3043
 
</sect4>
3044
 
</sect3>
3045
 
 
3046
 
<sect3 id="advanced-editing-tools-scripting-api-global">
3047
 
<title
3048
 
>Загальні функції (Global Functions)</title>
3049
 
<para
3050
 
>У цьому розділі наведено всі загальні функції.</para>
3051
 
 
3052
 
 
3053
 
<sect4 id="advanced-editing-tools-scripting-api-includes">
3054
 
<title
3055
 
>Читання і включення файлів</title>
3056
 
 
3057
 
<variablelist
3058
 
><varlistentry>
3059
 
<term
3060
 
><synopsis
3061
 
>String read(<parameter
3062
 
>String <replaceable
3063
 
>назва файла</replaceable
3064
 
></parameter
3065
 
>);
3066
 
</synopsis
3067
 
></term>
3068
 
<listitem
3069
 
><para
3070
 
>Виконає пошук файла з назвою <replaceable
3071
 
>назва файла</replaceable
3072
 
> у каталозі <literal
3073
 
>katepart/script/files</literal
3074
 
> і поверне його вміст як рядок. </para
3075
 
></listitem>
3076
 
</varlistentry
3077
 
></variablelist>
3078
 
 
3079
 
<variablelist
3080
 
><varlistentry>
3081
 
<term
3082
 
><synopsis
3083
 
>void require(<parameter
3084
 
>String <replaceable
3085
 
>назва файла</replaceable
3086
 
></parameter
3087
 
>);
3088
 
</synopsis
3089
 
></term>
3090
 
<listitem
3091
 
><para
3092
 
>Виконає пошук файла з назвою <replaceable
3093
 
>назва файла</replaceable
3094
 
> у каталозі <literal
3095
 
>katepart/script/libraries</literal
3096
 
> і обробить його код. У <literal
3097
 
>require</literal
3098
 
> передбачено вбудований захист від повторного включення одного і того самого файла. </para>
3099
 
<para
3100
 
>Актуальна версія: KDE 4.10 </para>
3101
 
</listitem>
3102
 
</varlistentry
3103
 
></variablelist>
3104
 
 
3105
 
</sect4>
3106
 
 
3107
 
<sect4 id="advanced-editing-tools-scripting-api-debug">
3108
 
<title
3109
 
>Зневаджування (Debugging)</title>
3110
 
 
3111
 
<variablelist
3112
 
><varlistentry>
3113
 
<term
3114
 
><synopsis
3115
 
>void debug(<parameter
3116
 
>String <replaceable
3117
 
>текст</replaceable
3118
 
></parameter
3119
 
>);
3120
 
</synopsis
3121
 
></term>
3122
 
<listitem
3123
 
><para
3124
 
>Виводить <replaceable
3125
 
>текст</replaceable
3126
 
> до <literal
3127
 
>stdout</literal
3128
 
> у консоль, з якої запущено програму. </para
3129
 
></listitem>
3130
 
</varlistentry
3131
 
></variablelist>
3132
 
 
3133
 
</sect4>
3134
 
 
3135
 
<sect4 id="advanced-editing-tools-scripting-api-i18n">
3136
 
<title
3137
 
>Переклад (Translation)</title>
3138
 
 
3139
 
<para
3140
 
>Повноцінна локалізація стане можливою лише за використання декількох функцій, призначених для перекладу рядків у скриптах, а саме <literal
3141
 
>i18n</literal
3142
 
>, <literal
3143
 
>i18nc</literal
3144
 
>, <literal
3145
 
>i18np</literal
3146
 
> і <literal
3147
 
>i18ncp</literal
3148
 
>. Робота цих функцій подібна до роботи <ulink url="http://techbase.kde.org/Development/Tutorials/Localization/i18n"
3149
 
>функцій перекладу рядків у KDE</ulink
3150
 
>. </para>
3151
 
 
3152
 
<para
3153
 
>За допомогою функцій перекладу і системи перекладу KDE вбудовані у скрипт рядки повідомлень може бути перекладено мовою інтерфейсу програми. Рядки у скриптах, які є частиною офіційної збірки &kappname; буде автоматично видобуто і подано для перекладу командами перекладачів KDE. Іншими словами, якщо ви є розробником основної гілки &kappname;, ви не маєте перейматися видобуванням повідомлень і їхнім перекладом. Якщо ж скрипт є стороннім, його розробка виконується поза межами KDE, вам слід подбати про видобування і переклад повідомлень власноруч. Разом зі скриптами вам слід поширювати і файли перекладів, які міститимуть всі придатні для перекладу рядки. Крім того, у заголовку вашого скрипту має бути явним чином вказано каталог перекладів, який слід завантажити. Зробити це можна за допомогою параметра <literal
3154
 
>i18n-catalog</literal
3155
 
>. </para>
3156
 
 
3157
 
<variablelist
3158
 
><varlistentry>
3159
 
<term
3160
 
><synopsis
3161
 
>void i18n(<parameter
3162
 
>String <replaceable
3163
 
>текст</replaceable
3164
 
></parameter
3165
 
>, <replaceable
3166
 
>параметр1</replaceable
3167
 
>, ...);
3168
 
</synopsis
3169
 
></term>
3170
 
<listitem
3171
 
><para
3172
 
>Перекладає <replaceable
3173
 
>текст</replaceable
3174
 
> мовою, використаною у інтерфейсі програми. Параметри <replaceable
3175
 
>параметр1</replaceable
3176
 
>, ... є необов’язковими. Вони є замінниками рядків <literal
3177
 
>%1</literal
3178
 
>, <literal
3179
 
>%2</literal
3180
 
> тощо.</para
3181
 
></listitem>
3182
 
</varlistentry>
3183
 
 
3184
 
<varlistentry>
3185
 
<term
3186
 
><synopsis
3187
 
>void i18nc(<parameter
3188
 
>String <replaceable
3189
 
>контекст</replaceable
3190
 
></parameter
3191
 
>, <parameter
3192
 
>String <replaceable
3193
 
>текст</replaceable
3194
 
></parameter
3195
 
>, <replaceable
3196
 
>параметр1</replaceable
3197
 
>, ...);
3198
 
</synopsis
3199
 
></term>
3200
 
<listitem
3201
 
><para
3202
 
>Перекладає <replaceable
3203
 
>текст</replaceable
3204
 
> мовою, використаною у інтерфейсі програми. Крім того, перекладачі зможуть побачити рядок <replaceable
3205
 
>контекст</replaceable
3206
 
>. За допомогою контексту перекладачам буде простіше правильно перекласти рядок. Параметри <replaceable
3207
 
>параметр1</replaceable
3208
 
>, ... є необов’язковими. Вони є замінниками рядків <literal
3209
 
>%1</literal
3210
 
>, <literal
3211
 
>%2</literal
3212
 
> тощо.</para
3213
 
></listitem>
3214
 
</varlistentry>
3215
 
 
3216
 
<varlistentry>
3217
 
<term
3218
 
><synopsis
3219
 
>void i18np(<parameter
3220
 
>String <replaceable
3221
 
>однина</replaceable
3222
 
></parameter
3223
 
>, <parameter
3224
 
>String <replaceable
3225
 
>множина</replaceable
3226
 
></parameter
3227
 
>, <parameter
3228
 
>int <replaceable
3229
 
>кількість</replaceable
3230
 
></parameter
3231
 
>, <replaceable
3232
 
>параметр1</replaceable
3233
 
>, ...);
3234
 
</synopsis
3235
 
></term>
3236
 
<listitem
3237
 
><para
3238
 
>Перекладає <replaceable
3239
 
>однину</replaceable
3240
 
> або <replaceable
3241
 
>множину</replaceable
3242
 
> повідомлення мовою, використаною у інтерфейсі програми залежно від вказаного значення <replaceable
3243
 
>кількість</replaceable
3244
 
>. Параметри <replaceable
3245
 
>параметр1</replaceable
3246
 
>, ... є необов’язковими. Вони є замінниками рядків <literal
3247
 
>%1</literal
3248
 
>, <literal
3249
 
>%2</literal
3250
 
> тощо.</para
3251
 
></listitem>
3252
 
</varlistentry>
3253
 
 
3254
 
<varlistentry>
3255
 
<term
3256
 
><synopsis
3257
 
>void i18ncp(<parameter
3258
 
>String <replaceable
3259
 
>контекст</replaceable
3260
 
></parameter
3261
 
>, <parameter
3262
 
>String <replaceable
3263
 
>однина</replaceable
3264
 
></parameter
3265
 
>, <parameter
3266
 
>String <replaceable
3267
 
>множина</replaceable
3268
 
></parameter
3269
 
>, <parameter
3270
 
>int <replaceable
3271
 
>кількість</replaceable
3272
 
></parameter
3273
 
>, <replaceable
3274
 
>параметр1</replaceable
3275
 
>, ...);
3276
 
</synopsis
3277
 
></term>
3278
 
<listitem
3279
 
><para
3280
 
>Перекладає <replaceable
3281
 
>однину</replaceable
3282
 
> або <replaceable
3283
 
>множину</replaceable
3284
 
> повідомлення мовою, використаною у інтерфейсі програми залежно від вказаного значення <replaceable
3285
 
>кількість</replaceable
3286
 
>. Крім того, перекладачі зможуть побачити рядок <replaceable
3287
 
>контекст</replaceable
3288
 
>. За допомогою контексту перекладачам буде простіше правильно перекласти рядок. Параметри <replaceable
3289
 
>параметр1</replaceable
3290
 
>, ... є необов’язковими. Вони є замінниками рядків <literal
3291
 
>%1</literal
3292
 
>, <literal
3293
 
>%2</literal
3294
 
> тощо.</para
3295
 
></listitem>
3296
 
</varlistentry
3297
 
></variablelist>
3298
 
 
3299
 
</sect4>
3300
 
</sect3>
3301
 
 
3302
 
<sect3 id="advanced-editing-tools-scripting-api-view">
3303
 
<title
3304
 
>Програмний інтерфейс <classname
3305
 
>View</classname
3306
 
></title>
3307
 
<para
3308
 
>Яким би чином не було запущено скрипт, він завжди користуватиметься загальною змінною <quote
3309
 
><literal
3310
 
>view</literal
3311
 
></quote
3312
 
>, що відповідає поточній активній панелі перегляду. Нижче наведено список всіх типових функцій об’єкта View. <variablelist
3313
 
><varlistentry>
3314
 
<term
3315
 
><synopsis
3316
 
><function
3317
 
>Cursor view.cursorPosition()</function
3318
 
>
3319
 
</synopsis
3320
 
></term>
3321
 
<listitem
3322
 
><para
3323
 
>Повертає поточну позицію курсора у області перегляду.</para
3324
 
></listitem>
3325
 
</varlistentry>
3326
 
 
3327
 
 
3328
 
<varlistentry>
3329
 
<term
3330
 
><synopsis
3331
 
>void view.setCursorPosition(<parameter
3332
 
>int <replaceable
3333
 
>рядок</replaceable
3334
 
></parameter
3335
 
>, <parameter
3336
 
>int <replaceable
3337
 
>стовпчик</replaceable
3338
 
></parameter
3339
 
>);
3340
 
void view.setCursorPosition(<parameter
3341
 
>Cursor <replaceable
3342
 
>курсор</replaceable
3343
 
></parameter
3344
 
>);
3345
 
</synopsis
3346
 
></term>
3347
 
<listitem
3348
 
><para
3349
 
>Встановлює для поточного курсора позицію, вказану напряму (рядок, стовпчик), або позицію вказаного курсора. </para
3350
 
></listitem>
3351
 
</varlistentry>
3352
 
 
3353
 
 
3354
 
<varlistentry>
3355
 
<term
3356
 
><synopsis
3357
 
>Cursor view.virtualCursorPosition();
3358
 
</synopsis
3359
 
></term>
3360
 
<listitem
3361
 
><para
3362
 
>Повертає позицію віртуального курсора. Всі символи табуляцій буде враховано за допомогою відповідної кількості пробілів, яка залежатиме від поточної ширини табуляції. </para
3363
 
></listitem>
3364
 
</varlistentry>
3365
 
 
3366
 
 
3367
 
<varlistentry>
3368
 
<term
3369
 
><synopsis
3370
 
>void view.setVirtualCursorPosition(<parameter
3371
 
>int <replaceable
3372
 
>рядок</replaceable
3373
 
></parameter
3374
 
>, <parameter
3375
 
>int <replaceable
3376
 
>стовпчик</replaceable
3377
 
></parameter
3378
 
>);
3379
 
void view.setVirtualCursorPosition(<parameter
3380
 
>Cursor <replaceable
3381
 
>курсор</replaceable
3382
 
></parameter
3383
 
>);
3384
 
</synopsis
3385
 
></term>
3386
 
<listitem
3387
 
><para
3388
 
>Встановлює для віртуального курсора позицію, вказану напряму (рядок, стовпчик), або позицію вказаного курсора. </para
3389
 
></listitem>
3390
 
</varlistentry>
3391
 
 
3392
 
 
3393
 
<varlistentry>
3394
 
<term
3395
 
><synopsis
3396
 
>String view.selectedText();
3397
 
</synopsis
3398
 
></term>
3399
 
<listitem
3400
 
><para
3401
 
>Повертає позначений фрагмент тексту. Якщо жодного фрагменту не позначено, повертає порожній рядок. </para
3402
 
></listitem>
3403
 
</varlistentry>
3404
 
 
3405
 
 
3406
 
<varlistentry>
3407
 
<term
3408
 
><synopsis
3409
 
>bool view.hasSelection();
3410
 
</synopsis
3411
 
></term>
3412
 
<listitem
3413
 
><para
3414
 
>Повертає <literal
3415
 
>true</literal
3416
 
>, якщо у області перегляду позначено фрагмент тексту, інакше повертає <literal
3417
 
>false</literal
3418
 
>. </para
3419
 
></listitem>
3420
 
</varlistentry>
3421
 
 
3422
 
 
3423
 
<varlistentry>
3424
 
<term
3425
 
><synopsis
3426
 
>Range view.selection();
3427
 
</synopsis
3428
 
></term>
3429
 
<listitem
3430
 
><para
3431
 
>Повертає діапазон позначеного фрагменту тексту. Якщо жодного фрагменту не позначено, буде повернуто некоректний діапазон. </para
3432
 
></listitem>
3433
 
</varlistentry>
3434
 
 
3435
 
 
3436
 
<varlistentry>
3437
 
<term
3438
 
><synopsis
3439
 
>void view.setSelection(<parameter
3440
 
>Range <replaceable
3441
 
>діапазон</replaceable
3442
 
></parameter
3443
 
>);
3444
 
</synopsis
3445
 
></term>
3446
 
<listitem
3447
 
><para
3448
 
>Встановлює позначення тексту за вказаним діапазоном. </para
3449
 
></listitem>
3450
 
</varlistentry>
3451
 
 
3452
 
 
3453
 
<varlistentry>
3454
 
<term
3455
 
><synopsis
3456
 
>void view.removeSelectedText();
3457
 
</synopsis
3458
 
></term>
3459
 
<listitem
3460
 
><para
3461
 
>Вилучає позначений текст. Якщо у області перегляду не було позначено жодного тексту, ніяких дій виконано не буде. </para
3462
 
></listitem>
3463
 
</varlistentry>
3464
 
 
3465
 
 
3466
 
<varlistentry>
3467
 
<term
3468
 
><synopsis
3469
 
>void view.selectAll();
3470
 
</synopsis
3471
 
></term>
3472
 
<listitem
3473
 
><para
3474
 
>Позначає весь текст у документі. </para
3475
 
></listitem>
3476
 
</varlistentry>
3477
 
 
3478
 
 
3479
 
<varlistentry>
3480
 
<term
3481
 
><synopsis
3482
 
>void view.clearSelection();
3483
 
</synopsis
3484
 
></term>
3485
 
<listitem
3486
 
><para
3487
 
>Знімає позначення фрагменту тексту, не вилучаючи сам текст. </para
3488
 
></listitem>
3489
 
</varlistentry
3490
 
></variablelist>
3491
 
</para>
3492
 
</sect3>
3493
 
 
3494
 
<sect3 id="advanced-editing-tools-scripting-api-document">
3495
 
<title
3496
 
>Програмний інтерфейс (API) <classname
3497
 
>Document</classname
3498
 
></title>
3499
 
<para
3500
 
>Яким би чином не було запущено скрипт, він завжди користуватиметься загальною змінною <quote
3501
 
><literal
3502
 
>document</literal
3503
 
></quote
3504
 
>, що відповідає поточній активній панелі перегляду. Нижче наведено список всіх типових функцій об’єкта Document. <variablelist
3505
 
><varlistentry>
3506
 
<term
3507
 
><synopsis
3508
 
>String document.fileName();
3509
 
</synopsis
3510
 
></term>
3511
 
<listitem
3512
 
><para
3513
 
>Повертає назву файла документа або порожній рядок для незбережених буферів з текстом. </para
3514
 
></listitem>
3515
 
</varlistentry>
3516
 
 
3517
 
 
3518
 
<varlistentry>
3519
 
<term
3520
 
><synopsis
3521
 
>String document.url();
3522
 
</synopsis
3523
 
></term>
3524
 
<listitem
3525
 
><para
3526
 
>Повертає адресу URL документа повністю або порожній рядок для незбережених буферів з текстом. </para
3527
 
></listitem>
3528
 
</varlistentry>
3529
 
 
3530
 
 
3531
 
<varlistentry>
3532
 
<term
3533
 
><synopsis
3534
 
>String document.mimeType();
3535
 
</synopsis
3536
 
></term>
3537
 
<listitem
3538
 
><para
3539
 
>Повертає тип MIME документа або тип MIME <literal
3540
 
>application/octet-stream</literal
3541
 
>, якщо відповідного типу MIME встановити не вдасться. </para
3542
 
></listitem>
3543
 
</varlistentry>
3544
 
 
3545
 
 
3546
 
<varlistentry>
3547
 
<term
3548
 
><synopsis
3549
 
>String document.encoding();
3550
 
</synopsis
3551
 
></term>
3552
 
<listitem
3553
 
><para
3554
 
>Повертає поточне кодування символів, яке буде використано для збереження даних файла. </para
3555
 
></listitem>
3556
 
</varlistentry>
3557
 
 
3558
 
<varlistentry>
3559
 
<term
3560
 
><synopsis
3561
 
>String document.highlightingMode();
3562
 
</synopsis
3563
 
></term>
3564
 
<listitem
3565
 
><para
3566
 
>Повертає загальний режим підсвічування, використаний у всьому документі. </para
3567
 
></listitem>
3568
 
</varlistentry>
3569
 
 
3570
 
<varlistentry>
3571
 
<term
3572
 
><synopsis
3573
 
>String document.highlightingModeAt(<parameter
3574
 
>Cursor <replaceable
3575
 
>позиція</replaceable
3576
 
></parameter
3577
 
>);
3578
 
</synopsis
3579
 
></term>
3580
 
<listitem
3581
 
><para
3582
 
>Повертає режим підсвічування, використаний за вказаною позицією у тексті. </para
3583
 
></listitem>
3584
 
</varlistentry>
3585
 
 
3586
 
<varlistentry>
3587
 
<term
3588
 
><synopsis
3589
 
>Array document.embeddedHighlightingModes();
3590
 
</synopsis
3591
 
></term>
3592
 
<listitem
3593
 
><para
3594
 
>Повертає масив режимів підсвічування, вбудованих до поточного документа. </para
3595
 
></listitem>
3596
 
</varlistentry>
3597
 
 
3598
 
<varlistentry>
3599
 
<term
3600
 
><synopsis
3601
 
>bool document.isModified();
3602
 
</synopsis
3603
 
></term>
3604
 
<listitem
3605
 
><para
3606
 
>Повертає <literal
3607
 
>true</literal
3608
 
>, якщо у документі є незбережені зміни, інакше повертає <literal
3609
 
>false</literal
3610
 
>. </para
3611
 
></listitem>
3612
 
</varlistentry>
3613
 
 
3614
 
 
3615
 
<varlistentry>
3616
 
<term
3617
 
><synopsis
3618
 
>String document.text();
3619
 
</synopsis
3620
 
></term>
3621
 
<listitem
3622
 
><para
3623
 
>Повертає увесь вміст документа у формі єдиного рядка тексту. Розриви рядків буде позначено символом розриву рядка <quote
3624
 
><literal
3625
 
>\n</literal
3626
 
></quote
3627
 
>. </para
3628
 
></listitem>
3629
 
</varlistentry>
3630
 
 
3631
 
 
3632
 
<varlistentry>
3633
 
<term
3634
 
><synopsis
3635
 
>String document.text(<parameter
3636
 
>int <replaceable
3637
 
>зРядка</replaceable
3638
 
></parameter
3639
 
>, <parameter
3640
 
>int <replaceable
3641
 
>зіСтовпчика</replaceable
3642
 
></parameter
3643
 
>, <parameter
3644
 
>int <replaceable
3645
 
>доРядка</replaceable
3646
 
></parameter
3647
 
>, <parameter
3648
 
>int <replaceable
3649
 
>доСтовпчика</replaceable
3650
 
></parameter
3651
 
>);
3652
 
String document.text(<parameter
3653
 
>Cursor <replaceable
3654
 
>з</replaceable
3655
 
></parameter
3656
 
>, <parameter
3657
 
>Cursor <replaceable
3658
 
>до</replaceable
3659
 
></parameter
3660
 
>);
3661
 
String document.text(<parameter
3662
 
>Range <replaceable
3663
 
>діапазон</replaceable
3664
 
></parameter
3665
 
>);
3666
 
</synopsis
3667
 
></term>
3668
 
<listitem
3669
 
><para
3670
 
>Повертає фрагмент тексту у вказаному діапазоні. Для того, щоб код було легше читати, ми рекомендуємо вам використовувати засновану на об’єктах Cursor і Range версію функції. </para
3671
 
></listitem>
3672
 
</varlistentry>
3673
 
 
3674
 
 
3675
 
<varlistentry>
3676
 
<term
3677
 
><synopsis
3678
 
>String document.line(<parameter
3679
 
>int <replaceable
3680
 
>рядок</replaceable
3681
 
></parameter
3682
 
>);
3683
 
</synopsis
3684
 
></term>
3685
 
<listitem
3686
 
><para
3687
 
>Повертає рядок за його номером у тексті. Якщо вказаний номер не належатиме до діапазону номерів рядків документа, буде повернуто порожній рядок. </para
3688
 
></listitem>
3689
 
</varlistentry>
3690
 
 
3691
 
 
3692
 
<varlistentry>
3693
 
<term
3694
 
><synopsis
3695
 
>String document.wordAt(<parameter
3696
 
>int <replaceable
3697
 
>рядок</replaceable
3698
 
></parameter
3699
 
>, <parameter
3700
 
>int <replaceable
3701
 
>стовпчик</replaceable
3702
 
></parameter
3703
 
>);
3704
 
String document.wordAt(<parameter
3705
 
>Cursor <replaceable
3706
 
>курсор</replaceable
3707
 
></parameter
3708
 
>);
3709
 
</synopsis
3710
 
></term>
3711
 
<listitem
3712
 
><para
3713
 
>Повертає слово за вказаною позицією курсора. </para
3714
 
></listitem>
3715
 
</varlistentry>
3716
 
 
3717
 
 
3718
 
<varlistentry>
3719
 
<term>
3720
 
<synopsis
3721
 
>Range document.wordRangeAt(<parameter
3722
 
>int <replaceable
3723
 
>рядок</replaceable
3724
 
></parameter
3725
 
>, <parameter
3726
 
>int <replaceable
3727
 
>стовпчик</replaceable
3728
 
></parameter
3729
 
>);
3730
 
Range document.wordRangeAt(<parameter
3731
 
>Cursor <replaceable
3732
 
>курсор</replaceable
3733
 
></parameter
3734
 
>);
3735
 
</synopsis>
3736
 
</term>
3737
 
<listitem
3738
 
><para
3739
 
>Повертає діапазон слова за вказаним розташуванням курсора. Повернуте значення діапазону буде некоректним (див. Range.isValid()), якщо текст розташовано за кінцем рядка. Якщо за вказаним розташуванням курсора не буде слова, функцією буде повернуто порожній діапазон. </para>
3740
 
<para
3741
 
>Актуальна версія: KDE 4.9 </para>
3742
 
</listitem>
3743
 
</varlistentry>
3744
 
 
3745
 
 
3746
 
<varlistentry>
3747
 
<term
3748
 
><synopsis
3749
 
>String document.charAt(<parameter
3750
 
>int <replaceable
3751
 
>рядок</replaceable
3752
 
></parameter
3753
 
>, <parameter
3754
 
>int <replaceable
3755
 
>стовпчик</replaceable
3756
 
></parameter
3757
 
>);
3758
 
String document.charAt(<parameter
3759
 
>Cursor <replaceable
3760
 
>курсор</replaceable
3761
 
></parameter
3762
 
>);
3763
 
</synopsis
3764
 
></term>
3765
 
<listitem
3766
 
><para
3767
 
>Повертає символ за вказаною позицією курсора. </para
3768
 
></listitem>
3769
 
</varlistentry>
3770
 
 
3771
 
 
3772
 
<varlistentry>
3773
 
<term
3774
 
><synopsis
3775
 
>String document.firstChar(<parameter
3776
 
>int <replaceable
3777
 
>рядок</replaceable
3778
 
></parameter
3779
 
>);
3780
 
</synopsis
3781
 
></term>
3782
 
<listitem
3783
 
><para
3784
 
>Повертає перший символ вказаного рядка <replaceable
3785
 
>рядок</replaceable
3786
 
>, який не є пробілом. Першим символом рядка вважається символ у стовпчику 0. Якщо рядок є порожнім або складається лише з пробілів, функція повертає порожній рядок. </para
3787
 
></listitem>
3788
 
</varlistentry>
3789
 
 
3790
 
 
3791
 
<varlistentry>
3792
 
<term
3793
 
><synopsis
3794
 
>String document.lastChar(<parameter
3795
 
>int <replaceable
3796
 
>рядок</replaceable
3797
 
></parameter
3798
 
>);
3799
 
</synopsis
3800
 
></term>
3801
 
<listitem
3802
 
><para
3803
 
>Повертає останній символ вказаного рядка <replaceable
3804
 
>рядок</replaceable
3805
 
>, який не є пробілом. Якщо рядок є порожнім або складається лише з пробілів, функція повертає порожній рядок. </para
3806
 
></listitem>
3807
 
</varlistentry>
3808
 
 
3809
 
 
3810
 
<varlistentry>
3811
 
<term
3812
 
><synopsis
3813
 
>bool document.isSpace(<parameter
3814
 
>int <replaceable
3815
 
>рядок</replaceable
3816
 
></parameter
3817
 
>, <parameter
3818
 
>int <replaceable
3819
 
>стовпчик</replaceable
3820
 
></parameter
3821
 
>);
3822
 
bool document.isSpace(<parameter
3823
 
>Cursor <replaceable
3824
 
>курсор</replaceable
3825
 
></parameter
3826
 
>);
3827
 
</synopsis
3828
 
></term>
3829
 
<listitem
3830
 
><para
3831
 
>Повертає <literal
3832
 
>true</literal
3833
 
>, якщо символ у вказаній позиції курсора є пробілом. Якщо це не так, повертає <literal
3834
 
>false</literal
3835
 
>. </para
3836
 
></listitem>
3837
 
</varlistentry>
3838
 
 
3839
 
 
3840
 
<varlistentry>
3841
 
<term
3842
 
><synopsis
3843
 
>bool document.matchesAt(<parameter
3844
 
>int <replaceable
3845
 
>рядок</replaceable
3846
 
></parameter
3847
 
>, <parameter
3848
 
>int <replaceable
3849
 
>стовпчик</replaceable
3850
 
></parameter
3851
 
>, <parameter
3852
 
>String <replaceable
3853
 
>текст</replaceable
3854
 
></parameter
3855
 
>);
3856
 
bool document.matchesAt(<parameter
3857
 
>Cursor <replaceable
3858
 
>курсор</replaceable
3859
 
></parameter
3860
 
>, <parameter
3861
 
>String <replaceable
3862
 
>текст</replaceable
3863
 
></parameter
3864
 
>);
3865
 
</synopsis
3866
 
></term>
3867
 
<listitem
3868
 
><para
3869
 
>Повертає <literal
3870
 
>true</literal
3871
 
>, якщо вказаний <replaceable
3872
 
>текст</replaceable
3873
 
> розташовано за відповідною позицією курсора. Якщо це не так, повертає <literal
3874
 
>false</literal
3875
 
>. </para
3876
 
></listitem>
3877
 
</varlistentry>
3878
 
 
3879
 
 
3880
 
<varlistentry>
3881
 
<term
3882
 
><synopsis
3883
 
>bool document.startsWith(<parameter
3884
 
>int <replaceable
3885
 
>рядок</replaceable
3886
 
></parameter
3887
 
>, <parameter
3888
 
>String <replaceable
3889
 
>текст</replaceable
3890
 
></parameter
3891
 
>, <parameter
3892
 
>bool <replaceable
3893
 
>пропускатиПробіли</replaceable
3894
 
></parameter
3895
 
>);
3896
 
</synopsis
3897
 
></term>
3898
 
<listitem
3899
 
><para
3900
 
>Повертає <literal
3901
 
>true</literal
3902
 
>, якщо рядок з вказаним номером починається з фрагмента тексту <replaceable
3903
 
>текст</replaceable
3904
 
>. Якщо це не так, повертає <literal
3905
 
>false</literal
3906
 
>. За допомогою параметра <replaceable
3907
 
>пропускатиПробіли</replaceable
3908
 
> можна вказати програмі, чи слід ігнорувати пробіли. </para
3909
 
></listitem>
3910
 
</varlistentry>
3911
 
 
3912
 
 
3913
 
<varlistentry>
3914
 
<term
3915
 
><synopsis
3916
 
>bool document.endsWith(<parameter
3917
 
>int <replaceable
3918
 
>рядок</replaceable
3919
 
></parameter
3920
 
>, <parameter
3921
 
>String <replaceable
3922
 
>текст</replaceable
3923
 
></parameter
3924
 
>, <parameter
3925
 
>bool <replaceable
3926
 
>пропускатиПробіли</replaceable
3927
 
></parameter
3928
 
>);
3929
 
</synopsis
3930
 
></term>
3931
 
<listitem
3932
 
><para
3933
 
>Повертає <literal
3934
 
>true</literal
3935
 
>, якщо рядок з вказаним номером завершується фрагментом тексту <replaceable
3936
 
>текст</replaceable
3937
 
>. Якщо це не так, повертає <literal
3938
 
>false</literal
3939
 
>. За допомогою параметра <replaceable
3940
 
>пропускатиПробіли</replaceable
3941
 
> можна вказати програмі, чи слід ігнорувати пробіли. </para
3942
 
></listitem>
3943
 
</varlistentry>
3944
 
 
3945
 
 
3946
 
<varlistentry>
3947
 
<term
3948
 
><synopsis
3949
 
>bool document.setText(<parameter
3950
 
>String <replaceable
3951
 
>текст</replaceable
3952
 
></parameter
3953
 
>);
3954
 
</synopsis
3955
 
></term>
3956
 
<listitem
3957
 
><para
3958
 
>Замінює весь вміст документа на <parameter
3959
 
>текст</parameter
3960
 
>. </para
3961
 
></listitem>
3962
 
</varlistentry>
3963
 
 
3964
 
 
3965
 
<varlistentry>
3966
 
<term
3967
 
><synopsis
3968
 
>bool document.clear();
3969
 
</synopsis
3970
 
></term>
3971
 
<listitem
3972
 
><para
3973
 
>Вилучає з документа весь текст. </para
3974
 
></listitem>
3975
 
</varlistentry>
3976
 
 
3977
 
 
3978
 
<varlistentry>
3979
 
<term
3980
 
><synopsis
3981
 
>bool document.truncate(<parameter
3982
 
>int <replaceable
3983
 
>рядок</replaceable
3984
 
></parameter
3985
 
>, <parameter
3986
 
>int <replaceable
3987
 
>стовпчик</replaceable
3988
 
></parameter
3989
 
>);
3990
 
bool document.truncate(<parameter
3991
 
>Cursor <replaceable
3992
 
>курсор</replaceable
3993
 
></parameter
3994
 
>);
3995
 
</synopsis
3996
 
></term>
3997
 
<listitem
3998
 
><para
3999
 
>Обрізає рядок з вказаним номером на вказаному стовпчику або позиції курсора. Повертає <literal
4000
 
>true</literal
4001
 
> у разі успіху або <literal
4002
 
>false</literal
4003
 
>, якщо рядка з вказаним номером у документі немає. </para
4004
 
></listitem>
4005
 
</varlistentry>
4006
 
 
4007
 
 
4008
 
<varlistentry>
4009
 
<term
4010
 
><synopsis
4011
 
>bool document.insertText(<parameter
4012
 
>int <replaceable
4013
 
>рядок</replaceable
4014
 
></parameter
4015
 
>, <parameter
4016
 
>int <replaceable
4017
 
>стовпчик</replaceable
4018
 
></parameter
4019
 
>, <parameter
4020
 
>String <replaceable
4021
 
>текст</replaceable
4022
 
></parameter
4023
 
>);
4024
 
bool document.insertText(<parameter
4025
 
>Cursor <replaceable
4026
 
>курсор</replaceable
4027
 
></parameter
4028
 
>, <parameter
4029
 
>String <replaceable
4030
 
>текст</replaceable
4031
 
></parameter
4032
 
>);
4033
 
</synopsis
4034
 
></term>
4035
 
<listitem
4036
 
><para
4037
 
>Вставляє фрагмент тексту <replaceable
4038
 
>текст</replaceable
4039
 
> у вказану позицію курсора. Повертає <literal
4040
 
>true</literal
4041
 
> у разі успіху або <literal
4042
 
>false</literal
4043
 
>, якщо документ відкрито у режимі лише для читання. </para
4044
 
></listitem>
4045
 
</varlistentry>
4046
 
 
4047
 
 
4048
 
<varlistentry>
4049
 
<term
4050
 
><synopsis
4051
 
>bool document.removeText(<parameter
4052
 
>int <replaceable
4053
 
>зРядка</replaceable
4054
 
></parameter
4055
 
>, <parameter
4056
 
>int <replaceable
4057
 
>зіСтовпчика</replaceable
4058
 
></parameter
4059
 
>, <parameter
4060
 
>int <replaceable
4061
 
>доРядка</replaceable
4062
 
></parameter
4063
 
>, <parameter
4064
 
>int <replaceable
4065
 
>доСтовпчика</replaceable
4066
 
></parameter
4067
 
>);
4068
 
bool document.removeText(<parameter
4069
 
>Cursor <replaceable
4070
 
>з</replaceable
4071
 
></parameter
4072
 
>, <parameter
4073
 
>Cursor <replaceable
4074
 
>до</replaceable
4075
 
></parameter
4076
 
>);
4077
 
bool document.removeText(<parameter
4078
 
>Range <replaceable
4079
 
>діапазон</replaceable
4080
 
></parameter
4081
 
>);
4082
 
</synopsis
4083
 
></term>
4084
 
<listitem
4085
 
><para
4086
 
>Вилучає текст у вказаному діапазоні. Повертає <literal
4087
 
>true</literal
4088
 
> у разі успіху або <literal
4089
 
>false</literal
4090
 
>, якщо документ відкрито у режимі лише для читання. </para
4091
 
></listitem>
4092
 
</varlistentry>
4093
 
 
4094
 
 
4095
 
<varlistentry>
4096
 
<term
4097
 
><synopsis
4098
 
>bool document.insertLine(<parameter
4099
 
>int <replaceable
4100
 
>рядок</replaceable
4101
 
></parameter
4102
 
>, <parameter
4103
 
>String <replaceable
4104
 
>текст</replaceable
4105
 
></parameter
4106
 
>);
4107
 
</synopsis
4108
 
></term>
4109
 
<listitem
4110
 
><para
4111
 
>Вставляє вказаний фрагмент тексту до рядка з вказаним номером. Повертає <literal
4112
 
>true</literal
4113
 
> у разі успіху або <literal
4114
 
>false</literal
4115
 
>, якщо документ відкрито у режимі лише для читання або рядка з вказаним номером у документі немає. </para
4116
 
></listitem>
4117
 
</varlistentry>
4118
 
 
4119
 
 
4120
 
<varlistentry>
4121
 
<term
4122
 
><synopsis
4123
 
>bool document.removeLine(<parameter
4124
 
>int <replaceable
4125
 
>рядок</replaceable
4126
 
></parameter
4127
 
>);
4128
 
</synopsis
4129
 
></term>
4130
 
<listitem
4131
 
><para
4132
 
>Вилучає рядок з вказаним номером. Повертає <literal
4133
 
>true</literal
4134
 
> у разі успіху або <literal
4135
 
>false</literal
4136
 
>, якщо документ відкрито у режимі лише для читання або рядка з вказаним номером у документі немає. </para
4137
 
></listitem>
4138
 
</varlistentry>
4139
 
 
4140
 
 
4141
 
<varlistentry>
4142
 
<term
4143
 
><synopsis
4144
 
>bool document.wrapLine(<parameter
4145
 
>int <replaceable
4146
 
>рядок</replaceable
4147
 
></parameter
4148
 
>, <parameter
4149
 
>int <replaceable
4150
 
>стовпчик</replaceable
4151
 
></parameter
4152
 
>);
4153
 
bool document.wrapLine(<parameter
4154
 
>Cursor <replaceable
4155
 
>курсор</replaceable
4156
 
></parameter
4157
 
>);
4158
 
</synopsis
4159
 
></term>
4160
 
<listitem
4161
 
><para
4162
 
>Обрізає рядок з вказаним номером за вказаним розташуванням курсора. Повертає <literal
4163
 
>true</literal
4164
 
> у разі успіху. У інших випадках повертає <literal
4165
 
>false</literal
4166
 
> (наприклад, якщо номер рядка &lt; 0). </para>
4167
 
<para
4168
 
>Актуальна версія: KDE 4.9 </para>
4169
 
</listitem>
4170
 
</varlistentry>
4171
 
 
4172
 
 
4173
 
<varlistentry>
4174
 
<term
4175
 
><synopsis
4176
 
>void document.joinLines(<parameter
4177
 
>int <replaceable
4178
 
>початковийРядок</replaceable
4179
 
></parameter
4180
 
>, <parameter
4181
 
>int <replaceable
4182
 
>кінцевийРядок</replaceable
4183
 
></parameter
4184
 
>);
4185
 
</synopsis
4186
 
></term>
4187
 
<listitem
4188
 
><para
4189
 
>Об’єднує рядки у діапазоні від<replaceable
4190
 
>початковийРядок</replaceable
4191
 
> до <replaceable
4192
 
>кінцевийРядок</replaceable
4193
 
>. Послідовні рядки тексту завжди відокремлюються одинарним пробілом. </para
4194
 
></listitem>
4195
 
</varlistentry>
4196
 
 
4197
 
 
4198
 
<varlistentry>
4199
 
<term
4200
 
><synopsis
4201
 
>int document.lines();
4202
 
</synopsis
4203
 
></term>
4204
 
<listitem
4205
 
><para
4206
 
>Повертає кількість рядків у документі. </para
4207
 
></listitem>
4208
 
</varlistentry>
4209
 
 
4210
 
 
4211
 
<varlistentry>
4212
 
<term
4213
 
><synopsis
4214
 
>int document.length();
4215
 
</synopsis
4216
 
></term>
4217
 
<listitem
4218
 
><para
4219
 
>Повертає кількість символів у документі. </para
4220
 
></listitem>
4221
 
</varlistentry>
4222
 
 
4223
 
 
4224
 
<varlistentry>
4225
 
<term
4226
 
><synopsis
4227
 
>int document.lineLength(<parameter
4228
 
>int <replaceable
4229
 
>рядок</replaceable
4230
 
></parameter
4231
 
>);
4232
 
</synopsis
4233
 
></term>
4234
 
<listitem
4235
 
><para
4236
 
>Повертає довжину рядка з номером <replaceable
4237
 
>рядок</replaceable
4238
 
>. </para
4239
 
></listitem>
4240
 
</varlistentry>
4241
 
 
4242
 
 
4243
 
<varlistentry>
4244
 
<term
4245
 
><synopsis
4246
 
>void document.editBegin();
4247
 
</synopsis
4248
 
></term>
4249
 
<listitem
4250
 
><para
4251
 
>Започатковує групу редагування для впорядкування операцій зі скасування або повторення дій. Не забувайте, що викликати <function
4252
 
>editEnd()</function
4253
 
> слід саме стільки разів, скільки разів було викликано <function
4254
 
>editBegin()</function
4255
 
>. Виклики <function
4256
 
>editBegin()</function
4257
 
> використовують вбудований лічильник, отже їх може бути вкладено один у оден. </para
4258
 
></listitem>
4259
 
</varlistentry>
4260
 
 
4261
 
 
4262
 
<varlistentry>
4263
 
<term
4264
 
><synopsis
4265
 
>void document.editEnd();
4266
 
</synopsis
4267
 
></term>
4268
 
<listitem
4269
 
><para
4270
 
>Завершує групу редагування. Останній виклик <function
4271
 
>editEnd()</function
4272
 
> (тобто відповідник першого виклику <function
4273
 
>editBegin()</function
4274
 
>) завершує крок з редагування. </para
4275
 
></listitem>
4276
 
</varlistentry>
4277
 
 
4278
 
 
4279
 
<varlistentry>
4280
 
<term
4281
 
><synopsis
4282
 
>int document.firstColumn(<parameter
4283
 
>int <replaceable
4284
 
>рядок</replaceable
4285
 
></parameter
4286
 
>);
4287
 
</synopsis
4288
 
></term>
4289
 
<listitem
4290
 
><para
4291
 
>Повертає перший відмінний від пробілу стовпчик у вказаному за допомогою параметра номера, <replaceable
4292
 
>рядок</replaceable
4293
 
>, рядку. Якщо у рядку будуть лише пробіли, функція поверне значення <literal
4294
 
>-1</literal
4295
 
>. </para
4296
 
></listitem>
4297
 
</varlistentry>
4298
 
 
4299
 
 
4300
 
<varlistentry>
4301
 
<term
4302
 
><synopsis
4303
 
>int document.lastColumn(<parameter
4304
 
>int <replaceable
4305
 
>рядок</replaceable
4306
 
></parameter
4307
 
>);
4308
 
</synopsis
4309
 
></term>
4310
 
<listitem
4311
 
><para
4312
 
>Повертає останній відмінний від пробілу стовпчик у вказаному за допомогою параметра номера, <replaceable
4313
 
>рядок</replaceable
4314
 
>, рядку. Якщо у рядку будуть лише пробіли, функція поверне значення <literal
4315
 
>-1</literal
4316
 
>. </para
4317
 
></listitem>
4318
 
</varlistentry>
4319
 
 
4320
 
 
4321
 
<varlistentry>
4322
 
<term
4323
 
><synopsis
4324
 
>int document.prevNonSpaceColumn(<parameter
4325
 
>int <replaceable
4326
 
>рядок</replaceable
4327
 
></parameter
4328
 
>, <parameter
4329
 
>int <replaceable
4330
 
>стовпчик</replaceable
4331
 
></parameter
4332
 
>);
4333
 
int document.prevNonSpaceColumn(<parameter
4334
 
>Cursor <replaceable
4335
 
>курсор</replaceable
4336
 
></parameter
4337
 
>);
4338
 
</synopsis
4339
 
></term>
4340
 
<listitem
4341
 
><para
4342
 
>Повертає номер стовпчика з символом, відмінним від пробілу. Пошук буде виконано у напрямку початку документа, починаючи з вказаної позиції курсора. </para
4343
 
></listitem>
4344
 
</varlistentry>
4345
 
 
4346
 
 
4347
 
<varlistentry>
4348
 
<term
4349
 
><synopsis
4350
 
>int document.nextNonSpaceColumn(<parameter
4351
 
>int <replaceable
4352
 
>рядок</replaceable
4353
 
></parameter
4354
 
>, <parameter
4355
 
>int <replaceable
4356
 
>стовпчик</replaceable
4357
 
></parameter
4358
 
>);
4359
 
int document.nextNonSpaceColumn(<parameter
4360
 
>Cursor <replaceable
4361
 
>курсор</replaceable
4362
 
></parameter
4363
 
>);
4364
 
</synopsis
4365
 
></term>
4366
 
<listitem
4367
 
><para
4368
 
>Повертає номер стовпчика з символом, відмінним від пробілу. Пошук буде виконано у напрямку кінця документа, починаючи з вказаної позиції курсора. </para
4369
 
></listitem>
4370
 
</varlistentry>
4371
 
 
4372
 
 
4373
 
<varlistentry>
4374
 
<term
4375
 
><synopsis
4376
 
>int document.prevNonEmptyLine(<parameter
4377
 
>int <replaceable
4378
 
>рядок</replaceable
4379
 
></parameter
4380
 
>);
4381
 
</synopsis
4382
 
></term>
4383
 
<listitem
4384
 
><para
4385
 
>Повертає наступний непорожній рядок, що містить символи, відмінні від пробілів. Пошук відбуватиметься у напрямку початку документа. </para
4386
 
></listitem>
4387
 
</varlistentry>
4388
 
 
4389
 
 
4390
 
<varlistentry>
4391
 
<term
4392
 
><synopsis
4393
 
>int document.nextNonEmptyLine(<parameter
4394
 
>int <replaceable
4395
 
>рядок</replaceable
4396
 
></parameter
4397
 
>);
4398
 
</synopsis
4399
 
></term>
4400
 
<listitem
4401
 
><para
4402
 
>Повертає наступний непорожній рядок, що містить символи, відмінні від пробілів. Пошук відбуватиметься у напрямку кінця документа. </para
4403
 
></listitem>
4404
 
</varlistentry>
4405
 
 
4406
 
 
4407
 
<varlistentry>
4408
 
<term
4409
 
><synopsis
4410
 
>bool document.isInWord(<parameter
4411
 
>String <replaceable
4412
 
>символ</replaceable
4413
 
></parameter
4414
 
>, <parameter
4415
 
>int <replaceable
4416
 
>атрибут</replaceable
4417
 
></parameter
4418
 
>);
4419
 
</synopsis
4420
 
></term>
4421
 
<listitem
4422
 
><para
4423
 
>Повертає <literal
4424
 
>true</literal
4425
 
>, якщо вказаний <replaceable
4426
 
>символ</replaceable
4427
 
> з вказаним параметром <replaceable
4428
 
>атрибут</replaceable
4429
 
> може бути частиною слова. Якщо це не так, повертає <literal
4430
 
>false</literal
4431
 
>. </para
4432
 
></listitem>
4433
 
</varlistentry>
4434
 
 
4435
 
 
4436
 
<varlistentry>
4437
 
<term
4438
 
><synopsis
4439
 
>bool document.canBreakAt(<parameter
4440
 
>String <replaceable
4441
 
>символ</replaceable
4442
 
></parameter
4443
 
>, <parameter
4444
 
>int <replaceable
4445
 
>атрибут</replaceable
4446
 
></parameter
4447
 
>);
4448
 
</synopsis
4449
 
></term>
4450
 
<listitem
4451
 
><para
4452
 
>Повертає <literal
4453
 
>true</literal
4454
 
>, якщо вказаний <replaceable
4455
 
>символ</replaceable
4456
 
> з вказаним параметром <replaceable
4457
 
>атрибут</replaceable
4458
 
> може бути використано для розбиття рядка. Якщо це не так, повертає <literal
4459
 
>false</literal
4460
 
>. </para
4461
 
></listitem>
4462
 
</varlistentry>
4463
 
 
4464
 
 
4465
 
<varlistentry>
4466
 
<term
4467
 
><synopsis
4468
 
>bool document.canComment(<parameter
4469
 
>int <replaceable
4470
 
>атрибутПочатку</replaceable
4471
 
></parameter
4472
 
>, <parameter
4473
 
>int <replaceable
4474
 
>атрибутКінця</replaceable
4475
 
></parameter
4476
 
>);
4477
 
</synopsis
4478
 
></term>
4479
 
<listitem
4480
 
><para
4481
 
>Повертає <literal
4482
 
>true</literal
4483
 
>, якщо діапазон тексту, початок і кінець якого визначаються на основі вказаних атрибутів, можна закоментувати. Якщо це не так, повертає <literal
4484
 
>false</literal
4485
 
>. </para
4486
 
></listitem>
4487
 
</varlistentry>
4488
 
 
4489
 
 
4490
 
<varlistentry>
4491
 
<term
4492
 
><synopsis
4493
 
>String document.commentMarker(<parameter
4494
 
>int <replaceable
4495
 
>атрибут</replaceable
4496
 
></parameter
4497
 
>);
4498
 
</synopsis
4499
 
></term>
4500
 
<listitem
4501
 
><para
4502
 
>Повертає позначку коментаря для окремого рядка коментарів з вказаним параметром <replaceable
4503
 
>атрибут</replaceable
4504
 
>. </para
4505
 
></listitem>
4506
 
</varlistentry>
4507
 
 
4508
 
 
4509
 
<varlistentry>
4510
 
<term
4511
 
><synopsis
4512
 
>String document.commentStart(<parameter
4513
 
>int <replaceable
4514
 
>атрибут</replaceable
4515
 
></parameter
4516
 
>);
4517
 
</synopsis
4518
 
></term>
4519
 
<listitem
4520
 
><para
4521
 
>Повертає позначку, якою має розпочинатися багаторядковий коментар для вказаного значення параметра <replaceable
4522
 
>атрибут</replaceable
4523
 
>. </para
4524
 
></listitem>
4525
 
</varlistentry>
4526
 
 
4527
 
 
4528
 
<varlistentry>
4529
 
<term
4530
 
><synopsis
4531
 
>String document.commentEnd(<parameter
4532
 
>int <replaceable
4533
 
>атрибут</replaceable
4534
 
></parameter
4535
 
>);
4536
 
</synopsis
4537
 
></term>
4538
 
<listitem
4539
 
><para
4540
 
>Повертає позначку, якою має розпочинатися багаторядковий коментар для вказаного значення параметра <replaceable
4541
 
>атрибут</replaceable
4542
 
>. </para
4543
 
></listitem>
4544
 
</varlistentry>
4545
 
 
4546
 
 
4547
 
 
4548
 
<varlistentry>
4549
 
<term
4550
 
><synopsis
4551
 
>int document.attribute(<parameter
4552
 
>int <replaceable
4553
 
>рядок</replaceable
4554
 
></parameter
4555
 
>, <parameter
4556
 
>int <replaceable
4557
 
>стовпчик</replaceable
4558
 
></parameter
4559
 
>);
4560
 
int document.attribute(<parameter
4561
 
>Cursor <replaceable
4562
 
>курсор</replaceable
4563
 
></parameter
4564
 
>);
4565
 
</synopsis
4566
 
></term>
4567
 
<listitem
4568
 
><para
4569
 
>Повертає атрибут за вказаною позицією курсора. </para
4570
 
></listitem>
4571
 
</varlistentry>
4572
 
 
4573
 
 
4574
 
<varlistentry>
4575
 
<term
4576
 
><synopsis
4577
 
>bool document.isAttribute(<parameter
4578
 
>int <replaceable
4579
 
>рядок</replaceable
4580
 
></parameter
4581
 
>, <parameter
4582
 
>int <replaceable
4583
 
>стовпчик</replaceable
4584
 
></parameter
4585
 
>, <parameter
4586
 
>int <replaceable
4587
 
>атрибут</replaceable
4588
 
></parameter
4589
 
>);
4590
 
bool document.isAttribute(<parameter
4591
 
>Cursor <replaceable
4592
 
>курсор</replaceable
4593
 
></parameter
4594
 
>, <parameter
4595
 
>int <replaceable
4596
 
>атрибут</replaceable
4597
 
></parameter
4598
 
>);
4599
 
</synopsis
4600
 
></term>
4601
 
<listitem
4602
 
><para
4603
 
>Повертає <literal
4604
 
>true</literal
4605
 
>, якщо атрибут за вказаною позицією курсора дорівнює значенню параметра <replaceable
4606
 
>атрибут</replaceable
4607
 
>. Якщо це не так, повертає <literal
4608
 
>false</literal
4609
 
>. </para
4610
 
></listitem>
4611
 
</varlistentry>
4612
 
 
4613
 
 
4614
 
<varlistentry>
4615
 
<term
4616
 
><synopsis
4617
 
>String document.attributeName(<parameter
4618
 
>int <replaceable
4619
 
>рядок</replaceable
4620
 
></parameter
4621
 
>, <parameter
4622
 
>int <replaceable
4623
 
>стовпчик</replaceable
4624
 
></parameter
4625
 
>);
4626
 
String document.attributeName(<parameter
4627
 
>Cursor <replaceable
4628
 
>курсор</replaceable
4629
 
></parameter
4630
 
>);
4631
 
</synopsis
4632
 
></term>
4633
 
<listitem
4634
 
><para
4635
 
>Повертає назву атрибута придатну до читання. Ця назва відповідає назві <literal
4636
 
>itemData</literal
4637
 
> у файлах підсвічування синтаксичних конструкцій. </para
4638
 
></listitem>
4639
 
</varlistentry>
4640
 
 
4641
 
 
4642
 
<varlistentry>
4643
 
<term
4644
 
><synopsis
4645
 
>bool document.isAttributeName(<parameter
4646
 
>int <replaceable
4647
 
>рядок</replaceable
4648
 
></parameter
4649
 
>, <parameter
4650
 
>int <replaceable
4651
 
>стовпчик</replaceable
4652
 
></parameter
4653
 
>, <parameter
4654
 
>String <replaceable
4655
 
>назва</replaceable
4656
 
></parameter
4657
 
>);
4658
 
bool document.isAttributeName(<parameter
4659
 
>Cursor <replaceable
4660
 
>курсор</replaceable
4661
 
></parameter
4662
 
>, <parameter
4663
 
>String <replaceable
4664
 
>назва</replaceable
4665
 
></parameter
4666
 
>);
4667
 
</synopsis
4668
 
></term>
4669
 
<listitem
4670
 
><para
4671
 
>Повертає <literal
4672
 
>true</literal
4673
 
>, якщо назва атрибута у певній позиції курсора відповідає вказаному значенню параметра <replaceable
4674
 
>назва</replaceable
4675
 
>. Якщо це не так, повертає <literal
4676
 
>false</literal
4677
 
>. </para
4678
 
></listitem>
4679
 
</varlistentry>
4680
 
 
4681
 
 
4682
 
<varlistentry>
4683
 
<term
4684
 
><synopsis
4685
 
>String document.variable(<parameter
4686
 
>String <replaceable
4687
 
>ключ</replaceable
4688
 
></parameter
4689
 
>);
4690
 
</synopsis
4691
 
></term>
4692
 
<listitem
4693
 
><para
4694
 
>Повертає значення вказаної змінної документа <replaceable
4695
 
>ключ</replaceable
4696
 
>. Якщо змінної з вказаною назвою у документі не існує, повертає порожній рядок. </para
4697
 
></listitem>
4698
 
</varlistentry>
4699
 
 
4700
 
 
4701
 
<varlistentry>
4702
 
<term
4703
 
><synopsis
4704
 
>String document.setVariable(<parameter
4705
 
>String <replaceable
4706
 
>ключ</replaceable
4707
 
></parameter
4708
 
>, <parameter
4709
 
>String <replaceable
4710
 
>значення</replaceable
4711
 
></parameter
4712
 
>);
4713
 
</synopsis
4714
 
></term>
4715
 
<listitem
4716
 
><para
4717
 
>Встановлює значення відповідної змінної документа <replaceable
4718
 
>ключ</replaceable
4719
 
>. Повертає встановлене значення змінної. </para>
4720
 
<para
4721
 
>Див. також <link linkend="config-variables"
4722
 
>змінні документа Kate</link
4723
 
> </para>
4724
 
<para
4725
 
>Актуальна версія: KDE 4.8 </para
4726
 
></listitem>
4727
 
</varlistentry>
4728
 
 
4729
 
 
4730
 
<varlistentry>
4731
 
<term
4732
 
><synopsis
4733
 
>int document.firstVirtualColumn(<parameter
4734
 
>int <replaceable
4735
 
>рядок</replaceable
4736
 
></parameter
4737
 
>);
4738
 
</synopsis
4739
 
></term>
4740
 
<listitem
4741
 
><para
4742
 
>Повертає віртуальний стовпчик першого відмінного від пробілу символу у вказаному рядку або <literal
4743
 
>-1</literal
4744
 
>, якщо рядок є порожнім або містить лише символи пробілів. </para
4745
 
></listitem>
4746
 
</varlistentry>
4747
 
 
4748
 
 
4749
 
<varlistentry>
4750
 
<term
4751
 
><synopsis
4752
 
>int document.lastVirtualColumn(<parameter
4753
 
>int <replaceable
4754
 
>рядок</replaceable
4755
 
></parameter
4756
 
>);
4757
 
</synopsis
4758
 
></term>
4759
 
<listitem
4760
 
><para
4761
 
>Повертає віртуальний стовпчик останнього відмінного від пробілу символу у вказаному рядку або <literal
4762
 
>-1</literal
4763
 
>, якщо рядок є порожнім або містить лише символи пробілів. </para
4764
 
></listitem>
4765
 
</varlistentry>
4766
 
 
4767
 
 
4768
 
<varlistentry>
4769
 
<term
4770
 
><synopsis
4771
 
>int document.toVirtualColumn(<parameter
4772
 
>int <replaceable
4773
 
>рядок</replaceable
4774
 
></parameter
4775
 
>, <parameter
4776
 
>int <replaceable
4777
 
>стовпчик</replaceable
4778
 
></parameter
4779
 
>);
4780
 
int document.toVirtualColumn(<parameter
4781
 
>Cursor <replaceable
4782
 
>курсор</replaceable
4783
 
></parameter
4784
 
>);
4785
 
Cursor document.toVirtualCursor(<parameter
4786
 
>Cursor <replaceable
4787
 
>курсор</replaceable
4788
 
></parameter
4789
 
>);
4790
 
</synopsis
4791
 
></term>
4792
 
<listitem
4793
 
><para
4794
 
>Перетворює вказану «реальну» позицію курсора на віртуальну позицію курсора, повертає або ціле значення (int), або об’єкт Cursor. </para
4795
 
></listitem>
4796
 
</varlistentry>
4797
 
 
4798
 
 
4799
 
<varlistentry>
4800
 
<term
4801
 
><synopsis
4802
 
>int document.fromVirtualColumn(<parameter
4803
 
>int <replaceable
4804
 
>line</replaceable
4805
 
></parameter
4806
 
>, <parameter
4807
 
>int <replaceable
4808
 
>virtualColumn</replaceable
4809
 
></parameter
4810
 
>);
4811
 
int document.fromVirtualColumn(<parameter
4812
 
>Cursor <replaceable
4813
 
>virtualCursor</replaceable
4814
 
></parameter
4815
 
>);
4816
 
Cursor document.fromVirtualCursor(<parameter
4817
 
>Cursor <replaceable
4818
 
>віртуальнийКурсор</replaceable
4819
 
></parameter
4820
 
>);
4821
 
</synopsis
4822
 
></term>
4823
 
<listitem
4824
 
><para
4825
 
>Перетворює вказану віртуальну позицію курсора на «реальну» позицію курсора, повертає або ціле значення (int), або об’єкт Cursor. </para
4826
 
></listitem>
4827
 
</varlistentry>
4828
 
 
4829
 
 
4830
 
<varlistentry>
4831
 
<term
4832
 
><synopsis
4833
 
>Cursor document.anchor(<parameter
4834
 
>int <replaceable
4835
 
>рядок</replaceable
4836
 
></parameter
4837
 
>, <parameter
4838
 
>int <replaceable
4839
 
>стовпчик</replaceable
4840
 
></parameter
4841
 
>, <parameter
4842
 
>Char <replaceable
4843
 
>символ</replaceable
4844
 
></parameter
4845
 
>);
4846
 
Cursor document.anchor(<parameter
4847
 
>Cursor <replaceable
4848
 
>курсор</replaceable
4849
 
></parameter
4850
 
>, <parameter
4851
 
>Char <replaceable
4852
 
>символ</replaceable
4853
 
></parameter
4854
 
>);
4855
 
</synopsis
4856
 
></term>
4857
 
<listitem
4858
 
><para
4859
 
>Виконує пошук у напрямку початку документа, починаючи від вказаної позиції курсора, вказаного символу. Наприклад, якщо функції буде передано символ «(», функція поверне позицію початкової дужки «(». Відповідність дужок не враховуватиметься, тобто інші «(...)» буде проігноровано. </para
4860
 
></listitem>
4861
 
</varlistentry>
4862
 
 
4863
 
 
4864
 
<varlistentry>
4865
 
<term
4866
 
><synopsis
4867
 
>Cursor document.rfind(<parameter
4868
 
>int <replaceable
4869
 
>рядок</replaceable
4870
 
></parameter
4871
 
>, <parameter
4872
 
>int <replaceable
4873
 
>стовпчик</replaceable
4874
 
></parameter
4875
 
>, <parameter
4876
 
>String <replaceable
4877
 
>текст</replaceable
4878
 
></parameter
4879
 
>, <parameter
4880
 
>int <replaceable
4881
 
>атрибут</replaceable
4882
 
> = -1</parameter
4883
 
>);
4884
 
Cursor document.rfind(<parameter
4885
 
>Cursor <replaceable
4886
 
>курсор</replaceable
4887
 
></parameter
4888
 
>, <parameter
4889
 
>String <replaceable
4890
 
>текст</replaceable
4891
 
></parameter
4892
 
>, <parameter
4893
 
>int <replaceable
4894
 
>атрибут</replaceable
4895
 
> = -1</parameter
4896
 
>);
4897
 
</synopsis
4898
 
></term>
4899
 
<listitem
4900
 
><para
4901
 
>Виконує пошук у напрямку початку документа вказаного фрагмента тексту з відповідним значенням параметра <replaceable
4902
 
>атрибут</replaceable
4903
 
>. Параметр <replaceable
4904
 
>атрибут</replaceable
4905
 
> буде проігноровано, якщо він матиме значення <literal
4906
 
>-1</literal
4907
 
>. Функція поверне значення некоректного курсора, якщо фрагмент тексту знайти не вдасться. </para
4908
 
></listitem>
4909
 
</varlistentry>
4910
 
 
4911
 
 
4912
 
<varlistentry>
4913
 
<term
4914
 
><synopsis
4915
 
>int document.defStyleNum(<parameter
4916
 
>int <replaceable
4917
 
>рядок</replaceable
4918
 
></parameter
4919
 
>, <parameter
4920
 
>int <replaceable
4921
 
>стовпчик</replaceable
4922
 
></parameter
4923
 
>);
4924
 
int document.defStyleNum(<parameter
4925
 
>Cursor <replaceable
4926
 
>курсор</replaceable
4927
 
></parameter
4928
 
>);
4929
 
</synopsis
4930
 
></term>
4931
 
<listitem
4932
 
><para
4933
 
>Повертає типовий стиль курсора, використаний за вказаною позицією у тексті. </para
4934
 
></listitem>
4935
 
</varlistentry>
4936
 
 
4937
 
 
4938
 
<varlistentry>
4939
 
<term
4940
 
><synopsis
4941
 
>bool document.isCode(<parameter
4942
 
>int <replaceable
4943
 
>рядок</replaceable
4944
 
></parameter
4945
 
>, <parameter
4946
 
>int <replaceable
4947
 
>стовпчик</replaceable
4948
 
></parameter
4949
 
>);
4950
 
bool document.isCode(<parameter
4951
 
>Cursor <replaceable
4952
 
>курсор</replaceable
4953
 
></parameter
4954
 
>);
4955
 
</synopsis
4956
 
></term>
4957
 
<listitem
4958
 
><para
4959
 
>Повертає <literal
4960
 
>true</literal
4961
 
>, якщо атрибут за вказаною позицією курсора не дорівнює жодному зі значень стилів: <literal
4962
 
>dsComment</literal
4963
 
>, <literal
4964
 
>dsString</literal
4965
 
>, <literal
4966
 
>dsRegionMarker</literal
4967
 
>, <literal
4968
 
>dsChar</literal
4969
 
>, <literal
4970
 
>dsOthers</literal
4971
 
>. </para
4972
 
></listitem>
4973
 
</varlistentry>
4974
 
 
4975
 
 
4976
 
 
4977
 
<varlistentry>
4978
 
<term
4979
 
><synopsis
4980
 
>bool document.isComment(<parameter
4981
 
>int <replaceable
4982
 
>рядок</replaceable
4983
 
></parameter
4984
 
>, <parameter
4985
 
>int <replaceable
4986
 
>стовпчик</replaceable
4987
 
></parameter
4988
 
>);
4989
 
bool document.isComment(<parameter
4990
 
>Cursor <replaceable
4991
 
>курсор</replaceable
4992
 
></parameter
4993
 
>);
4994
 
</synopsis
4995
 
></term>
4996
 
<listitem
4997
 
><para
4998
 
>Повертає <literal
4999
 
>true</literal
5000
 
>, якщо значенням атрибута символу у позиції курсора є <literal
5001
 
>dsComment</literal
5002
 
>. Якщо це не так, повертає <literal
5003
 
>false</literal
5004
 
>. </para
5005
 
></listitem>
5006
 
</varlistentry>
5007
 
 
5008
 
 
5009
 
<varlistentry>
5010
 
<term
5011
 
><synopsis
5012
 
>bool document.isString(<parameter
5013
 
>int <replaceable
5014
 
>рядок</replaceable
5015
 
></parameter
5016
 
>, <parameter
5017
 
>int <replaceable
5018
 
>стовпчик</replaceable
5019
 
></parameter
5020
 
>);
5021
 
bool document.isString(<parameter
5022
 
>Cursor <replaceable
5023
 
>курсор</replaceable
5024
 
></parameter
5025
 
>);
5026
 
</synopsis
5027
 
></term>
5028
 
<listitem
5029
 
><para
5030
 
>Повертає <literal
5031
 
>true</literal
5032
 
>, якщо значенням атрибута символу у позиції курсора є <literal
5033
 
>dsString</literal
5034
 
>. Якщо це не так, повертає <literal
5035
 
>false</literal
5036
 
>. </para
5037
 
></listitem>
5038
 
</varlistentry>
5039
 
 
5040
 
 
5041
 
<varlistentry>
5042
 
<term
5043
 
><synopsis
5044
 
>bool document.isRegionMarker(<parameter
5045
 
>int <replaceable
5046
 
>рядок</replaceable
5047
 
></parameter
5048
 
>, <parameter
5049
 
>int <replaceable
5050
 
>стовпчик</replaceable
5051
 
></parameter
5052
 
>);
5053
 
bool document.isRegionMarker(<parameter
5054
 
>Cursor <replaceable
5055
 
>курсор</replaceable
5056
 
></parameter
5057
 
>);
5058
 
</synopsis
5059
 
></term>
5060
 
<listitem
5061
 
><para
5062
 
>Повертає <literal
5063
 
>true</literal
5064
 
>, якщо значенням атрибута символу у позиції курсора є <literal
5065
 
>dsRegionMarker</literal
5066
 
>. Якщо це не так, повертає <literal
5067
 
>false</literal
5068
 
>. </para
5069
 
></listitem>
5070
 
</varlistentry>
5071
 
 
5072
 
 
5073
 
<varlistentry>
5074
 
<term
5075
 
><synopsis
5076
 
>bool document.isChar(<parameter
5077
 
>int <replaceable
5078
 
>рядок</replaceable
5079
 
></parameter
5080
 
>, <parameter
5081
 
>int <replaceable
5082
 
>стовпчик</replaceable
5083
 
></parameter
5084
 
>);
5085
 
bool document.isChar(<parameter
5086
 
>Cursor <replaceable
5087
 
>курсор</replaceable
5088
 
></parameter
5089
 
>);
5090
 
</synopsis
5091
 
></term>
5092
 
<listitem
5093
 
><para
5094
 
>Повертає <literal
5095
 
>true</literal
5096
 
>, якщо значенням атрибута символу у позиції курсора є <literal
5097
 
>dsChar</literal
5098
 
>. Якщо це не так, повертає <literal
5099
 
>false</literal
5100
 
>. </para
5101
 
></listitem>
5102
 
</varlistentry>
5103
 
 
5104
 
 
5105
 
<varlistentry>
5106
 
<term
5107
 
><synopsis
5108
 
>bool document.isOthers(<parameter
5109
 
>int <replaceable
5110
 
>рядок</replaceable
5111
 
></parameter
5112
 
>, <parameter
5113
 
>int <replaceable
5114
 
>стовпчик</replaceable
5115
 
></parameter
5116
 
>);
5117
 
bool document.isOthers(<parameter
5118
 
>Cursor <replaceable
5119
 
>курсор</replaceable
5120
 
></parameter
5121
 
>);
5122
 
</synopsis
5123
 
></term>
5124
 
<listitem
5125
 
><para
5126
 
>Повертає <literal
5127
 
>true</literal
5128
 
>, якщо значенням атрибута символу у позиції курсора є <literal
5129
 
>dsOthers</literal
5130
 
>. Якщо це не так, повертає <literal
5131
 
>false</literal
5132
 
>. </para
5133
 
></listitem>
5134
 
</varlistentry
5135
 
></variablelist>
5136
 
</para>
5137
 
 
5138
 
</sect3>
5139
 
</sect2>
5140
 
</sect1>
5141
 
</chapter>