質問
EditPad Lite には優れた機能があります (CTRL-E, CTRL-私) タイムスタンプを挿入します。「2008-09-11 10:34:53」をコードに入力します。
Vim でこの機能を取得する最良の方法は何ですか?
(SSH 経由で Linux サーバー上で Vim 6.1 を使用しています。現在の状況では、何人かでログインを共有しているため、タイムスタンプを取得する別の組み込み方法がある場合は、ホーム ディレクトリに略語を作成したくありません。)
解決
http://kenno.wordpress.com/2006/08/03/vim-tip-insert-time-stamp/
試してみたところ、私のMacでも動作しました。
:r! date
生成されるもの:
Thu Sep 11 10:47:30 CEST 2008
これ:
:r! date "+\%Y-\%m-\%d \%H:\%M:\%S"
生成されるもの:
2008-09-11 10:50:56
他のヒント
クロスプラットフォームで動作させるには、次のコードを vimrc
:
nmap <F3> i<C-R>=strftime("%Y-%m-%d %a %I:%M %p")<CR><Esc>
imap <F3> <C-R>=strftime("%Y-%m-%d %a %I:%M %p")<CR>
これで、Vi/Vim 内でいつでも F3 を押すだけで、次のようなタイムスタンプが得られます。 2016-01-25 Mo 12:44
カーソル位置に挿入されます。
利用可能なパラメータの詳細な説明については、 C 関数 strftime() のドキュメント.
なんでみんな使ってるの :r!
?空行を見つけて入力します !!date
コマンドモードから。キーストロークを保存してください!
[注記]これにより、現在の行が標準入力にパイプされ、その行がコマンド出力に置き換えられます。したがって、「空白行の検索」の部分です。]
@Swaroop C Hの回答の拡張として、
^R=strftime("%FT%T%z")
は、タイムゾーン (実際には、ISO-8601 準拠の形式での UTC との差) も出力する、よりコンパクトな形式です。
何らかの理由で外部ツールを使用したい場合は、
:r !date --rfc-3339=s
RFC-3339 に準拠した完全なタイムスタンプが得られます。使用 ns
の代わりに s
スポックのような精度とパイプスルーを実現 tr ' ' T
日付と時刻の間にスペースの代わりに大文字の T を使用します。
また、次のことを知っておくと役に立つかもしれません
:source somefile.vim
からのコマンドを読み込みます somefile.vim
:こうすることで、マッピングなどのカスタム セットをセットアップし、そのアカウントで vim を使用するときにそれをロードできます。
:r!日付
まったく同じフォーマットが必要な場合は、date コマンド (man date) にフォーマットを追加し、これを vim エイリアスとしても追加できます。
:r!日付 +"\%Y-\%m-\%d \%H:\%M:\%S"
これにより、例で示した形式が生成されます(シェル内の日付は \% を使用せず、% のみを使用します。vim は % を現在のファイルの名前で置き換えるので、エスケープする必要があります)。
.vimrc にマップを追加すると、たとえば F3 キーを押すたびにコマンドが自動的に挿入されます。
:map <F3> :r! date +"\%Y-\%m-\%d \%H:\%M:\%S"<cr>
(上から編集:))(編集:テキスト部分をコードに変更します。
<F3>
表示可能)
専用のヒントをご覧ください タイムスタンプの挿入/更新まで vim.wikia で。
UNIX タイムスタンプの場合:
:r! date +\%s
頻繁に使用する場合は、このコマンドを VIM のキー (F12 など) にマップすることもできます。
これを .vimrc に入れます。
map <F12> :r! date +\%s<cr>
から ヴィム・ウィキア.
F キーを押すために手を動かす代わりに、これを使用します。
:iab <expr> tds strftime("%F %b %T")
挿入モードでは「tds」と入力するだけで、スペースバーを押すかリターンキーを押すとすぐに日付が表示され、入力を続けます。
私はそれを置きました %b
月の名前を見るのが好きなので。の %F
日付順に並べ替えるものを与えてくれます。それを次のように変更するかもしれません %Y%m%d
したがって、ユニット間に文字はありません。
以前の回答には含まれていない別の簡単な方法:タイプ-
!!日付