연관글 : 2010/02/22 - Trac GanttCalendarPlugin 0.2 한글화 / 커스터마이징 / i18n (종료)

관련링크 : http://sourceforge.jp/projects/shibuya-trac/wiki/plugins%2FReportIncludePlugin (Browse SVN)
            http://d.hatena.ne.jp/Hirohiro/20090725/1248540577

참고링크 : http://dev.ariel-networks.com/column/tech/tracreport-tips

-- 2010.8.12 추가 : Trac 0.12 용 스크린 샷 으로 변경 함.

사용자 삽입 이미지


wiki 페이지에 Trac 리포트 내용을 그래프로 표시(Include)해주는 플러그인으로

UI 없이 wiki 매크로로 작동하기 때문에 별도 한글화 작업은 필요하지 않습니다.

그러나, 일본어 원본 소스를 설치하게 되면 리포트에서 데이터를 읽어올 때
영어 필드명은 문제가 없으나 한글 필드명이 존재하면 유니코드 에러가 발생합니다.

한글 관련 유니코드 에러를 패치하고 에러 메시지와 소스 주석 한글화 및 커스터마이징을 하였습니다.

-- 2010.8.12 추가 : Trac 0.12 에서 작동하도록 패치 함. (Trac 0.12 용 예외처리 루틴 추가 함)
-- 2011.2.6 추가 : 권한 설정 기능 추가 및 설치 스크립트 정보 수정 함.

reportincludeplugin-r549-ko-customize.11.02.06.zip



리포트 인클루드 플러그인을 다운로드 받아 압축을 해제한 후 아래와 같은 방법으로 설치합니다.
python setup.py install


사용 방법은 원 저작권자의 설명이 담긴 일본어 wiki 페이지를 구글 번역으로 읽어도 충분히 이해가 됩니다.

관련링크 : 리포트 인클루드 wiki 매크로 사용 방법 (구글 번역)


Trac 리포트 예제는 아래 링크의 SQL 을 참고하세요. (사용하는 DB와 Trac 버전에 맞게 SQL 을 수정해야 함)

참고링크 : Trac 리포트 sqlite SQL 예제 (구글 번역)


Trac 0.12 환경에서는 위 설명 내용 중 SQL 쿼리문 (timestamp 관련 필드를 조작하는 date, strftime 함수 내용)을
아래와 같은 방법으로 수정해야 합니다.
date(time, 'unixepoch')   ->   date(time/1000000, 'unixepoch')
strftime('%Y/%m', time, 'unixepoch')   ->   strftime('%Y/%m', time/1000000, 'unixepoch')


리포트 인클루드 플러그인에서 표시해주는 그래프를 보려면 기본적으로 REPORT_VIEW 권한을 필요로 합니다.
(리포트를 읽어 그래프로 대신 표시해 주기 때문에 WIKI_VIEW 권한이 아니라 REPORT_VIEW 권한을 요구합니다.)

REPORT_VIEW 권한 없이 해당 wiki 페이지를 열게되면 에러 메시지 없이 아무 것도 표시 되지 않습니다.

-- 2011.2.6 추가 : 권한 설정 기능 관련 내용 추가 함.

기존에 TICKET_VIEW 나 WIKI_VIEW 정도로 권한을 낮춰주려면, 소스 파일을 직접 수정해야 하였으나
trac.ini 파일 수정만으로 쉽게 권한을 변경할 수 있도록 기능을 추가하였습니다.

사용자 삽입 이미지



- 주의사항

  . 리포트 인클루드 플러그인 한국어 커스터마이즈 버전은 Trac 0.11 용 으로 개발 되었습니다.
    (Trac 0.12 를 지원하지 않아 개인적으로 패치하였기에, Trac 0.12 에서 항상 정상 작동함을 보장하지 않습니다.)

  . 해당 플러그인을 제대로 활용하기 위해서는 wiki 포맷팅wiki 매크로에 대한 이해와 함께
    Trac 리포트의 구조, Trac 시스템 테이블 구조에 대한 이해 및 SQL 쿼리문 작성 능력을 필요로합니다.

    비 개발자가 사용하기에는 비교적 난이도가 높은 편 입니다.


