태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

지니넷

'전체'에 해당되는 글 447건

  1. 2008.02.06 간접 의문문
  2. 2008.02.06 부가 의문문
  3. 2008.01.30 기타
  4. 2008.01.30 환경 설정
  5. 2008.01.30 프로그래밍
  6. 2008.01.30 버퍼
  7. 2008.01.30 윈도우
  8. 2008.01.30 탐색
  9. 2008.01.30 편집
  10. 2008.01.30 이동

(직접)의문문이 다른 문장과 결합하여 간접의문문이 될때 평서문 순서로 변경된다.

What is his name?

Is he handsome?

I don't know what his name is.         의문사 + s + v
I don't know if he is handsome.        if + s + v

Do you know who he is?
I wonder if he speaks Korean.

Tell me what time it is.           (What time is it?)
I wonder where he lives.           (Where dose he live?)
Do you know who she is?            (Who is she?)
I don't know if she is Korean.
I don't know where they are from.  (Where are they from?)


※ 의문사가 있는 경우

의문사 + s + v (인칭에 맞게 변경)
(명사절)

Do you know? + What's his name?
> Do you know what his name is?

I want to know. + What is love?
> I want to know what love is.

Tell me where she lives.
        what she likes.
        who she loves.

Do you know? + What does he want?
⇒ Do you know what he wants?

Please tell me. + Who bought the pen?
⇒ Please tell me who bought the pen.

Do you know? + What was he doing there?
⇒ Do you know what he was doing there?

Can you tell me? + Where is the post office?
⇒ Can you tell me where the post office is?

I don't know. + How many books does he have?
⇒ I don't know how many books he has.

A: What does Mr. Brown do?
B: I don't know what Mr. Brown does.


※ 의문사가 없는 경우

if나 whether로 연결

Do you know? + Is he a student?
> Do you know if/whether he is a student?

Tell me if she likes coffee.
        if she was at home.

I don't know. + Did he lock door?
I don't know if he locked door.

Can you tell me? + Did he come to korea yesterday?
⇒ Can you tell me whether he came to korea yesterday?

A: Is your mother at home now?
B: I'm not sure if/whether she is at home now.


※ 문두 의문사를 취하는 동사

think, believe, suppose, imagine, guess 같은 동사들은 문두 의문사를 취한다.

* bisget 동사
believe
imagine
suppose
guess
expect
think


Do you think? + Where did he go yesterday?
Where do you think he went yesterday?

Do you believe? + What did they do?
What do you believe they did?

Do you suppose? + Which way will they go?
Which way do you suppose they will go?

Do you think? + How many students are there in this school?
How many students do you think there are in this school?




신고
Posted by 지니넷 Trackback 0 Comment 0

문 ~ 장, V + S?

- 긍정이면 부정으로, 부정이면 긍정으로 질문
- 동사는 다음처럼
. be     ⇒ be
. 조동사 ⇒ 조동사
. 일반   ⇒ do, does, did
- 주어는 앞문장 주어의 대명사

He is a student.
> He is a student, isn't he?

You don't like coffee.
> You don't like coffee, do you?

He watched TV.
> He watched TV, didn't he?

You have seen the movie.
> You have seen the movie, haven't you?

She can drive.
> She can drive, can't she?

Open the door.
> Open the door, will you?

This isn't very interesting.
⇒ This isn't very interesting, is it?

Jack made a fine chair.
⇒ Jack made a fine chair, didn't he?

You didn't have lunch.
⇒ You didn't have lunch, did you?

Ann will be here soon.
⇒ Ann will be here soon, won't she?

He has never seen a tiger.
⇒ He has never seen a tiger, has he?

명령문
Open the window.
⇒ Open the window, will you?

제안문
Let's go there.
⇒ Let's go there, shall we?

신고
Posted by 지니넷 Trackback 0 Comment 0

기타

2008.01.30 09:34 : 개발

