워드프레스 블로그 이전

워드프레스 관리자에서 Media Library 를 보면 무료계정에 지원해 주는 용량이 3GB다.
티스토리처럼 무제한이 아니었던 것이다.
따라서 언젠가는 내 인터넷서버로 옮겨야 한다.

워드프레스 블로그 이전에 관련된 내용의 링크들.
일단 링크만 모아 둠.

http://maeon.com/wordpress.html

http://ani2life.com/wp/?p=73

http://www.hwangc.com/2012/02/06/wordpress-users-db-transfer

http://eastsocial.co.kr/wordpress/?p=6

‘검색의 역사’ 야후, 빙에도 추월 당해

출처: http://www.zdnet.co.kr/news/news_view.asp?artice_id=20100915081231
저자: 이설영 기자 ronia@zdnet.co.kr
날짜: 2010.09.15

[지디넷코리아]야후가 최초로 미국 검색 시장에서 빙에 추월 당했다.

14일(현지 시간) 닐슨이 발표한 ‘8월 미국 검색 사이트 순위’에 따르면 ‘구글’은 65.1%로 압도적인 1위 자리를 유지했다. 이어 ‘MSN/윈도라이브/빙’이 13.9%의 점유율로 구글의 뒤를 이었으며, 13.1%의 야후가 3위를 차지했다.
야후가 빙에 추월 당한 것은 이번이 처음이다. 야후의 점유율은 지속적으로 하락하고 있는 상황이다. 지난 7월의 경우 야후의 점유율은 14.3%였다. 1.2%P 하락한 셈. 전년 동기(16%)와 비교해도 2.9%P 떨어졌다.

반면 빙의 경우 꾸준히 점유율을 높여가고 있다. 지난해 8월 10.7%에 불과했으나 올 8월에는 13.9%를 기록, 3.2%P 상승했다.

구글이 가진 인터넷 시장 영향력을 호시탐탐 노리고 있는 마이크로소프트(MS)로서는 의미있는 신호로 해석된다. 여전히 검색 시장에서 구글과의 격차가 적지 않지만, 꾸준히 점유율을 높여가고 있기 때문이다. 구글의 대항마로서의 빙의 위용이 어느 정도 현실화돼 가고 있다고 보여진다.

반면 야후는 비상이 걸렸다. 최근 잇따라 개인화서비스, 소셜웹서비스 등을 내놓으며 과거의 영광을 재현하려는 움직임을 보이고 있지만 점유율은 계속 하락하고 있는 상황이다.

한편 MS와 야후는 검색 관련 제휴를 체결한 상황이다. 지난해 7월 검색 관련 제휴를 체결했다. 이에 따라 야후는 MS의 빙을 활용할 수 있게 됐으며, MS의 검색 광고 기술을 활용하면서 두 회사의 검색 광고 영업을 맡게 됐다.

[인터넷 사업 성공사례] 야후! 인터넷 비즈니스 역사의 이정표

출처: http://www.linxus.co.kr/main/view_post.asp?post_seq_no=6855
저자: 이종운
날짜:  2003-10-29

스탠포드 대학원생이었던 제리 양(Jerry Yang)과 데이빗 필로(David Filo)는 스탠포드 대학에 할당된 자신들의 조그만 학생 서버 공간에 웹 사이트를 개설하고, WWW에서 방문할만한 사이트를 링크해 주는 ‘북마크(bookmark) 서비스’를 운영합니다. 이렇게 사람들이 좋아하는 사이트들을 정리해 모아두고 소개해 주던 것이 거대 포털 기업 야후의 시초였습니다.

웹 상의 정보, 야후(포털)에서 시작된다

야후의 북마크는 곧 사람들로부터 큰 인기를 끌었고, 필로와 제리 양은 더 많은 사람들이 인터넷에서 원하는 정보를 쉽게 찾을 수 있도록 모든 정보들을 세부적으로 분류한 디렉터리 사이트를 만듭니다. 이런 디렉터리를 기반으로 야후는 사용자가 원하는 정보를 쉽게 찾을 수 있는 검색엔진 서비스를 제공합니다. 새너 제이 머큐리 뉴스(San Jose Mercury News)는 야후의 업적을 18세기 생물을 종/속으로 구분하는 최초의 분류 시스템을 만든 스웨덴 식물학자 린네(Linnaeus)에 비유하기도 했습니다.

필로와 제리 양은 자신들의 디렉터리 사이트를 바탕으로 1994년 4월 최초의 인터넷 포털(portal) 기업, 야후(Yahoo!)를 설립합니다. 당시 야후는 인터넷 정보를 종합적으로, 그리고 보다 효율적으로 찾게 해주는 “포털(portal)” 사이트의 개념을 창시했습니다. 사용자들은 드넓은 인터넷 공간에서 정보를 찾아 헤맬 필요 없이, 모든 정보가 체계적으로 정리돼 있는 포털 사이트, 야후에서 원하는 정보로 접근할 수 있게 된 것이죠.