- 제한사항

  . 해당 플러그인은 Shibuya.trac project 에서 개발 중인 결과물로 부터 파생되었습니다. - New BSD License

    버그 패치와 기능 개선 차원으로 시작한 개발인지라 프로젝트를 별도로 Fork 할 의사는 없습니다.
    원 저작권자의 노고에 감사 드리며 원 저작권자의 라이선스인 New BSD License 를 그대로 따릅니다.

    (New BSD License: 사용자의 자유로운 사용/수정/배포 보장, 수정된 소스코드 공개 의무 없음, GPL-compatible)

  . 본 소프트웨어 사용 여부는 사용자 본인의 책임 하에 판단해 주십시오.
    이 플러그인에 의해 발생하는 어떠한 장해나 손해에 대해 작성자는 책임을 지지 않습니다.

자료를 퍼가실 때는 반드시 출처를 표시해 주세요

Posted by Genie.
,
연관글 : 2012/05/21 - Trac ExcelDownloadPlugin 리뷰
         2011/07/15 - Trac 0.13 개발 중요 이슈

관련링크 : http://trac.edgewall.org/ticket/6656

참고링크 : http://stackoverflow.com/questions/155097/microsoft-excel-mangles-diacritics-in-csv-files


-- 2011.6.13 추가 : utf-8 (with BOM) 인코딩 관련 내용 추가 및 Trac 0.12.2 용 수정 파일 첨부 함.

Trac 0.11 / 0.12 에서는 csv 파일을 기본적으로 utf-8 (w/o BOM) 인코딩으로 생성하는데
MS 엑셀은 csv 파일을 더블클릭해서 읽어올 때는 utf-8 (w/o BOM) 인코딩을 제대로 인식하지 못한다.

Method 1 : cp949 인코딩 - deprecated

Method 2 : utf-8 (with BOM) 인코딩

관련링크 : http://trac.edgewall.org/changeset/10226

trunk 에 반영된 소스를 참고하여 Trac 0.11 / 0.12 의 소스를 수정해야 한다.
(Trac 0.13 최신 개발 버전에는 이미 반영되어 있음)

자료를 퍼가실 때는 반드시 출처를 표시해 주세요

Posted by Genie.
,
무료 용량이나 Private 조건이 종종 바뀌기 때문에 조건 변경을 신경써야 함.


- assembla : Disk : 2 GB / Users : 무제한 / Public Projects : 무제한

  . 초기에 사용법 익히는데 적응 기간이 필요하나 메뉴 구성이 편리함

  . 프로젝트 관리툴 제공

  . Trac import / export 기능 제공

  . svn import / export 기능 제공

  . 프로젝트 생성 시 svn, trac 접근 권한이 private 으로 처리 되어
    Custom Permissions 에서 view 접근 권한 이상으로 명시적으로 변경해줘야 public 으로 변경 됨

  . Stream (Trac 의 Timeline 개념) 에서 한글로 된 svn 커밋 메시지가 가끔 깨져보이나
    svn, trac 에서는 제대로 보임


- XP-Dev : Disk : 200 MB / Users : 무제한 / Private Projects : 2 / Public Projects : 무제한

  . 사용법이 직관적이라 적응 기간 필요없이 바로 사용 가능함

  . 광고 삽입

  . 프로젝트 관리툴 제공

  . Trac 에서 Syntax Highlighting 안됨 (Pygments 없음)

  . svn  import / export 기능 제공


- ProjectLocker : Disk : 200 MB / Users : 2  / Private Projects : 무제한

  . 초기에 사용법 익히는데 적응 기간이 필요하고 메뉴 구성이 불편함

  . 광고 삽입

  . 기본 제공되는 Trac Plugin 많음

  . svn  import 기능 제공 (export 기능은 유료 서비스에서 제공)

  . 이메일 주소가 로그인 아이디 임

Posted by Genie.
,
  -- 2015.5.12 추가 : 소스 저장소를 xp-dev.com 으로 이전하였습니다.

     이 페이지의 내용은 간트캘린더 / 데코레이터 플러그인 한국어 커스터마이즈 버전의 구 버전에 대한 설명입니다.
     이 페이지는 개발 히스토리 관리 차원으로 유지되는 오래된 문서입니다.

     구 버전은 예상치 못한 버그가 존재할 수 있으므로, 2차 커스터마이징한 최신 버전 사용을 강력히 권장합니다.

  -- 2011.7. 3 추가 : 데코레이터 플러그인 한국어 커스터마이즈 버전을 2차 커스터마이징하여 릴리즈 하였습니다.
  -- 2011.6.15 추가 : 간트캘린더 플러그인 한국어 커스터마이즈 버전을 2차 커스터마이징하여 릴리즈 하였습니다.

