힘껏 차라

TFYQA

Archive for the ‘Tidbits’ Category

Deki wiki is down

without comments

‘Your wiki is down’ 이란 메시지 표시된다면 ‘/etc/init.d/dekihost restart’으로 리스타트 해줄 것.

이거 찾으려다 발견한 Deki Wiki 무료 호스팅 서비스 : MindTouch Wik.is: Free Deki Wiki Hosting ( 그런데 정작 등록은 12월부터 가능하다네, 쩝 )

Powered by ScribeFire.

Written by tzara

November 29, 2007 at 9:34 am

Posted in Tidbits

Windows Installer CleanUp Utility

without comments

Visual Studio 2008 설치 시 이전 버전 uninstall 과 관련한 에러 해결해야 하는 경우 사용해보세요.

우선 Steps to Uninstall VS 2008 Beta2 before installing the VS 2008 Final Release – ScottGu’s Blog 을 참고해서 처리하고 그래도 해결 안되면 …

Windows Installer CleanUp Utility : http://support.microsoft.com/kb/290301

Powered by ScribeFire.

Written by tzara

November 28, 2007 at 11:28 am

Posted in Tidbits

Greg the Architect, SOA 비디오

without comments

IBM 제공하는 SOA 소개용 만화 ([IBM SOA 만화책] 새로운 비즈니스 언어 SOA 시리즈)도 있었지만 그것보다 훨씬 흥미로운 서비스를 발견했다.
TIBCO 에서 제공하는 재미난 비디오, Greg the Architect 시리즈. 시리즈 순서대로 볼 수 있는 목록을 찾기 힘든게 단점이지만 ( 물론 더 큰 단점은 영어란 점 ㅎ ) IBM 거 보다는 확실히 재밌다.

Greg the Architect : Episodes

Written by tzara

July 16, 2007 at 2:55 pm

Posted in Tidbits

tracks

without comments

요즘 들어 블로그들에서 GTD (Getting Things Done)에 관한 얘기가 종종 언급되는 것을 볼 수 있는데 이와 맥을 같이 하는 웹어플리케이션으로 특히 루비 매니어들에게 인기있는 tracks 를 윈도우에 쉽게 설치하는 방법이 있어 소개합니다.

우선 ruby 는 별도로 설치하셔야 되고 그다음 Jim Strupp 이란 친구가 uniform server 에 패키징한 tracks 소스를 Tracks4Win 에서 다운로드 받아 압축 풀고 사용하시면 됩니다. ( 별도로 손가는 일은 이 곳에서 mysql.rb 파일을 다운로드해서 ‘ruby 설치디렉토리\lib\ruby\1.8′ 밑에 넣어주는 겁니다 ).
자세한 설치 설명은 위 주소에 있는 install 관련 문서에 잘 나와있어요.

참고 : GTD 관련해서 읽어볼만한 글들

Written by tzara

December 5, 2006 at 4:22 pm

Posted in Tidbits

[Memo]How to Run a Meeting Like Google

without comments

Written by tzara

November 22, 2006 at 4:41 pm

Posted in Tidbits

Memo

without comments

Written by tzara

November 1, 2006 at 7:27 pm

Posted in Tidbits

VBA 정규식 2탄

without comments

VBA 에서 정규식 쓰는 법 알아낸 김에 응용해서 한 건 또 해봤다.

서울 Seoul
인천 Incheon
전남 Jeollanam-do

강남구 Gangnam-gu
강동구 Gangdong-gu

과 같은 주소 정보를 가지고 아래와 같이 한글 주소명을 영문 주소명으로 치환하는 매크로

서울 강남구 도곡동 543 Seoul Gangnam-gu Dogok-dong 543

딴 부분은 짤 때 별 문제 없었는데 단어별 분리하기 위한 패턴 때문에 땀 좀 뺐다.
“\w+” 를 사용할 경우 영문은 잘 되는데 한글 단어는 전혀 먹지 않아서 씨름 좀 하다가 “\W[^ ]+” 로 해결하기는 했는데 그리 깔끔한 해결책은 아닌듯 싶다(java 였다면 그냥 StringTokenizer 사용했을텐데 VB 사용 안해본지 오래 되어 그냥 정규식을 이용해봤다)

그럭 의도한대로 돌긴 하는데 성능은 영 아니다. 좀 더 재미난 해법도 있을듯 한데 나중에 한 번 새로 짜면서 고민해보도록 하자

Sub getEngAddr()
    Dim c As Variant
    Dim d As Variant

    Dim i As Integer
    Dim lc As Variant
    Dim lc1 As Variant

    Dim kor_addr As String
    Dim eng_addr As String

    i = 0
    lc = Range("A1").End(xlDown).Address
    lc1 = Worksheets("Addr").Range("A1").End(xlDown).Address

    Dim re As New RegExp, m As Match

    For Each c In Range("B2:" & lc)
        kor_addr = c.Value

        re.Pattern = "W[^ ]+"
        re.Global = True

        For Each m In re.Execute(kor_addr)
            For Each d In Worksheets("Addr").Range("A1:" & lc1)
                If (Trim(m.Value) = d.Value) Then
                    eng_addr = eng_addr & " " & d.Cells(1, 2)
                    i = i + 1
                Exit For
                End If
            Next d

            If (i = 0) Then
            eng_addr = eng_addr & " " & m.Value
            End If
            i = 0
        Next

        c.Cells(1, 3) = Trim(eng_addr)
        eng_addr = ""
    Next c

