Mercurial > vim
annotate src/po/sjiscorr.c @ 7639:0ecb62a66a7a v7.4.1119
commit https://github.com/vim/vim/commit/72defda84eb26be9e2ade56c7877b912f818026e
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Jan 17 18:04:33 2016 +0100
patch 7.4.1119
Problem: argidx() has a wrong value after ":%argdelete". (Yegappan
Lakshmanan)
Solution: Correct the value of w_arg_idx. Add a test.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 17 Jan 2016 18:15:04 +0100 |
parents | 65df2fba429b |
children | 33ba2adb6065 |
rev | line source |
---|---|
7 | 1 /* |
2 * Simplistic program to correct SJIS inside strings. When a trail byte is a | |
3 * backslash it needs to be doubled. | |
4 * Public domain. | |
5 */ | |
6 #include <stdio.h> | |
7 #include <string.h> | |
8 | |
9 int | |
10 main(argc, argv) | |
11 int argc; | |
12 char **argv; | |
13 { | |
14 char buffer[BUFSIZ]; | |
15 char *p; | |
16 | |
17 while (fgets(buffer, BUFSIZ, stdin) != NULL) | |
18 { | |
19 for (p = buffer; *p != 0; p++) | |
20 { | |
4502
605c9ce57ec3
Updated runtime files, language files and translations.
Bram Moolenaar <bram@vim.org>
parents:
7
diff
changeset
|
21 if (strncmp(p, "charset=utf-8", 13) == 0) |
7 | 22 { |
23 fputs("charset=cp932", stdout); | |
4502
605c9ce57ec3
Updated runtime files, language files and translations.
Bram Moolenaar <bram@vim.org>
parents:
7
diff
changeset
|
24 p += 12; |
7 | 25 } |
6351 | 26 else if (strncmp(p, "# Original translations", 23) == 0) |
7 | 27 { |
28 fputs("# generated from ja.po, DO NOT EDIT", stdout); | |
29 while (p[1] != '\n') | |
30 ++p; | |
31 } | |
32 else if (*(unsigned char *)p == 0x81 && p[1] == '_') | |
33 { | |
34 putchar('\\'); | |
35 ++p; | |
36 } | |
37 else | |
38 { | |
39 if (*p & 0x80) | |
40 { | |
41 putchar(*p++); | |
42 if (*p == '\\') | |
43 putchar(*p); | |
44 } | |
45 putchar(*p); | |
46 } | |
47 } | |
48 } | |
49 } |