연관글 : 2014/03/22 - Trac GanttCalendarPlugin 개발을 마무리 지으며
         2012/05/21 - Trac ExcelDownloadPlugin 리뷰
         2011/07/01 - Trac DecoratorPlugin 2차 커스터마이징 (종료)
         2011/06/15 - Trac GanttCalendarPlugin 2차 커스터마이징 (종료)
         2011/01/13 - 모니터링 중 인 Trac 플러그인
         2010/12/11 - Trac CompleteUserPlugin 한글화 / 커스터마이징
         2010/05/13 - Trac ReportIncludePlugin  한글화 / 커스터마이징

작업공간 : 간트캘린더 플러그인 한국어 커스터마이즈 버전 (Repository) (Changelog)
            데코레이터 플러그인 한국어 커스터마이즈 버전 (Repository) (Changelog)

관련링크 : http://sourceforge.jp/projects/shibuya-trac (Repository) (Browse SVN) (wiki) (ticket) (구글 groups)

참고링크 : http://tidus.ultimania.org/diary
            http://recurser.com/articles/2008/11/26/gantt-calendar-plugin-for-trac (Repository)
            http://trac-hacks.org/wiki/GanttCalendarPlugin

- 감사 글 (2010.11.29)
- 소개 글
Shibuya.trac project 에서 개발한 GanttCalendar Plugin을 영어로 번역한 영문판을 사용해오다,
기능상의 부족함을 느껴 리파지토리에서 최신 리비전(r592) 을 확인해 보니 기능과 안전성이 많이 좋아졌습니다.

최신 리비전이 일본 로케일에서만 정상 작동하는 문제가 있어
( 일본을 제외한 타 로케일에서는 엉뚱한 데이터를 조회하는 등 로케일 관련 문제가 있음 )

한글화 하면서 로케일에 상관없이 작동하도록 해당 문제를 수정하였고
UI 개선 및 버그 수정과 시작 요일 변경 기능, 확대/축소 기능, 필드값 검증 기능 추가 등 커스터마이징 하였습니다.

branch 에 있는 Gantt with query 의 소스 코드가  거의 동일해서 같이 한글화와 커스터마이징 하였습니다.
( Gantt with query 는  Ganttcalendar 와 100% 동일한 소스 코드에 Custom Query 기능만 추가된 버전입니다 ) 그리고, 리포트에 아이콘을 표시해 주는 Decorator Plugin도 같이 한글화 하였습니다.
한글화 하면서 DateField Plugin을 대체할 목적으로 DateField 플러그인 소스 코드 일부를 머지하여
DateField 플러그인 사용 시 불편했던 날짜 포맷 처리을 자동 인식하도록 커스터마이징 하였습니다.

  -- 2010.4.16 추가 : 스크린 샷 변경 함
  -- 2010.8.12 추가 : Trac 0.12 용 스크린 샷 추가 함

사용자 삽입 이미지


- GanttCalendar 0.2 r592 에서 개선된 내용

  . IE 6 호환성 개선
  . 휴일 표시 기능
  . Complete by Close 기능 : 티켓을 close할 때 미리 정의한 Resolution에 한해 complete를 100%로 자동 변경함
  . 기타 버그 패치

간트캘린더 0.2 히스토리.txt / 리비전 그래프.png


