runtime(tutor): Update the makefiles for tutor1 and tutor2 files

closes: #16111

Signed-off-by: RestorerZ <restorer@mail2k.ru>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/tutor/Make_all.mak b/runtime/tutor/Make_all.mak
index c39f741..01fd12d 100644
--- a/runtime/tutor/Make_all.mak
+++ b/runtime/tutor/Make_all.mak
@@ -2,32 +2,47 @@
 # Makefile with common components
 #
 
-CONVERTED = \
-		tutor.utf-8 \
-		tutor.bar \
-		tutor.ca.utf-8 \
-		tutor.de.utf-8 \
-		tutor.el \
-		tutor.el.cp737 \
-		tutor.eo \
-		tutor.es \
-		tutor.fr.utf-8 \
-		tutor.hr \
-		tutor.hr.cp1250 \
-		tutor.hu \
-		tutor.hu.cp1250 \
-		tutor.it.utf-8 \
-		tutor.ja.sjis \
-		tutor.ja.euc \
-		tutor.ko.euc \
-		tutor.nl \
-		tutor.no.utf-8 \
-		tutor.nb \
-		tutor.nb.utf-8 \
-		tutor.ru \
-		tutor.ru.cp1251 \
-		tutor.sv.utf-8 \
-		tutor.tr.iso9 \
-		tutor.zh.utf-8
+CHAPTER1 = \
+		tutor1.utf-8 \
+		tutor1.bar \
+		tutor1.ca.utf-8 \
+		tutor1.cs \
+		tutor1.cs.cp1250 \
+		tutor1.da \
+		tutor1.de.utf-8 \
+		tutor1.el \
+		tutor1.el.cp737 \
+		tutor1.eo \
+		tutor1.es \
+		tutor1.fr.utf-8 \
+		tutor1.hr \
+		tutor1.hr.cp1250 \
+		tutor1.hu \
+		tutor1.hu.cp1250 \
+		tutor1.it.utf-8 \
+		tutor1.ja.sjis \
+		tutor1.ja.euc \
+		tutor1.ko \
+		tutor1.ko.euc \
+		tutor1.nl \
+		tutor1.no.utf-8 \
+		tutor1.nb \
+		tutor1.nb.utf-8 \
+		tutor1.pl \
+		tutor1.pl.cp1250 \
+		tutor1.pt \
+		tutor1.ru \
+		tutor1.ru.cp1251 \
+		tutor1.sk \
+		tutor1.sk.cp1250 \
+		tutor1.sr.cp1250 \
+		tutor1.sv.utf-8 \
+		tutor1.tr.iso9 \
+		tutor1.zh.utf-8
+
+CHAPTER2 = \
+		tutor2
+
+CONVERTED = $(CHAPTER1) $(CHAPTER2)
 
 # vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0 ft=make:
diff --git a/runtime/tutor/Make_mvc.mak b/runtime/tutor/Make_mvc.mak
index 1c5c315..d917f31 100644
--- a/runtime/tutor/Make_mvc.mak
+++ b/runtime/tutor/Make_mvc.mak
@@ -1,7 +1,11 @@
 #
 # Makefile for converting the Vim tutorial on Windows.
 #
-# 21.11.23, Restorer, restorer@mail2k.ru
+# 21.11.24, Restorer, restorer@mail2k.ru
+#
+# Use the UTF-8 version as the original and create the others with conversion.
+# For some translation files of chapter one, conversion from traditional
+# encodings to UTF-8 encoding is performed.
 
 
 !IF [powershell -nologo -noprofile "exit $$psversiontable.psversion.major"] == 2
@@ -27,22 +31,25 @@
 
 RM = del /q
 CP = copy /y
+HDLNK = mklink /h
 PS = PowerShell.exe
 
 PSFLAGS = -NoLogo -NoProfile -Command
 
+.SUFFIXES :
+
 all : $(CONVERTED)
 
-tutor.utf-8 : tutor
+tutor1.utf-8 : tutor1
 !IF DEFINED (ICONV)
 	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
 		[System.Text.Encoding]::GetEncoding(28591)) ^| \
-		1>nul New-Item -Force -ItemType file -Path . -Name $@
+		1>nul New-Item -Path . -Name $@ -ItemType file -Force
 !ENDIF
 
-tutor.bar : tutor.bar.utf-8
+tutor2 : tutor2.utf-8
 !IF DEFINED (ICONV)
 	$(ICONV) -f UTF-8 -t ISO-8859-1 $? >$@
 !ELSE
