vi "insert 모드에서 저장" 가능할수 없을까요?

u235의 이미지

앞서 문의드렸던 요즘 Pyrhon 삼매경에 빠져있는
윈도용 vi 열열 매니아 입니다.(노안 관계로 cmd 콘솔만 선호ㅋㅋ)

윈도용을 쓰면서 가장 불편했던점은 두가지가 있는데

하나는 어떤 세팅을 써도 마우스 클릭시 커서이동이 가능하게 못한다는것과
Nun 키패드는 방향키용 밖에 못쓴다는것 정도 입니다.
전자는 다른 메모장 등과 연동시 reg와 별개로 마우스로 복/붙이 가능한것으로 위안은 되나

이 두가지는 아마도 cmd용 vi 유저가 급증하지 않는한 한동안 개선을 기대하기는 힘들듯 합니다.

그외 리눅스와 공통사항으로
insert 모드에서 저장을 못한다는 점이 있는데요. (불러오기 등등은 됐어도)
때문에 [ESC] 키에 손이 너무 많이가는 치명적인? 불편이 있습니다.
구문 테스트시 평균 분당 10~20초에 한번은 저장해야 하니까요 ^^.

대부분 에디터들은 [Ctrl]-S 로 저장하기가 무조건 기본이지만
vi만은 항상 [Esc]로 나갔다 와야 하니까요.

혹시 삽입모드에서 [Ctrl] 키를 폭넓게 지원하는 플러그인이 있나요?
아니면 대충 만들어 볼까도 하지만 Lisp는 일자무식이라서요.

shint의 이미지

리눅스 vi 라면. 보통 ESC 누르고. 사용합니다. ㅇ_ㅇ;;
- 파일 속성 - 읽기 전용 해제
- shift + zz : 저장하고 나오기
- :qw! : 저장하고 나오기
- set autowrite
http://egloos.zum.com/hacheo/v/3307158
- ctrl + L
http://kid1412.tistory.com/77
- :w>> file
https://multicoder.wordpress.com/2013/11/19/vi-editor-단축키/
- :'<,'>w [파일명]
http://slowdev.blogspot.com/2014/02/vim.html
- :mks 하면 세션 저장
^i//[Space Bar] [Esc] [Enter]하고 다시 q를 누르면 a레임레지스트리에 저장된다.
https://opentutorials.org/course/730/4581

노트패드 보면. 마우스 우측 누르고. 붙여넣기 되는거 보면.
Cut & Paste 기능 처럼. 구현해서. 만들거나. 플러그인 등으로 구현이 가능할지도? ㅇ_ㅇ;;
설명서도 확인해 보세요.

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com

u235의 이미지

리눅과 달리 커서이동은 중클릭이 돼야겠죠 ㅎㅎ

마우스로 커서이동 안됨이 무엇보다 가장~~~ 답답하니까요.

James Gostling

raymundo의 이미지

어... 제가 지금 윈도우7에서 vim 8.0을 설치해서 쓰고 있는 상태인데요,

명령 프롬프트 창에서 vim 띄워서 입력하다가 입력모드에서 Ctrl+S 누르니까 바로 저장 되는데요?

딱히 설정을 건드린 것도 없는데, 일단 제 _vimrc 파일 올려드립니다.

source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin
unmap <C-F>
 
set diffexpr=MyDiff()
function MyDiff()
  let opt = '-a --binary '
  if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
  let arg1 = v:fname_in
  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
  let arg2 = v:fname_new
  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
  let arg3 = v:fname_out
  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
  if $VIMRUNTIME =~ ' '
    if &sh =~ '\<cmd'
      if empty(&shellxquote)
        let l:shxq_sav = ''
        set shellxquote&
      endif
      let cmd = '"' . $VIMRUNTIME . '\diff"'
    else
      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
    endif
  else
    let cmd = $VIMRUNTIME . '\diff'
  endif
  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3
  if exists('l:shxq_sav')
    let &shellxquote=l:shxq_sav
  endif
endfunction
 
" 위는 설치 직후 기본으로 있던 부분, 아래는 제가 추가한 부분
set backupdir=$VIM/backup,.,$TEMP,c:/tmp,c:/temp
set fileencodings=ucs-bom,utf-8,cp949
set fileencoding=utf-8
set undodir=$VIM/backup
 
set guifont=Bitstream_Vera_Sans_Mono:h11:cANSI:qDRAFT
 
" UTF-16LE 파일을 읽어야 할 때
" set encoding=utf-8
" set fileencodings=utf-16le,ucs-bom,utf-8,cp949

좋은 하루 되세요!

u235의 이미지

실은 7.4 버전부터 무설치모드로만 써와서 기본 모듈이 도르되지 않았었나 보군요.
지금 8.1인데 위 3줄만 추가해주니 신기하게도 잘 됩니다.

다만 윈도에서는 set mouse=a가 지원안돼 아예 윈10에 도입된 bash를 구동하여 내장 vi(7.4)로 쓰는데요.
여기서는 마우스가 잘 되지만 아쉽게도 위 구문을 넣고도 Ctrl-s 는 안되네요.

즉 Ctrl-s는 리눅스가 아닌 윈도우용이란 예긴데 버전 차이인지 imap 좀 만져봐애겠습니다.

James Gostling

u235의 이미지

map /imap 세팅을 안써봤는데 정말 막강한 설정기능이네요.

James Gostling

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.