- 한글화 하면서 커스터마이징 한 내용 (Changelog) (diff)

  . 로케일 관련 오류 패치
  . UI 관련 버그 패치 / UI 커스터마이징
  . 간트 차트 확대, 축소 기능 추가
  . 간트 차트, 캘린더 단축키 추가
  . 한 주의 시작 요일 변경 기능 추가
  . 날짜 포맷 변경 기능 추가
  . Complete by Close 새로 작성
  . 필드값 검증(Ticket Validator) 기능 추가
  . 타임 트래킹 플러그인 연동 기능 추가
  . 필터 작동 버그 및 기타 버그 패치

  -- 2010.2.22 ~ 2010.8.12 추가 (diff)
    (changeset r2  r3  r4  r5  r6  r7  r8  r9  r10  r11  r12  r13  r14  r15  r16  r17  r18  r19  r20  r21  r22  r23  r24  r25
                     r26  r27  r28  r29  r30  r31  r32  r33  r34  r35)   -- 2010.3.18 추가 (changeset r3)
  -- 2010.4.15 추가 (changeset r4)
  -- 2010.4.16 추가 (changeset r5)
  -- 2010.4.18 추가 (changeset r6)
  -- 2010.5.5 추가 (changeset r7  r8  r9  r10  r11  r12  r13  r14  r15  r16  r17  r18) (diff)
  -- 2010.5.10 추가 (changeset r19  r20  r21  r22) (diff)   -- 2010.7.14 추가 (changeset r23  r24  r25) (diff)   -- 2010.7.30 추가 (changeset r26  r27) (diff) 간트캘린더 플러그인 한글화/커스터마이징 종료
  -- 2010.8.5 추가 (changeset r28) 이메일 주소 관련 보안 패치
  -- 2010.8.12 추가 (changeset r29  r30  r31  r32  r33  r34  r35) (diff) Trac 0.12 호환 개선 패치
_M#]  -- 2010.7.20 추가 (changeset r2) 데코레이터 플러그인 한국어 커스터마이즈 버전 릴리즈   -- 2010.8.1 추가 (changeset r3  r4  r5  r6  r7  r8  r9) (diff) 데코레이터 플러그인 한글화/커스터마이징 종료
  -- 2010.11.21 추가 (changeset r36 r37 r38 r39 r40 r41 r42 r43 r44 r45 r46) (diff) 간트캘린더 플러그인 서비스 팩
  -- 2010.11.29 추가 (changeset r47 r48 r49 r50 r51 r52 r53 r54 r55 r56 r57 r58 r59 r60 r61 r62) (diff) 국제화 pilot

- 설치방법


간트캘린더 플러그인 한국어 커스터마이즈 버전을 다운로드 받아 압축을 해제해서 다음과 같은 방법으로 설치합니다.
python setup.py install


- DecoratorPlugin 설치

  -- 2010.12.4 추가 :
    데코레이터 플러그인 한국어 커스터마이즈 버전은 간트캘린더 플러그인 한국어 커스터마이즈 버전에
    최적화하도록
개발하였기에, 간트캘린더 플러그인 국제화 버전과는 호환되지 않습니다.



티켓 생성 시 날짜 입력의 편의와 리포트에 아이콘을 표시하기 위해 Decorator 플러그인을 설치합니다.
(Trac 0.12 에서는 아이콘 표시 기능 작동 안 함.)

데코레이터 플러그인 한국어 커스터마이즈 버전을 다운로드 받아 압축을 해제해서 다음과 같은 방법으로 설치합니다.
python setup.py install

DateField 플러그인 과 Decorator 플러그인은 같이 사용할 수 없습니다.

- trac.ini 설정
  -- 2010.5.5 추가 : 시작 요일 변경 관련 내용 추가 및 한글 용어 변경 함.
  -- 2010.5.10 추가 : 줌 기본 모드, 티켓 제목 표시 옵션 관련 내용 추가 함.
  -- 2010.7.14 추가 : 필드값 검증 (Ticket Validator) 관련 내용 추가 함.
  -- 2010.7.20 추가 : 데코레이터 플러그인 한국어 커스터마이즈 버전 관련 내용 추가 함.
  -- 2010.11.21 추가 : ticket_summary -> show_ticket_summary, zoom_mode -> default_zoom_mode 로 변경 함.
[components]
ganttcalendar.admin.holidayadminpanel = enabled
ganttcalendar.complete_by_close.completeticketobserver = enabled
ganttcalendar.ticketcalendar.ticketcalendarplugin = enabled
ganttcalendar.ticketgantt.ticketganttchartplugin = enabled
ganttcalendar.ticketvalidator.ticketvalidator = enabled
decorator.decorator.decoratormodule = enabled

[ganttcalendar]
complete_conditions = fixed, invalid
default_zoom_mode = 3
first_day = 0
show_ticket_summary = false