야후 사업의 확장

1996년 4월, IPO로 공개 기업 대열에 들어선 야후는 폭발적인 성장을 거듭해, 1997년 온라인 e메일 사이트인 로켓메일(rocketmail.com: 야후 e메일 서비스의 기반이 됨)과, 1999년 커뮤니티(community) 사이트인 지오시티(Geocities)를 인수하면서 사업을 다각화합니다.

지오시티를 인수하면서 커뮤니티 사업에 집중적인 투자를 시작한 야후는 야후를 사람들 ‘생활’의 중심에 서도록 만들었습니다. 야후는 지오시티를 통해 야후 회원들이 웹 상에 자신의 홈페이지를 만들 수 있게 했으며, 야후 포토(Yahoo! Photos)를 만들어 회원들끼리 자신의 사진을 올리고 공유할 수 있게 했습니다. 또한 야후 퍼스널(Yahoo! Personals)를 통해 회원들에게 교제 알선 서비스까지 제공하게 됩니다. (야후 퍼스널은 2001년 유료로 전환됩니다.)

1999년 “야후 메신저(Yahoo Messenger)”를 출시하면서 야후는 IM(Instant Messaging) 사업에도 뛰어듭니다. e메일과 메신저, 그리고 2000년 시작된 IP 전화 서비스까지 진출하면서 야후는 인터넷을 이용한 커뮤니케이션 사업에서도 두각을 나타냅니다.

야후는 1999년 브로드캐스트닷컴(broadcast.com)를 비롯한 몇몇 콘텐츠 사이트들을 인수하면서 본격적인 콘텐츠 사업에도 뛰어 듭니다. 야후는 모틀리 풀(Motley Fool), CBS 마켓워치(MarketWatch), 스트리트닷컴(The Street.com)으로부터 금융 주식 정보를, ESPN, 스포팅 뉴스(Sporting News)로부터 스포츠 소식을, e온라인(E!Online)으로부터 연예 오락 정보를 가져 오는 등 수많은 온라인 콘텐츠 업체들과 계약을 맺고 방대한 콘텐츠를 종합 제공합니다.

야후는 업계에서 가장 먼저 맞춤 콘텐츠 서비스를 제공한 포털 사이트이기도 합니다. 야후는 방문객들이 야후에서 제공되는 뉴스, 스포츠, 날씨, 음악, 금융, 건강, 정치, 연예 정보 등의 콘텐츠와 각종 서비스 중 원하는 것들만 골라 페이지를 구성할 수 있는 “마이 야후(My Yahoo)” 서비스를 개설합니다. 마이 페이지는 사용자 각자가 원하는 콘텐츠와 서비스만 골라 놓을 수 있을 뿐만 아니라 색상이나 레이아웃도 취향에 따라 정할 수 있는 기능을 제공하고 있죠. 또한, 야훌리건(Yahooligans!)라는 어린이 회원들만을 위한 콘텐츠와 서비스를 따로 마련해 특정 고객 층에 집중한 마케팅을 실시할 수 있었습니다.

야후는 1998년 야후 쇼핑(Yahoo! Shopping)과 야후 옥션(Yahoo! Auctions) 사이트를 개설해 전자상거래 사업에도 뛰어 듭니다. 야후 쇼핑은 웹 기반의 수많은 전자상거래 업체들을 한데 모은 거대한 전자상거래 네트웍이었습니다. (2000년 야후 쇼핑에 입점한 전자상거래 업체 수는 1만 개가 넘어 갑니다.)

야후의 B2B 사업

2000년 6월에는 코퍼레이트 야후(Corporate Yahoo!)라는 기업 포털 사이트를 개설합니다. 코퍼레이트 야후는 마이 야후의 인터페이스에 기반한 맞춤형 기업정보 포탈 솔루션입니다. 이전까지 많은 회사들이 자사 고유의 포탈 사이트를 개발하기 위해 엄청난 돈과 시간을 쏟아 부었지만 대부분 실패하고 말았습니다. 기업 내 직원들이 이용이 불편하다고 외면해 버린 것이죠. 이런 점에 착안해 야후는 기업들이 마치 마이 야후 페이지를 만들듯, 야후에서 쉽게 기업 포털 사이트를 만들어 직원들, 혹은 외부 업체들과 공유할 수 있게 해주었습니다.

기업의 포탈 사이트 관리자는 코퍼레이트 야후에서 손쉽게 사용자 화면을 설계할 수 있습니다. 예를 들어, 판매부서 직원들이 야후 사이트에서 아웃룩 캘린더를 보고 바로 주문을 선적할 수 있도록 화면을 구성할 수 있는 것이죠. 기업체가 자사 정보를 마이 야후처럼 간편하게 공유할 수 있게 해준 코퍼레이트 야후는, 기업 포털 서비스라는 새로운 사업 영역을 개척합니다.

