Skip to content

Commit

Permalink
runtime(doc): include vietnamese.txt
Browse files Browse the repository at this point in the history
Since Vietnamese keymaps in Vim is quite differences from the
corresponding input methods, let's document the Vietnamese specifics in
vietnames.txt

related: #16144

Signed-off-by: Phạm Bình An <[email protected]>
Signed-off-by: Christian Brabandt <[email protected]>
  • Loading branch information
brianhuster authored and chrisbra committed Dec 3, 2024
1 parent cdbbdb9 commit 189e24b
Show file tree
Hide file tree
Showing 4 changed files with 101 additions and 0 deletions.
2 changes: 2 additions & 0 deletions runtime/doc/Make_all.mak
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,7 @@ DOCS = \
vim9.txt \
vim9class.txt \
visual.txt \
vietnamese.txt \
windows.txt \
workshop.txt

Expand Down Expand Up @@ -303,6 +304,7 @@ HTMLS = \
version8.html \
version9.html \
vi_diff.html \
vietnamese.html \
vimindex.html \
vim9.html \
vim9class.html \
Expand Down
3 changes: 3 additions & 0 deletions runtime/doc/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,9 @@ os_risc.txt:
os_win32.txt:
touch $@

vietnamese.txt:
touch $@

# In *BSD, the variable '$<' is used in suffix-transformation rules (in GNU this
# is called "implicit rules", and in MS Windows it is called "inference rules").
# For code portability, it is better to use the '$?' variable for explicit rules.
Expand Down
10 changes: 10 additions & 0 deletions runtime/doc/tags
Original file line number Diff line number Diff line change
Expand Up @@ -5786,6 +5786,7 @@ V visual.txt /*V*
VIMINIT starting.txt /*VIMINIT*
VMS os_vms.txt /*VMS*
Vi intro.txt /*Vi*
Vietnamese vietnamese.txt /*Vietnamese*
View starting.txt /*View*
Vim9 vim9.txt /*Vim9*
Vim9-abstract-class vim9class.txt /*Vim9-abstract-class*
Expand Down Expand Up @@ -11241,6 +11242,15 @@ vi-features vi_diff.txt /*vi-features*
vi: options.txt /*vi:*
vi_diff.txt vi_diff.txt /*vi_diff.txt*
vib motion.txt /*vib*
vietnamese vietnamese.txt /*vietnamese*
vietnamese-ime_diff vietnamese.txt /*vietnamese-ime_diff*
vietnamese-intro vietnamese.txt /*vietnamese-intro*
vietnamese-keymap vietnamese.txt /*vietnamese-keymap*
vietnamese-l18n vietnamese.txt /*vietnamese-l18n*
vietnamese-telex_utf-8 vietnamese.txt /*vietnamese-telex_utf-8*
vietnamese-viqr_utf-8 vietnamese.txt /*vietnamese-viqr_utf-8*
vietnamese-vni_utf-8 vietnamese.txt /*vietnamese-vni_utf-8*
vietnamese.txt vietnamese.txt /*vietnamese.txt*
view starting.txt /*view*
view-diffs diff.txt /*view-diffs*
view-file starting.txt /*view-file*
Expand Down
86 changes: 86 additions & 0 deletions runtime/doc/vietnamese.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
*vietnamese.txt* For Vim version 9.1. Last change: 2024 Dec 02


VIM REFERENCE MANUAL by Phạm Bình An


Vietnamese language support in Vim *vietnamese* *Vietnamese*

1. Introduction |vietnamese-intro|
2. Vietnamese keymaps |vietnamese-keymap|
3. Localization |vietnamese-l18n|

===============================================================================
1. Introduction
*vietnamese-intro*

Vim supports Vietnamese language in the following ways:

- Built-in |vietnamese-keymap|, which allows you to type Vietnamese characters
in |Insert-mode| and |search-commands| using US keyboard layout.
- Localization in Vietnamese. See |vietnamese-l18n|

===============================================================================
2. Vietnamese keymaps
*vietnamese-keymap*

To switch between languages you can use your system native keyboard switcher,
or use one of the Vietnamese keymaps included in the Vim distribution, like
below >
:set keymap=vietnamese-telex_utf-8
<
See |'keymap'| for more information.

In the latter case, you can type Vietnamese even if you do not have a
Vietnamese input method engine (IME) or you want Vim to be independent from a
system-wide keyboard settings (when |'imdisable'| is set). You can also |:map|
a key to switch between keyboards.

Vim comes with the following Vietnamese keymaps:
- *vietnamese-telex_utf-8* Telex input method, |UTF-8| encoding.
- *vietnamese-viqr_utf-8* VIQR input method, |UTF-8| encoding.
- *vietnamese-vni_utf-8* VNI input method, |UTF-8| encoding.

*vietnamese-ime_diff*

Since these keymaps were designed to be minimalistic, they do not support all
features of the corresponding input methods. The differences are described
below:

- You can only type each character individually, entering the base letter first
and then the diacritics later. For example, to type the word `nến` using
|vietnamese-vni_utf-8|, you must type `ne61n`, not `nen61` or `ne6n1`
- For characters with more than 1 diacritic, you need to type vowel mark before
tone mark. For example, to type `ồ` using |vietnamese-telex_utf-8|, you need
to type `oof`, not `ofo`.
- With |vietnamese-telex_utf-8|, you need to type all uppercase letters to
produce uppercase characters with diacritics. For example, `Ừ` must be typed
as `UWF`.
- With |vietnamese-telex_utf-8|, the escape character `\` from VNI is added,
hence the confusing `ooo` input to type `oo` is removed, which could lead to
ambiguities. For example, to type the word oòng`, you would type
`DDo\ofng`.
- Simple Telex (both v1 and v2), including the `w[]{}` style, is not
supported.
- Removing diacritics using `z` in Telex or `0` in VNI and VIQR is not supported.

===============================================================================
3. Localization
*vietnamese-l18n*

This comment has been minimized.

Copy link
@zeertzjq

zeertzjq Dec 6, 2024

Member

l18n seems wrong. It should be l10n. Or maybe it should just be locale?

This comment has been minimized.

Copy link
@chrisbra

chrisbra Dec 7, 2024

Member

Yeah, it should have been i18n or l10n. This seems to come from russian.txt. I change it back for vietnamese.txt, but keep the russian tag.


Vim |messages| are also available in Vietnamese. If you wish to see messages in
Vietnamese, you can run the command |:language| with an argument being the name
of the Vietnamese locale. For example, >
:language vi_VN
< or >
:language vi_VN.utf-8
<
Note that the name of the Vietnamese locale may vary depending on your system.
See |mbyte-first| for details.

|vimtutor| is also available in Vietnamese. To start Vimtutor in Vietnamese,
run the following command in terminal: >sh

This comment has been minimized.

Copy link
@h-east

h-east Dec 4, 2024

Contributor

@chrisbra @brianhuster
sh seems a typo. Should we delete it or move it to the beginning of the next line?

This comment has been minimized.

Copy link
@chrisbra

chrisbra Dec 4, 2024

Member

yes thanks. I'll fix it

vimtutor vi
<
===============================================================================
vim:tw=78:ts=8:noet:ft=help:norl:

0 comments on commit 189e24b

Please sign in to comment.