その他

日付挿入

メニューから(その時点の)日付時刻が入力可能です。 [編集(E)] (Edit) メニュー → [挿入(I)] (Insert) から必要な形式を選択してください。

[編集(E)]メニュー→[挿入(I)] 形式 備考
[現在の日時(j)を挿入(J)] (ja) 2019/06/07(金) 23:43:50
[現在の日時(e)を挿入(E)] (en) 2019/06/07(Fri) 23:43:54
[現在の日時(年月日)を挿入(N)] (Nihongo) 2019年6月7日(金) 23:43:57
[現在のタイムスタンプを挿入(T)] (timestamp) Fri Jun 07 23:44:01 2019
[現在のタイムスタンプ(UTC)を挿入(U)] (UTC) 2019-06-07T23:44:01+09:00

また、@ レジスタを使って日付入力することも出来ます。

レジスタ 説明 備考
@ このレジスタを使って(その時点の)日時の文字列を挿入することができます。 uvw固有

ノーマルモードでは

"@p

インサートモードでは

<CTRL+R>@

のように入力できます。

関連パラメータ:

パラメータ 省略形 形式 説明 初期値 備考
timeformat tfm 数値 @ レジスタで入力する日時形式を指定する。 0

文字コード入力

コマンドラインから文字コードを打ち込んで文字を入力することができます。

コマンド 省略形 説明 備考
:sjis ShiftJIS のコードで入力します。
:euc euc-jp のコードで入力します。
:ucs UCS-4 のコードで入力します。
:wide UTF-16 のコードで入力します。
:utf UTF-8 のコードで入力します。

以下に入力例を示します。

:sjis 0x8e9a → 字
:euc 0xbbfa → 字
:ucs U+5b57 → 字
:wide 0x5b57 → 字
:utf 0xe5ad97 → 字

足し算 (:sum コマンド)

おまけ機能として範囲内に出現する数字を足し合わせるだけの機能です。

コマンド 省略形 説明 備考
:sum 行単位で範囲内に出現する数値を全て足し合わせます。

足し算 (gS コマンド)

:sum コマンドでは行単位でしたが、 Visual 選択後に文字、行、ブロック範囲での集計を行うこともできます。

normal コマンド 説明 計算範囲 備考
gS Visual 選択した範囲に出現する数値を全て足し合わせます。Visual 選択していない場合はカーソル直下の数値のみが対象になります。 文字、行、ブロック uvw固有

? レジスタ

:sum コマンドまたは gS コマンドによる足し算結果が格納される ? レジスタを実装しています。他のレジスタと同様に扱えます。

レジスタ 説明 備考
? :sum コマンドまたは normal コマンドの gS で計算した総計が格納されます。 uvw固有

実行例

100,000
200,000
300,000
-150,000
:%sum
450000 0x6ddd0
"?p
450000

sourcepath パラメータ

:source コマンドで指定するファイルの補完で検索するパスを指定します。 :so 後に TAB を入力することでこのパスに置かれたファイルを検索して 自動補完することができます。 (最近の vim の runtimepath に似たようなものですね)

パラメータ 省略形 形式 説明 初期値 備考
sourcepath sop 文字列 :source コマンドで読み込むファイルのパスを指定します。 uvw固有

ex コマンド(: で始まるコマンド)で置換や変換のパターンを記述したファイルをいくつか用意しておき、 上記パスに置いておくことで置換などの手間を省略することが出来ると思います。

実行例