이렇게 야후는 e메일, 커뮤니티, 콘텐츠 사업 뿐만 아니라 온라인 쇼핑, 금융, 기업 서비스까지 제공하면서 더 이상 “WWW 정보 접근 및 검색 서비스”가 아닌, 수많은 사업 모델을 운영하는 “글로벌 온라인 미디어” 기업으로 거듭납니다.

“글로벌 온라인 미디어 기업,” 야후는 ‘온라인 포털’ 사업을 재정의하며, 다른 검색엔진 및 디렉터리 회사들의 선례가 됩니다. 알타비스타(AltaVista), 익사이트(Excite), 인포시크(Infoseek), 라이코스(Lycos)와 같은 검색엔진 기업들도 야후처럼 한 사이트에서 모든 종류의 인터넷 서비스를 제공하는 미디어 포털 사이트로 발전하게 된 것이죠.

야후의 위기, 광고 중심 수익 모델의 위험성

야후는 안정된 재무 구조를 갖추고 흑자를 내고 있는 몇 안 되는 닷컴 기업 중 하나지만, 2001년까지만 해도 안정적인 수익 구조를 갖추지 못했습니다. 문제는 야후가 광고 수익에 지나치게 의존했다는 점입니다. 2001년 초까지 야후의 광고 수익은 전체 수익 중 90%를 차지할 정도로 광고에 대한 의존도가 절대적이었죠.

그러나 2002년 들어 야후는 광고에 대한 의존도를 크게 줄입니다. 야후는 애인 찾아주는 개인 광고(Yahoo Personals), 구직 페이지(Yahoo Careers), 그리고 여행 중개 페이지(Yahoo Travel)와 같은 유료 서비스를 통해 수익 원을 확충해 나갔습니다. 그리고 과거 배너에만 의존하던 광고 수익을 이제는 분류 광고(classified ads)와 검색엔진 타깃 광고, 데이트, 직업 소개 서비스와 같은 다양한 형태로 옮겨가고 있습니다.

2002년 2/4분기 동안 야후는 2140만 달러의 수익을 올린 것으로 나타났으며, 이 수익의 40% 정도를 광고 이외의 서비스에서 올리고 있습니다.

야후, 브랜드 성공전략

무엇보다 야후는 인터넷 사업체로는 최초로 회사의 이름을 전세계적인 브랜드로 키운 기업이었습니다. 야후는 자사 사이트를 인터넷 사용의 ‘출발점’으로 만들기 위해 모든 사람들의 머리 속에 야후란 이름을 각인 시켜야 했습니다. 1996년부터 야후는 “Do You Yahoo?”라는 마케팅 문구 아래 TV, 인쇄 매체, 길거리, 스티커 등에 야후의 이미지를 널리 퍼뜨리며 대대적인 브랜딩 전략에 나섰습니다. 야후의 공격적인 브랜딩 전략은 큰 성공을 거두었고, 야후는 오늘날 인터넷에서 가장 유명한 브랜드로 성장합니다.

2000년 시티뱅크가 실시한 전세계 브랜드 가치 조사에서 1위를 차지한 기업은 코카 콜라였고, 인터넷 기업 중 가장 ‘비싼’ 브랜드를 가진 야후는 전체 35위였습니다. 하지만 코카 콜라는 전년도 대비 브랜드 가치가 13% 하락한 반면, 야후는 258%나 상승해 큰 대조를 보였습니다. 인터넷에서 가장 성공적인 브랜드를 구축했다는 야후는 이 정도 수준의 브랜드 이미지를 구축하는 데 겨우 5년이 걸린 셈이죠.

야후의 성공은 인터넷 비즈니스 역사의 커다란 이정표가 됩니다. 인터넷이 확실한 경제 활동의 기반이 되기 위해선 인터넷을 이용할 수 있는 ‘도구’와, 인터넷에서 원하는 정보를 쉽게 찾을 수 있는 ‘출발점’이 필요했습니다. ‘도구’란 바로 넷스케이프가 처음 제공했던 브라우저 소프트웨어였고, ‘출발점’이란 검색 엔진과 사이트 디렉터리 서비스를 제공했던 야후의 포털이었죠.

이렇게 야후의 검색엔진과 포털은 인터넷 상의 정보에 편리하게 접근토록 해주는 입구를 만들어 WWW를 대중화시키는데 크게 이바지했습니다. 또한 야후는 e메일, 콘텐츠/미디어, 커뮤니티, 통신, 전자상거래, 사업 정보 서비스 등으로 사업을 확장해 ‘인터넷 비즈니스 영역을 확장 시킨 기업’이라는 명성을 얻습니다.