◇ .         .을 누르기 전에 실행했던 명령어 다시 실행하기
◇ ZZ        편집된 파일 저장하고 vi 나가기
◇ ctrl+G    파일 이름과 현재 라인을 아래에 디스플레이
◇ Q         하단의 ':' 명령으로 옮김
◇ :vi       다시 편집 상태로 돌림
◇ Ctrl+S, Ctrl+Q   Ctrl+S는 키입력을 보류한다. Ctrl+Q가 눌릴 때까지

※ 파일 관련
◇ :w 파일명
◇ :e 파일명        파일을 불러들여 편집
◇ :r 파일명        파일을 읽어와 삽입



신고
Posted by 지니넷 Trackback 0 Comment 0

환경 설정

2008.01.30 09:33 : 개발

◇ /usr/share/vim/vim61/vimrc_example.vim을 자신의 홈디렉토리에 .vimrc로 복사하여 편집
◇ :set number             행번호 보이게
◇ :set nonumber           행번호 안보이게
◇ :set cindent            c-identing 설정, shift width를 사용
◇ :set autoindent         들여쓰기 설정
◇ :set noautoindent       들여쓰기 제거
◇ :set list               문단,조판부호 보기
◇ :set nolist             문단,조판부호 안보이게
◇ :set window=30          한 화면당 행의 갯수 30개로 지정
◇ :set ignorecase         검색시 대소문자 구별 제거
◇ :set noignorecase       검색시 대소문자 구별
◇ :set all                현재 설정된 vi 모든 설정값 보기


※ tab size
◇ ts   tab stop; '\t' 문자를 몇 칸으로 보이게할지를 결정하는 변수
◇ sw   shift width; '>>' 또는 '<<' 키로 탭 사이즈를 조절하거나 들여쓰기에서 자동 줄 맞추기를 할 때 사용되는 화면 표시의 크기
◇ sts  soft tab stop; 'Tab' 키를 눌렀을 때 표시되는 간격을 지정