@@ -52,55 +59,134 @@
 		[System.Text.Encoding]::GetEncoding(28591))
 !ENDIF
 
-tutor.ca.utf-8 : tutor.ca
+tutor1.bar tutor2.bar :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-1 $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28591))
+!ENDIF
+
+tutor1.ca.utf-8 : tutor1.ca
 !IF DEFINED (ICONV)
 	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
 		[System.Text.Encoding]::GetEncoding(28591)) ^| \
-		1>nul New-Item -Force -ItemType file -Path . -Name $@
+		1>nul New-Item -Path . -Name $@ -ItemType file -Force
 !ENDIF
 
-tutor.de.utf-8 : tutor.de
+tutor2.ca : tutor2.ca.utf-8
 !IF DEFINED (ICONV)
-	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
-!ELSE
-	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
-		[System.Text.Encoding]::GetEncoding(28591)) ^| \
-		1>nul New-Item -Force -ItemType file -Path . -Name $@
-!ENDIF
-
-tutor.el : tutor.el.utf-8
-!IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t ISO-8859-7 $? >$@
+	$(ICONV) -f UTF-8 -t ISO-8859-1 $? >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
 		[System.IO.File]::ReadAllText(\"$?\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28591))
+!ENDIF
+
+tutor1.cs tutor2.cs :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28592))
+!ENDIF
+
+tutor1.cs.cp1250 tutor2.cs.cp1250 :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t CP1250 $(@R).utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(1250))
+!ENDIF
+
+tutor1.da tutor2.da :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-4 $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28594))
+!ENDIF
+
+tutor1.de.utf-8 : tutor1.de
+!IF DEFINED (ICONV)
+	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
+		[System.Text.Encoding]::GetEncoding(28591)) ^| \
+		1>nul New-Item -Path . -Name $@ -ItemType file -Force
+!ENDIF
+
+tutor2.de : tutor2.de.utf-8
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-1 $? >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$?\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28591))
+!ENDIF
+
+tutor1.el tutor2.el :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-7 $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
 		[System.Text.Encoding]::GetEncoding(28597))
 !ENDIF
 
-tutor.el.cp737 : tutor.el.utf-8
+tutor1.el.cp737 tutor2.el.cp737 :
 !IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t CP737 $? >$@
+	$(ICONV) -f UTF-8 -t CP737 $(@R).utf-8 >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
 		[System.Text.Encoding]::GetEncoding(737))
 !ENDIF
 
-tutor.eo : tutor.eo.utf-8
+tutor1.eo tutor2.eo :
 !IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t ISO-8859-3 $? >$@
+	$(ICONV) -f UTF-8 -t ISO-8859-3 $@.utf-8 >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
 		[System.Text.Encoding]::GetEncoding(28593))
 !ENDIF
 
-tutor.es : tutor.es.utf-8
+tutor1.es tutor2.es :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-1 $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28591))
+!ENDIF
+
+tutor1.fr.utf-8 : tutor1.fr
+!IF DEFINED (ICONV)
+	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
+		[System.Text.Encoding]::GetEncoding(28591)) ^| \
+		1>nul New-Item -Path . -Name $@ -ItemType file -Force
+!ENDIF
+
+tutor2.fr : tutor2.fr.utf-8
 !IF DEFINED (ICONV)
 	$(ICONV) -f UTF-8 -t ISO-8859-1 $? >$@
 !ELSE
@@ -110,95 +196,118 @@
 		[System.Text.Encoding]::GetEncoding(28591))
 !ENDIF
 
-tutor.fr.utf-8 : tutor.fr
+tutor1.hr tutor2.hr :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28592))
+!ENDIF
+
+tutor1.hr.cp1250 tutor2.hr.cp1250 :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t CP1250 $(@R).utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(1250))
+!ENDIF
+
+tutor1.hu tutor2.hu :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28592))
+!ENDIF
+
+tutor1.hu.cp1250 tutor2.hu.cp1250 :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t CP1250 $(@R).utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(1250))
+!ENDIF
+
+tutor1.it.utf-8 : tutor1.it
 !IF DEFINED (ICONV)
 	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
 		[System.Text.Encoding]::GetEncoding(28591)) ^| \
-		1>nul New-Item -Force -ItemType file -Path . -Name $@
+		1>nul New-Item -Path . -Name $@ -ItemType file -Force
 !ENDIF
 
-tutor.hr : tutor.hr.utf-8
+tutor2.it : tutor2.it.utf-8
 !IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t ISO-8859-2 $? >$@