오늘날 야후는 전세계 24개국에 지역별 사이트를 운영하면서 전세계적인 확장에도 성공합니다. 오늘날 매달 2억 명 이상의 방문객 수를 자랑하는 야후는 세계 최대의 인터넷 포털/미디어 사이트로, 그리고 인터넷에서 가장 성공적인 브랜드로 인정 받고 있습니다.

vi 명령어 모음

출처: http://hefos.egloos.com/2338164

※ 삽입 명령
a 커서 뒤에 입력
A 라인 끝에 입력
i 커서 앞에 입력
I 라인시작 부분에 입력
o 커서 있는 라인 밑에 입력
O 커서가 있는 라인 위에 입력

※ 커서 이동 명령
h 왼쪽으로 커서 한 칸 이동
H 화면의 처음으로 이동
L 오른쪽으로 한 칸 이동
L 화면 끝으로 이동
e 다음 단어의 마지막으로 이동
E 커서를 공백으로 구분된 다음 단어 끝으로 이동
b 한 단어 뒤로 이동
B 커서를 공백으로 구분된 이전 단어로 이동
w 커서를 한 단어 뒤로 이동
W 커서를 공백으로 구분된 다음 단어로 이동
k 커서를 한 라인 위로 이동
j 커서를 한 라인 아래로 이동
O 커서를 라인의 시작으로 이동
$ 커서를 라인의 끝으로 이동
Enter 커서를 다음 라인 시작으로 이동
– 커서를 전 라인의 시작으로 이동
Ctrl + F 다음 화면으로 이동
Ctrl + D 화면의 반만 앞으로 이동
Ctrl + B 전 화면으로 이동
Ctrl + U 화면의 반만 뒤로 이동
G 커서를 텍스트 마지막 라인으로 이동
숫자G 커서를 숫자 라인만큼 이동
M 커서를 화면 중간 라인으로 이동
“ 커서를 전 위치로 이동
( 문장의 시작으로 이동
{ 문단의 시작으로 이동
) 문장 끝으로 이동하여 다음 단어의 시작으로 커서 이동
} 문단 끝으로 이동

※ 방향키를 이용한 커서 이동 명령
<-, Del 왼쪽으로 커서 한 칸 이동
PageUp 화면 위로 이동
->, Space 오른쪽으로 한 칸 이동
PageDown 화면 아래로 이동
↑ 윗 줄로 커서 이동
Enter 다음 줄 첫 칸으로 이동
↓ 아래 줄로 커서 이동
Esc 다음 줄 첫 칸으로 이동
Home 줄 처음 칸으로 이동

※ 삭제 명령
x 커서가 있는 문자 삭제
X 커서가 있는 문자 앞에 있는 문자 삭제
dw 커서가 있는 단어 삭제
db 커서가 앞에 있는 단어 삭제
dW 공백으로 구분된 뒷 단어 삭제
dB 공백으로 구분된 앞 단어 삭제
dd 커서가 있는 라인 삭제
D 커서가 있는 라인의 나머지 삭제
d) 문장의 나머지 삭제
d} 문단의 나머지 삭제
dG 파일의 나머지 삭제
dH 화면의 시작까지 삭제
dL 화면의 나머지 삭제
J 커서와 다음 단어의 공백을 모두 삭제

※ 바꾸기 명령
r 커서에 있는 문자 대치
R 입력 모드로 한 문자씩 덮어씀
s 커서가 있는 문자 삭제 후 입력 모드로 전환
S 커서가 있는 줄을 삭제 후 입력 모드로 전환
cb 커서가 있는 앞 문자 삭제 후 입력 모드
cW 공백으로 구분된 뒷 단어를 삭제 후에 입력 모드
cB 공백으로 구분된 앞 단어 삭제 후 입력 모드
cc 커서가 있는 라인을 삭제하고 입력 모드
C 커서가 있는 라인의 나머지를 삭제하고 입력 모드로 전환
cO 커서에서부터 라인의 시작까지 텍스트 바꾸기
c 특정 텍스트 바꾸기
c) 문장의 나머지 바꾸기
c} 문단의 나머지 바꾸기
cG 파일의 나머지 바꾸기
cm 표시까지 모든 것 바꾸기
cL 화면의 나머지 바꾸기
ch 화면의 시작까지 바꾸기

※ 복사
yw 커서가 있는 단어를 복사
yb 커서가 있는 앞 단어를 복사
yW 공백으로 구분된 뒷 단어 복사
yB 공백으로 구분된 앞 단어를 복사
y 특정한 다음 텍스트 복사
yy 커서가 있는 라인을 복사, 커서가 가리키는 곳으로 라인을 이동
y) 문자의 나머지 복사
y} 문단의 나머지 복사
yG 파일의 나머지 복사
yH 화면의 시작까지 복사
yL 화면의 나머지 복사