End Sub

Written by tzara

October 27, 2006 at 8:25 am

Posted in Tidbits

VBA 에서의 정규식 사용법

without comments

프로그래밍 할 줄 모르는 현업 사용자와 같이 작업하다보니 가끔 Excel 의 macro를 작성해주는 경우가 종종 생기고 있다.

텍스트 중 일부 문자를 제거하는 기능이 필요해서 간단하게 짜고 보니 substitute 함수를 중첩해서 사용한 사용자나 replace 함수를
반복해서 쓴 내 방식이나 실상 똑같은거고 정규식을 활용하면 훨씬 깔끔하겠다 싶어 VBA 에서의 정규식 사용법을 찾아보았다.

VBA 에서 정규식을 사용하려면 우선 정규식 지원 컴포넌트를 추가해주어야 하는데 VBA 에디터 창의 Tools > Reference ( ‘도구 > 참조’) 에서 ‘Microsoft VBScript Regular Expressioins 5.5′ 를 선택해주어야 한다. (자세한 내용은 ‘Introduction to Regular Expressions in Visual Basic‘ 을 참고)

아래는 정규식 지원 설정 후 짠 간단한 샘플 소스로 정규식 이용한 함수는 “Using regular expressions to remove characters from a cell” 에서 가져온 것이다.

Function RemoveMatch(LookIn, PatternStr, Optional ReplaceWith = "")
    Dim re As Object

    Set re = CreateObject("VBScript.RegExp")
    With re
        .Pattern = PatternStr
        .Global = True
    End With

    RemoveMatch = re.Replace(LookIn, ReplaceWith)
    Set re = Nothing
End Function

Sub RemoveChar()
    Dim c As Variant
    Dim mc As String
    Dim lc As Variant

    lc = Range("A1").End(xlDown).Address
    mc = Application.InputBox("제거할 문자 전부 입력!")
    mc = "[" & mc & "]"

    For Each c In Range("A2:" & lc)
        c.Cells(1, 2) = RemoveMatch(c, mc)
    Next c
End Sub

Written by tzara

October 26, 2006 at 10:35 am

Posted in Tidbits

APM 최신 버전 설치 메모

without comments

임시로 게시판 쓸 일 있어 APM 을 간만에 급히 설치해보았다. 작업하면서 애먹은 것 몇가지 메모

  • Apache 2.2.*
  • PHP : 5.2
  • MySQL : 5.0 Community Server
  • OS : Win XP

처음 PHP 5.1.6 버전 설치했는데 php5apache2.dll 을 제대로 로딩하지 못했다. 구글해보니 이런 경우 PHP 5.2대 사용해보라는 글있어 다시 내려받았다. 그 문서에서 권고한대로 php5apache2.dll 대신 php5apache2_2.dll 을 잡아주었더니 잘 된다. ( 이 dll 로딩 문제는 꼭 이렇게 해서 해결되었다고 하긴 힘들다. 중간에 이것저것 건드렸는데 그 중 하나가 진짜 이유일지도 … )

httpd.conf 에 다음 내용 추가

LoadModule php5_module “c:/usr/php/php5apache2_2.dll”
PHPIniDir C:/usr/php
AddType application/x-httpd-php .php5 .php .html .htm .inc .phtml

이전에는 window\system 디렉토리에 php.ini 파일 넣어주었었는데 ‘PHPIniDir …’ 옵션이란 걸로 그거 지정해줄 수 있다는 거 이번에야 알았다 ^^;

php.ini 파일에서 다음 내용 편집

extension_dir = “C:\usr\php\ext\”

여기서 디렉토리 구분자를 Unix 식으로 해줘야만 한다는 얘기도 있던데 꼭 그렇지는 않더라. 기타 각각의 옵션 스위치 On, Off 하는 것은 구글하면 수없이 뜨니까 따라하도록 하고 … ( 내 경우는 http://a51.neostrada.pl/#php 을 보고 따라했음 )

extension=php_mysql.dll 을 풀어주니까 로딩 시 에러가 났다. 내 경우에는 php 설치 디렉토리에 있는 “libmysql.dll” 파일을 window 시스템 디렉토리에 복사해 넣어주고 apache 재시동해주니 정상 작동. APM 최신 버전 설치 끝.

Written by tzara

October 25, 2006 at 11:30 am

Posted in Tidbits

VIM의 패턴 매칭 블럭 호출

without comments

안쓰면 자꾸 잊어먹게 되는 vim 의 정규식 사용법. 오늘도 또 헤맸다 ㅜㅜ.

‘1234-ABCDEF’ 과 같은 문장들을 ‘ABCDEF-1234′과 같은 식으로 바꾸려면

:%s/\([0-9]\{4\}\)-\([A-Z]*\)/\2-\1/g

과 같이 하면 된다.
허구헌날 vim 에서의 패턴 매칭 블럭 호출을 \1, \2 식으로 써야할 걸 &1, &2 식으로 해놓고는 허우적된다.

p.s : 좀 더 정확히 표현하자면 \1, \2 는 검색된 문자열이 저장되는 Buffer 의 번호로 이 버퍼는 1 ~ 9까지 제공된다.

Written by tzara

October 19, 2006 at 6:49 pm

Posted in Tidbits