+	$(ICONV) -f UTF-8 -t ISO-8859-1 $? >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
 		[System.IO.File]::ReadAllText(\"$?\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
-		[System.Text.Encoding]::GetEncoding(28592))
+		[System.Text.Encoding]::GetEncoding(28591))
 !ENDIF
 
-tutor.hr.cp1250 : tutor.hr.utf-8
+tutor1.ja.sjis tutor2.ja.sjis :
 !IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t CP1250 $? >$@
+	$(ICONV) -f UTF-8 -t CP932 $(@R).utf-8 >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
-		[System.Text.Encoding]::GetEncoding(65001)), \
-		[System.Text.Encoding]::GetEncoding(1250))
-!ENDIF
-
-tutor.hu : tutor.hu.utf-8
-!IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t ISO-8859-2 $? >$@
-!ELSE
-	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
-		[System.Text.Encoding]::GetEncoding(65001)), \
-		[System.Text.Encoding]::GetEncoding(28592))
-!ENDIF
-
-tutor.hu.cp1250 : tutor.hu.utf-8
-!IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t CP1250 $? >$@
-!ELSE
-	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
-		[System.Text.Encoding]::GetEncoding(65001)), \
-		[System.Text.Encoding]::GetEncoding(1250))
-!ENDIF
-
-tutor.it.utf-8 : tutor.it
-!IF DEFINED (ICONV)
-	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
-!ELSE
-	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
-		[System.Text.Encoding]::GetEncoding(28591)) ^| \
-		1>nul New-Item -Force -ItemType file -Path . -Name $@
-!ENDIF
-
-tutor.ja.sjis : tutor.ja.utf-8
-!IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t CP932 $? >$@
-!ELSE
-	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
 		[System.Text.Encoding]::GetEncoding(932))
 !ENDIF
 
-tutor.ja.euc : tutor.ja.utf-8
+tutor1.ja.euc tutor2.ja.euc :
 !IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t EUC-JP $? >$@
+	$(ICONV) -f UTF-8 -t EUC-JP $(@R).utf-8 >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
 		[System.Text.Encoding]::GetEncoding(51932))
 !ENDIF
 
-tutor.ko.euc : tutor.ko.utf-8
+tutor1.ko tutor2.ko :
+	$(HDLNK) $@ $@.utf-8
+
+tutor1.ko.euc tutor2.ko.euc :
 !IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t EUC-KR $? >$@
+	$(ICONV) -f UTF-8 -t EUC-KR $(@R).utf-8 >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
 		[System.Text.Encoding]::GetEncoding(51949))
 !ENDIF
 
-tutor.nl : tutor.nl.utf-8
+tutor1.nl tutor2.nl :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-1 $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28591))
+!ENDIF
+
+tutor1.no.utf-8 : tutor1.no
+!IF DEFINED (ICONV)
+	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
+		[System.Text.Encoding]::GetEncoding(28591)) ^| \
+		1>nul New-Item -Path . -Name $@ -ItemType file -Force
+!ENDIF
+
+tutor2.no : tutor2.no.utf-8
 !IF DEFINED (ICONV)
 	$(ICONV) -f UTF-8 -t ISO-8859-1 $? >$@
 !ELSE
@@ -208,67 +317,134 @@
 		[System.Text.Encoding]::GetEncoding(28591))
 !ENDIF
 
-tutor.no.utf-8 : tutor.no
-!IF DEFINED (ICONV)
-	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
-!ELSE
-	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
-		[System.Text.Encoding]::GetEncoding(28591)) ^| \
-		1>nul New-Item -Force -ItemType file -Path . -Name $@
-!ENDIF
-
 # nb is an alias for no
-tutor.nb : tutor.no
-	$(CP) tutor.no tutor.nb
+tutor1.nb tutor2.nb : $$(@R).no
+	$(HDLNK) $@ $?
 
-tutor.nb.utf-8 : tutor.no.utf-8
-	$(CP) tutor.no.utf-8 tutor.nb.utf-8
+tutor1.nb.utf-8 tutor2.nb.utf-8 : $$(@R)
+	$(HDLNK) $@ %|dpfF.no.utf-8
 
-tutor.ru : tutor.ru.utf-8
+tutor1.pl tutor2.pl :
 !IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t KOI8-R $? >$@
