Vim에 타임 스탬프를 삽입하는 가장 좋은 방법은 무엇입니까?
EditPad Lite에는 코드에 "2008-09-11 10:34:53"과 같은 타임 스탬프를 삽입 하는 멋진 기능 ( CTRL- E, CTRL- I)이 있습니다.
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>
이제 바이 / 빔 내에서 언제든지 누르면 F3을 2016-01-25 Mo 12:44
커서에 삽입 된 것과 같은 타임 스탬프가 -display됩니다.
사용 가능한 매개 변수에 대한 완전한 설명은 C 함수 strftime () 의 문서를 확인하십시오 .
왜 모두가 사용하고 :r!
있습니까? !!date
명령 모드에서 빈 줄을 찾아 입력 합니다. 키 입력을 저장하십시오!
[nb이 현재 행을 stdin으로 파이프 한 다음 그 행을 명령 출력으로 대체합니다. 따라서 "빈 줄 찾기"부분.]
@Swaroop CH의 답변에 대한 확장으로,
^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을 사용할 때로드 할 수 있습니다.
: 아르 자형! 데이트
그런 다음 정확히 동일한 형식을 원하면 date 명령 (man date)에 형식을 추가하고 추가 할 수도 있습니다.
: 아르 자형! 날짜 + "\ % Y- \ % m- \ % d \ % H : \ % M : \ % S"
(셸의 날짜는 \ %를 사용하지 않고 % 만 사용하고 vim은 %를 현재 파일의 이름으로 대체 할 수있는 이스케이프해야합니다)
예를 들어 F3를 누를 때마다 명령을 자동으로 입력하도록 .vimrc에 맵을 추가 할 수 있습니다.
:map <F3> :r! date +"\%Y-\%m-\%d \%H:\%M:\%S"<cr>
(위에서 편집 :)) (편집 : 텍스트 부분을 코드로 변경하여
<F3>
표시 가능)
vim.wikia 에서 타임 스탬프 삽입 / 업데이트 에 관한 팁을 설명 합니다.
유닉스 타임 스탬프의 경우 :
: 아르 자형! 날짜 + \ % s
이 명령을 많이 사용하는 경우 VIM의 키 (예 : F12) 에이 명령을 매핑 할 수도 있습니다.
.vimrc에 추천십시오.
map <F12> :r! date +\%s<cr>
로부터 빔 익명 .
F 키를 누르기 위해 손을 대신 사용합니다.
:iab <expr> tds strftime("%F %b %T")
이제 삽입 모드에서 tds를 입력하고 스페이스 바를 누르거나 돌아 오자마자 날짜를 확인하고 계속 입력합니다.
%b
월 이름을보고 싶어서 거기에 넣었습니다 . 는 %F
나에게 날짜를 기준으로 정렬 뭔가를 제공합니다. %Y%m%d
사이에 문자 단위가 없도록 변경할 수 있습니다 .
이전 답변에 포함되지 않은 또 다른 빠른 방법 : type-
!! 데이트
Unix, 사용 :
!!date
Windows, 사용 :
!!date /t
자세한 내용 : Insert_current_date_or_time 참조
:Date
현재 커서 위치에 날짜를 삽입 하는 사용자 지정 명령 (키 매핑이 아님)을 원했습니다 .
불행히도 간단한 명령 r!date
은 새 줄을 생성합니다. 그래서 마침내 다음을 생각해 냈습니다.
command Date execute "normal i<C-R>=strftime('%F %T')<CR><ESC>"
새 줄을 추가하지 않고 커서 위치에 날짜 / 시간 문자열을 normal a
추가합니다 (커서 위치 뒤에 추가 하도록 변경 ).
참고 URL : https://stackoverflow.com/questions/56052/best-way-to-insert-timestamp-in-vim
'IT' 카테고리의 다른 글
함수를 호출 할 때 "예외 발생"이 필요한 이유는 무엇입니까? (0) | 2020.09.16 |
---|---|
jQuery의 removeAttr로 여러 속성 제거 (0) | 2020.09.16 |
왼쪽 외부는 Rails 3에서 결합됩니다. (0) | 2020.09.15 |
Google Maps Api v3- 가장 가까운 마커 찾기 (0) | 2020.09.15 |
OAuth 2.0 인증 헤더 (0) | 2020.09.15 |