-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
translation.patch
824 lines (770 loc) · 43.8 KB
/
translation.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
diff -ur en/css/tutorial-pl.css pl/css/tutorial-pl.css
--- en/css/tutorial-pl.css 2022-06-24 19:17:40.638473300 +0200
+++ pl/css/tutorial-pl.css 2022-06-24 21:05:44.773559000 +0200
@@ -44,7 +44,7 @@
.section_menu_item {
font-family: monospace;
color: #555;
- width: 300px;
+ width: 330px;
padding: 5px;
margin: 3px;
float: left;
diff -ur en/js/tutorial/init_tutorial-pl.js pl/js/tutorial/init_tutorial-pl.js
--- en/js/tutorial/init_tutorial-pl.js 2022-06-24 19:17:40.739603500 +0200
+++ pl/js/tutorial/init_tutorial-pl.js 2022-06-24 21:42:48.924857700 +0200
@@ -45,9 +45,9 @@
} else if(code === "#") {
keyboard.addClass('waiting_to_be_pressed', 'shift');
keyboard.addClass('waiting_to_be_pressed', '3');
- } else if(code === '/') {
+ } else if(code === '*') {
keyboard.addClass('waiting_to_be_pressed', 'shift');
- keyboard.addClass('waiting_to_be_pressed', '7');
+ keyboard.addClass('waiting_to_be_pressed', '8');
} else if(code === '%') {
keyboard.addClass('waiting_to_be_pressed', 'shift');
keyboard.addClass('waiting_to_be_pressed', '5');
diff -ur en/js/tutorial/sections-pl.js pl/js/tutorial/sections-pl.js
--- en/js/tutorial/sections-pl.js 2022-06-24 19:17:40.739603500 +0200
+++ pl/js/tutorial/sections-pl.js 2022-06-24 22:00:39.032026900 +0200
@@ -1,7 +1,7 @@
function register_VIM_TUTORIAL_SECTIONS(interpreter, messager, createSection, registerSection, showCommandOneByOne, doc) {
var G = VIM_GENERIC;
- var pressEnterToContinue = "Press enter to continue.";
+ var pressEnterToContinue = "Naciśnij Enter, aby kontynuować.";
function showInfo(text) { $('.info').text(text); } //.show(); }
@@ -13,7 +13,7 @@
var forAbortId = messager.listenTo('pressed_key', function (key) {
console.log("key", key)
if (key === waitKey) {
- window.location = 'sandbox.html';
+ window.location = 'sandbox-pl.html';
messager.removeListener('pressed_key', forAbortId);
}
});
@@ -93,24 +93,24 @@
interpreter.environment.setMode(mode);
}
- var introduction_section = createSection("Introduction",
+ var introduction_section = createSection("Wstęp",
defaultPre,
[
- "Hello.",
- "I am an interactive |Vim| tutorial.",
- "I'll teach you what Vim is about without hassle. If you are in a hurry, press any key to fast forward.",
- "To practice what you've learned, try out the |practice| page. It has a context sensitive reference for commands.",
- "Now, let me introduce you to basics of Vim."
+ "Hejka.",
+ "Jestem interaktywnym samouczkiem programu |Vim|.",
+ "Bez zbędnych zawiłości nauczę Cię, o co chodzi w Vimie. Jeśli się spieszysz, naciśnij dowolny klawisz, aby przewinąć do przodu.",
+ "Aby przećwiczyć to, czego się nauczyłeś, sprawdź stronę |Trening|. Znajdują się na niej informacje o poleceniach z uwzględnieniem kontekstu.",
+ "A teraz pozwól, że pokażę Ci podstawy Vima. Kliknij myszką na ten ekran i wciśnij |Enter|."
], defaultPost);
- var two_modes_section = createSection("Two modes, insert and normal",
+ var two_modes_section = createSection("Dwa tryby, INSERT i NORMAL",
defaultPre,
[
- "Vim has two basic modes. One is |insert| mode, in which you write text as if in normal text editor.",
- "Another is |normal| mode which provides you efficient ways to navigate and manipulate text.",
- "At any time, you can see which mode you are in on the status bar which is located at the top of the editor.",
- "To change between modes, use |Esc| for normal mode and |i| for insert mode",
- "Let's try it out! First, change to insert mode."
+ "Vim ma dwa podstawowe tryby pracy. Jednym z nich jest tryb |INSERT| (wprowadzanie), w którym pisze się tekst tak, jak w normalnym edytorze tekstu.",
+ "Drugi tryb to |NORMAL| (zwykły), który zapewnia efektywne sposoby nawigacji i manipulacji tekstem.",
+ "W każdej chwili możesz sprawdzić, w którym trybie jesteś, patrząc na pasek stanu znajdującym ię w górnej części edytora.",
+ "Aby przełączać się między trybami, użyj |Esc| dla trybu NORMAL oraz |i| dla trybu INSERT.",
+ "Sprawdźmy, jak to działa! Najpierw przejdź do trybu wprowadzania."
],
function() {
interpreter.environment.setCommandMode();
@@ -118,12 +118,12 @@
[
cmd("i", function() {
$('.screen_view').addClass('active_context');
- insertText("Good, now you're in insert mode. Write something and change back to normal mode.");
+ insertText("Świetnie, teraz jesteś w trybie wprowadzania. Napisz coś i wróć do trybu zwykłego.");
}),
cmd("Esc", function() {
$('.screen_view').removeClass('active_context');
interpreter.environment.interpretOneCommand("G");
- insertText("Good. Let's move on to another section.");
+ insertText("Dobrze. Przejdźmy do następnej sekcji.");
}),
"Enter"
],
@@ -131,89 +131,89 @@
}
);
- var basic_movement = createSection("Basic movement: h, j, k, and l",
+ var basic_movement = createSection("Podstawowe ruchy: h, j, k oraz l",
defaultPre,
[
- "In contrast to regular text editor, you use keys |h|, |j|, |k|, and |l| instead of arrow keys to move the cursor.",
- "Let's see how it works in practice!"
+ "W przeciwieństwie do zwykłego edytora tekstu, zamiast klawiszy strzałek, do przesuwania kursora używa się klawiszy |h|, |j|, |k| i |l|.",
+ "Zobaczmy, jak to działa w praktyce!"
], function() {
interpreter.environment.setCommandMode();
showCommandOneByOne([
"h", "h", "h", "k", "l", "l", "h", "h", "j",
cmd("Enter", function() {
- insertText("Let's move on.");
+ insertText("Przejdźmy dalej.");
}), "Enter"],
accepterCreator);
});
- var word_movement = createSection("Word movement: w, e, b",
+ var word_movement = createSection("Ruch po wyrazach: w, e, b",
defaultPre,
[
- "To navigate the text in terms of words, you can use keys |w|, |b|, and |e| (also W, B, E in real Vim).",
- "|w| moves to the start of next word; |e| moves to the end of the word; and |b| moves to beginning of the word."
+ "Aby poruszać się po tekście nie tyle co po poszczególnych znakach, ale po całych wyrazach, można użyć klawiszy |w|, |b| i |e| (oraz W, B, E w prawdziwym Vimie).",
+ "|w| przenosi na początek następnego wyrazu; |e| przenosi na koniec wyrazu; a |b| przenosi na początek wyrazu."
], function() {
interpreter.environment.setCommandMode();
showCommandOneByOne([
"b", "b", "w", "b", "e", "w",
cmd("Enter", function() {
- insertText("Word! Let's move on.");
+ insertText("Uwaga! Idziemy dalej.");
}), "Enter"],
accepterCreator);
});
- var times_movement = createSection("Number powered movement, e.g. 5w",
+ var times_movement = createSection("Ruch napędzany liczbą, np. 5w",
defaultPre,
[
- "Moving within the text is not limited to individual keys; you can combine movement keys with a |number|. For example, |3w| is the same as pressing w three times."
+ "Poruszanie się w tekście nie jest ograniczone do pojedynczych klawiszy; można łączyć klawisze poruszania się z |liczbą|. Na przykład |3w| to to samo, co trzykrotne naciśnięcie klawisza w."
],
function() {
interpreter.environment.setCommandMode();
interpreter.interpretSequence("0");
showCommandOneByOne(["3", "w", "9", "l", "2", "b",
- cmd("Enter", function() { insertText("With numbers, ain't no numbness.") }),
+ cmd("Enter", function() { insertText("Z liczbami trzeba się liczyć.") }),
"Enter"
],
accepterCreator)
});
- var times_inserting = createSection("Insert text repeatedly, e.g. 3iYes",
+ var times_inserting = createSection("Wstaw tekst wielokrotnie, np. 3iTak",
defaultPre,
[
- "You can insert text multiple times.",
- "For example, an underline of a header might consist of 30 |-|s.",
+ "Tekst można wstawiać wielokrotnie.",
+ "Na przykład podkreślenie nagłówka może składać się z 30 |-|.",
"------------------------------",
- "With |30i-| |Esc|, there's no need to press |-| 30 times.",
- "Let's try it out: insert |go| three times."
+ "Dzięki |30i-| |Esc| nie trzeba naciskać klawisza |-| 30 razy.",
+ "Wypróbujmy to: wstaw |go| trzy razy."
],
function() {
interpreter.environment.setCommandMode();
showCommandOneByOne(
["3", "i", "g", "o", "Esc",
- cmdWithText("Enter", "See? 10iAll work is only playEsc."),
+ cmdWithText("Enter", "Widzisz? 10iCała praca to tylko zabawaEsc."),
"Enter"
], accepterCreator)
});
- var find_occurrence = createSection("Find a character, f and F",
+ var find_occurrence = createSection("Znajdź znak, f oraz F",
defaultPre,
[
- "To find and move to the next (or previous) occurrence of a character, use |f| and |F|, e.g. |fo| finds next o.",
- "You can combine f with a number. For example, you can find 3rd occurrence of 'q' with |3fq|, que?"
+ "Aby znaleźć i przejść do następnego (lub poprzedniego) wystąpienia znaku, użyj |f| i |F|, np. |fo| znajduje następne o.",
+ "Można połączyć f z liczbą. Na przykład, możesz znaleźć trzecie wystąpienie 'q' używając |3fq|, que?"
],
function() {
interpreter.environment.setCommandMode();
interpreter.interpretSequence("0");
showCommandOneByOne(["f", "w", "f", "s", "3", "f", "q",
- cmd("Enter", function() { insertText("F-f-f-ast!") }),
+ cmd("Enter", function() { insertText("F-f-f-16!") }),
"Enter"
], accepterCreator)
});
- var matching_parentheses = createSection("Go to matching parentheses, %",
+ var matching_parentheses = createSection("Idź do odpowiadających nawiasów, %",
defaultPre,
[
- "In text that is structured with parentheses or brackets, |(| or |{| or |[|, use |%| to jump to the matching parenthesis or bracket.",
- "Here is (a sample) text to try that."
+ "W tekście zawierającym nawiasy lub klamry, |(| lub |{| lub |[|, użyj |%|, aby przejść do pasującego nawiasu.",
+ "Poniżej znajduje się (przykładowy) tekst do przetestowania."
],
function() {
interpreter.environment.setCommandMode();
@@ -221,85 +221,86 @@
showCommandOneByOne(["%", "%", "Enter"], accepterCreator)
});
- var start_and_end_of_line = createSection("Go to start/end of line, 0 and $",
+ var start_and_end_of_line = createSection("Idź na początek/koniec linii, 0 i $",
defaultPre,
[
- "To reach the beginning of a line, press |0|.",
- "For the end of a line, there's |$|"
+ "Aby przejść na początek linii, naciśnij |0|.",
+ "Natomiast by przejść na koniec linii, naciśnij |$|."
],
function() {
interpreter.environment.setCommandMode();
showCommandOneByOne(["0", "$", "0", "Enter"], accepterCreator)
});
- var word_under_cursor = createSection("Find word under cursor, * and #",
+ var word_under_cursor = createSection("Znajdź wyraz pod kursorem, * i #",
defaultPre,
[
- "Find the next occurrence of the word under cursor with |*|, and the previous with |#|."
+ "Szukamy wyrazu teraz! Znajdź następne wystąpienie wyrazu będącego pod kursorem za pomocą |*|, a poprzednie występienie wyrazu za pomocą |#|."
],
function() {
interpreter.environment.setCommandMode();
interpreter.interpretSequence(["0", "w"]);
showCommandOneByOne(["*", "*", "#",
cmd("#", function() {
- insertText("Nothing new under the cursor.")
+ insertText("Nic nowego pod kursorem.")
}), "Enter"], accepterCreator)
});
- var goto_line = createSection("Goto line, g and G",
+ var goto_line = createSection("Idź do linii, g oraz G",
defaultPre,
[
- "|gg| takes you to the beginning of the file; |G| to the end.",
- "To jump directly to a specific line, give its |line number| along with |G|.",
- "Now go to the beginning of this screen with |gg| and then back to end with |G|."
+ "|gg| przenosi użytkownika na początek pliku; |G| na koniec.",
+ "Aby przejść bezpośrednio do określonego wiersza, należy podać jego numer wraz z literą |G|.",
+ "Teraz przejdź na początek ekranu, wpisując |gg|, a następnie wróć na koniec, wpisując |G|."
],
function() {
interpreter.environment.setCommandMode();
showCommandOneByOne(["g", "g", "G",
cmd("Enter", function() {
- insertText("Go to line 2 with 2G.");
+ insertText("Przejdź do linii 2 przy pomocy 2G.");
}),
"2", "G",
cmd("Enter", function() {
- insertText("gg! G majorly rocks.")
+ insertText("gg! G naprawdę daje czadu.")
}), "Enter"
], accepterCreator)
});
- var search_match = createSection("Search, /text with n and N",
+ var search_match = createSection("Wyszukaj, /tekst z n oraz N",
defaultPre,
[
- "Searching text is a vital part of any text editor. In Vim, you press |/|, and give the text you are looking for.",
- "You can repeat the search for next and previous occurrences with |n| and |N|, respectively.",
- "For advanced use cases, it's possible to use regexps that help to find text of particular form (In real Vim).",
- "Let's try a simple text search.",
- "Search for |text| and find the subsequent matches with |n|."
+ "Przeszukiwanie tekstu jest istotną częścią każdego edytora tekstu. W Vimie naciskamy |/| i podajemy szukany tekst.",
+ "Wyszukiwanie można powtórzyć dla następnych i poprzednich wystąpień, używając odpowiednio |n| i |N|.",
+ "W bardziej wymagających przypadkach możesz użyć wyrażeń regularnych (działają w prawdziwym Vimie), które pomagają znaleźć tekst o określonej postaci.",
+ "Spróbujmy przeprowadzić proste wyszukiwanie tekstu.",
+ "Wyszukaj |tekst| i znajdź kolejne dopasowania z |n|.",
+ "Uwaga! W niektórych przeglądarkach internetowych, gdy wciśniesz |/| włączy się tryb przeszukiwania strony - jeśli taki tryb się włączy, to go zamknij i wróć do tego samouczka."
],
function() {
interpreter.environment.setCommandMode();
interpreter.interpretSequence("1G");
showCommandOneByOne(
- ["/", "t", "e", "x", "t", "Enter", "n", "n", "N", "N",
+ ["/", "t", "e", "k", "s", "t", "Enter", "n", "n", "N", "N",
cmd("Enter",
function() {
interpreter.interpretSequence(["/", "Esc"]);
- insertText("Slash through the needles with /n/e/e/d/l/e/s");
+ insertText("Dziel i rządź przy pomocy /d/z/i/e/l");
}),
"Enter"], accepterCreator
)
});
- var removing = createSection("Removing a character, x and X",
+ var removing = createSection("Usuń znak, x oraz X",
defaultPre,
[
- "|x| and |X| delete the character under the cursor and to the left of the cursor, respectively",
- "Try pressing |x| to remove the last word."
+ "|x| i |X| usuwają znak, odpowiednio, pod kursorem i po lewej stronie kursora.",
+ "Spróbuj nacisnąć klawisz |x|, aby usunąć ostatnie słowo."
], function() {
interpreter.environment.setCommandMode();
showCommandOneByOne([
- "x", "x", "x", "x", "x",
+ "x", "x", "x", "x", "x", "x",
cmd("x", function() {
- insertText("Sometimes the treasure is the indicator (x).");
+ insertText("Czasami niewiadoma (x) może zamienić się w prawdziwy skarb.");
}),
/*
"X", "X", "X", "X", "X",
@@ -311,11 +312,11 @@
accepterCreator);
});
- var replacing = createSection("Replacing letter under cursor, r",
+ var replacing = createSection("Zastąp literę pod kursorem, r",
defaultPre,
[
- "When you need to replace only one character under your cursor, without changing to insert mode, use |r|.",
- "Replace my"
+ "Jeśli chcesz zastąpić tylko jeden znak pod kursorem, bez przechodzenia do trybu wprowadzania, użyj |r|.",
+ "Zastąp mniy"
], function() {
interpreter.environment.setCommandMode();
interpreter.interpretSequence("Fy");
@@ -333,12 +334,12 @@
function setActiveContext() { $('.screen_view').addClass('active_context'); }
function unsetActiveContext() { $('.screen_view').removeClass('active_context'); }
- var adding_line = createSection("Insert new line, o and O",
+ var adding_line = createSection("Wstaw nową linię, o oraz O",
defaultPre,
[
- "To insert text into a new line, press |o| or |O|",
- "After new line is created, the editor is set to |insert| mode.",
- "Write a bit and get back to |normal| mode."
+ "Aby wstawić tekst do nowej linii, naciśnij |o| lub |O|.",
+ "Po utworzeniu nowej linii, edytor przechodzi w tryb |INSERT|.",
+ "Dopisz jakiś fragment tekstu i wróć do trybu |NORMAL|."
], function() {
interpreter.environment.setCommandMode();
interpreter.interpretSequence(["2", "G"]);
@@ -348,46 +349,46 @@
}),
cmd("Esc", function() {
unsetActiveContext();
- insertText("Yep! Now big O to insert new line above the current line.");
+ insertText("Taaak! A teraz duże O by wstawić nową linię nad bieżącą linią.");
interpreter.environment.setCommandMode();
}),
cmd("O", setActiveContext),
cmd("Esc",
function() {
- insertText("I bet you feel like O___o");
+ insertText("Założę się, że czujesz się teraz tak: O___o");
unsetActiveContext();
}), "Enter"
], accepterCreator)
});
- var deleting = createSection("Deleting, d",
+ var deleting = createSection("Usuń, d",
defaultPre,
[
- "|d| is the delete command",
- "You can combine it with movement, e.g. |dw| deletes the first word on the right side of the cursor",
- "It also copies the content, so that you can paste it with |p| to another location (on real Vim)."
+ "|d| to polecenie usuwania.",
+ "Można je połączyć z ruchem, np. |dw| usuwa pierwsze słowo po prawej stronie kursora.",
+ "Natomiast w prawdziwym Vimie kopiuje ono również zawartość, dzięki czemu za pomocą |p| można ją wkleić do innej lokalizacji."
], function() {
interpreter.environment.setCommandMode();
interpreter.environment.interpretOneCommand("0");
showCommandOneByOne([
"d", "w",
cmd("Enter", function() {
- insertText("The word is gone. Now let's remove two words with d2e.");
+ insertText("Słowo zostało usunięte. Teraz usuńmy dwa słowa za pomocą d2e.");
interpreter.environment.interpretSequence(["0"]);
}),
"d", "2", "e",
cmd("Enter", function() {
- insertText("To 'de' or not to 'de', is not the question, anymore.");
+ insertText("Niezły z Ciebie ko 'de' r!");
}), "Enter"],
accepterCreator);
});
- var repetition = createSection("Repetition with .",
+ var repetition = createSection("Powtórz z .",
defaultPre,
[
- "To repeat the previous command, just press |.|",
- "First, remove two words with |d2w|.",
- "After that, remove the rest of the words in this line with |.|"
+ "Aby powtórzyć poprzednie polecenie, wystarczy nacisnąć |.|.",
+ "Najpierw należy usunąć dwa słowa za pomocą |d2w|.",
+ "Następnie usuń pozostałe słowa w tym wierszu za pomocą |.|."
],
function() {
interpreter.environment.setCommandMode();
@@ -396,62 +397,62 @@
"d", "2",
"w", ".", ".", ".", ".", ".",
cmd("Enter", function() {
- insertText("Repetition is the root of all periods.")
+ insertText("Powtarzanie jest podstawą wszystkich cykli.")
}),
"Enter"
], accepterCreator)
});
- var visual_mode = createSection("Visual mode, v",
+ var visual_mode = createSection("Tryb wizualny, v",
defaultPre,
[
- "Besides insert and normal mode, Vim has also |visual| mode.",
- "In visual mode, you select text using movement keys before you decide what to do with it.",
- "Let's see how. Goto visual mode with |v|. Then select a word with |e|. After you've selected the text, you can delete it with |d|.",
- "This sentence has not seen the light."
+ "Oprócz trybu wprowadzania i trybu normalnego, Vim posiada również tryb |VISUAL| (wizualny).",
+ "W trybie wizualnym, najpierw zaznaczasz tekst za pomocą klawiszy ruchu, zanim zdecydujesz co z nim zrobić.",
+ "Sprawdźmy, jak to zrobić. Przejdź do trybu wizualnego za pomocą |v|. Następnie zaznacz słowo za pomocą |e|. Po zaznaczeniu tekstu możesz go usunąć, używając klawisza |d|.",
+ "To zdanie nie ujrzało światła dziennego."
],
function() {
interpreter.environment.setCommandMode();
interpreter.interpretSequence("4b");
showCommandOneByOne(
["v", "e", "l", "d",
- cmdWithText("Enter", "(Visually gifted, I lost my words.)"), "Enter"
+ cmdWithText("Enter", "(Po nabyciu umiejętności wizualnych, zabrakło mi słów)."), "Enter"
], accepterCreator)
});
- var visual_block_mode = createSection("Visual block mode, ctrl-v",
+ var visual_block_mode = createSection("Wizualny tryb blokowy, ctrl-v",
defaultPre,
[
- "There is yet another mode: |visual block|. This makes it possible to insert text on many lines at once. Let's see how with an example list.",
- "<> A smart girl",
- "<> Ulysses",
- "<> Learn and teach",
- "First, move cursor to insert position. Then press |ctrl-v| to go into visual block mode. Move cursor vertically to select lines. Now press |I|, and prepend text to the selected area. |Esc| completes the insertion."
+ "Istnieje jeszcze jeden tryb: |VISUAL BLOCK| (wizualny tryb blokowy). Umożliwia on wprowadzanie tekstu w wielu wierszach jednocześnie. Zobaczmy, jak to zrobić na przykładzie listy.",
+ "<> Bystra dziewczyna",
+ "<> Ulisses",
+ "<> Ucz się i nauczaj",
+ "Najpierw przesuń kursor na pozycję wstawiania. Następnie naciśnij |ctrl-v|, aby przejść do trybu bloku wizualnego. Przesuń kursor w pionie, aby zaznaczyć linie. Teraz naciśnij |I| i wstaw tekst do zaznaczonego obszaru. |Esc| kończy wprowadzanie."
],
function() {
interpreter.environment.setCommandMode();
interpreter.interpretSequence("2G");
showCommandOneByOne(["l", "ctrl-v", "j", "j", "I", "o", "Esc",
- cmdWithText("Enter", "Blocks are obstacles for making progress."), "Enter"],
+ cmdWithText("Enter", "Blok-ady nie są przeszkodą na drodze rozwoju."), "Enter"],
accepterCreator);
});
- var last_commands = createSection("Real Vim awaits",
+ var last_commands = createSection("Prawdziwy Vim czeka",
defaultPre,
[
- "Now you should be quite confident to enter the real Vim.",
- "Most important commands to remember are |:w| (save), |:q| (quit), and |:q!| (quit without saving).",
- "Also don't |PANIC!| If you make a mistake, press |u| for undo and |ctrl+R| for redo",
- "If you have a problem, or want to learn more about what Vim offers, type |:help|"
+ "Teraz powinieneś móc wejść na pewniaczku do prawdziwego Vima.",
+ "Najważniejsze polecenia, które powinieneś zapamiętać, to |:o nazwa_pliku| (otwórz plik), |:w| (zapisz), |:q| (zakończ) i |:q!| (zakończ bez zapisywania).",
+ "Ponadto, nie |PANIKUJ!| Jeśli popełnisz błąd, naciśnij |u| aby cofnąć polecenie i |ctrl+R| aby ponowić polecenie.",
+ "Jeśli masz jakiś problem lub chcesz dowiedzieć się więcej o możliwościach Vima, wpisz |:help|."
],
defaultPost
);
- var the_end = createSection("The end", defaultPre,
+ var the_end = createSection("Zakończenie", defaultPre,
[
- "Thank you for your time. I hope you enjoyed.",
- "Press |space| if you want to test out the commands freely in the practice editor.",
- "Bye!"
+ "Dzięki za poświęcony czas. Mam nadzieję, że się podobało.",
+ "Naciśnij |space|, jeśli chcesz swobodnie potestować polecenia w edytorze treningowym.",
+ "Narka!"
], () => waitPressToGotoPractice('Space', 32));
// append a and A
diff -ur en/js/view/context_help-pl.js pl/js/view/context_help-pl.js
--- en/js/view/context_help-pl.js 2022-06-24 19:17:40.760738700 +0200
+++ pl/js/view/context_help-pl.js 2022-06-24 19:41:22.942322600 +0200
@@ -25,46 +25,46 @@
function addCommandHelps() {
var insertMode = $('.insert-mode', context);
- addCommandHelp(insertMode, "Esc", "change to normal mode");
- commandHelp("i, I", "change to insert mode");
- commandHelp("h, j, k, l", "move left, down, up, right");
- commandHelp("w, b, e, ge", "move word at a time");
- commandHelp("[n][action/movement]", "do n times, e.g. 3w");
- commandHelp("x, X", "remove a character");
- commandHelp("a, A", "append");
- commandHelp("f[char]", "move to next given char in line");
- commandHelp("F[char]", "move to previous char in line");
- commandHelp("; and ,", "repeat last f or F");
- commandHelp("f[char]", "move to n:th next given char in line", "number_f_char");
- commandHelp("/yourtext and then: n, N", "Search text");
- commandHelp("d[movement]", "delete by giving movement");
- commandHelp("r[char]", "replaces character below cursor");
- commandHelp("0, $", "move to start/end of line");
- commandHelp("o, O", "add new line");
- commandHelp("%", "Goto corresponding parentheses");
+ addCommandHelp(insertMode, "Esc", "zmień na tryb zwykły (NORMAL)");
+ commandHelp("i, I", "zmień na tryb wprowadzania (INSERT)");
+ commandHelp("h, j, k, l", "przesuń w lewo, w dół, w górę, w prawo");
+ commandHelp("w, b, e, ge", "poruszaj się słowo po słowie");
+ commandHelp("[n][akcja/ruch]", "wykonaj n razy, np. 3w");
+ commandHelp("x, X", "usuń znak");
+ commandHelp("a, A", "dopisz");
+ commandHelp("f[znak]", "przejdź do następnego podanego znaku w wierszu");
+ commandHelp("F[znak]", "przejdź do poprzedniego podanego znaku w wierszu");
+ commandHelp("; and ,", "powtórz ostatnie f lub F");
+ commandHelp("f[znak]", "przejdź do następnego n-tego podanego znaku w linii", "number_f_char");
+ commandHelp("/twojtekst a następnie: n, N", "wyszukaj tekst");
+ commandHelp("d[ruch]", "usuń poprzez poruszanie kursorem");
+ commandHelp("r[znak]", "zamień znak pod kursorem");
+ commandHelp("0, $", "przejdź do początku/końca linii");
+ commandHelp("o, O", "dodaj nową linię");
+ commandHelp("%", "przejdź do odpowiadających sobie nawiasów");
// commandHelp("[( or ])", "Goto next/previous parentheses");
- commandHelp("ci[movement]", "change inside of given movement");
- commandHelp("D", "delete to end of line");
- commandHelp("S", "clear current line; to insert mode");
- commandHelp("g", "move to the start of buffer", "g");
- commandHelp("e", "move to end of previous word", "ge");
- commandHelp("gg / G", "move to start / end of buffer");
- commandHelp("G or [number]G", "move to line", "goto_line_g");
- commandHelp("d", "the whole line", "dd");
- commandHelp("$", "the rest of the line", "end_of_line");
- commandHelp("0", "the beginning of line to here", "start_of_line");
- commandHelp("w", "to the beginning of next word", "w");
- commandHelp("e", "to the end of current word", "e");
- commandHelp("b", "to the beginning of current word", "b");
- commandHelp("h, j, k, l", "left, down, up, right", "hjkl");
- commandHelp("[n][movement]", "movement n times", "num_movement");
- commandHelp("[char]", "single character", "char");
- commandHelp("[movement]", "movement, e.g. j", "movement");
- commandHelp("yy", "copy current line");
- commandHelp("y", "copy current line", "copy_line");
- commandHelp("p", "Paste copied text after cursor.");
- commandHelp("i[YourText]", "Repeats inserted text", "repeat_insert");
- commandHelp("ESC", "cancel action/movement", "chained");
+ commandHelp("ci[ruch]", "zmień w obrębie danego ruchu");
+ commandHelp("D", "usuń do końca wiersza");
+ commandHelp("S", "wyczyść bieżący wiersz; przejdź do trybu wprowadzania");
+ commandHelp("g", "przejdź na początek bufora", "g");
+ commandHelp("e", "przejdź na koniec poprzedniego słowa", "ge");
+ commandHelp("gg / G", "przejdź na początek / koniec bufora");
+ commandHelp("G or [liczba]G", "przejdź do linii", "goto_line_g");
+ commandHelp("d", "całą linię", "dd");
+ commandHelp("$", "pozostałą część linii", "end_of_line");
+ commandHelp("0", "od początku linii do tego miejsca", "start_of_line");
+ commandHelp("w", "do początku następnego wyrazu", "w");
+ commandHelp("e", "do końca bieżącego wyrazu", "e");
+ commandHelp("b", "do początku bieżącego wyrazu", "b");
+ commandHelp("h, j, k, l", "lefo, dół, góra, prawo", "hjkl");
+ commandHelp("[n][ruch]", "porusz się n razy", "num_movement");
+ commandHelp("[znak]", "pojedynczy znak", "char");
+ commandHelp("[ruch]", "ruch, np. j", "movement");
+ commandHelp("yy", "skopiuj bieżącą linię");
+ commandHelp("y", "skopiuj bieżącą linię", "copy_line");
+ commandHelp("p", "wklej skopiowany tekst za kursorem");
+ commandHelp("i[TwojTekst]", "powtórz wprowadzony tekst", "repeat_insert");
+ commandHelp("ESC", "anuluj akcję/ruch", "chained");
show_help();
}
diff -ur en/js/view/view-pl.js pl/js/view/view-pl.js
--- en/js/view/view-pl.js 2022-06-24 19:17:40.760738700 +0200
+++ pl/js/view/view-pl.js 2022-06-24 19:41:38.827236800 +0200
@@ -20,13 +20,13 @@
function update() {
if(environment.isCommandMode()) {
- $('.statustext', context).text("mode: NORMAL");
+ $('.statustext', context).text("tryb: NORMAL");
$('.insert-mode', context).hide();
$('.command-mode', context).show();
} else {
$('.insert-mode', context).show();
$('.command-mode', context).hide();
- $('.statustext', context).text("mode: INSERT");
+ $('.statustext', context).text("tryb: INSERT (WPROWDZANIE)");
}
var row = 1 + executor.currentRowIndex();
diff -ur en/js/virtual_keyboard-pl.js pl/js/virtual_keyboard-pl.js
--- en/js/virtual_keyboard-pl.js 2022-06-24 19:17:40.760738700 +0200
+++ pl/js/virtual_keyboard-pl.js 2022-06-24 21:32:19.086815200 +0200
@@ -31,19 +31,19 @@
// TODO setKeyLayout to a separate file that returns properties for each keyboard layout
function setKeyLayout() {
escRow = ["Esc", 'hid', 'hid', 'hid', 'hid', 'hid', 'hid',
- configurationKey('3d', 'toggle_3d_keyboard'),
- configurationKey('Screen brightness', 'toggle_screen_brightness'),
- configurationKey('Keyboard size', 'toggle_keyboard_size') ];
- numberRow = ['hid', two('1', '!'), two('2', '"'),
+ configurationKey('3D', 'toggle_3d_keyboard'),
+ configurationKey('Jasność ekranu', 'toggle_screen_brightness'),
+ configurationKey('Rozmiar klaw.', 'toggle_keyboard_size') ];
+ numberRow = ['hid', two('1', '!'), two('2', '@'),
two('3', '#'), two('4', '$'), two('5', '%'),
- two('6', '&'), two('7', '/'), two('8', '('),
- two('9', ')'), two('0', '=')];
+ two('6', '^'), two('7', '&'), two('8', '*'),
+ two('9', '('), two('0', ')')];
// TODO: replace this with the ability to load configs from file
if (layout === 'qwerty') {
- tabRow = ['tab', 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', {key: 'Backspace', label: '<='}];
- capslockRow = ['caps', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l', '*', 'Enter'];
- shiftRow = ['shift', 'z', 'x', 'c', 'v', 'b', 'n', 'm', ',', '.', two('>', '<')];
+ tabRow = ['tab', 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', {key: 'Backspace', label: '⌫'}];
+ capslockRow = ['caps', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l', two(';', ':'), 'Enter'];
+ shiftRow = ['shift', 'z', 'x', 'c', 'v', 'b', 'n', 'm', two(',', '<'), two('.', '>'), two('/', '?')];
bottomRow = ['ctrl', 'alt', 'Space'];
} else if (layout === 'dvorak') {
tabRow = ['tab', {primary: ',', secondary: '<'}, {primary: '.', secondary: '>'}, 'p', 'y', 'f', 'u', 'g', 'c', 'r', 'l', {key: 'Backspace', label: '<='}];
diff -ur en/sandbox-pl.html pl/sandbox-pl.html
--- en/sandbox-pl.html 2022-06-24 19:17:40.776376200 +0200
+++ pl/sandbox-pl.html 2022-06-24 19:45:57.884143600 +0200
@@ -1,12 +1,12 @@
<!doctype html>
-<html lang='en' xmlns='http://www.w3.org/1999/xhtml'>
+<html lang='pl' xmlns='http://www.w3.org/1999/xhtml'>
<head>
<meta charset='utf-8' />
<link rel="stylesheet" type="text/css" href="css/css.css?version={VERSION}" />
<link rel="icon" type="image/png" href="icon.png"/>
- <title>Interactive Vim tutorial - sandbox</title>
+ <title>Interaktywny samouczek Vim - piaskownica</title>
<!-- GENERAL (mostly) -->
<!--
@@ -17,12 +17,12 @@
<script type="text/Javascript" src="js/engine/generic.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/engine/document.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/view/comparison.js?version={VERSION}"></script>
- <script type="text/Javascript" src="js/view/context_help.js?version={VERSION}"></script>
+ <script type="text/Javascript" src="js/view/context_help-pl.js?version={VERSION}"></script>
<!-- VIM specific parts -->
<script type="text/Javascript" src="js/engine/executor.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/engine/interpreter.js?version={VERSION}"></script>
- <script type="text/Javascript" src="js/view/view.js?version={VERSION}"></script>
+ <script type="text/Javascript" src="js/view/view-pl.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/commands/searchcommands.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/commands/visualcommands.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/commands/visualblockcommands.js?version={VERSION}"></script>
@@ -43,9 +43,9 @@
<body>
<div class="navigation">
- <a href="tutorial.html">Tutorial</a>
- <a href="sandbox.html" class="selected">Practice</a>
- <a href="sandbox-pl.html">🇵🇱</a>
+ <a href="tutorial-pl.html">Samouczek</a>
+ <a href="sandbox-pl.html" class="selected">Trening</a>
+ <a href="sandbox.html">🇬🇧</a>
<!--
<a href="https://twitter.com/share" class="twitter-share-button" data-url="http://www.openvim.com/sandbox.html" data-text="OpenVim - Interactive Vim sandbox" data-count="horizontal" data-via="egaga">Tweet</a><script type="text/javascript" src="https://platform.twitter.com/widgets.js"></script>
-->
@@ -53,7 +53,7 @@
</div>
<div style="margin-left: 15px">
- <p>Here you can practice Vim with context-aware help menu. <br>e.g. if you press 'd', you see that the list on the right changes: it will show (some of the) Vim command combinations that start with 'd'.</p>
+ <p>Tutaj możesz przećwiczyć pracę z Vimem z kontekstowym menu pomocy.<br>Np. jeśli naciśniesz 'd', zobaczysz, że lista po prawej stronie się zmieni, tj. pokaże (niektóre) kombinacje poleceń Vima zaczynające się od 'd'.</p>
</div>
<div class="screen_view active_context">
@@ -64,19 +64,19 @@
<div style="clear: both;"></div>
</div>
<div class="text editor">
- Now it is plain that everything which is a subject of praise is praised for being of a certain kind and bearing a certain relation to something else:!LINE_BREAK!for instance, the just, and the valiant, and generally the good man, and virtue itself, we praise because of the actions and the results: and the strong man, !LINE_BREAK!and the quick runner, and so forth, we praise for being of a certain nature and bearing a certain relation to something good and excellent (and this is illustrated by attempts to praise the gods;!LINE_BREAK!for they are presented in a ludicrous aspect by being referred to our standard, and this results from the fact, that all!LINE_BREAK!– Aristotle
+ Zatem wydaje sie, ze kazda rzecz godna pochwaly doznaje jej, poniewaz posiada pewne wlasciwosci i pozostaje w pewnym stosunku do czegos innego;!LINE_BREAK!chwalimy bowiem czlowieka sprawiedliwego i meznego, i w ogole etycznie dzielnego - tak jak i owa dzielnosc - z powodu ich postepowania i czynow; chwalimy silacza!LINE_BREAK!i szybkobiegacza, i wszystkich innych, poniewaz posiadaja pewne wrodzone wlasciwosci i pozostaja w pewnym stosunku do czegos, co dobre i wartosciowe. Wynika to tez z pochwal dotyczacych bogow,!LINE_BREAK!wydaja sie bowiem smieszni, kiedy sie ich porownuje z nami, a dzieje sie to dlatego, ze!LINE_BREAK!– Arystoteles
</div>
<div class="searchbar">
<span class="searchPrefix">/</span>
<span class="searchText"></span>
- <span class="searchHelp"><Enter to find></span>
+ <span class="searchHelp"><Wprowadź, aby znaleźć></span>
</div>
<div style="clear: both;"></div>
</div>
<div class="sidebar">
- <h4>Context-Aware Actions</h4>
+ <h4>Akcje kontekstowe</h4>
<h4 class="context_pressed"></h4>
<p class="command-mode"></p>
<p class="insert-mode"></p>
diff -ur en/tutorial-pl.html pl/tutorial-pl.html
--- en/tutorial-pl.html 2022-06-24 21:06:26.636054200 +0200
+++ pl/tutorial-pl.html 2022-06-24 21:40:26.881099200 +0200
@@ -1,16 +1,16 @@
<!doctype html>
-<html lang='en' xmlns='http://www.w3.org/1999/xhtml'>
+<html lang='pl' xmlns='http://www.w3.org/1999/xhtml'>
<head>
<meta charset='utf-8' />
<script src="js/scorm.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="css/css.css?version={VERSION}" />
- <link rel="stylesheet" type="text/css" href="css/tutorial.css?version={VERSION}" />
+ <link rel="stylesheet" type="text/css" href="css/tutorial-pl.css?version={VERSION}" />
<link rel="stylesheet" type="text/css" href="css/virtual_keyboard.css?version={VERSION}" />
<link rel="icon" type="image/png" href="icon.png" />
- <title>Interactive Vim tutorial</title>
+ <title>Interaktywny samouczek Vim</title>
<!-- GENERAL (mostly) -->
<script type="text/Javascript" src="js/engine/messager.js?version={VERSION}"></script>
@@ -18,12 +18,12 @@
<script type="text/Javascript" src="js/engine/generic.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/engine/document.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/view/comparison.js?version={VERSION}"></script>
- <script type="text/Javascript" src="js/view/context_help.js?version={VERSION}"></script>
+ <script type="text/Javascript" src="js/view/context_help-pl.js?version={VERSION}"></script>
<!-- VIM specific parts -->
<script type="text/Javascript" src="js/engine/executor.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/engine/interpreter.js?version={VERSION}"></script>
- <script type="text/Javascript" src="js/view/view.js?version={VERSION}"></script>
+ <script type="text/Javascript" src="js/view/view-pl.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/commands/searchcommands.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/commands/visualcommands.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/commands/visualblockcommands.js?version={VERSION}"></script>
@@ -31,10 +31,10 @@
<script type="text/Javascript" src="js/commands/commands.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/view/event.js?version={VERSION}"></script>
<script type="text/Javascript" src="js/tutorial/tutorial_engine.js?version={VERSION}"></script>
- <script type="text/Javascript" src="js/tutorial/sections.js?version={VERSION}"></script>
- <script type="text/Javascript" src="js/virtual_keyboard.js?version={VERSION}"></script>
+ <script type="text/Javascript" src="js/tutorial/sections-pl.js?version={VERSION}"></script>
+ <script type="text/Javascript" src="js/virtual_keyboard-pl.js?version={VERSION}"></script>
- <script type="text/Javascript" src="js/tutorial/init_tutorial.js?version={VERSION}"></script>
+ <script type="text/Javascript" src="js/tutorial/init_tutorial-pl.js?version={VERSION}"></script>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
@@ -60,9 +60,9 @@
<div class="navigation">
<span style="font-size:25px; cursor:pointer; color: white; margin: 0 10px;" onclick="openNav()">☰</span>
- <a href="tutorial.html" class="selected">Tutorial</a>
- <a href="sandbox.html">Practice</a>
- <a href="tutorial-pl.html">🇵🇱</a>
+ <a href="tutorial-pl.html" class="selected">Samouczek</a>
+ <a href="sandbox-pl.html">Trening</a>
+ <a href="tutorial.html">🇬🇧</a>
<!--
<a href="https://twitter.com/share" class="twitter-share-button" data-url="http://www.openvim.com/tutorial.html" data-text="OpenVim - Interactive Vim tutorial" data-count="horizontal" data-via="egaga">Tweet</a><script type="text/javascript" src="https://platform.twitter.com/widgets.js"></script>
@@ -86,7 +86,7 @@
<div class="searchbar">
<span class="searchPrefix">/</span>
<span class="searchText"></span>
- <span class="searchHelp"><Enter to find></span>
+ <span class="searchHelp"><Wprowadź, aby znaleźć></span>
</div>
<div style="clear: both;"></div>
@@ -94,15 +94,14 @@
<div style="clear: both;"></div>
<div class="keyboard_wrapper">
- <p class="keyboard_description">Virtual keyboard (shows keys you need to press on your physical keyboard; not
- clickable)</p>
+ <p class="keyboard_description">Klawiatura wirtualna (pokazuje klawisze, które należy nacisnąć na klawiaturze fizycznej; nie jest klikalna)</p>
</div>
</div>
</div>
<div class="section_menu" id="mySidenav">
- <div class="headline">Sections</div>
+ <div class="headline">Sekcje</div>
<a href="javascript:void(0)" class="closebtn" onclick="closeNav()">×</a>
<div class="section_menu_append_target" style="clear: both;"></div>
@@ -110,8 +109,8 @@
</body>
<script>
function openNav() {
- document.getElementById("mySidenav").style.width = "340px";
- document.getElementById("main").style.marginLeft = "340px";
+ document.getElementById("mySidenav").style.width = "370px";
+ document.getElementById("main").style.marginLeft = "370px";
}
function closeNav() {