<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="http://rss.egloos.com/style/blog.xsl" type="text/xsl" media="screen"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
	<title>A fool's blog</title>
	<link>http://dewr.egloos.com</link>
	<description>I've got this cat-pic from kedralynn.com. this picture is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 2.5 License</description>
	<language>ko</language>
	<pubDate>Mon, 16 Nov 2009 14:07:16 GMT</pubDate>
	<generator>Egloos</generator>
	<image>
		<title>A fool's blog</title>
		<url>http://pds15.egloos.com/logo/200911/02/88/c0076388.jpg</url>
		<link>http://dewr.egloos.com</link>
		<width>80</width>
		<height>120</height>
		<description>I've got this cat-pic from kedralynn.com. this picture is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 2.5 License</description>
	</image>
  	<item>
		<title><![CDATA[ 이글루스는 버려진 존재? ]]> </title>
		<link>http://dewr.egloos.com/5172144</link>
		<guid>http://dewr.egloos.com/5172144</guid>
		<description>
			<![CDATA[ 
  이글루스는 무료 블로그라 그런지 운영자님이 성의가 없으십니다. :(<br />
<br />
<span style="font-weight: bold;">듀르</span>: 제 블로그 RSS페이지가 Internet Explorer에서 아래와 같이 뜹니다. 이글루스의 RSS 파서가 문제있다는 어느분의 말씀이 있었습니다.<br />
텍스트 내용에 잘못된 문자가 있습니다.<br />
줄: 239 문자: 139<br />
" minibufexpl.vim -&amp;gt; put this code between two endif in 562th line "exec ':map! &amp;lt;silent&amp;gt; &amp;lt;LEFTMOUSE&amp;gt; &amp;lt;LEFTMOUSE&amp;gt;' . '' . s:clickmap"&lt;br /&gt;<br />
<span style="font-style: italic;"><br />
(원본은 " minibufexpl.vim -&gt; put this code between two endif in 562th line"exec ':map! &lt;silent&gt; &lt;LEFTMOUSE&gt; &lt;LEFTMOUSE&gt;' . ''. s:clickmap"···)</span><br />
<br />
<span style="font-weight: bold;">11월 2일</span><br />
<span style="font-weight: bold;">이글루스운영자</span>: 간혹 블로그 '프로필 사진' 메뉴에 이미지가 잘못 등록되었을 경우 RSS 페이지가 정상적으로 보이지 않을 수 있습니다.<br />
번거로우시겠지만, Dewr 님께서 프로필 사진을 변경해 보신 뒤 그 이후에도 RSS 페이지(<a target="_blank" href="http://rss.egloos.com/blog/dewr">http://rss.egloos.com/blog/dewr</a>) 가 정상적이지 않은지 다시한 번 점검 부탁드립니다.<br />
<br />
<span style="font-weight: bold;">듀르</span>: 프로필 사진을 업로드했고 적용하기를 눌렀습니다만 그 문제는 여전히 남아있습니다.<br />
<br />
<span style="font-weight: bold;">11월 5일</span><br style="font-weight: bold;"><span style="font-weight: bold;">이글루스운영자</span>: Dewr 님의 블로그를 확인해 보니, <a href="http://dewr.egloos.com/5152701">http://dewr.egloos.com/5152701</a> 포스트 내 등록된 본문 내용(특수문자)으로 인해 RSS 페이지가 영향을 받은 듯 합니다.<br />
Dewr 님께서 본문 내용을 점검하시어, 해당 글을 수정하시거나 삭제 하는 방법을 권해드립니다.<br />
저희가 작성하신 내용을 직접 수정 조치하기 어려운 점 양해 부탁드립니다. 고맙습니다.<br />
<br />
<span style="font-weight: bold;">듀르</span>: 특수문자가 여러가지인데 어느놈을 말씀하신건가요?<br />
<br />
더 이상 답변이 없더군요. 이글루스는 광고수익도 없으니 뭐··· :q<br />
<br/><br/>tag : <a href="/tag/이글루스" rel="tag">이글루스</a>			 ]]> 
		</description>
		<category>일기</category>
		<category>이글루스</category>

		<comments>http://dewr.egloos.com/5172144#comments</comments>
		<pubDate>Mon, 16 Nov 2009 14:02:58 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
	<item>
		<title><![CDATA[ Self-replication game ]]> </title>
		<link>http://dewr.egloos.com/5159726</link>
		<guid>http://dewr.egloos.com/5159726</guid>
		<description>
			<![CDATA[ 
  50만원짜리 퀘스트의 목적이었던 프로그램.<br />
홧김에 포맷한 USB Flash Memory에 source code가 있었는데··· 쩝.<br />
<a href="http://pds15.egloos.com/pds/200911/03/88/Self-replication.7z">Self-replication.7z</a> &lt;- click this to download it.<br />
<br/><br/>tag : <a href="/tag/뻘" rel="tag">뻘</a>,&nbsp;<a href="/tag/배포" rel="tag">배포</a>			 ]]> 
		</description>
		<category>뻘</category>
		<category>배포</category>

		<comments>http://dewr.egloos.com/5159726#comments</comments>
		<pubDate>Tue, 03 Nov 2009 03:19:00 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 묘한 꿈 ]]> </title>
		<link>http://dewr.egloos.com/5153357</link>
		<guid>http://dewr.egloos.com/5153357</guid>
		<description>
			<![CDATA[ 
  ※주의※ 개인적인 일기입니다. 이 것을 읽고 저를 X같이 보고 욕하지않고, 불쌍하게 여겨주거나 그저 다 이해해주는 지혜로운 분들이 많아지길 바랍니다. ^^ㅋ<br />
<br /><br />꿈을 꿀 때마다 느끼지만 꿈으로 나의 정신상태를 다시 확인할 수 있었다. 책에서 읽은대로··· 잠들기 직전의 정신상태가 꿈에 반영되는 것이다. (너무 당연한 말인가ㅋ) 어쨋든 자아성찰에 유용하다!<br />
<br />
난 모험을 좋아하고 여자를 밝힌다. 그 성질들은 오래 유지되었다. 질기게···<br />
<br />
오늘도 꿈을 꾸었다. 꿈에 자신이 꿈꾸는 것을 알아챘지만 변화를(비행이나 상상의 존재 소환같은··· 하기 원하던 마술들) 시도하지않고 그냥 "꿈이라서 이게 되는구나. 인간의 뇌는 이렇게 대단하구나."(하지만 나는 너무 초라했다.) 라고 생각하고 말았다.다음 기회엔 더 많은 마술들을 시도해보는게 좋을텐데···쩝. //우리집 화장실에 변기통이 없는 꿈 + 미니스커트입은 여자가무릎꿇고 앉아있는데 안경렌즈같은 까만 막이 여자의 상체를 가리고 있고 나는 여자를 보지 않았다. 최근 주변인들에게 내 성욕을 숨기고,나 스스로도 성욕을 쫒지 않으려 하는 노력이 마음에 배어버렸나부다.ㅋ<br />
<br />
하지만 역시 지혜로운 상태는 잠시뿐ㅋ···그런 깨달음을 잊은 채 열심히 야동을 다운로드받고 지우는 꿈을 꾸었다. 그리고 아라비안나잇 특유의 비키니?복장의 여자들이 침대에눕는 야동을 다운받더니 빨간옷을 입은 여자만 남긴채 다 사라지더니 그 빨간옷 여자의 몸매를 보고 흥분했고 기분 좋게 사정했다.일어나서 바로 샤워했다. 덕분에 일찍일어났네. //야동은 역시 꿈에서 보는게 제맛입니다. 3D라능···. 동정남들의 몽정은 다이런가? 최단조루다. ㅋ<br />
<br />
p.s. 어느 꿈이 앞이고 어느 꿈이 뒤일까? 앞뒤가 있을까? ··· 자아성찰에 많은 성취를 하고싶다.<br/><br/>tag : <a href="/tag/Dream" rel="tag">Dream</a>,&nbsp;<a href="/tag/인간" rel="tag">인간</a>,&nbsp;<a href="/tag/마음" rel="tag">마음</a>,&nbsp;<a href="/tag/수행" rel="tag">수행</a>,&nbsp;<a href="/tag/신경" rel="tag">신경</a>			 ]]> 
		</description>
		<category>일기</category>
		<category>Dream</category>
		<category>인간</category>
		<category>마음</category>
		<category>수행</category>
		<category>신경</category>

		<comments>http://dewr.egloos.com/5153357#comments</comments>
		<pubDate>Tue, 27 Oct 2009 04:42:24 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 듀르의 Vim 0.9.10.26 ]]> </title>
		<link>http://dewr.egloos.com/5152701</link>
		<guid>http://dewr.egloos.com/5152701</guid>
		<description>
			<![CDATA[ 
  오랜 잠수를 깨고 새 버젼을 배포하게 되어 기쁩니다. //배포라고 쓰고 개인용백업이라고 읽습니다.ㅋ<br />
<br />
0.9.10.26 에서 변경된 점들<br />
{<br />
근데 요번에 windows 7에서 사용하면서 느낀건데 Ctrl+Alt+Tab 으로 맵핑한 것을 다른 키로 바꿔야겠더군요. Windows7이 유연하지가 못해서··· Ctrl+Shift+Tab 으로 바꿨습니다.<br />
"새 옵션 g:ppbFilesManaged = [ '\.c', '\.h', '\.vim', 'vimrc' ] " pattern, if one of these patterns matched in a filename, the file will be managed with tagsmanager. 태그매니져가 관리할 파일명,<br />
f8-b:dewr_notagleader변수가 없을 때 오동작되는걸 수정,<br />
f8-새옵션 g:ppbFilesManaged 에 의해 일부 패턴이 포함된 파일명을 가진 파일들만 태그매니져의 관리를 받게 됨,<br />
태그매니져에 Do not link 선택지 추가,<br />
새 옵션 nobk 전 백업파일 만들지 않을겁니다. (편집중에 swp 파일은 생성됨.),<br />
Dewrmswin 위치 변경 ($VIM/vimfiles/after),<br />
Dewrs_vimrc_example.vim 까지 배포(배포라고 쓰고 개인용 백업이라고 읽는다.),<br />
&lt;C-U&gt; 도입 (visual block(텍스트 선택)된 상태에서 함수 호출시 줄수만큼 반복되던 문제 해결)<br />
}<br />
<br />
p.s. 저의 vimrc나 미숙한 영어에 대한 조언들을 해주세요.<br />
<br />
<a href="http://pds15.egloos.com/pds/200910/26/88/_vimrc" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">_vimrc - click this to download</a> &lt;- This is big :)<br />
<a href="http://pds15.egloos.com/pds/200910/26/88/Dewrs_mswin.vim" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">Dewrs_mswin.vim - click this to download</a> &lt;- copy into $VIM/vimfiles/after<br />
<a href="http://pds17.egloos.com/pds/200910/26/88/Dewrs_vimrc_example.vim" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">Dewrs_vimrc_example.vim - click this to download</a> &lt;- copy into $VIM/vimfiles/after<br />
<a href="http://pds17.egloos.com/pds/200910/26/88/Dewrs_minibufexpl.vim" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">Dewrs_minibufexpl.vim - click this to download</a> &lt;- copy into your plugin directory<br />
<a href="http://pds15.egloos.com/pds/200910/26/88/Dewrs_taglist.vim" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">Dewrs_taglist.vim - clilck this to download</a> &lt;- copy into your plugin directory<br />
<br /><br />"version 0.9.10.26<br />
"TODO:<br />
<br />
"<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
"&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
"&nbsp;&nbsp; &nbsp;※This is made by dewr &lt;wind8702@gmail.com&gt;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
"&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
" Features<br />
" We will move the cursor to the window proper to discard or save. you can designate buffers you dont want to close or to save (also when you clicked a content in Dewrs_minibufexpl.vim)<br />
" Hotkeys work on Insert mode and Command-line<br />
" Makes browsing quick and easy<br />
" Manages tags files for omni-completion (Tags-Manager contains informations of Tag-Leader files, Tag-Leader files contain informations of a tags file and work directories.)<br />
" Datas in the buffer you've seen won't be lost.<br />
<br />
" 특징<br />
" 커서를 버리거나 저장하기에 적당한 창으로 옯깁니다. 당신은 어떤 버퍼가 닫히거나 저장되지 않을지 지정할 수 있습니다. (Dewrs_minibufexpl.vim 에서 클릭할 때에도)<br />
" Insert mode나 Command-line 에서도 단축키가 작동합니다.<br />
" 빠르고 쉽게 돌아다니게 해드립니다.<br />
" Omni-completion(자동완성)을 위한 tags파일들을 관리해드립니다. (Tags-Manager 는 Tag-Leader파일들의 정보를 담고 있고, Tag-Leader파일들은 tags파일과 작업디렉토리들의 정보를 담고 있습니다.)<br />
" 당신이 본 버퍼들은 화면에서 사라져도 내용이 보존됩니다.<br />
<br />
<br />
<br />
" ※this script requires browse feature and dialog_gui-or-dialog_con feature.<br />
"&nbsp;&nbsp; &nbsp;--if your Vim doesn't support browse feature, when it browses for a file to edit it will run "netrw" browser instead of GUI. I recommend you to edit "$VIM/vim72/autoload/netrw.vim" and "$VIM/vim72/autoload/netrwSettings.vim" to change &lt;F1&gt; for other key. &lt;F1&gt; will be used for other function.<br />
"&nbsp;&nbsp; &nbsp;--however, no support for writing without browse feature. (save as new name)<br />
<br />
" ※이 스크립트는 browse feature와 dialog_gui-또는-diaolog_con 을 요구합니다.<br />
"&nbsp;&nbsp; &nbsp;--만약 당신의 Vim 이 browse feature를 지원하지 않는다면 파일열기를 위한&nbsp;&nbsp; &nbsp;브라우징은 "netrw"를 통해서 이루어질 것입니다. "$VIM/vim72/autoload/netrw.vim" and "$VIM/vim72/autoload/netrwSettings.vim" 이 두 파일안에서 &lt;F1&gt; 을 다른 키로 변경하시기를 바랍니다. &lt;F1&gt; 은 다른 기능을 위해 사용됩니다.<br />
"&nbsp;&nbsp; &nbsp;--하지만 browse feature없이 파일쓰기에 대한 지원은 없습니다. (다른이름으로 저장)<br />
<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※table of contents&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
"Introduction<br />
"Table of contents<br />
"Options for functions made by dewr<br />
"Plugins installed<br />
"Jobs in MS windows<br />
"Out of vim<br />
"Graphical user interface<br />
"Simple contents of _vimrc are little different from default contents of _vimrc<br />
"Functions made by dewr<br />
"Hotkeys<br />
"Initialization and Splash!<br />
"Other configurations<br />
"The last code(Tell vim to remember certain things when we exit)<br />
<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※options for functions made by dewr&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
"path to the tags manager file<br />
let g:pbTagsManagerFile = $VIM . "/TManager"<br />
<br />
"Is the indicator '/'?<br />
if ( has("win32") || has("os2") ) "works on win-64 also<br />
&nbsp;&nbsp; &nbsp;let g:pbDirectorySlasherSpecial = "\\\\"<br />
&nbsp;&nbsp; &nbsp;let g:bDirectorySlasher = '\'<br />
else<br />
&nbsp;&nbsp; &nbsp;let g:pbDirectorySlasherSpecial = '\/'<br />
&nbsp;&nbsp; &nbsp;let g:bDirectorySlasher = '/'<br />
endif<br />
<br />
" the two value below is referenced even when Vim chooses a window to save(write), not only when Vim chooses a window to discard<br />
" 아래의 두 변수는 닫을때 만 참조하는 것이 아니라, 저장할 때도 참조됩니다.<br />
let g:ppbNeverClose = [ '-MiniBufExplorer-', '__Tag_List__' ] "the names of buffers you dont want to close. 당신이 닫고 싶지 않은 버퍼들의 이름<br />
let g:ppbDontWannaClose = [ 'nofile', 'help', 'quickfix' ] "Buffer type, leftmost one is the buftype you dont want to close most. 가장 왼쪽에 있는 type이 당신이 가장 닫지 않기를 원하는 buftype입니다.<br />
let g:ppbFilesManaged = [ '\.c', '\.h', '\.vim', 'vimrc' ] " pattern, if one of these patterns matched in a filename, the file will be managed with tagsmanager. 태그매니져가 관리할 파일명<br />
<br />
"I don't use this!<br />
<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※plugins installed = { Dewrs_taglist, Dewrs_minibufexplorer }&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
" taglist<br />
let Tlist_Use_SingleClick = 1 "prefer to SingleClick<br />
<br />
" minibufexplorer<br />
let g:miniBufExplorerMoreThanOne = 0 "show MBE even if there is only a buffer in list.<br />
let g:miniBufExplUseSingleClick = 1 "prefer to SingleClick<br />
let g:miniBufExplMapCTabSwitchWindows = 1 "use Ctrl-Tab and Ctrl-Shift-Tab to move cursor to the next and previous window.<br />
<br />
" supertab<br />
"let g:SuperTabDefaultCompletionType = "&lt;c-x&gt;&lt;c-o&gt;" "use omni-completion<br />
<br />
" c.vim<br />
let g:C_LFlags = "-Wall -O2 -mtune=core2" "_I am using this.<br />
"let g:C_LFlags = "-Wall -g -O0" "_This is default.<br />
let g:C_CFlags = g:C_LFlags . " -c"<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※jobs in MS Windows&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
function JobsInMSW()<br />
"you have to do this with sudo(Super-User-Do = Administrator's authority in Windows 7)<br />
&nbsp;&nbsp; &nbsp;call RunSCommand('ftype txtfile="'.$VIMRUNTIME.'\gvim.exe" --remote-silent "%1"')<br />
&nbsp;&nbsp; &nbsp;call RunSCommand('ftype inifile="'.$VIMRUNTIME.'\gvim.exe" --remote-silent "%1"')<br />
&nbsp;&nbsp; &nbsp;call RunSCommand('ftype code="'.$VIMRUNTIME.'\gvim.exe" --remote-silent "%1"')<br />
<br />
&nbsp;&nbsp; &nbsp;call RunSCommand('assoc .c=code')<br />
&nbsp;&nbsp; &nbsp;call RunSCommand('assoc .h=code')<br />
&nbsp;&nbsp; &nbsp;call RunSCommand('assoc .cpp=code')<br />
&nbsp;&nbsp; &nbsp;call RunSCommand('assoc .vim=code')<br />
&nbsp;&nbsp; &nbsp;call RunSCommand('assoc .tl=code')<br />
&nbsp;&nbsp; &nbsp;call RunSCommand('assoc .tags=code')<br />
&nbsp;&nbsp; &nbsp;" It won't work perfectly -.,-; but I dont know why it won't.<br />
&nbsp;&nbsp; &nbsp;" you have to do assoc-commands in cmd-shell yourself like below after you do ':call JobsInMSW()'<br />
&nbsp;&nbsp; &nbsp;" assoc .c=code<br />
endfunction<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※out of Vim&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
"<br />
" "$VIM/vimfiles/plugins/taglist.vim" 의 도움말 단축키가 &lt;F1&gt;인데 ?로 고치는걸 추천합니다. &lt;F1&gt;은 다른 기능을 위해 사용됩니다.<br />
" in "$VIM/vimfiles/plugins/taglist.vim" change &lt;F1&gt; for ?. &lt;F1&gt; will be used for other function.<br />
"<br />
" $vim/vim72/syntax/c.vim 듀르가 애용하는 typedef-keywords···. just for me!<br />
" " my expressions<br />
" syn keyword&nbsp;&nbsp; &nbsp;ctype&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;b_yte w_ord dw_ord qw_ord dwf_loat qwf_loat<br />
<br />
"You don't need to read text about minibufexpl.vim. just download Dewrs_minibufexpl.vim.<br />
" minibufexpl.vim -&gt; 1079th line has to be fixed like below to show no-name buffers in MBE<br />
" if(strlen(l:bufname)) --&gt; if (1)<br />
" minibufexpl.vim -&gt; 1362th 1364th 1366th line: delete these lines containing "wincmd w"<br />
" minibufexpl.vim -&gt; 1361th 1363th 1365th line: change these for "if (!KickCursor() &amp;&amp; g:miniBufExplModSelTarget == 1) || bufname('%') == '-MiniBufExplorer-'"<br />
" minibufexpl.vim -&gt; put this code between two endif in 562th line "exec ':map! &lt;silent&gt; &lt;LEFTMOUSE&gt; &lt;LEFTMOUSE&gt;' . '' . s:clickmap"<br />
<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※graphical user interface&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
if ( has("gui_running") )<br />
&nbsp;&nbsp; &nbsp;if ( has("win32") &amp;&amp; !has("win32unix") )<br />
&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;set gfn=NanumGothicCoding:h10:cHANGEUL<br />
endif<br />
<br />
winsize 190 55<br />
<br />
" My favorite colorscheme<br />
colorscheme desert<br />
<br />
<br />
<br />
"move cursor when you click middle mouse button<br />
map&nbsp; &lt;MiddleMouse&gt; :call DewrMiddleMouse()&lt;CR&gt;&lt;MiddleMouse&gt;<br />
map! &lt;MiddleMouse&gt; &lt;MiddleMouse&gt;<br />
map&nbsp; &lt;2-MiddleMouse&gt; &lt;MiddleMouse&gt;<br />
map! &lt;2-MiddleMouse&gt; &lt;MiddleMouse&gt;<br />
map&nbsp; &lt;3-MiddleMouse&gt; &lt;MiddleMouse&gt;<br />
map! &lt;3-MiddleMouse&gt; &lt;MiddleMouse&gt;<br />
map&nbsp; &lt;4-MiddleMouse&gt; &lt;MiddleMouse&gt;<br />
map! &lt;4-MiddleMouse&gt; &lt;MiddleMouse&gt;<br />
<br />
function DewrMiddleMouse()<br />
&nbsp;&nbsp; &nbsp;call getchar()<br />
<br />
&nbsp;&nbsp; &nbsp;if ( v:mouse_win &lt; 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;execute v:mouse_win."wincmd w"<br />
&nbsp;&nbsp; &nbsp;execute v:mouse_lnum<br />
&nbsp;&nbsp; &nbsp;execute "normal ".v:mouse_col."|"<br />
<br />
&nbsp;&nbsp; &nbsp;return 0<br />
endfunction<br />
<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※These are little different from default contents of _vimrc&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
set nocompatible<br />
source $VIM/vimfiles/after/Dewrs_vimrc_example.vim<br />
<br />
if ( has("win32") ) "works on win-64 also<br />
&nbsp;&nbsp; &nbsp;source $VIM/vimfiles/after/Dewrs_mswin.vim<br />
&nbsp;&nbsp; &nbsp;behave mswin<br />
endif<br />
<br />
set diffexpr=MyDiff()<br />
function MyDiff()<br />
&nbsp;&nbsp; &nbsp;let opt = '-a --binary '<br />
&nbsp;&nbsp; &nbsp;if &amp;diffopt =~ 'icase' | let opt = opt . '-i ' | endif<br />
&nbsp;&nbsp; &nbsp;if &amp;diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif<br />
&nbsp;&nbsp; &nbsp;let arg1 = v:fname_in<br />
&nbsp;&nbsp; &nbsp;if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif<br />
&nbsp;&nbsp; &nbsp;let arg2 = v:fname_new<br />
&nbsp;&nbsp; &nbsp;if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif<br />
&nbsp;&nbsp; &nbsp;let arg3 = v:fname_out<br />
&nbsp;&nbsp; &nbsp;if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif<br />
&nbsp;&nbsp; &nbsp;let eq = ''<br />
&nbsp;&nbsp; &nbsp;if $VIMRUNTIME =~ ' '<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if &amp;sh =~ g:bDirectorySlasher.'&lt;cmd'<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let cmd = '""' . $VIMRUNTIME . g:bDirectorySlasher.'diff"'<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let eq = '"'<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . g:bDirectorySlasher.'diff"'<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let cmd = $VIMRUNTIME . g:bDirectorySlasher.'diff'<br />
&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' &gt; ' . arg3 . eq<br />
endfunction<br />
<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※functions made by dewr&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
let g:ppbTLs = [] "Tag-Leader files list<br />
<br />
set ignorecase "ignore case when using a search pattern. do NEVER delete this. (대소문자 구분 안함)<br />
<br />
autocmd BufEnter * setlocal bufhidden=hide "do NEVER delete this making buffers stable.<br />
" 절대 지우지 마세요. 버퍼들을 휘발성이지 않게 만드는 겁니다.<br />
<br />
autocmd BufReadPost * call TakeDewrCommands() "run Dewr_C:commands which are at bottom of the file.<br />
" 파일 맨 아랫줄에 있는 Dewr_C:명령어들을 수행합니다.<br />
<br />
"autocmd <br />
<br />
<br />
" 리스트에 있는 버퍼들을 모두 훑어보면서 저장할지말지 물어봅니다.<br />
" Sweeping buffers in the list and asks you whether to save or not<br />
function Sweeping()<br />
&nbsp;&nbsp; &nbsp;call KickCursor()<br />
<br />
&nbsp;&nbsp; &nbsp;bnext!<br />
&nbsp;&nbsp; &nbsp;bprevious!<br />
<br />
&nbsp;&nbsp; &nbsp;let l:dwBufFocused = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;let l:dwNow = l:dwBufFocused<br />
<br />
&nbsp;&nbsp; &nbsp;while ( 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( &amp;modified )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:choice = confirm("save changes of ".l:dwNow.":".@%, "&amp;Yes, save\n&amp;No, do not save\n&amp;Cancel(esc)", 2)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:choice == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( @% == "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( SaveAsNewName() )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:dwBufFocused<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "saved."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"execute "bwipeout! ".l:dwNow<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;w<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;elseif ( l:choice == 2 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "didn't save it."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:dwBufFocused<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;bprevious!<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwNow = winbufnr(0)<br />
<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:dwBufFocused == l:dwNow )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;break<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
<br />
&nbsp;&nbsp; &nbsp;return 0<br />
endfunction<br />
<br />
<br />
<br />
function QuitVim()<br />
&nbsp;&nbsp; &nbsp;if ( Sweeping() )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;qa!<br />
&nbsp;&nbsp; &nbsp;endif<br />
endfunction<br />
<br />
<br />
<br />
" lTheList 에 pIt이 들어있나 확인하고 없으면 0 있으면 몇번째 원소인지를 리턴합니다.<br />
" return 0 if pIt is not in lTheList, else it returns how many elements before pIt in lTheList.<br />
function IsItInTheList(pIt, lTheList)<br />
&nbsp;&nbsp; &nbsp;let l:dwLength = len(a:lTheList)<br />
&nbsp;&nbsp; &nbsp;let l:dwCounter = 0<br />
&nbsp;&nbsp; &nbsp;while (l:dwLength &gt; l:dwCounter)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( a:lTheList[l:dwCounter] == a:pIt )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return l:dwCounter + 1<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwCounter += 1<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
&nbsp;&nbsp; &nbsp;return 0<br />
endfunction<br />
<br />
<br />
<br />
" deletes the buffer in current focused window and load another buffer in buffer list or an empty noname-buffer<br />
" 현재창에 떠있는 버퍼를 지우고 버퍼리스트에 있는 다른 버퍼를 부르거나 리스트에 버퍼가 더 없을때는 비어있는 이름없음-버퍼를 띄워놓습니다.<br />
function RunAndGun()<br />
&nbsp;&nbsp; &nbsp;let l:dwBufFocused = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;let l:dwBuffer = bufnr("$")<br />
&nbsp;&nbsp; &nbsp;let l:dwCounter = -1<br />
&nbsp;&nbsp; &nbsp;while ( l:dwBuffer &gt; 0 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( bufexists(l:dwBuffer) &amp;&amp; buflisted(l:dwBuffer) &amp;&amp; l:dwBuffer != l:dwBufFocused )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwCounter = l:dwBuffer<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;break<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwBuffer -= 1<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
&nbsp;&nbsp; &nbsp;if ( l:dwCounter == -1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;enew!<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:dwCounter<br />
&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;execute "bwipeout! ".l:dwBufFocused<br />
endfunction<br />
<br />
<br />
<br />
" save and quit or just quit<br />
function QuitBuffer()<br />
&nbsp;&nbsp; &nbsp;let l:dwBufFocused = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;if ( !&amp;modified )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;call RunAndGun()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 0<br />
&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;let l:choice = confirm("save changes of ".l:dwBufFocused.":".@%, "&amp;Yes, save\n&amp;No, do not save\n&amp;Cancel(esc)", 2)<br />
&nbsp;&nbsp; &nbsp;if ( l:choice == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( @% == "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( SaveAsNewName() )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;w<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;elseif ( l:choice == 2 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "didn't save it."<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;call RunAndGun()<br />
&nbsp;&nbsp; &nbsp;return 0<br />
endfunction<br />
<br />
<br />
<br />
" dribble cursor to the window is proper to bother. It references g:ppbNeverClose and g:ppbDontWannaClose.<br />
" 커서를 괴롭히기 좋은 윈도우로 옯깁니다. g:ppbNeverClose 와 g:ppbDontWannaClose 를 참조합니다.<br />
function KickCursor()<br />
&nbsp;&nbsp; &nbsp;let l:pdwMax = [0,0]<br />
&nbsp;&nbsp; &nbsp;let l:dwBuf = 1<br />
&nbsp;&nbsp; &nbsp;let l:dwCounter = 0<br />
&nbsp;&nbsp; &nbsp;let l:dwFirst = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;let l:dwNow = l:dwFirst "ready to start of the loop<br />
&nbsp;&nbsp; &nbsp;while ( !(l:dwFirst == l:dwNow &amp;&amp; l:dwCounter != 0) )<br />
"&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if( buflisted(l:dwNow) )<br />
"&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return<br />
"&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else--elseif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( !IsItInTheList(bufname(l:dwNow), g:ppbNeverClose) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwBuf = IsItInTheList(&amp;buftype, g:ppbDontWannaClose)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( !l:dwBuf )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwBuf = 9999 -l:dwCounter<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if (l:dwBuf &gt; l:pdwMax[0])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pdwMax[0] = l:dwBuf<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pdwMax[1] = winnr()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;wincmd w<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwCounter += 1<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwNow = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;endwhile "end of the loop<br />
<br />
&nbsp;&nbsp; &nbsp;if ( l:pdwMax[1] == 0 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;while ( 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( winnr() == l:pdwMax[1] )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 0<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;wincmd w<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
&nbsp;&nbsp; &nbsp;"echo 'kicked ' bufname(winbufnr(0))<br />
endfunction<br />
<br />
<br />
<br />
" checks if pbFname is loaded and returns buffer-number of the file and if the file is loaded.<br />
" Vim에 pbFname 이라는 이름의 파일이 로드된 경우 버퍼번호를 리턴하옵니다.<br />
function IsTheFileLoaded(pbFname)<br />
&nbsp;&nbsp; &nbsp;let l:dwFirst = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;let l:pbFname = fnamemodify(a:pbFname, ":p")<br />
&nbsp;&nbsp; &nbsp;let l:dwBuffer = bufnr("$")<br />
&nbsp;&nbsp; &nbsp;while ( l:dwBuffer &gt; 0 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( bufexists(l:dwBuffer) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:dwBuffer<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( fnamemodify(@%, ":p") == l:pbFname )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return l:dwBuffer<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwBuffer -= 1<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
&nbsp;&nbsp; &nbsp;execute "buffer! ".l:dwFirst<br />
&nbsp;&nbsp; &nbsp;return 0<br />
endfunction<br />
<br />
<br />
<br />
" It's not being used.<br />
function IsTheBufOnTheScreen(dwTheBuf)<br />
&nbsp;&nbsp; &nbsp;let l:pdwWindows = []<br />
&nbsp;&nbsp; &nbsp;let l:pdwReturn = []<br />
&nbsp;&nbsp; &nbsp;let l:dwQWindows = 0<br />
&nbsp;&nbsp; &nbsp;let l:dwCr = winnr("$")<br />
<br />
&nbsp;&nbsp; &nbsp;while ( l:dwCr != 0 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if (dwTheBuf == winbufnr(l:dwCr))<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwQWindows += 1<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;call add(l:pdwWindows, l:dwCr)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwCr -= 1<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
<br />
&nbsp;&nbsp; &nbsp;call add(l:pdwReturn, l:dwQWindows)<br />
&nbsp;&nbsp; &nbsp;let l:pdwReturn += l:pdwWindows<br />
&nbsp;&nbsp; &nbsp;return l:pdwReturn<br />
endfunction<br />
<br />
<br />
<br />
" loads a file<br />
" 파일을 읽습니다.<br />
function LetsLoad()<br />
&nbsp;&nbsp; &nbsp;let l:ppbPathAndFname = [fnamemodify(@%,":p:h"),fnamemodify(@%, ":t")]<br />
&nbsp;&nbsp; &nbsp;if ( has("browse") )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:fname = browse(0, "load a file", l:ppbPathAndFname[0], "*.*")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:fname == "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "edit! ".l:fname<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;else "It's a bonus for Vims don't support browse<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( @% != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute ":e! ".l:ppbPathAndFname[0]<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;e! $VIM<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;:setlocal buflisted<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;:setlocal bufhidden=wipe<br />
&nbsp;&nbsp; &nbsp;endif<br />
endfunction<br />
<br />
<br />
<br />
" 다른이름으로 저장···<br />
function SaveAsNewName()<br />
&nbsp;&nbsp; &nbsp;let l:dwFirst = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;let l:ppbPathAndFname = [fnamemodify(@%,":p:h"),fnamemodify(@%, ":t")]<br />
&nbsp;&nbsp; &nbsp;while ( 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:fname = browse(1, "save ".l:ppbPathAndFname[1]." as···", l:ppbPathAndFname[0], l:ppbPathAndFname[1])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:fname != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( findfile(l:fname) != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:choice = confirm("overwrite to ".l:fname, "&amp;Yes, overwrite\n&amp;No, let me browse more(esc)\n&amp;Cancel", 1)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:choice == 3 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;elseif ( l:choice == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:same = 0<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( @% != l:fname )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:same = IsTheFileLoaded(l:fname)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:same )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:choice = confirm("Oops! ".l:fname." is loaded in another buffer! Are you sure to delete this buffer and overwrite?", "&amp;Yes, overwrite.\n&amp;No, let me browse more(esc)", 2)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:choice == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:same<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;call RunAndGun()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "browsing again."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;continue<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "saveas! ".l:fname<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "overwrited."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 0<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "browsing again."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;continue<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "saveas! ".l:fname<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 0<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
endfunction<br />
<br />
<br />
<br />
" Make tags. it requires g:Tlist_Ctags_Cmd in taglist.vim<br />
" tags를 생성합니다. g:Tlist_Ctags_Cmd in taglist.vim이 필요합니다.<br />
function MakeTags(pbFname, pbTagFile)<br />
&nbsp;&nbsp; &nbsp;" Exuberant ctags arguments to generate a tag list<br />
&nbsp;&nbsp; &nbsp;let ctags_args = " --c++-kinds=+p --fields=+iaS --extra=+q -a"<br />
<br />
&nbsp;&nbsp; &nbsp;" Ctags command to produce output with regexp for locating the tags<br />
&nbsp;&nbsp; &nbsp;let ctags_cmd = g:Tlist_Ctags_Cmd . ' -f "' . fnamemodify(a:pbTagFile, ":p") . '"' . ctags_args<br />
&nbsp;&nbsp; &nbsp;let ctags_cmd = ctags_cmd . ' "' . fnamemodify(a:pbFname, ":p") . '"'<br />
<br />
&nbsp;&nbsp; &nbsp;" Run ctags and get the tag list<br />
&nbsp;&nbsp; &nbsp;if ( RunSCommand(ctags_cmd) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "tags has made."<br />
&nbsp;&nbsp; &nbsp;endif<br />
endfunction<br />
<br />
<br />
<br />
" Run shell command well anywhere(?)<br />
" Shell command 를 아무데서나(?) 실행함<br />
function RunSCommand(pbCommand)<br />
&nbsp;&nbsp; &nbsp;let l:pbCommand = a:pbCommand<br />
&nbsp;&nbsp; &nbsp;if &amp;shellxquote == '"'<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;" Double-quotes within double-quotes will not work in the<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;" command-line.If the 'shellxquote' option is set to double-quotes,<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;" then escape the double-quotes in the ctags command-line.<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pbCommand = escape(l:pbCommand, '"')<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;" In Windows 95, if not using cygwin, disable the 'shellslash'<br />
&nbsp;&nbsp; &nbsp;" option. Otherwise, this will cause problems when running the<br />
&nbsp;&nbsp; &nbsp;" ctags command.<br />
&nbsp;&nbsp; &nbsp;if has('win95') &amp;&amp; !has('win32unix')<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let old_shellslash = &amp;shellslash<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;set noshellslash<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;" Run ctags and get the tag list<br />
&nbsp;&nbsp; &nbsp;let cmd_output = system(l:pbCommand)<br />
<br />
&nbsp;&nbsp; &nbsp;" Restore the value of the 'shellslash' option.<br />
&nbsp;&nbsp; &nbsp;if has('win95') &amp;&amp; !has('win32unix')<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let &amp;shellslash = old_shellslash<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;" Handle errors<br />
&nbsp;&nbsp; &nbsp;if v:shell_error<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "shell_error: ". cmd_output<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 0<br />
&nbsp;&nbsp; &nbsp;endif<br />
endfunction<br />
<br />
<br />
<br />
" load g:ppbTagsManagerFile.<br />
" g:ppbTagsManagerFile 을 읽어요.<br />
function LoadTMFile()<br />
&nbsp;&nbsp; &nbsp;let l:dwCounter = 0<br />
&nbsp;&nbsp; &nbsp;let l:ppbBuffers = [ "" ]<br />
<br />
&nbsp;&nbsp; &nbsp;let l:pbBuffer = findfile(g:pbTagsManagerFile)<br />
&nbsp;&nbsp; &nbsp;if ( l:pbBuffer == "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "there is not the Tags-Manager."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;let l:TM = readfile(g:pbTagsManagerFile)<br />
&nbsp;&nbsp; &nbsp;let l:dwLength = len(l:TM)<br />
&nbsp;&nbsp; &nbsp;if ( !l:dwLength )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "Tags-Manager file is empty. :q"<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;let g:ppbTLs = split(l:TM[0], "{Dewr}")<br />
&nbsp;&nbsp; &nbsp;let l:dwLength = len(g:ppbTLs)<br />
&nbsp;&nbsp; &nbsp;let l:ppbTagsFiles = split(&amp;tags, ",")<br />
&nbsp;&nbsp; &nbsp;while ( l:dwCounter &lt; l:dwLength )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pbBuffer = findfile(g:ppbTLs[l:dwCounter])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:pbBuffer != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = readfile(g:ppbTLs[l:dwCounter])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = split(l:ppbBuffers[0], "{Dewr}")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers[0] = escape(l:ppbBuffers[0], ' ')<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( !IsItInTheList(l:ppbBuffers[0], l:ppbTagsFiles) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let &amp;tags = &amp;tags . ',' . l:ppbBuffers[0]<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwCounter += 1<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
<br />
endfunction<br />
<br />
<br />
<br />
"Decide whether to manage with Tags-manager or do nothing<br />
"태그매니져로 관리하거나 아무짓도 안 하거나를 결정<br />
function ManageOrNot(pbFname)<br />
&nbsp;&nbsp; &nbsp;let l:pbFname = fnamemodify(a:pbFname, ":t")<br />
&nbsp;&nbsp; &nbsp;let l:ppbBuffer = ["zero", "one"]<br />
&nbsp;&nbsp; &nbsp;let l:dwLen = len(g:ppbFilesManaged)<br />
&nbsp;&nbsp; &nbsp;let l:dwCtr = 0<br />
&nbsp;&nbsp; &nbsp;while (l:dwCtr &lt; l:dwLen)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffer = split(l:pbFname, g:ppbFilesManaged[l:dwCtr])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:ppbBuffer[0] != l:pbFname )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo l:ppbBuffer[0]<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7 "call Manager<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwCtr = l:dwCtr+1<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
&nbsp;&nbsp; &nbsp;return 0<br />
endfunction<br />
<br />
<br />
<br />
" Requests a tags file.<br />
" tags파일 요청.<br />
function TagFileRequest(pbFname)<br />
&nbsp;&nbsp; &nbsp;let l:dwCounter = 0<br />
&nbsp;&nbsp; &nbsp;let l:pbBuffer = ""<br />
&nbsp;&nbsp; &nbsp;let l:ppbBuffers = [ 0 ]<br />
<br />
&nbsp;&nbsp; &nbsp;let l:dwLength = len(g:ppbTLs)<br />
&nbsp;&nbsp; &nbsp;while ( l:dwCounter &lt; l:dwLength )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pbBuffer = findfile(g:ppbTLs[l:dwCounter])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:pbBuffer != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = readfile(g:ppbTLs[l:dwCounter])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = split(l:ppbBuffers[0], "{Dewr}")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( IsItInTheList(fnamemodify(a:pbFname, ":p:h"), l:ppbBuffers) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( MakeTags(a:pbFname, l:ppbBuffers[0]) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 0<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwCounter += 1<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
<br />
&nbsp;&nbsp; &nbsp;let l:dwBuffer = confirm("There isn't Tag-Leader file linked to base directory of ".a:pbFname." ···What would you do?", "&amp;Make a new Tag-Leader file\n&amp;Link to a Tag-Leader file\nDo &amp;not link it\n&amp;Cancel(esc)", 2)<br />
&nbsp;&nbsp; &nbsp;if ( l:dwBuffer == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pbBuffer = MakeTagLeader(a:pbFname)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:pbBuffer == "")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "failed to make tag-leader file."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( LoadTLFile(l:pbBuffer) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "failed."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = readfile(l:pbBuffer)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers[0] = l:ppbBuffers[0] . "{Dewr}" . fnamemodify(a:pbFname, ":p:h")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( writefile(l:ppbBuffers, l:pbBuffer) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "writing Tag-Leader file failed."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = split(l:ppbBuffers[0], "{Dewr}")<br />
<br />
&nbsp;&nbsp; &nbsp;elseif ( l:dwBuffer == 2 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwCounter = 0<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pbBuffer = "&amp;Another Tag-Leader file\n"<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;while ( l:dwCounter &lt; l:dwLength )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pbBuffer = l:pbBuffer . g:ppbTLs[l:dwCounter] . "\n"<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwCounter += 1<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endwhile<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pbBuffer = l:pbBuffer . "&amp;Cancel(esc)"<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwBuffer = confirm("What Tag-Leader file do you want to link base directory of ".a:pbFname." to?", l:pbBuffer, 1)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:dwBuffer &gt; 1 &amp;&amp; l:dwBuffer != l:dwLength + 2 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = readfile(g:ppbTLs[l:dwBuffer-2])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers[0] = l:ppbBuffers[0] . "{Dewr}" . fnamemodify(a:pbFname, ":p:h")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( writefile(l:ppbBuffers, g:ppbTLs[l:dwBuffer-2]) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "writing Tag-Leader file failed."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = split(l:ppbBuffers[0], "{Dewr}")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pbBuffer = l:ppbBuffers[0]<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;elseif ( l:dwBuffer == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:pbBuffer = MakeTagLeader(a:pbFname)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:pbBuffer == "")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "failed to make tag-leader file."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( LoadTLFile(l:pbBuffer) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "failed."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = readfile(l:pbBuffer)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers[0] = l:ppbBuffers[0] . "{Dewr}" . fnamemodify(a:pbFname, ":p:h")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( writefile(l:ppbBuffers, l:pbBuffer) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "writing Tag-Leader file failed."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = split(l:ppbBuffers[0], "{Dewr}")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;elseif ( l:dwBuffer == 3 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 0<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;if ( MakeTags(a:pbFname, l:ppbBuffers[0]) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 0<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
endfunction<br />
<br />
<br />
<br />
" Append pbDir to pbTLFile<br />
" pbDir을 pbTLFile에 덧붙입니다.<br />
function AppendDirToTLFile(pbDir, pbTLFile)<br />
&nbsp;&nbsp; &nbsp;let l:ppbBuffers = readfile(a:pbTLFile)<br />
&nbsp;&nbsp; &nbsp;let l:ppbBuffers[0] = l:ppbBuffers[0] . "{Dewr}" . fnamemodify(a:pbDir, ":p:h")<br />
&nbsp;&nbsp; &nbsp;if ( writefile(l:ppbBuffers, a:pbTLFile) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "writing Tag-Leader file failed."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;let l:ppbBuffers = split(l:ppbBuffers[0], "{Dewr}")<br />
endfunction<br />
<br />
<br />
<br />
" Browse to make a Tag-Leader file<br />
" Tag-Leader 파일 만들기 위해서 브라우저를 엽니다.<br />
function MakeTagLeader(pbFname)<br />
&nbsp;&nbsp; &nbsp;let l:dwFirst = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;enew!<br />
&nbsp;&nbsp; &nbsp;let l:ppbPathAndFname = [$HOME, '.tl']<br />
<br />
&nbsp;&nbsp; &nbsp;while ( 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:fname = browse(1, "Making a tag-leader file of ".a:pbFname."···", l:ppbPathAndFname[0], l:ppbPathAndFname[1])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:fname != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( findfile(l:fname) != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:choice = confirm("overwrite to ".l:fname, "&amp;Yes, overwrite\n&amp;No, let me browse more(esc)\n&amp;Cancel", 1)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:choice == 3 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"call QuitBuffer()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;setlocal bufhidden=wipe<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer!". l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return ""<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;elseif ( l:choice == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:same = IsTheFileLoaded(l:fname)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:same )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:choice = confirm("Oops! ".l:fname." is loaded in another buffer! Are you sure to delete this buffer and overwrite?", "&amp;Yes, overwrite.\n&amp;No, let me browse more(esc)", 2)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:choice == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:same<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;call RunAndGun()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "browsing again."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;continue<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:tagsfname = BrowseForNewTagsFile(l:fname)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:tagsfname == "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"call QuitBuffer()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;setlocal bufhidden=wipe<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer!". l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return ""<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( writefile([fnamemodify(l:tagsfname,":p"),"Tag-Leaer files contain path of tags file and linked directories."], l:fname) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "failed to write \"".l:fname."\"···."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"call QuitBuffer()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;setlocal bufhidden=wipe<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer!". l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return ""<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "overwrited."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"call QuitBuffer()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;setlocal bufhidden=wipe<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer!". l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return l:fname<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "browsing again."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;continue<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:tagsfname = BrowseForNewTagsFile(l:fname)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:tagsfname == "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"call QuitBuffer()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;setlocal bufhidden=wipe<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer!". l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return ""<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( writefile([fnamemodify(l:tagsfname,":p"),"Tag-Leaer files contain path of tags file and linked directories."], l:fname) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"call QuitBuffer()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;setlocal bufhidden=wipe<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer!". l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return ""<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"call QuitBuffer()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;setlocal bufhidden=wipe<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer!". l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return l:fname<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"call QuitBuffer()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;setlocal bufhidden=wipe<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer!". l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return ""<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
<br />
endfunction<br />
function BrowseForNewTagsFile(pbFname)<br />
&nbsp;&nbsp; &nbsp;let l:dwFirst = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;let l:ppbPathAndFname = [$HOME, '.tags']<br />
<br />
&nbsp;&nbsp; &nbsp;while ( 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:fname = browse(1, "Making the tags file of ".a:pbFname."···", l:ppbPathAndFname[0], l:ppbPathAndFname[1])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:fname != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( findfile(l:fname) != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:choice = confirm("overwrite to ".l:fname, "&amp;Yes, overwrite\n&amp;No, let me browse more(esc)\n&amp;Cancel", 1)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:choice == 3 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return ""<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;elseif ( l:choice == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:same = IsTheFileLoaded(l:fname)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:same )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:choice = confirm("Oops! ".l:fname." is loaded in another buffer! Are you sure to delete this buffer and overwrite?", "&amp;Yes, overwrite.\n&amp;No, let me browse more(esc)", 2)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:choice == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:same<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;call RunAndGun()<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "buffer! ".l:dwFirst<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "browsing again."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;continue<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( delete(l:fname) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "failed to delete ". l:fname<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return ""<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "overwrited."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return l:fname<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "browsing again."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;continue<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return l:fname<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return ""<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
<br />
endfunction<br />
<br />
<br />
<br />
" Load a Tag-Leader file.<br />
" Tag-Leader파일을 읽어옵니다.<br />
function LoadTLFile(pbFname)<br />
&nbsp;&nbsp; &nbsp;let l:dwLength = 0<br />
&nbsp;&nbsp; &nbsp;let l:ppbBuffers = [ "" ]<br />
<br />
&nbsp;&nbsp; &nbsp;"append tags file to 'tags' option<br />
&nbsp;&nbsp; &nbsp;let l:pbBuffer = findfile(a:pbFname)<br />
&nbsp;&nbsp; &nbsp;if ( l:pbBuffer != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbTagsFiles = split(&amp;tags, ",")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = readfile(a:pbFname)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = split(l:ppbBuffers[0], "{Dewr}")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers[0] = escape(l:ppbBuffers[0], ' ')<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( !IsItInTheList(l:ppbBuffers[0], l:ppbTagsFiles) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let &amp;tags = &amp;tags . ',' . l:ppbBuffers[0]<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "failed to find \"".a:pbFname."\"···."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;let l:pbFind = findfile(g:pbTagsManagerFile)<br />
&nbsp;&nbsp; &nbsp;<br />
&nbsp;&nbsp; &nbsp;if ( l:pbFind == "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers[0] = fnamemodify(a:pbFname, ":p")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;call add(l:ppbBuffers, "Tags-Manager files contain paths of Tag-Leader files.")<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers = readfile(g:pbTagsManagerFile)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwLength = len(l:ppbBuffers)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( !l:dwLength )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers[0] = fnamemodify(a:pbFname, ":p")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;call add(l:ppbBuffers, "Tags-Manager files contain paths of Tag-Leader files.")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbBuffers[0] = l:ppbBuffers[0] . "{Dewr}" . fnamemodify(a:pbFname, ":p")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;if ( writefile(l:ppbBuffers, g:pbTagsManagerFile) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "failed to append \"".l:pbBuffer."\" to the Tag-Manager file."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;call add(g:ppbTLs, a:pbFname)<br />
<br />
&nbsp;&nbsp; &nbsp;return 0<br />
endfunction<br />
<br />
<br />
<br />
"Last Dewr-Command must be at the last line of the file. Format = ?Dewr_C:{CODE}<br />
function TakeDewrCommands()<br />
&nbsp;&nbsp; &nbsp;let l:dwLastLine = line("$")<br />
&nbsp;&nbsp; &nbsp;let l:ppbCheckup = split(getline(l:dwLastLine), "Dewr_C:")<br />
&nbsp;&nbsp; &nbsp;if ( len(l:ppbCheckup) != 2 || len(l:ppbCheckup[0]) &gt; 2 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;let l:ppbBuffers = [ "echo \"&nbsp;&nbsp; Dewr_C has taken.\"" ]<br />
&nbsp;&nbsp; &nbsp;call add(l:ppbBuffers, l:ppbCheckup[1])<br />
<br />
"&nbsp;&nbsp; &nbsp;let l:pbBuffer = ""<br />
<br />
&nbsp;&nbsp; &nbsp;let l:dwBuffer = l:dwLastLine -1<br />
&nbsp;&nbsp; &nbsp;while ( 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:ppbCheckup = split(getline(l:dwBuffer), "Dewr_C:")<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( len(l:ppbCheckup) !=2 || len(l:ppbCheckup[0]) &gt; 2 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;break<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;call add(l:ppbBuffers, l:ppbCheckup[1])<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwBuffer -= 1<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
<br />
&nbsp;&nbsp; &nbsp;let l:dwBuffer = len(l:ppbBuffers) - 1<br />
&nbsp;&nbsp; &nbsp;while ( l:dwBuffer &gt;= 0 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute l:ppbBuffers[l:dwBuffer]<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:dwBuffer -= 1<br />
&nbsp;&nbsp; &nbsp;endwhile<br />
<br />
&nbsp;&nbsp; &nbsp;return 0<br />
endfunction<br />
<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※단축키 설정 Hotkeys&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
" 상용구 설정 AutoText<br />
iab xdate &lt;C-R&gt;=strftime("%y-%m-%d %h:%m:%s")&lt;CR&gt;<br />
iab xtime &lt;C-R&gt;=strftime("%h:%m:%s")&lt;CR&gt;<br />
<br />
<br />
" &lt;F2&gt; 파일 열기 --browse 지원이 없을 때 netrw browser를 사용하게 해놓았습니다.<br />
" &lt;F2&gt; Open a file --browse 지원이 없을 때 netrw browser를 사용하게 해놓았습니다.<br />
map &lt;F2&gt; :call KickCursor()&lt;CR&gt;:call LetsLoad()&lt;CR&gt;<br />
map! &lt;F2&gt; &lt;F2&gt;<br />
" keymapping :~~~ as visual block mode makes vim to deliver range informations (e.g. :'&lt;,'&gt;~~~ ) so function calls repeat as much as the number of selected(block) textlines, so add &lt;C-U&gt; at your key mapping command. (e.g. :&lt;C-U&gt;call KickCursor() )<br />
" 블럭모드의 :~~~ 키맵핑은 vim이 범위정보를 전달하게 만듭니다. (이렇게 :`&lt;,`&gt;~~~ ) 그래서 함수호출은 블럭지정(선택)되어있는 텍스트 줄수만큼 연속적으로 호출됩니다. 그러니 키맵핑할때 꼭 &lt;C-U&gt; 넣으세요. (이렇게 :&lt;C-U&gt;call KickCursor() )<br />
vmap &lt;F2&gt; :&lt;C-U&gt;call KickCursor()&lt;CR&gt;:call LetsLoad()&lt;CR&gt;<br />
<br />
" ^_^* "map! &lt;F2&gt; " windows?(Ctrl+Q):(Ctrl+V) (Ctrl+C) "&lt;F2&gt;" dehet···.<br />
"&nbsp;&nbsp; &nbsp;--if your Vim doesn't support browse feature, when it browses for a file to edit it will run "netrw" browser instead of GUI. I recommend you to edit "$VIM/vim72/autoload/netrw.vim" and "$VIM/vim72/autoload/netrwSettings.vim" to change &lt;F1&gt; for other key. &lt;F1&gt; will be used for other function.<br />
"&nbsp;&nbsp; &nbsp;--만약 당신의 Vim 이 browse feature를 지원하지 않는다면 파일열기를 위한&nbsp;&nbsp; &nbsp;브라우징은 "netrw"를 통해서 이루어질 것입니다. "$VIM/vim72/autoload/netrw.vim" and "$VIM/vim72/autoload/netrwSettings.vim" 이 두 파일안에서 &lt;F1&gt; 을 다른 키로 변경하시기를 바랍니다. &lt;F1&gt; 은 다른 기능을 위해 사용됩니다.<br />
<br />
" loads an empty noname-buffer<br />
" 비어있는 이름없음-버퍼를 불러옵니다.<br />
map &lt;M-F2&gt; :call KickCursor()&lt;CR&gt;:enew!&lt;CR&gt;<br />
vmap &lt;M-F2&gt; :&lt;C-U&gt;call KickCursor()&lt;CR&gt;:enew!&lt;CR&gt;<br />
map! &lt;M-F2&gt; &lt;M-F2&gt;<br />
<br />
" &lt;F3&gt; buffer(not 탭) 닫기<br />
" &lt;F3&gt; discards a buffer<br />
map &lt;F3&gt; :call KickCursor()&lt;CR&gt;:call QuitBuffer()&lt;CR&gt;<br />
vmap &lt;F3&gt; :&lt;C-U&gt;call KickCursor()&lt;CR&gt;:call QuitBuffer()&lt;CR&gt;<br />
map! &lt;F3&gt; &lt;F3&gt;<br />
" Alt+&lt;F3&gt; quit Vim<br />
" Alt+&lt;F3&gt; Vim 종료<br />
map &lt;M-F3&gt; :call QuitVim()&lt;CR&gt;<br />
vmap &lt;M-F3&gt; :&lt;C-U&gt;call QuitVim()&lt;CR&gt;<br />
map! &lt;M-F3&gt; &lt;M-F3&gt;<br />
" Alt+Q close a window<br />
" Alt+Q 창 닫기<br />
map &lt;M-q&gt; :call AltQ()&lt;CR&gt;<br />
vmap &lt;M-q&gt; :&lt;C-U&gt;call AltQ()&lt;CR&gt;<br />
map! &lt;M-q&gt; &lt;M-q&gt;<br />
function AltQ()<br />
&nbsp;&nbsp; &nbsp;let l:dwBufFocused = winbufnr(0)<br />
&nbsp;&nbsp; &nbsp;if ( &amp;modified )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;let l:choice = confirm("save changes of ".l:dwBufFocused.":".@%, "&amp;Yes, save\n&amp;No, do not save\n&amp;Cancel(esc)", 2)<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( l:choice == 1 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( @% == "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if ( SaveAsNewName() )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;w<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;elseif ( l:choice == 2 )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "didn't save it."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"echo "canceled."<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 7<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;endif<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;if ( @% != "" || &amp;buftype != "" )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;setlocal bufhidden=hide<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;enew!<br />
&nbsp;&nbsp; &nbsp;else<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;bwipeout!<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;return 0<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;if ( !getbufvar(l:dwBufFocused, "&amp;modifiable") || !buflisted(l:dwBufFocused) )<br />
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;execute "bwipeout! ".l:dwBufFocused<br />
&nbsp;&nbsp; &nbsp;endif<br />
<br />
&nbsp;&nbsp; &nbsp;return 0<br />
endfunction<br />
<br />
<br />
<br />
" &lt;F1&gt; 이전버퍼 show previous buffer<br />
map &lt;F1&gt; :call KickCursor()&lt;CR&gt;:bprevious!&lt;CR&gt;<br />
vmap &lt;F1&gt; :&lt;C-U&gt;call KickCursor()&lt;CR&gt;:bprevious!&lt;CR&gt;<br />
map! &lt;F1&gt; &lt;F1&gt;<br />
" &lt;F4&gt; 다음버퍼 show next buffer<br />
map &lt;F4&gt; :call KickCursor()&lt;CR&gt;:bnext!&lt;CR&gt;<br />
vmap &lt;F4&gt; :&lt;C-U&gt;call KickCursor()&lt;CR&gt;:bnext!&lt;CR&gt;<br />
map! &lt;F4&gt; &lt;F4&gt;<br />
<br />
<br />
" &lt;F8&gt; 저장 &amp; taglist update &amp; [ omni자동완성을 위한 tags파일 생성 ]<br />
" &lt;F8&gt; Save &amp; taglist update &amp; [ make tags file for omni-comletion ]<br />
map &lt;F8&gt; :call KickCursor()&lt;CR&gt;:update!&lt;CR&gt;:TlistUpdate&lt;CR&gt;:if exists("b:dewr_notagleader") \| echo "b:dewr_notagleader" \| else \| if (ManageOrNot(bufname("%"))) \| call TagFileRequest(@%) \| else \| echo "This has not managed by tags-manager." \| endif \| endif&lt;CR&gt;<br />
vmap &lt;F8&gt; :&lt;C-U&gt;call KickCursor()&lt;CR&gt;:update!&lt;CR&gt;:TlistUpdate&lt;CR&gt;:if exists("b:dewr_notagleader") \| echo "b:dewr_notagleader" \| else \| if (ManageOrNot(bufname("%"))) \| call TagFileRequest(@%) \| else \| echo "This has not managed by tags-manager." \| endif \| endif&lt;CR&gt;<br />
map! &lt;F8&gt; &lt;F8&gt;<br />
<br />
" Ctrl+&lt;F8&gt; 다른이름으로 저장 &amp; taglist update<br />
" Ctrl+&lt;F8&gt; Save as new name &amp; taglist update<br />
map &lt;C-F8&gt; :call KickCursor()&lt;CR&gt;:call SaveAsNewName()&lt;CR&gt;:UMiniBufExplorer&lt;CR&gt;:TlistUpdate&lt;CR&gt;<br />
vmap &lt;C-F8&gt; :&lt;C-U&gt;call KickCursor()&lt;CR&gt;:call SaveAsNewName()&lt;CR&gt;:UMiniBufExplorer&lt;CR&gt;:TlistUpdate&lt;CR&gt;<br />
map! &lt;C-F8&gt; &lt;C-F8&gt;<br />
<br />
<br />
" &lt;C-G&gt; 태그 앞으로. 택뒤로=&lt;c-t&gt; 도움말볼때 유용합니다.<br />
" Ctrl+G Jump to newer entry in the tag stack. It is useful when you are reading help text<br />
map &lt;C-G&gt; :tag&lt;CR&gt;<br />
vmap &lt;C-G&gt; :&lt;C-U&gt;tag&lt;CR&gt;<br />
<br />
" Ctrl+R CTRL-Z(윈도우에서만 인가?)로 undo한것을 취소하겠습니다. ※※※※※<br />
" Ctrl+R redo. cancels undo(maybe Ctrl+Z). ※※※※※<br />
map! &lt;C-R&gt; &lt;C-R&gt;<br />
<br />
" &lt;C-F9&gt; minibufexplorer toggle key<br />
map &lt;C-F9&gt; :TMiniBufExplorer&lt;CR&gt;<br />
vmap &lt;C-F9&gt; :&lt;C-U&gt;TMiniBufExplorer&lt;CR&gt;<br />
map! &lt;C-F9&gt; &lt;C-F9&gt;<br />
<br />
" ctrl+f10 taglist toggle<br />
map &lt;C-F10&gt; :TlistToggle&lt;CR&gt;<br />
vmap &lt;C-F10&gt; :&lt;C-U&gt;TlistToggle&lt;CR&gt;<br />
map! &lt;C-F10&gt; &lt;C-F10&gt;<br />
<br />
" Ctrl+&lt;F12&gt; to toggle the menu bar<br />
" Ctrl+&lt;F12&gt; 메뉴바 토글<br />
map &lt;C-F12&gt; :if &amp;guioptions=~'m' \| set guioptions-=m \| else \| set guioptions+=m \| endif&lt;CR&gt;<br />
vmap &lt;C-F12&gt; :&lt;C-U&gt;if &amp;guioptions=~'m' \| set guioptions-=m \| else \| set guioptions+=m \| endif&lt;CR&gt;<br />
map! &lt;C-F12&gt; &lt;C-F12&gt;<br />
<br />
" 쓰는 법: Ctrl-Q + &lt;C-C&gt;<br />
<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※Initialization and Splash!&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
function DewrSplash()<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dewr's Vim! 0.9.2.4"<br />
&nbsp;&nbsp; &nbsp;echo "\n"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp; Dewr's_Vim!_D"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; De&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ewr's_V"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ew&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r's_"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ew&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r's"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 's"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 's"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _V"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _V"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 's&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _V"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 's&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _V"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 's&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _V"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 's&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _V"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Vi&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m!"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Vi&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m!"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; im&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; !_"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; im&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; !_"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m!&nbsp;&nbsp;&nbsp;&nbsp; Dew"<br />
&nbsp;&nbsp; &nbsp;echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m!_Dewr"<br />
&nbsp;&nbsp; &nbsp;echo "\n"<br />
&nbsp;&nbsp; &nbsp;echo "\n&nbsp; Click_below_to_start_vim."<br />
endfunction<br />
"autocmd GUIEnter * call DewrSplash() "··· :q<br />
<br />
function DewrsIntroduction()<br />
&nbsp;&nbsp; &nbsp;:TlistOpen<br />
&nbsp;&nbsp; &nbsp;call KickCursor()<br />
&nbsp;&nbsp; &nbsp;call LoadTMFile()<br />
endfunction<br />
autocmd VimEnter * call DewrsIntroduction()<br />
<br />
<br />
<br />
<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
" ※기타 설정&nbsp;&nbsp; &nbsp;other configuration&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;<br />
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""<br />
<br />
" turn off useless toolbar and menu bar<br />
" 쓸모없는 메뉴바와 툴바를 제거합니다.<br />
set guioptions-=m<br />
set guioptions-=T<br />
<br />
"turn off backup<br />
set nobackup<br />
<br />
"mapleader<br />
let g:maplocalleader&nbsp; = "\\" " = '\'<br />
let g:mapleader = ","<br />
<br />
" let g:showmarks_ignore_type="hmq" "taglist,mbe 창에서도 뜨면 추하다능··· 난 showmarks 안 씁니다.<br />
<br />
" 멋있어 보이기 위해··· EOL표시!<br />
" Do you want to see EOLs?<br />
set lcs=eol:$,tab:\ \ <br />
set list<br />
<br />
" allow backspacing over everything in insert mode<br />
set backspace=indent,eol,start<br />
<br />
set completeopt=menuone,preview ":help 'completeopt<br />
compiler gcc<br />
<br />
set number "show the line number for each line (줄수 보여주기)<br />
set mps+=&lt;:&gt; "matchpairs&nbsp;&nbsp; &nbsp;list of pairs that match for the "%" command (local to buffer) (괄호인식)<br />
set ts=4 "tabstop&nbsp;&nbsp; &nbsp;number of spaces a &lt;Tab&gt; in the text stands for&nbsp;&nbsp; &nbsp;(local to buffer) (탭 4칸이 적절합니다.)<br />
set sw=4 "shiftwidth&nbsp;&nbsp; &nbsp;number of spaces used for each step of (auto)indent&nbsp;&nbsp; &nbsp;(local to buffer) (자동 들여쓰기 탭 4칸이 적절합니다.)<br />
"<br />
"<br />
"<br />
"<br />
" 마지막에 편집하던 파일들을 다시 불러오기. vimrc의 마지막코드여야 하네요.<br />
" Tell vim to remember certain things when we exit. this must be the last code in vimrc.<br />
"&nbsp; '16 : marks will be remembered for up to 16 previously edited files<br />
"&nbsp; "1000 : will save up to 1000 lines for each register<br />
"&nbsp; :20 : up to 20 lines of command-line history will be remembered<br />
"&nbsp; % : saves and restores the buffer list<br />
"&nbsp; n... : where to save the viminfo files<br />
set viminfo='16,\"1000,:20,%,n~/_viminfo<br />
<br />
<br />
<br />
<br />
"Last Dewr-Command must be at the last line of the file. Format = ?Dewr_C:{CODE}<br />
"Dewr_C:echo "Hello! World!1"<br />
"Dewr_C:echo "Hello! World!2"<br />
"Dewr_C:echo "Hello! World!3"<br />
<br />
<br />
<a href="http://pds15.egloos.com/pds/200910/26/88/_vimrc" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">_vimrc - click this to download</a> &lt;- This is big :)<br />
<a href="http://pds15.egloos.com/pds/200910/26/88/Dewrs_mswin.vim" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">Dewrs_mswin.vim - click this to download</a> &lt;- copy into $VIM/vimfiles/after<br />
<a href="http://pds17.egloos.com/pds/200910/26/88/Dewrs_vimrc_example.vim" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">Dewrs_vimrc_example.vim - click this to download</a> &lt;- copy into $VIM/vimfiles/after<br />
<a href="http://pds17.egloos.com/pds/200910/26/88/Dewrs_minibufexpl.vim" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">Dewrs_minibufexpl.vim - click this to download</a> &lt;- copy into your plugin directory<br />
<a href="http://pds15.egloos.com/pds/200910/26/88/Dewrs_taglist.vim" player="0" style="padding: 0pt 0pt 0pt 15px; background: transparent url(http://md.egloos.com/img/eg/icon_file.gif) no-repeat scroll left center; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; list-style-type: none; list-style-image: none; list-style-position: outside;">Dewrs_taglist.vim - clilck this to download</a> &lt;- copy into your plugin directory<br/><br/>tag : <a href="/tag/Vim" rel="tag">Vim</a>,&nbsp;<a href="/tag/Computer" rel="tag">Computer</a>,&nbsp;<a href="/tag/vimrc" rel="tag">vimrc</a>,&nbsp;<a href="/tag/배포" rel="tag">배포</a>,&nbsp;<a href="/tag/Engineer" rel="tag">Engineer</a>,&nbsp;<a href="/tag/최신버젼입니다" rel="tag">최신버젼입니다</a>			 ]]> 
		</description>
		<category>IT자료</category>
		<category>Vim</category>
		<category>Computer</category>
		<category>vimrc</category>
		<category>배포</category>
		<category>Engineer</category>
		<category>최신버젼입니다</category>

		<comments>http://dewr.egloos.com/5152701#comments</comments>
		<pubDate>Mon, 26 Oct 2009 10:54:29 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
	<item>
		<title><![CDATA[ IQ500의 Windows CE 6.0 점령법 (IQ500 100% 활용하기) ]]> </title>
		<link>http://dewr.egloos.com/5144343</link>
		<guid>http://dewr.egloos.com/5144343</guid>
		<description>
			<![CDATA[ 
  저는 IQ500 이라는 네비게이션을 사용중입니다. 매일 이 차를 끌고 일을 나가는데 IQ500을 좀 더 적극적으로 활용하고 싶어서 검색을 하다가 발견한 한가지 간단한 방법을 소개합니다.<br />
<br /><br />일단 IQ500의 스펙을 알아두자.<br />
<ul><li><span style="font-weight: bold;">터치스크린</span>이 있다.</li><li><span style="font-weight: bold;">WinCE 6.0</span> 이라는 운영체제가 설치되어 있다.</li><li>CPU 900MHz(<span style="font-weight: bold;">ARM</span> 11 600MHz + DSP 300MHz 듀얼 코어)</li><li>메모리 DDR2 <span style="font-weight: bold;">128MB Ram</span> NAND 64GB</li><li>LCD 타입 <span style="font-weight: bold;">7인치 800ⅹ480</span> LED 타입</li></ul><br />
자 그럼 설명을 시작한다.<br />
<div style="text-align: left;"><ol><li> <a href="http://pds16.egloos.com/pds/200910/17/88/TC.EXE">TC.EXE</a> 를 다운받는다. Total Commander라는 프로그램인데 무료 파일관리 프로그램이다. 윈도우탐색기 같은 것이다. <a href="http://www.ghisler.ch/board/viewforum.php?f=5">Total commander Pocket</a> &lt;-최신버젼은 여기 있지만 일단 구버젼으로 시도해보라. 안정적이다.<br />
</li><li> TC.exe 를 [SD]:\GAME\SING\DGPlayer.exe 와 바꿔치기 한다.</li><li> 이제 노래방을 실행하면 Total Commander가 실행된다!!</li><li> 여기서 windows\<span style="text-decoration: underline;">explorer.exe</span> 를 실행하면 작업표시줄이 나온다.  이게 있으면 <span style="text-decoration: underline;">작업표시줄</span> 오른쪽 끝에 있는 키보드 모양 아이콘을 클릭하여 <span style="text-decoration: underline;">키보드판</span>을 불러낼 수 있다. (USB 키보드를 끼는게 더 멋지겠지만 ^^)</li><li> <a target="_blank" href="http://www.wolfzone.co.kr/">WolfNCU</a> 라는 프로그램을 다운받는다. SD카드안에 적절하게 카피한다. 배포파일들 안에 <span style="text-decoration: underline;">WolfNCU.exe</span>가 있다. 이것을 실행하고 스킨을 pastel이나 windows로 바꿔보라(SD여유용량이 부족하면 이상하게 스킨바꾸기가 안 되더라. 참고하라···.) <span style="text-decoration: underline;">작업관리자</span>를 소환할 수 있는 버튼이 있다.(신호등모양) 이것만 있으면 이 기기는 당신의 손안에 있소이다.<br />
</li><li>이제 wince용 애플러케이션들을  깔아보고 즐겨라!</li></ol></div><br/><br/>tag : <a href="/tag/WinCE" rel="tag">WinCE</a>,&nbsp;<a href="/tag/Computer" rel="tag">Computer</a>,&nbsp;<a href="/tag/Navigator" rel="tag">Navigator</a>,&nbsp;<a href="/tag/Car" rel="tag">Car</a>			 ]]> 
		</description>
		<category>IT자료</category>
		<category>WinCE</category>
		<category>Computer</category>
		<category>Navigator</category>
		<category>Car</category>

		<comments>http://dewr.egloos.com/5144343#comments</comments>
		<pubDate>Sat, 17 Oct 2009 11:34:22 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 어느 엔지니어의 소중한 언어들 ]]> </title>
		<link>http://dewr.egloos.com/5143233</link>
		<guid>http://dewr.egloos.com/5143233</guid>
		<description>
			<![CDATA[ 
  이것들만 훈련하면 당신의 인생이 달라집니다. :)<br />
<br />
<span style="font-weight: bold;">C</span> <span style="color: rgb(51, 204, 0);">[trained]</span><br />
<span style="font-weight: bold;">Python</span> <span style="color: rgb(153, 0, 0);">[not yet]</span><br />
<span style="font-weight: bold;">Regular Expression </span><span style="color: rgb(204, 153, 51);">[have played little with in vim]</span><br />
<span style="font-weight: bold;">x86 Assembly</span> <span style="color: rgb(204, 153, 51);">[have played little with]</span> //이건 많이 안 쓰이지만 나와 일부 열혈 프로그래머···에게는 소중함<br />
<span style="font-weight: bold;">Shading Language in graphix</span> <span style="color: rgb(153, 0, 0);">[not yet]</span> //이것도 많이 쓰이지 않지만 게임·영상쪽에서 소중함<br />
<span style="font-weight: bold;">V.Im. Script </span><span style="color: rgb(51, 204, 0);">[trained]</span><br />
<br />
p.s. Visual Basic 6.0은 별로 소중하지 않다능···. <span style="font-weight: bold;">영어</span>는 중요한 기본기라능···.<br />
<br/><br/>tag : <a href="/tag/Engineer" rel="tag">Engineer</a>,&nbsp;<a href="/tag/Computer" rel="tag">Computer</a>,&nbsp;<a href="/tag/Language" rel="tag">Language</a>			 ]]> 
		</description>
		<category>IT자료</category>
		<category>Engineer</category>
		<category>Computer</category>
		<category>Language</category>

		<comments>http://dewr.egloos.com/5143233#comments</comments>
		<pubDate>Fri, 16 Oct 2009 06:14:09 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
	<item>
		<title><![CDATA[ DDR Memory 호환성 문제 ]]> </title>
		<link>http://dewr.egloos.com/5141678</link>
		<guid>http://dewr.egloos.com/5141678</guid>
		<description>
			<![CDATA[ 
  조금 안 좋은 일이 있었습니다. ㄱ-<br />
<br />
'예전에 512MB(400x2MHz) 모듈 두개를 껴놓고 쓰다가 2GB(400x2MHz) 모듈 두개를 새로 사서 두개를 섞어껴보았다.<br />
그런데 메인보드(ga965p ds3 rev2.0)가 호환성이 없는지 시스템이 불안정했다. 메모리타이밍까지 다 맞추고 했는데도 말이다.<br />
그래서 포기하고 구석에 박아두고 있다가. 요번에 포맷하면서 한번 다시 시도해보았다.<br />
그런데 윈도우즈 설치를 완료하고 재개발을 진행했는데··· 가끔 블루스크린이 떴다. 무시하고 계속하다가····· 부팅이 안 되더라··· 이것저것 하다가 도출한 결론은 부트로더가 오염되었다. 이상한 오염이라서 부트로더를 새로 덮어씌우는것도 불가능했다.<br />
어쨋든 그런 사실도 모르고 포기하지않고 별짓을 다 했다. 그 과정에서 USB Flash Memory를 꽂아놓았는데···(문제의 512MB모듈 두개도 꽂아두고 있었다.) 이게 갑자기 포맷이 되어있었다. 제길~ ^^; <font size="4">[//지금 생각해보니 내가 홧김에 포맷한거였네요.]</font> 3.7 GiB에 이르는 백업데이터가 있었다.<br />
CMOS 초기화 점퍼를 재접시키니까 부트로더는 정상화되었지만 백업데이터는 이미 사라져있었다···.'<br />
<br />
요약해봅니다.<br />
'MB비호환-메모리모듈 배치는 부트로더 오염 등 벼래별 크리들을 유발할 수 있음,'<br />
<br/><br/>tag : <a href="/tag/DDR" rel="tag">DDR</a>,&nbsp;<a href="/tag/호환성" rel="tag">호환성</a>,&nbsp;<a href="/tag/BlueScreen" rel="tag">BlueScreen</a>,&nbsp;<a href="/tag/BootLoader" rel="tag">BootLoader</a>,&nbsp;<a href="/tag/크리" rel="tag">크리</a>,&nbsp;<a href="/tag/Computer" rel="tag">Computer</a>			 ]]> 
		</description>
		<category>DDR</category>
		<category>호환성</category>
		<category>BlueScreen</category>
		<category>BootLoader</category>
		<category>크리</category>
		<category>Computer</category>

		<comments>http://dewr.egloos.com/5141678#comments</comments>
		<pubDate>Wed, 14 Oct 2009 15:02:10 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 나의 사랑하는 Google과의 Talk ]]> </title>
		<link>http://dewr.egloos.com/5133752</link>
		<guid>http://dewr.egloos.com/5133752</guid>
		<description>
			<![CDATA[ 
  <a href="http://twitter.com/Dewry/status/4658844887" target="_blank">http://twitter.com/Dewry/status/4658844887</a> &lt;- 요약본<br><br>구글링해보니 구글톡에서 여타IM서비스 사용자들과 연결이 가능하다는 것을 알고 시도해보았습니다.<br>MSN 메신져는 너무 무겁고, Google Talk로 대화하면 Gmail에서 챗로그를 볼 수 있다는 것에 혹한 것이죠.<br>1. Jabber 클라이언트를 설치(<a href="http://psi-im.org/" target="_blank">psi</a> 추천 )<br>2. Jabber 클라이언트에 그냥 바로 구글계정 아이디와 패소드 넣고 접속(XXX@gmail.com)<br>3. 온라인으로 만들고··· (모든 계정을 항상 자동으로 접속하게 해두는걸 추천)<br>4. Service Discovery 창을 열어서 MSN Transport 서버주소를 쳐넣는다. (<span class="status-body"><span class="entry-content">msn.jabber.wiretrip.org 추천)<br>5. 그 서버를 우클릭한 뒤 register 클릭하고! 거기다가 MSN패스포트 아이디와 패소드 입력!<br>6. 그럼 줄줄이 메시지들이 뜬다. 모두 Add/Auth버튼을 눌러서 추가해놓는다.<br>7. 연결완료~ 이제 psi는 역할을 다 마쳤으니 종료해주십시오.<br>8. 쨘, Google Talk 실행해보시면 계정들이 좀 길고 이상한 이름으로 추가되어 있을겁니다. ^^<br><br>MSN말고도 XMPP호환되는 IM서비스 사용자들과 연결이 가능합니다. ^^<br>단점발견··· Google Talk에선 상대방 Nickname이 안 보입니다. 투데이메시지는 보이네요.<br></span></span><br/><br/>tag : <a href="/tag/MSN" rel="tag">MSN</a>,&nbsp;<a href="/tag/Jabber" rel="tag">Jabber</a>,&nbsp;<a href="/tag/IM" rel="tag">IM</a>,&nbsp;<a href="/tag/Google" rel="tag">Google</a>,&nbsp;<a href="/tag/GoogleTalk" rel="tag">GoogleTalk</a>,&nbsp;<a href="/tag/Transport" rel="tag">Transport</a>			 ]]> 
		</description>
		<category>MSN</category>
		<category>Jabber</category>
		<category>IM</category>
		<category>Google</category>
		<category>GoogleTalk</category>
		<category>Transport</category>

		<comments>http://dewr.egloos.com/5133752#comments</comments>
		<pubDate>Tue, 06 Oct 2009 16:42:17 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 2012년 개벽박두 ]]> </title>
		<link>http://dewr.egloos.com/5124243</link>
		<guid>http://dewr.egloos.com/5124243</guid>
		<description>
			<![CDATA[ 
  <p>2012년 지구에 약 만천년에 한번 있는 이벤트가 발생한다고 합니다.<br />
</p><p><br />
</p><p>2012-지구: 지구중심의 마그마가 회전하면서 자기장을 만들어냄-&gt; '슈만 공명'이라 불리는 7~8Hz의파장-&gt; 여러세기 동안 유지되다가 최근 8년 동안 11Hz로 상승, 극적인 상승을 계속하고 있음.-&gt; 2012년까지13Hz까지 상승하다가 갑자기 멈출 것이다.(어떻게 알았냐면~ 화석연구가들이 발견한 바에 의하면 만천년마다 지구핵의 회전이멈춘다고 한다. 계산해서 2012년을 예측함.)-&gt; 지구를 가득 메우던 것이 사라지면 인류는 어떤 경험을 할까?지구용해핵의 멈춤은 몇일(a few days) 동안 유지되었다가 다시 힘차게 회전함</p><p><br />
</p><p>그런데 거대한 파괴적인 이벤트들도 일어날 것이라는 과학자들과 예언가들의 말도 있다. 지구의 기울기가 변하고 지각변동과 기후변화가 올 것이라는··· 살아남아서 만천년마다 한번 일어나는 그 이벤트를 경험해보고싶다.<br />
</p><br />
<strong><font size="5">'</font> </strong>Question: What is the significance of the year 2012.<br />
<p><strong><br />
</strong><strong>Sri Kalki Bhagavan: </strong>OK. Most of you know thatthe earth has got a magnetic field. As the earth�s molten core isrotating; the magnetic field is created. The thought sphere of thehuman mind is located in the earth�s magnetic field. This mag-neticfield has been weakening dramatically over last ten years. <br />
<br />
Now,in physics there is a parameter called �Schumann�s Resonance�. Usingthat we can determine the strength of the earth�s magnetic field. Whilefor many centuries, it was constant around 7.80 cycles per second,during the last 7-8 years, it has risen to 11 cycles per second and iscontinuing to increase dramatically. If you work it out mathematically,it appears that, by the year 2012, the "Schuman�s" is likely to be 13cycles per second. When this reso-nance is 13 cycles per second, theearth�s core would stop rotating with mag-netic field gone, you mind isgone. When I say "your mind", what I mean is your "samskaras". Thepressure of the past 11.000 years of samskaras will vanish. <br />
<br />
Inthe Dharma, we also say, �Mind is Karma�. All actions start from yourmind. The mind is nothing but a storehouse of samskaras or past lifevasanas from which all action emanates. This is stored in the earth�smagnetic field. So in the year 2012, it will become zero for a fewdays. After that the core will start rotating again. This would be afresh beginning for man or the dawn of the Golden Age. This is thesignificance of the year 2012. How do we know, it will happen? Thestudy of fossil records has shown that, it happens roughly after 11.000years. It�s only a short time away and then we can all start afresh.That is why I want you to become enlightened by 2012. If you areenlight-ened, with all your samskaras gone, we can begin a new yuga,which can be called Sathya Yuga or the Golden Age. Man will enter intoa new state of al-tered consciousness. <br />
<br />
As I told you already,the earth�s resonance is increasing which means the earth�s heart isundergoing a transformation. The earth has got a physical body, likeyou have a body. It has got a consciousness as well. Now as theresonance is increasing the earths heart functioning very differentlyfrom before. Now, your heart and the earth�s heart are connected. Theearth�s heart can be influ-enced by your heart and vice versa. That iswhy, it is essential that your heart-beat synchronises with the earth�sresonance. This means your heart must flower. Your heart will flowerwhen you discover love in your relationships. <br />
<br />
If you havediscover love, you must stop judging your parents, spouses, etc.,internally. Nobody can be judged as the whole universe directlyinfluences all events, even the behaviour of the people. <br />
<br />
So learn to experience life. Life has to be experienced, be it pain or pleasure.</p><strong><font size="5">'</font></strong><br /><br />어머니 품처럼 인간을 감싸주는 신비한 주파수<br />
<br />
과학은 때로 우리가 모르는 것을 밝혀 우리를 놀라게 할 때가 있다. 슈만 공명이라는 것이 바로 그것이다. 지구의 대기권 상층부에는 이온층이 형성되어 있다. 이온층은 라디오나 TV의 공중파 전파를 반사시키는 역할을 한다. 그런데 이보다 더 중요한 것은 이온층과 지구 표면 사이의 공간이 일종의 공명통 역할을 한다는 점이다. 대기권에서는 천둥 번개가 1초당 200번씩 전기와 소리 에너지를 방사하는데, 그 결과 평균 7Hz~10Hz 사이의 주파수대의 공명이 유지된다고 한다. 이 공명현상을 ‘슈만공명’ 또는 ‘가이아의 뇌파’라고 부른다.<br />
<br />
놀라운 것은 이러한 슈만공명의 주파수가 인간의 뇌파의 평균 주파수와 정확히 일치한다는 사실이다. 물론 평소에는 슈만공명의 소리를 거의 의식하지 못한다. 활동할 때의 뇌파가 슈만공명보다 높은 베타파(14~50Hz) 상태에 있기 때문이다. 그러나 가만히 쉬거나 명상을 할 때 우리는 슈만공명과 같은 알파파(8~14Hz) 상태에 있게 된다. 이때 우리는 더할 수 없는 안락함과 편안함을 느낀다. 만일&nbsp; 슈만공명의 주파수대가 지금보다 조금만 더 높든가 낮든가 하면 우리는 편안하게 쉴 수가 없을 것이다. 또 다른 소음환경에 놓이게 될 것이기 때문이다.<br />
<br />
슈만공명의 주파수가 조금만 변해도 그런데 만일 슈만공명의 주파수대가 지금보다 크게 달랐다면 어떻게 되었을까? 아마 우리의 청각체계는 크게 달라졌을 것이다. 또 거기에 맞춰 우리의 뇌도 변했을 것이다. 왜냐하면 우리는 지구 공명통의 공명에 맞추어 진화할 수밖에 없기 때문이다. 동물이나 식물들도 지금과는 다른 모습을 보였을 것이다. 소리의 주파수대가 바뀐다는 것은 이처럼 우리의 존재방식을 수정해야 할 만큼 중대한 사건이다. 태양의 방사선 에너지가 지구 전도체에 영향을 미쳐 형성된 이온층이 결과적으로 우리 생명의 가장 편안한 휴식과 명상의 토대를 형성하고 있는 셈이다.<br />
&nbsp;<br />
북미 인디언들은 아이들에게 어머니 대지의 박동소리를 들으라고 가르친다. 이것은 매우 상징적인 표현이다. 지구 땅 덩어리 자체에서는 아무 소리도 나지 않기 때문이다. 그렇다면 인디언들이 어머니 대지의 심장박동 소리라고 말하는 소리는 정확히 슈만공명이라고 할 수 있다. 왜냐하면 슈만공명이야말로 어머니의 품처럼 늘 우리의 심신을 편하게 감싸고 있기 때문이다. 인디언들이 일찍부터 어머니 대지를 신성시했던 것도 이런 과학적 사실은 몰라도 지구의 대기권이 형성하고 있는 특별한 소리 에너지가 우리의 존재 근거임을 알았기 때문일 것이다.<br />
&nbsp;<br />
더욱 놀라운 것은 우리의 숨결이다. 우리는 들이쉬고 내쉬는 사이에 잠깐씩 숨을 멈추는데 숨을 멈출 때의 주파수가 슈만공명의 주파수대와 정확히 일치한다. 이래저래 우리는 이 지구를 떠나서는 살 수가 없는 것이다. 마치 아이가 어머니의 품을 떠나서 살 수가 없듯이.&nbsp; <br />
<br/><br/>tag : <a href="/tag/지구" rel="tag">지구</a>,&nbsp;<a href="/tag/인간" rel="tag">인간</a>			 ]]> 
		</description>
		<category>지구</category>
		<category>인간</category>

		<comments>http://dewr.egloos.com/5124243#comments</comments>
		<pubDate>Sat, 26 Sep 2009 02:16:42 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 잠과 꿈의 명상 ]]> </title>
		<link>http://dewr.egloos.com/5116870</link>
		<guid>http://dewr.egloos.com/5116870</guid>
		<description>
			<![CDATA[ 
  엄마일 도우면서 따라다니면서 여가 시간이 많이 나는데 책을 읽거나 차안에서 요가니드라를 하거나 낮잠을 잡니다···.<br />
요새는 이년 전 쯤에 구입한 잠과꿈의명상(TIBETAN YOGA OF DREAM AND SLEEP)을 다시 읽기 시작했다. 전엔 복잡해보이고 어려웠는데 관련지식이 많이 쌓인 상태에서 다시 보니까 재미있다. ^-^d<br />
<br />
독후감 : Dreams = Realities of life - Limitations<br />
			 ]]> 
		</description>
		<category>듀르말씀</category>

		<comments>http://dewr.egloos.com/5116870#comments</comments>
		<pubDate>Fri, 18 Sep 2009 13:39:48 GMT</pubDate>
		<dc:creator>Dewr</dc:creator>
	</item>
</channel>
</rss>