+	$(ICONV) -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28592))
+!ENDIF
+
+tutor1.pl.cp1250 tutor2.pl.cp1250 :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t CP1250 $(@R).utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(1252))
+!ENDIF
+
+tutor1.pt tutor2.pt :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-15 $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28605))
+!ENDIF
+
+tutor1.ru tutor2.ru :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t KOI8-R $@.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
 		[System.Text.Encoding]::GetEncoding(20866))
 !ENDIF
 
-tutor.ru.cp1251 : tutor.ru.utf-8
+tutor1.ru.cp1251 tutor2.ru.cp1251 :
 !IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t CP1251 $? >$@
+	$(ICONV) -f UTF-8 -t CP1251 $(@R).utf-8 >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
-		[System.IO.File]::ReadAllText(\"$?\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
 		[System.Text.Encoding]::GetEncoding(1251))
 !ENDIF
 
-tutor.sv.utf-8 : tutor.sv
+tutor1.sk tutor2.sk :
 !IF DEFINED (ICONV)
-	$(ICONV) -f ISO-8859-1 -t UTF-8 $? >$@
+	$(ICONV) -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
 !ELSE
-	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
-		[System.Text.Encoding]::GetEncoding(28591)) ^| \
-		1>nul New-Item -Force -ItemType file -Path . -Name $@
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$@.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28592))
 !ENDIF
 
-tutor.tr.iso9 : tutor.tr.utf-8
+tutor1.sk.cp1250 tutor2.sk.cp1250 :
 !IF DEFINED (ICONV)
-	$(ICONV) -f UTF-8 -t ISO-8859-9 $? >$@
+	$(ICONV) -f UTF-8 -t CP1250 $(@R).utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(1252))
+!ENDIF
+
+tutor1.sr.cp1250 tutor2.sr.cp1250 :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t CP1250 $(@R).utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$(@R).utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(1252))
+!ENDIF
+
+tutor1.sv.utf-8 : tutor1.sv
+!IF DEFINED (ICONV)
+	$(ICONV) -f ISO-8859-15 -t UTF-8 $? >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
+		[System.Text.Encoding]::GetEncoding(28605)) ^| \
+		1>nul New-Item -Path . -Name $@ -ItemType file -Force
+!ENDIF
+
+tutor2.sv : tutor2.sv.utf-8
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-15 $? >$@
 !ELSE
 	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
 		[System.IO.File]::ReadAllText(\"$?\", \
 		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(28605))
+!ENDIF
+
+tutor1.tr.iso9 tutor2.tr.iso9 :
+!IF DEFINED (ICONV)
+	$(ICONV) -f UTF-8 -t ISO-8859-9 $*.utf-8 >$@
+!ELSE
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$*.utf-8\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
 		[System.Text.Encoding]::GetEncoding(28599))
 !ENDIF
 