※ 텍스트 이동
p 삭제나 복사된 텍스트를 커서가 있는 문자나 라인 뒤에 삽입
P 삭제나 복사된 텍스트를 커서가 있는 문자나 라인 앞에 삽입
dw p 커서가 있는 단어를 삭제한 후 이를 원하는 곳 커서 뒤로 삽입
dw P 커서가 있는 단어를 삭제한 후 이를 변경한 커서가 있는 곳으로 삽입
d p 지정한 다음 텍스트로 삭제한 후 커서가 가리키는 곳으로 이동
d) P 문장의 나머지로 이동
d} p 문단의 나머지로 이동
dG P 파일의 나머지로 이동
dH P 화면 시작 부분으로 이동
dL P 화면의 나머지를 이동

※ vi 에디터 종료 마치기 명령
:q 그대로 종료하기
:q! 변경된 내용을 저장하지 않고 강제로 종료하기
:wq 변경된 내용을 저장하고 종료하기
: x :wq와 동일한 명령
ZZ :wq와 동일한 명령

※ 검색
/pattern 텍스트에서 앞으로 패턴 검색
>pattern 텍스트에서 뒤로 패턴 검색
n 앞 또는 뒤로 이전 검색 반복
N 반대 방향으로 이전 검색 반복
/ 전 검색을 앞으로 반복
? 전 검색을 뒤로 반복

※ 문자열 치환
:s/old/new 현재 행의 처음 old를 new로 교체
:s/old/new/g 현재 행의 모든 old를 new로 교체
:10,20s/old/new/g 10행부터 20행까지 모든 old를 new로 교체
:-3,+4s/old/new/g 현재 커서 위치에서 3행 위부터 4행 아래까지 old를 new로 교체
:%s/old/new/g 문서 전체에서 old를 new로 교체
:%s/old/new/gc 문서 전체에서 old를 new로 확인하며 교체
:g/pattern/s/old/new/g Pattern이 있는 모든 행의 old를 new로 교체
:g/pattern/s//new/g :%s/old/new/g와 동일

옵션
옵션약어
기능
디폴트

autoindent
ai
들여 쓰기 가능, 탭으로 들여 쓰기 범위 지정
off

autoprint
ap
줄이 바뀔 때 현재 줄을 화면상에서 출력
on

errobells
ed
명령 에러가 발생시 삑 소리나게 함
off

number
nu
줄 번호를 나타나게 함
off

report
report
편집시 메시지를 보낼 편집 변화 크기 지정
5

showmatch
sm
가로 닫기 괄호를 사용할 때 일치하는 가로 열기 괄호를 보여줌
off

wam
wam
저장하지 않고 vi 종료할 때 경고 메시지를 뿌려 줌
on

ignorecase
ic
검색 패턴에 사용되는 대소문자 구별하지 않음
on

tabstopp=n
ts=n
탭 공백을 n 수만큼 지정
8

wrapmargin=n
wm=n
텍스트 오른쪽 여백을 n 수만큼 지정
0

※ Mark 사용
mx 현재 위치를 x 이름의 마크로 저장

