Vimスクリプト(printf)(その4)

アニメ『真・中華一番!』

あれ、真ってついてるから、二期なのかなあと思って「中華一番」を探すとありました、アニメ。1997年に放送されてたんですね。
最初にそっちからみようかなあと思って、1話だけみてみましたが、うん、作画が古い。もちろん内容は面白いのですが、旧版は1話だけにしておきました。
で真版。1話は、鳥料理の話です。鳥料理なのに鶏肉が出てこない! でも、すごく美味しそうです。幻の黒い鳥、食べてみたい。

printf %sはよくわかりましたので、次へ進みます。今回は%dを使います。

まずはヘルプ。

:h printf-d
                                *printf-d* *printf-b* *printf-B* *printf-o*
                                *printf-x* *printf-X*
                dbBoxX  The Number argument is converted to signed decimal
                        (d), unsigned binary (b and B), unsigned octal (o), or
                        unsigned hexadecimal (x and X) notation.  The letters
                        "abcdef" are used for x conversions; the letters
                        "ABCDEF" are used for X conversions.
                        The precision, if any, gives the minimum number of
                        digits that must appear; if the converted value
                        requires fewer digits, it is padded on the left with
                        zeros.
                        In no case does a non-existent or small field width
                        cause truncation of a numeric field; if the result of
                        a conversion is wider than the field width, the field
                        is expanded to contain the conversion result.
                        The 'h' modifier indicates the argument is 16 bits.
                        The 'l' modifier indicates the argument is 32 bits.
                        The 'L' modifier indicates the argument is 64 bits.
                        Generally, these modifiers are not useful. They are
                        ignored when type is known from the argument.

他の指定子のことも書かれてるので、 たくさん説明があります。

使ってみます。

:let a=100
:echo printf("[%d]",a)

まあ普通に表示されますね。

計算した結果はどうでしょうか。

:let a=100
:echo printf("[%d]",a * a)

桁指定してみます。右詰。

:let a=100
:echo printf("[%10d]", a)

左詰。

:let a=100
:echo printf("[%-10d]", a)