※ 들여쓰기
autoindent는 단지 이전 줄에서의 들여쓰기를 다음 줄에서도 그대로 유지해준다.
smartindent는 autoindent의 기능과 더불어 C 문법에 대한 인식을 하여, 더 많은 경우에 들여쓰기를 해준다.
* smartindent가 들여쓰기 하는 경우는 다음과 같다.
  1. ‘{’ 로 끝나는 줄을 다음 줄에서 들여쓰기 한다.
  2. C 키워드로 (cinword 옵션으로 정의된) 시작하는 줄의 다음 줄에서 들여쓰기 한다.
  3. ' }’로 시작하는 줄의 이전 줄에서 들여쓰기 한다. 이 때 들여쓰기는 ‘}’에 대응되는 ‘{’에서와 같은 들여쓰기가 적용된다.
  4. 들여쓰기가 자동으로 된 줄의 첫 문자가 ‘#’일 경우 들여쓰기를 없앤다 (#ifdef, #endif, #define, #include 등 전처리기 줄로 인식).
cindent는 앞의 두 들여쓰기 옵션보다 더 C 문법에 맞게 해줄 뿐만 아니라 cinkeys, cinoptions, cinwords 옵션을 사용하여 사용자의 취향에 맞게 조정할 수 있다.


신고
Posted by 지니넷 Trackback 0 Comment 0

프로그래밍

2008.01.30 09:32 : 개발

◇ [i   하단에 해당 함수의 원형이 나타난다
◇ gd   지역변수가 선언된 위치로 이동
:=    현재 줄 번호 보여주기
:/pattern/ =  pattern이 위치한 줄 번호 보여주기

※ 소스 정렬하기
◇ =        visual block을 지정하고 '='키를 입력하면 자동으로 정렬이 이뤄진다.
◇ gg=G     파일 전체에 대해 자동 정렬이 이뤄진다.

※ ^M 문자 제거
◇ :%s/^M//g    ^M; 'ctrl+v' + 'Enter'

※ 파일 비교
◇ vimdiff 명령을 이용하면 시각적으로 비교할 수 있다.

※ header 파일을 새창에서 읽어오기
◇ ctrl+wf      읽어들이고자 하는 헤더 파일에 커서를 둔 후 키조합을 누르면 창이 수평으로 분할되면서 헤더 파일이 열리게 된다.

※ keyword를 새 창에서 탐색하기
◇ ctrl+w}      cscope를 이용하여 keyword를 탐색하고자 할 때 이 키조합을 누르면 창이 수평으로 분할되면서 keyword를 찾아간다.

※ 자동 완성 기능
◇ ctrl+p       커서 위치에서부터 위를 향하면서 자동 완성이 가능한 단어가 있는지 조사
◇ ctrl+n       커서 위치에서부터 아래를 향하면서 자동 완성이 가능한 단어가 있는지 조사

※ shell(외부) 명령어 실행
◇ ':!command'      잠시 vim을 빠져나가 명령을 수행한 후 다시 vim으로 돌아온다.
◇ ctrl+z       vim을 bg으로 돌린다.
◇ fg           쉘 상에서 bg로 돌고 있는 vim을 fg로 전환한다
◇ :!sh         쉘 실행
◇ :r !ls       유닉스 명령 ls의 실행 결과 화면을 현재 편집중인 내용에 불러들임
                파일 이름일 경우 파일을 현재 커서에 불러들임
◇ !!명령어      쉘 command 실행 결과가 커서 아래부분에 삽입

※ 빠른 괄호 이동과 탐색
◇ '%'    '{' 또는 '}' 또는 '(' 또는 ')' 에서 '%'기호를 이용한다.

※ 편집-컴파일-편집
◇ :make
◇ cl       에러 리스트
◇ cn       다음 에러 위치
◇ cN       이전 에러 위치

※ 들여쓰기,내어쓰기
- visual block 설정후
◇ >    (shift+.)   들여쓰기
◇ <    (shift+,)   내어쓰기


※ fold 기능
◇ zf   visual block을 이용해 원하는 영역을 선택한 다음 'zf' 키를 이용하면 해당 영역이 접힌다.
◇ zo   접힌 영역을 원상태로 복구
◇ zc   복구한 영역을 다시 close
◇ 다중 접기를 허용함으로써 접근구역을 다시 접을 수 있다.

※ man page 참조
◇ shift + k       커서가 위치한 함수의 man page를 보여준다


신고
Posted by 지니넷 Trackback 0 Comment 0

버퍼

2008.01.30 09:31 : 개발

◇ :ls      현재 열려 있는 버퍼들을 확인
◇ :b1, b2,...   버퍼 전환
◇ :bw      열려 있는 현재의 버퍼를 닫는다.


신고
Posted by 지니넷 Trackback 0 Comment 0

윈도우

2008.01.30 09:30 : 개발

◇ :vs <파일명>     세로로 창 나누어 파일 열기
◇ :sp <파일명>     가로로 창 나누어 파일 열기
◇ :30vs ./
-  현재의 vi창이 왼쪽에서 수직으로 나뉘며
   넓이가 20칸인 창을 만들고,
   현재 디렉토리의 파일 목록을 보여준다.
- O(shift+o)   선택한 파일이 vi 창에서 열린다.

※ 윈도우 제어
◇ ctrl+wn     새 윈도우 생성
◇ ctrl+wc     윈도우 종료
◇ ctrl+ww     시계방향으로 윈도우 이동
◇ ctrl+wk     두개의 윈도우를 방향키로 이동
◇ ctrl+wj     "
◇ ctrl+w+     윈도우 크기 조절
◇ ctrl+w-     "
◇ ctrl+w=     열려있는 윈도우 크기를 모두 같게
◇ ctrl+wo     현재 커서가 있는 윈도우를 전체 윈도우로

신고
Posted by 지니넷 Trackback 0 Comment 0

탐색

2008.01.30 09:29 : 개발

/    전방 탐색
?    후방 탐색
n    같은방향으로 탐색 계속
N    반대방향 탐색 계속
/    전방탐색 계속
◇ ?    후방탐색 계속

※ 같은 단어 검색
◇ *    찾고자 하는 단어에 커서 위치 후 입력, '/[단어]'를 실행한다
◇ #    찾고자 하는 단어에 커서 위치 후 입력, '?[단어]'를 실행한다
▷ n    다음 매치되는 단어로 이동
▷ N    이전 매치되는 단어로 이동


신고
Posted by 지니넷 Trackback 0 Comment 0

편집

2008.01.30 09:28 : 개발

※ 삭제
◇ x     한 글자 삭제
◇ dw    한 단어 삭제
◇ dd    한 줄 삭제
ndd   n줄 삭제
◇ d0(d^)    라인의 처음부터 cursor 전 까지 삭제
◇ d$(D)     커서부터 행 끝까지 삭제

※ 복사&붙여넣기
◇ yw     한단어 복사
◇ y$     커서부터 행끝까지 복사
◇ y0(y^) 커서부터 행처음까지 복사
◇ yy     한줄 모두 복사
nyy    n줄 복사
◇ Y      현재 라인의 끝까지 버퍼에 저장

◇ p     커서 뒤에 임시 버퍼내용 추가(뒤로, 아래로)
np    n번 붙이기
◇ P     커서 앞에 임시 버퍼내용 추가(위로, 왼쪽으로)

◇ x, dw, dd, D    임시 버퍼에 복사됨

※ 레지시터 버퍼
◇ :reg    레지스터 내용을 확인한다
○ ""   "0 ~ "9   "-   ".   "%    "/
○ ""  레지스터        바로 이전에 지워진 내용이 항상 들어 간다
○ "0 ~ "9 레지스터    지워진 내용이 큐 형식으로 들어 간다
○ ".  레지스터        최근까지 타이핑 한 내용이 들어 간다
○ "%  레지스터        현재 편집하는 파일명이 들어 간다
○ "/  레지스터        가장 최근에 검색한 문자열이 들어 간다
◇ "2p               명령 모드에서 타이핑 한 경우 2번 레지스터 버퍼 내용이 붙여 넣기된다

※ 고정 레지스터 버퍼 사용
- vi에서는 기본 17개 레지스터 외에 26개의(a~z) 레지스터 버퍼를 지원
◇ "a3yy    a 레지스터 버퍼에 3라인을 복사하여 저장
◇ "ap      a 레지스터 버퍼 내용을 붙여넣기

※ 바꾸기
◇ r     커서가 위치한 한 문자 바꾸기 (r 입력후 원하는 문자 타이프)
◇ nr    커서 위치 부터 n 문자 바꾸기
◇ R     커서가 위차한 문자부터 ESC 키를 누를 때까지 바꾸기
cw    한단어 바꾸기
~     대소문자 변환
guu                             : lowercase line
gUU                             : uppercase line
Vu                              : lowercase line
VU                              : uppercase line
g~~                             : flip case line
vEU                             : Upper Case Word
vE~                             : Flip Case Word
ggguG                           : lowercase entire file
# Titlise Visually Selected Text (map for .vimrc)
vmap ,c :s/\<\(.\)\(\k*\)\>/\u\1\L\2/g<CR>
# Uppercase first letter of sentences
:%s/[.!?]\_s\+\a/\U&\E/g

※ 라인 합치기
◇ J     현재 라인과 다음 라인을 한 라인으로 만들기

※ 블럭지정
◇ v        단어 단위로 블럭 지정되고, [hjkl] 로 범위 조정
◇ V        줄 단위로 블럭 지정되고, [hjkl] 로 범위 조정
◇ Ctrl+v   column 단위로 블럭 지정되고, [hjkl] 로 범위 조정

◇ ~    대소문자 반전
◇ u    소문자로
◇ U    대문자로
◇ y    복사하기
◇ d    삭제하기

◇ >    들여쓰기  ( visual c++ => Tab )
◇ <    내어쓰기  ( visual c++ => Shift + Tab )
◇ =    자동정렬  ( visual c++ => Alt+ F8 )

선택된 block을 다른 이름으로 저장하기
:'<,'> w 파일명
읽을 때는
:r 파일명

※ 치환
◇ :%s/old/new/g        old를 new로 치환
◇ :%s/^old/new/g       행의 첫단어가 old인 것을 new로 치환
◇ :%s/old$/new/g       행의 끝단어가 old인 것을 new로 치환
◇ :%s/aaa//g           aaa를 삭제
◇ :%s/\<foo\>/bar/g    WORD 단위인 foo를 bar로 치환
◇ :%s/foo/bar/c        치환하기 전에 물어봄 (y/n/a) a는 모두 치환

※ undo, redo
◇ u        undo
◇ Ctrl+R   redo
◇ U        line undo, change by itself

※ 매크로 사용하기 ("//" 주석을 다는 작업을 매크로로 사용하기)
- 명령모드에서 'q레지스터(a~z)'를 누른 후 (이때부터 기록됨)
- '0' 'i' '/' '/' ' ' <CR> 를 차례로 누르고
- 'q'를 눌러 기록을 끝냄
- '5@a' (매크로 사용)
    a레지스터에 있는 작업을 커서 위치로 부터 밑으로 5라인에 적용 한다.

※ 붙여넣기 했을 때 계단현상 없애기
autoindet, smartindent 기능을 잠시 보류 후 복귀
◇ :set paste        indent 기능 보류
◇ :set paste!       indent 기능 복귀
참조


신고
Posted by 지니넷 Trackback 0 Comment 0

이동

2008.01.30 09:26 : 개발
※ 신속 이동
◇ w    오른쪽으로 특수문자 혹은 한단어의 처음으로 이동
◇ b    왼쪽으로 특수문자 혹은 한단어의 처음으로 이동
◇ W    오른쪽으로 한단어의 처음으로 이동
◇ B    왼쪽으로 한단어의 처음으로 이동
G    파일 맨 끝 라인으로 이동
1G   "
gg   파일 첫 라인으로 이동

※ 한 행에서의 이동
◇ 0     (숫자) - 행의 맨 처음으로 이동
◇ ^     맨 왼쪽의 첫 글자
◇ $     행의 맨 마지막으로 이동

※ 행단위 이동
◇ nG    n번째 행으로 이동
◇ G     파일 맨끝 행으로 이동
◇ :n    n번째 행으로 이동
◇ :$     마지막 행으로 이동
◇ :$=    현재 문서의 총 줄(행)수
◇ :.=    현재위치의 행번호

※ 페이지 이동
◇ C-f    한페이지 아래로 이동
◇ C-b    한페이지 위로 이동

※ 화면 이동
◇ H      커서를 화면의 맨 위로
◇ L      커서를 화면의 맨 아래로
◇ M      커서를 화면의 중앙으로
◇ z      현재 줄을 화면의 맨 위로
◇ z-     현재 줄을 화면의 맨 아래로
◇ z.     현재 줄을 화면의 중앙으로

※ 문장,문단 단위 이동
◇ )    문장의 끝으로 옮기기
◇ (    문장의 처음으로 옮기기
◇ }    문단의 끝으로 옮기기
◇ {    문단의 처음으로 옮기기

※ 마킹으로 이동하기
- A ~ Z     전역 마킹, 현재 파일을 포함한 다른 파일에서도 사용 가능
- a ~ z     지역 마킹, 현재 파일에서만 사용 가능
◇ mx       마킹 하기
◇ 'x       마킹된 위치로 이동
◇ ''       이동하기 전의 위치로 이동(제자리)
◇ :marks   마킹된 정보 출력



신고
Posted by 지니넷 Trackback 0 Comment 0


티스토리 툴바