“ 이전에 마크한 위치로 이동
`x 마크한 위치(행, 열)로 이동

‘’ 이전에 마크한 줄로 이동
‘x 마크한 줄로 이동

※ Named Buffer 사용
“ayy 현재 줄을 “a 버퍼에 복사

“Ayy 기존의 버퍼에 현재 줄을 버퍼에 추가
“ap “a 버퍼에 복사된 데이터를 붙여 넣기
☞ ‘a’ 부터 ‘z’ 까지 사용가능

※ 여러 문서 편집
vi filename1, filename2 … vi 로 여러 파일 열기
:n vi로 open한 여러 파일중 다음 파일로 전환

:N vi로 open한 여러 파일중 이전 파일로 전환
:4n 여러 파일중 4개 파일 skip후 파일 Open

:args 현재 열린 모든 파일중 현재 편집중인 파일 표시

GVim 명령어

출처: http://musapanz.egloos.com/2761544

– vi 편집기란?

파일을 생성하거나 편집하는데 사용하는 프로그램을 에디터(editor)라고 합니다.
유 닉스에서 사용하는 에디터 중 vi 에디터 텍스트 편집기로 가장 대표적인 프로그램은 vi 에디터 입니다. vi 편집기는 Visual Editor로서, 모든 유닉스 시스템에 있으며 따라서 vi 편집기를 사용할 수 있다는 것은 어떤 유닉스 시스템에서도 문서 작업을 할 수 있다는 것을 의미합니다.

예를 들어 전자우편을 작성하거나, 프로그램을 작성하는 일, 또는 기타문서를 작성할 때에 편집기는 필수적인 연장(tool)입니다.

– vi 에디터 구성과 방법
vi 는 입력 모드와 명령어 모드 그리고 라인 모드의 세 가지 형태로 구성되어 있습니다.입력모드는 일반적은 텍스트 에디터와 같이 원하는 문자를 입력할 수 있는 상태를 말하고, 명령어 모드는 입력한 내용을 편집하기 위해서 다양한 편집 관련 명령어를 사용 할 수 있는 상태를 의미 한다.

따라서 입력 모드에서는 문자의 입력만이 가능하며 문단의 재구성과 삽입, 삭제 등의 편집 기능은 오직 명령어 모드에서만 사용할 수 있습니다.

vi를 실행한 직후에는 명령어 모드에 위치하게 되며 i(insert)나 a(append), o(open)를 입력하게나 <Insert> 키를 이용해서 입력 모드로 전환할 수 있다.

입 력 모드에서 명령어 모드로 복귀할 때는 <Esc>키만을 사용합니다.입력 모드로 전화 i 또는 a 또는 o 또는 <Inset> 명령어 모드로 전환 <Esc>vi는 입력 모드와 명령어 모드 이외에 라인 모드를 추가로 갖고 있는데, 이는 셸 명령어나 외부 프로그램들을 에디터의 내부에서 직접 실행 시킬 수 있는 모드입니다.

라인 모드는 vi의 본체인 ex가 실행되는 상테이므로 보다 원초적인 텍스트 조작이 가능해진다. 또한 라인 모드는 셸과 직접 연결되어 파이프를 구성하기 때문에 작업 중인텍스느에 대해서 다양한 작업을 연결시킬 수 있다.

다 른 모드와는 달리 라인 모드는 화면의 마지막 줄에 라인 모드임을 알리는 콜론(:)과 함께 입력한 내용이 출력되어 진행 중인 내용을 확인을 할 수 있도록 되어 있다. 라인 모드는 명령어 모드에서만 전환될 수 있으며, 입력 모드에서 직접 라인 모드로 들어올 수 없다.

따라서 vi 에디터는 실행 직후에 위치한 명령어 모드에서 입력 모드 그리고 라인 모드의 세 가지 모드를 상호 전환시키면서 작업을 진행하는 방식으로 사용된다.

그림 삽입.

라인 모드에서 :을 먼저 입역한 뒤에 원하는 명령어를 입력하는 방식으로 vi 명령어 이외의 셸 명령어와 외부 명령어들을 실행시킬 수 있다.
0. 설정
:scriptnames vim 이 구동시 읽어 들이는 파일의 목록표시
:set ff=dos[unix] 문서 포맷을 설정

1.시작
vi file vi를 시작하여 지정한 파일 편집
vi -R file 읽기 전용(read- only) 편집기로서 vi를 시작하여 지정한 파일 편집
view file 읽기 전용(read- only) 편집기로서 vi를 시작하여 지정한 파일 편집

2.종료
:wq 데이터를 저장하고 종료
:q! 데이터를 저장하지 않고 종료

3. 디스플레이 제어하기
^L 현재 화면을 다시 디스플레이하기
:set number 내부 줄 번호 디스플레이
:set nonumber 배부 줄 번호 디스플레이 않기
:vs 창을 세로로 분할하기
:sp 창을 가로로 분할하기
4. 마지막으로 지운 것 복사하기
p 마지막으로 지워진 것을 커서의 뒤/아래에 삽입
P 마지막으로 지워진 것을 커서의 앞/위에 삽입
xp 두 문자를 바꿈
deep 두 단어를 바꿈
ddp 두 줄을 바꿈

## 만약 yy로 복사한 라인을 p로 붙인다면 커서의 위치에 붙여진다.
5. 패턴 검색
/rexp 지정된 정규 표현식에 대해 앞으로 이동
/ 이전의 패턴에 대해 앞으로 검색을 반복
?rexp 지정된 정규 표현식에 대해 뒤로 이동
? 이전의 패턴에 대해 뒤로 검색을 반복
n /나 ?명령에 대해 같은 방향으로 반복
N /나 ?명령에 대해 반대 방향으로 반복

6. 약어의 사용
:ab short long short를 long에 대한 약어로 변경
:ab 현재 약어 목록을 표시
:una short 약어 short를 표시

7. 줄 길이의 조정
r<Return> 문자를 뉴라인으로 변경
J 아랫줄을 현재줄의 끝에 붙인다.
:set wm=n 오른쪽으로 n문자 위치에서 자동적으로 줄 나눔

8. 커서 이동
h<Left> 커서를 한 칸 왼쪽으로 이동
j<Down> 커서를 한 줄 아래로 이동
k<Up> 커서를 한 줄 위로 이동
l<Right> 커서를 한 칸 오른쪽으로 이동
<Backspace> 커서를 한 칸 왼쪽으로 이동
<Space> 커서를 한 칸 오른쪽으로 이동
– 커서를 이전 줄의 처음으로 이동
+ 커서를 다음 줄의 처음으로 이동
<Return> 커서를 다음 줄의 처음으로 이동
0 커서를 현재 줄의 맨 앞으로 이동
$ 커서를 현재 줄의 맨 끝으로 이동
^ 커서를 현재 줄의 첫글자(공백이나 탭이 아닌)로 이동
w 커서를 다음 단어의 첫 글자로 이동
e 커서를 다음 단어의 끝 글자로 이동
b 커서를 이전 단어의 첫 글자로 이동
W w와 같음(문장 부호 무시)
E e와 같음(문장 부호 무시)
B b와 같음(문장 부호 무시)
( 다음 문장의 처음으로 이동
) 이전 문장의 처음으로 이동
{ 다음 문단의 처음으로 이동
} 이전 문단의 처음으로 이동
H 커서를 화면 맨 위로 이동
M 커서를 중간으로 이동
L 커서를 맨 아래로 이동
gg : 문서의 처음으로
shift + g : 문서의 마지막으로

9. 편집 버퍼를 통한 이동
^F 한 화면 아래로 이동
^B 한 화면 위로 이동
n^F n화면 아래로 이동
n^B n화면 위로 이동
^D 반 화면 아래로 이동
^U 반 화면 위로 이동
n^D n줄만큼 아래로 이동
n^U n줄만큼 위로 이동

10. 셸 명령 실행
:!command vi를 중단하고 지정한 셸 명령을 실행
:!! vi를 중단하고 이전의 셸 명령을 실행
:sh vi를 중단하고 셸을 실행
:!csh vi를 중단하고 새로운 C-셸을 실행
11. 패턴에 의한 치환
:s/pattern/replace/ 현재 줄의 치환
:lines/pattern/replace/ 지정한 줄의 치환
:line,lines/pattern/replace/ 지정한 범위의 치환
:%s/pattern/replace/ 모든 줄의 치환

## 팁하나 더

정규표현식중에 일정 부분을 메모리로 지정하여 기억해 놓을 수 있다.

(..),(..) <<– 이렇게 괄호로 묶어 놓은 부분이 각각 1번 2번으로 저장되어진다.

예를들어,

1) ab,cd 를 cd,ab 와 같은 형태(포맷)로 바꾸고 싶을때는…..

=> %s/\(..\),\(..\)/\2,\1/g

2) a1b2c3d4e5f, xxba, 123 에서 두번째 , 이후의 문자열을 삭제하고 싶을때는……

=> %s/,\(.*\),.*/,\1,/g

와 같이 하면 된다

12. 데이터 읽기
:liner file file의 내용을 지정한 줄 다음에 삽입
:r file file의 내용을 현재의 줄 다음에 삽입
:liner !command command의 결과를 지정한 줄 다음에 삽입
:r !command command의 결과를 현재의 줄 다음에 삽입
:r !look pattern 지정한 pattern으로 시작된 단어 삽입

13. 정규 표현식을 사용하기 위한 특수 기호
. 뉴라인을 제외한 모든 단일 문자와 대응

* 영개이상의 선행 문자와 대응

^ 줄의 시작을 표현

$ 줄의 끝을 표현

\< 단어의 시작과 대응

\> 단어의 끝과 대응

[ ] 묶여진 문자중의 하나와 대응

[^ ] 묶여진 문자를 제외한 아무것하고나 대응

\ 이어지는 기호를 문자 그대로 해석

14. 줄 번호
nG 줄번호 n으로 건너뛰기
1G 편집 버퍼의 첫 줄로 건너뛰기
G 편집 버퍼의 마지막 줄로 건너뛰기
:map g lG g가 lG와 같도록 매크로 정의

15. 삽입
i 입력 모드로 전환, 커서 위치 앞에서 삽입
a 입력 모드로 전환, 커서 위치 뒤에서 삽입
I 입력 모드로 전환, 현재 줄의 앞에 삽입
A 입력 모드로 전환, 현재 줄의 끝에 삽입
o 입력 모드로 전환, 현재 줄의 아래에 전개
O 입력 모드로 전환, 현재 줄의 위에 전개

16. 편집하고 있는 파일을 바꾸기
:e file 지정한 파일의 편집
:e! file 지정한 파일의 편집, 자동 점검의 생략

17. 내용 고치기
r 단지 한 글자만 변경(입력 모드로 바뀌지 않음)
R 입력하는 대로 겹쳐 써서 변경
s 삽입에 의해 한 단어의 변경
C 커서의 위치로부터 줄 끝까지 삽입에 의한 변경
cc 전체 줄을 삽입에 의한 변경
S 전체 줄을 삽입에 의한 변경
cmove 커서부터 move까지 삽입에 의해 변경
~ 대,소문자 바꾸기

18. 고치기의 취소 또는 반복 (Undo, Redo, Repeat)
u 편집 버퍼를 수정했던 마지막 명령을 취소
U 현재 줄을 저장
. 편집 버퍼를 수정했던 마지막 명령 반복

ctrl+r 취소한것을 취소

19. 문자 삭제
x 커서가 있는 문자 삭제
X 커서의 왼쪽 문자 삭제
D 커서부터 줄의 끝까지 삭제
dd 현재 줄의 전체 삭제
dmove 커서부터 move까지 삭제
dG 커서부터 편집 버퍼의 끝까지 삭제
d1G 커서부터 편집 버퍼의 맨 앞까지 삭제
:lined 지정한 줄의 삭제
:line, lined 지정한 범위의 삭제

shift + d : 현재 커서 위치부터 현재라인의 마지막까지 삭제
shift + j : 현재행의 개행문자를 삭제한다(아래라인을 현재 라인 뒤에 붙인다)

20. 여러 줄의 복사와 이동
:linecotarget 지정한 줄을 복사하여 target 줄 밑에 삽입
:line, linecotarget 지정한 범위를 복사하여 target 줄 밑에 삽입
:linemtarget 지정한 줄로 이동하여 target 줄 밑에 삽입
:line, linemtarget 지정한 범위로 이동하여target 줄 밑에 삽입

블록지정모드(노말) : v
블록지정모드(라인) : shift+v
블록지정모드(사각형) : ctrl + v

선택블록 복사 : y
선택블록 붙여넣기 : p

21. 데이터를 처리하기 위한 셸 명령의 사용
n!!command n번 줄에서 command의 실행
!move command 커서부터 move까지 command 실행
!move fmt 커서부터 move까지 줄들을 형식 맞추기

22. 데이터 저장하기
:w 원래의 파일로 데이터를 저장
:w file 지정한 파일로 데이터를 저장
:w>> file 지정한 파일에 데이터를 추가

23. VIM 인코딩
VI: 유니코드(UTF-8)로 인코딩 전환

VIM은, BOM(Byte Order Mark) 이 있는 UTF-8 파일은 자동으로 인식하지만, BOM이 없으면 인식하지 못하고 파일 속의 한글이 깨집니다. 이때는 다음과 같이 인코딩을 수동으로 전환해 주면 됩니다.

* 현재 편집중이라면 키보드의 Esc키를 누릅니다.
* 콜론(:) 키를 눌러, 명령어 모드로 들어갑니다.
* se enc=utf8 이라고 입력합니다. 그러면 UTF-8 파일의 한글이 정상적으로 보일 것입니다.

VI: 한글 완성형(euc-kr)으로 인코딩 전환
만약 Vim이 한글 완성형 파일을 인식하지 못하고, 한글이 깨진다면 다음과 같이 합니다.
se enc=cp949
또는
se enc=korea 라고 입력합니다.

## 참고로 현재 vim 의 설정상황을 보려면 set 명령을 통해 볼 수 있다.
file의 인코딩을 utf-8 로 지정하고 싶다면 se fileencoding=utf-8 명령을 내려주고 저장하면 된다.

역사에서의 시대구분

유럽에서는 역사를 고대, 중세, 근대라는 3개의 시대로 구분해 왔다.
현대(contemporoary)도 있지만 그것은 역사의 영역이라기보다는
현실정치와 현실경제의 영역인 경우가 많다.

그러면 고대, 중세, 근대의 기점과 종점을 어떻게 잡아야 할까?

문자가 처음 만들어진 것이 대략 BC 3200 ~ 3000년 무렵이니 그 때를 고대의 기점으로 볼 수 있다.
고대의 종말과 중세의 기점은 서로마제국이 몰락한 5세기말.
중세의 종말과 근대의 기점은 비잔틴제국이 몰락한 15세기말.
근대의 종말과 현대의 기점은 1914년 제1차세계대전의 발발.

요약하면 아래와 같다.

  • 고대: BC 3000 – AD 500
  • 중세: 500 – 1500
  • 근대: 1500 – 1900
  • 현대: 1900 – 2000

유럽에서의 시대구분이 다른 지역에서도 적용될 수 있는지에 대해서는 논란이 많다.
그러나 어차피 시대구분이라는 것도 몇백년후에는 다시 바뀌게 될 것이고,
역사를 보는 시각도 변화할 것이다.

한국, 중국, 일본 등의 역사에도 이 시대구분을 적용할 수 있다고 생각한다.

[마인드맵] XMind와 FreeMind

마인드맵 소프트웨어 2종류를 추천한다.
XMind와 FreeMind

꽤 오랫동안 FreeMind를 써와서 그게 가장 좋은 것으로만 생각했다.
그런데 이제는 작년(2011년)에 알게 된 XMind가 더 좋다고 생각한다.

1) http://www.xmind.net

2) http://freemind.sourceforge.net
FreeMind는JRE(Java Runtime Environment)도 설치해야 한다.
프리마인드는 자바환경에서 구동되는 소프트웨어이기 때문이다.