> type C:\Users\MyName\excmds\text-align.txt
:%rtrim
:%s/(\s\+/(/g
:%s/\s\+)/)/g
:%s/if(/if (/g
:%s/for(/for (/g
:%s/while(/while (/g

:set sourcepath=.;C:\\Users\\MyName\\excmds
:pwd
C:\
:so te → <TAB>
:so C:\Users\MyName\excmds\text-align.txt

ファイルの末尾追跡 (:tail コマンド)

おまけ機能として UNIX 等の tail -f コマンドのように 出力されるファイルの末尾を追跡して表示する機能を実装しています。

-f オプションを指定して uvw を起動するか

起動オプション 説明 備考
-f uvw を指定ファイルの末尾を追跡モードで起動します。 uvw固有
uvw -f messages

ファイルを開いてから :tail コマンドを打ってください。

コマンド 省略形 説明 備考
:tail 現在開いているファイルの末尾を追跡します。 uvw固有

バイナリモード

起動時に -b オプションでファイルを指定して実行することで 16 進数形式のバイナリダンプを見られるようになっています。

起動オプション 説明 備考
-b バイナリモードで起動する。

これは jvim の仕様のままです。 ただ、右の方の文字ダンプ部分はファイルの文字コード自動判別と合わせて 可能な限り判別できた日本語で表示するようになっています。 (表示可能な文字コードはテキストの自動判別と同じです)

0000000000000000: 4d5a 9000 0300 0000 0400 0000 ffff 0000 ;MZ..............
0000000000000010: b800 0000 0000 0000 4000 0000 0000 0000 ;ク.......@.......

バイナリを編集する場合は、 このモードでは書き込み時に下記の : ~ ; の部分のみが解釈の対象になっていますので、 (16 進数の)テキストとして編集して 普通に :w などで書き込みすれば書き換えることができます。

                 |<------------------------------------->|
0000000000000000: 4d5a 9000 0300 0000 0400 0000 ffff 0000 ;MZ..............
0000000000000010: b800 0000 0000 0000 4000 0000 0000 0000 ;ク.......@.......

行毎の : ~ ; の間に書かれてさえいれば良く、 アドレス部分や文字ダンプの部分は意味を持ちません。極端な話では

  1. uvw -b で空のファイルを開く。

  2. テキスト編集の容量で 16 進数列を列挙する。(: の前や ; の後には何も書かないで OK)

    : 0020 ;
    : 0021 ;
    : 0022 ;
    : 0023 ;
        :
  3. ファイルを書き込む :w

でバイナリデータを作ることができます。

入力形式

バイナリモードで記述可能な形式としては、

binary パラメータ

また、開いているファイルを binary パラメータでバイナリモードで開き直すことができます。

パラメータ 省略形 形式 説明 初期値 備考
binary bin 二値 開いているファイルの末尾を追跡します。 nobinary

コマンド例

:set binary
:e!
:set nobinary
:e!

罫線モード

normal コマンドの gx で罫線モードに遷移後、 hjkl や矢印キーで(文字による)罫線を引くことができます。 罫線モードを終了するには ESC または CTRL+[ で罫線モードを解除してください。

normal コマンド 説明 備考
gx 罫線モードに遷移します。
gp (罫線モードで) 線種を切り替えます。(前)(循環)
gn (罫線モードで) 線種を切り替えます。(次)(循環)

選択可能な罫線文字

trackset 値 説明 備考
as ASCII 文字で罫線を引きます。
jp 全角で細字の罫線を引きます。
bj 全角で太字の罫線を引きます。 bold
hj 全角で水平方向が太字の罫線を引きます。 hrizontal bold
vj 全角で垂直方向が太字の罫線を引きます。 vertical bold
dj 全角で縦横方向が点線の罫線を引きます。 dotted line
er 罫線を空白文字で消します。 eraser

trackset パラメータで罫線文字の初期値を設定することができます。

as

jp

bj

hj

vj

dj

スライドモード (:slide コマンド)

jvim に元々入っていたヘルプ機能を応用しただけのものですが、 改ページ(^L)が入ったテキストでページ毎に表示できるようなモードを実装しています。

ファイルを開いた状態で以下のコマンドを実行してください。

:slide

改ページが含まれたテキスト

:slide

目次はそれぞれの改ページ直後の 1 行から自動生成します。

コマンド 説明 備考
SPACE 次ページへ進みます。
ENTER slide モードを終了します。
a 目次ページを表示します。
b 前ページに戻ります。
{c-zA-Z} それぞれの対応するページにジャンプします。どのページからでもジャンプできます。

目次ページからの SPACE で最初のページへ移動します。

後は SPACE で順次ページを移動していきます。

戻る