[ticket-custom]
complete = select
complete.label = 진척율 (%)
complete.options = |0|10|20|30|40|50|60|70|80|90|100
complete.order = 3
due_assign = text
due_assign.label = 시작일
due_assign.order = 1
due_close = text
due_close.label = 완료기한
due_close.order = 2



- Apache 데몬 restart
   변경 사항을 반영하기 위해 Apache 데몬이나 tracd 데몬을 restart 합니다.

- 휴일 테이블 생성
   마지막으로 TRAC_ADMIN 권한을 가진 계정으로 로그인 하여 휴일 테이블을 생성하면
   2010년 ~ 2015년 우리나라 휴일이 자동 등록되고 화면에 표시가 됩니다.

   휴일 테이블 생성 이후에 휴일을 추가/삭제할 수 있으며, 등록된 휴일은 간트 차트와 캘린더에 표시가 됩니다.

01

   휴일 표시 기능이 필요 없거나, 휴일 테이블 생성 시 에러가 발생하는데 문제를 해결할 수 없다면
   휴일 테이블 생성 안해도 간트 차트와 캘린더 사용에는 문제가 없습니다. ( 대신에 휴일 표시 안됨 )

- 프린터 설정
   정상적인 프린터 출력을 위해서 웹 브라우저 설정을 변경해야 합니다.
01


- 커스터마이징 한 기능 설명 (고급 사용자 용)
  -- 2010.7.20 추가 : 데코레이터 플러그인 한국어 커스터마이즈 버전 관련 내용 추가 함.
- 개발자 용 코드 리뷰

- 한글화 용 리소스
  -- 2010.5.5 추가 : Trac 0.12 용 한글 용어 반영 및 용어 정리함.

- po 파일 패치 (Trac 0.12 사용자 선택사항)

- 주의사항

   . 간트캘린더 / 데코레이터 플러그인 한국어 커스터마이즈 버전은 Trac 0.11 용 으로 개발 되었습니다.
     (Trac 0.12 를 지원하지 않아 개인적으로 패치하였기에, Trac 0.12 에서 항상 정상 작동함을 보장하지 않습니다.)

   . Gantt with Query 플러그인은 Ganttcalendar 플러그인에 필터 기능이 추가되어
     Ganttcalendar 플러그인에 비해 환경적인 영향을 더 받는 것으로 리포트 되었습니다.
     Gantt with Query 플러그인 실행에 문제가 있는 환경이라면 Ganttcalendar 플러그인을 사용하길 권장합니다.      tracd 데몬으로 사용하는 경우에도 Trac 날짜 관련 API 함수가 오작동하는 특정 로케일이 있음.
  -- 2010.3.18 추가 : 로케일 변경 없이 해당 문제를 해결하기 위해 예외처리 루틴 추가함_M#]  . Trac 과 해당 플러그인은 단순 일정관리 용도로 사용하는 어플리케이션이 아닙니다.
    기본적으로 데이터베이스 개념에 대한 이해와 SQL 작성 능력을 보유하고 있어야 제대로 활용할 수 있습니다.


- 제한사항

  . 해당 플러그인은 Shibuya.trac project 에서 개발 중인 결과물로 부터 파생되었습니다. - New BSD License

    단순 한글화 작업으로 시작하였지만, 커스터마이징 한 코드가 늘어나면서 원본 소스와 많이 달라져
    불가피하게 리파지토리를 별도 관리하게 되었습니다.

    그러나, 버그 패치와 기능 개선 차원으로 시작한 개발인지라 프로젝트를 별도로 Fork 할 의사는 없습니다.
    원 저작권자의 노고에 감사 드리며 원 저작권자의 라이선스인 New BSD License 를 그대로 따릅니다.

    (New BSD License: 사용자의 자유로운 사용/수정/배포 보장, 수정된 소스코드 공개 의무 없음, GPL-compatible)

  . 본 소프트웨어 사용 여부는 사용자 본인의 책임 하에 판단해 주십시오.
    이 플러그인에 의해 발생하는 어떠한 장해나 손해에 대해 작성자는 책임을 지지 않습니다.

자료를 퍼가실 때는 반드시 출처를 표시해 주세요

Posted by Genie.
,