-tutor.zh.utf-8 : tutor.zh.big5
+tutor1.zh.utf-8 : tutor1.zh.big5
 	$(PS) $(PSFLAGS) [System.IO.File]::ReadAllText(\"$?\", \
 		[System.Text.Encoding]::GetEncoding(950)) ^| \
-		1>nul New-Item -Force -ItemType file -Path . -Name $@
+		1>nul New-Item -Path . -Name $@ -ItemType file -Force
+
+tutor2.zh.big5 : tutor2.zh.utf-8
+	$(PS) $(PSFLAGS) [System.IO.File]::WriteAllText(\"$@\", \
+		[System.IO.File]::ReadAllText(\"$?\", \
+		[System.Text.Encoding]::GetEncoding(65001)), \
+		[System.Text.Encoding]::GetEncoding(950))
 
 clean :
-	@for %%G in ($(CONVERTED)) do (if exist .\%%G ($(RM) %%G))
+	@for %%G in ($(CONVERTED)) do (if exist .\%%G $(RM) .\%%G)
 
 # vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0 ft=make:
diff --git a/runtime/tutor/Makefile b/runtime/tutor/Makefile
index d31729d..3eb4984 100644
--- a/runtime/tutor/Makefile
+++ b/runtime/tutor/Makefile
@@ -1,95 +1,150 @@
 # Makefile for the Vim tutor.
 #
-# The Japanese tutor exists in three encodings.  Use the UTF-8 version as the
-# original and create the others with conversion.
-#
-# Similarly for Russian and Korean
+# Use the UTF-8 version as the original and create the others with conversion.
+# For some translation files of chapter one, conversion from traditional
+# encodings to UTF-8 encoding is performed.
 
 # Common components
 include Make_all.mak
 
 .PHONY: all clean
 
+.SUFFIXES:
+
 all: $(CONVERTED)
 
-tutor.utf-8: tutor
+tutor1.utf-8: tutor1
 	iconv -f ISO-8859-1 -t UTF-8 $? >$@
 
-tutor.bar: tutor.bar.utf-8
+tutor2: tutor2.utf-8
 	iconv -f UTF-8 -t ISO-8859-1 $? >$@
 
-tutor.ca.utf-8: tutor.ca
+tutor1.bar tutor2.bar:
+	iconv -f UTF-8 -t ISO-8859-1 $@.utf-8 >$@
+
+tutor1.ca.utf-8: tutor1.ca
 	iconv -f ISO-8859-1 -t UTF-8 $? >$@
 
-tutor.eo: tutor.eo.utf-8
-	iconv -f UTF-8 -t ISO-8859-3 $? >$@
-
-tutor.de.utf-8: tutor.de
-	iconv -f ISO-8859-1 -t UTF-8 $? >$@
-
-tutor.el: tutor.el.utf-8
-	iconv -f UTF-8 -t ISO-8859-7 $? >$@
-
-tutor.el.cp737: tutor.el.utf-8
-	iconv -f UTF-8 -t CP737 $? >$@
-
-tutor.es: tutor.es.utf-8
+tutor2.ca: tutor2.ca.utf-8
 	iconv -f UTF-8 -t ISO-8859-1 $? >$@
 
-tutor.fr.utf-8: tutor.fr
+tutor1.cs tutor2.cs :
+	iconv -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
+
+tutor1.cs.cp1250 tutor2.cs.cp1250 :
+	iconv -f UTF-8 -t CP1250 $(@:.cp1250=).utf-8 >$@
+
+tutor1.da tutor2.da :
+	iconv -f UTF-8 -t ISO-8859-4 $@.utf-8 >$@
+
+tutor1.de.utf-8: tutor1.de
 	iconv -f ISO-8859-1 -t UTF-8 $? >$@
 
-tutor.hu: tutor.hu.utf-8
-	iconv -f UTF-8 -t ISO-8859-2 $? >$@
-
-tutor.hu.cp1250: tutor.hu.utf-8
-	iconv -f UTF-8 -t CP1250 $? >$@
-
-tutor.it.utf-8: tutor.it
-	iconv -f ISO-8859-1 -t UTF-8 $? >$@
-
-tutor.hr: tutor.hr.utf-8
-	iconv -f UTF-8 -t ISO-8859-2 $? >$@
-
-tutor.hr.cp1250: tutor.hr.utf-8
-	iconv -f UTF-8 -t CP1250 $? >$@
-
-tutor.ja.sjis: tutor.ja.utf-8
-	iconv -f UTF-8 -t CP932 $? >$@
-
-tutor.ja.euc: tutor.ja.utf-8
-	iconv -f UTF-8 -t EUC-JP $? >$@
-
-tutor.ko.euc: tutor.ko.utf-8
-	iconv -f UTF-8 -t EUC-KR $? >$@
-
-tutor.nl: tutor.nl.utf-8
+tutor2.de: tutor2.de.utf-8
 	iconv -f UTF-8 -t ISO-8859-1 $? >$@
 
-tutor.no.utf-8: tutor.no
+tutor1.el tutor2.el:
+	iconv -f UTF-8 -t ISO-8859-7 $@.utf-8 >$@
+
+tutor1.el.cp737 tutor2.el.cp737:
+	iconv -f UTF-8 -t CP737 $(@:.cp737=.utf-8) >$@
+
+tutor1.eo tutor2.eo:
+	iconv -f UTF-8 -t ISO-8859-3 $@.utf-8 >$@
+
+tutor1.es tutor2.es:
+	iconv -f UTF-8 -t ISO-8859-1 $@.utf-8 >$@
+
+tutor1.fr.utf-8: tutor1.fr
 	iconv -f ISO-8859-1 -t UTF-8 $? >$@
 
+tutor2.fr: tutor2.fr.utf-8
+	iconv -f UTF-8 -t ISO-8859-1 $? >$@
+
+tutor1.hr tutor2.hr:
+	iconv -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
+
+tutor1.hr.cp1250 tutor2.hr.cp1250:
+	iconv -f UTF-8 -t CP1250 $(@:.cp1250=.utf-8) >$@
+
+tutor1.hu tutor2.hu:
+	iconv -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
+
+tutor1.hu.cp1250 tutor2.hu.cp1250:
+	iconv -f UTF-8 -t CP1250 $(@:.cp1250=.utf-8) >$@
+
+tutor1.it.utf-8: tutor1.it
+	iconv -f ISO-8859-1 -t UTF-8 $? >$@
+
+tutor2.it: tutor2.it.utf-8
+	iconv -f UTF-8 -t ISO-8859-1 $? >$@
+
+tutor1.ja.sjis tutor2.ja.sjis:
+	iconv -f UTF-8 -t CP932 $(@:.sjis=.utf-8) >$@
+
+tutor1.ja.euc tutor2.ja.euc:
+	iconv -f UTF-8 -t EUC-JP $(@:.euc=.utf-8) >$@
+
+tutor1.ko tutor2.ko:
+	ln $@.utf-8 $@
+
+tutor1.ko.euc tutor2.ko.euc:
+	iconv -f UTF-8 -t EUC-KR $(@:.euc=.utf-8) >$@
+
+tutor1.nl tutor2.nl:
+	iconv -f UTF-8 -t ISO-8859-1 $@.utf-8 >$@
+
+tutor1.no.utf-8: tutor1.no
+	iconv -f ISO-8859-1 -t UTF-8 $? >$@
+
+tutor2.no: tutor2.no.utf-8
+	iconv -f UTF-8 -t ISO-8859-1 $? >$@
+
 # nb is an alias for no
-tutor.nb: tutor.no
-	cp $? $@
+tutor1.nb tutor2.nb:
+	ln $(@:.nb=.no) $@
 
-tutor.nb.utf-8: tutor.no.utf-8
-	cp $? $@
+tutor1.nb.utf-8 tutor2.nb.utf-8:
+	ln $(@:.nb.utf-8=.no.utf-8) $@
 
-tutor.ru: tutor.ru.utf-8
-	iconv -f UTF-8 -t KOI8-R $? >$@
+tutor1.pl tutor2.pl :
+	iconv -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
 
-tutor.ru.cp1251: tutor.ru.utf-8
-	iconv -f UTF-8 -t CP1251 $? >$@
+tutor1.pl.cp1250 tutor2.pl.cp1250 :
+	iconv -f UTF-8 -t CP1250 $(@:.cp1250=).utf-8 >$@
 
-tutor.tr.iso9: tutor.tr.utf-8
-	iconv -f UTF-8 -t ISO-8859-9 $? >$@
+tutor1.pt tutor2.pt :
+	iconv -f UTF-8 -t ISO-8859-15 $@.utf-8 >$@
 
-tutor.sv.utf-8: tutor.sv
-	iconv -f ISO-8859-1 -t UTF-8 $? >$@
+tutor1.ru tutor2.ru:
+	iconv -f UTF-8 -t KOI8-R $@.utf-8 >$@
 
-tutor.zh.utf-8: tutor.zh.big5
-	iconv -f BIG-5 -t UTF-8 $? >$@
+tutor1.ru.cp1251 tutor2.ru.cp1251:
+	iconv -f UTF-8 -t CP1251 $(@:.cp1251=.utf-8) >$@
+
+tutor1.sk tutor2.sk :
+	iconv -f UTF-8 -t ISO-8859-2 $@.utf-8 >$@
+
+tutor1.sk.cp1250 tutor2.sk.cp1250 :
+	iconv -f UTF-8 -t CP1250 $(@:.cp1250=).utf-8 >$@
+
+tutor1.sr.cp1250 tutor2.sr.cp1250 :
+	iconv -f UTF-8 -t CP1250 $(@:.cp1250=).utf-8 >$@
+
+tutor1.sv.utf-8: tutor1.sv
+	iconv -f ISO-8859-15 -t UTF-8 $? >$@
+
+tutor2.sv: tutor2.sv.utf-8
+	iconv -f UTF-8 -t ISO-8859-15 $? >$@
+
+tutor1.tr.iso9 tutor2.tr.iso9:
+	iconv -f UTF-8 -t ISO-8859-9 $(@:.iso9=.utf-8) >$@
+
+tutor1.zh.utf-8: tutor1.zh.big5
+	iconv -f BIG-5 -t UTF-8 -c $? >$@
+
+tutor2.zh.big5: tutor2.zh.utf-8
+	iconv -f UTF-8 -t BIG-5 -c $? >$@
 
 clean:
-	for G in $(CONVERTED); do if [ -f $$G ]; then rm -f $$G; fi; done
+	for G in $(CONVERTED); do if [ -f ./$$G ]; then rm -f ./$$G; fi; done;