프로그래밍153 라자루스(Lazarus) 파일명 대소문자 혼용 사용하기 라자루스에서 파일을 저장할 때 파일명이 자동으로 소문자로 변경되는 경우, Tools > Options > Environment > Naming 설정을 확인합니다. 만약, Auto rename file lowercase 가 선택되어있다면 자동으로 파일명을 소문자로 변경합니다. 대소문자 혼용으로 사용하실 경우라면 No automatic renaming 을 선택하면 됩니다. 별거 아니지만 은근 신경 쓰이던 부분인데... 찾아보니 역시 관련 옵션이 존재하는군요.^^ 2014. 3. 21. Lazarus Indy 10 설치하기... - 리눅스 델파이를 사용하든 라자루스를 사용하든 애증의 인디 컴포넌트를 피할 수는 없습니다. 어떤식으로든 다시 만나게 되어있죠. 물론, 델파이라면 기본적으로 인디가 설치되어있지만, 라자루스의 경우라면 직접 소스를 받아 설치를 해주어야합니다. 먼저, 소스를 다운로드합니다.(http://www.indyproject.org/Sockets/fpc/index.EN.aspx) 헌데 자세히 보면 zip 으로 압축되어 올라와있는 소스의 경우, 2007년 11월 13일 이후로 전혀 업데이트가 되어있지 않은 상황입니다. 멋모르고 이 녀석을 다운로드하여 설치하면 쏟아지는 에러를 경험할 수 있게 됩니다. 그럼 어떻게 해야할까요? 별 수 없습니다. 그날 그날 올라오는 인디 소스를 체크아웃하여 쓸 수 밖에... ㅡㅡㅋ 불안하시다고요? 하지.. 2014. 3. 19. Java IntelliJ IDEA 13 안드로이드 개발 환경 구축 - 1 - IntelliJ 안드로이드 개발 환경 구축을 위하여 다음의 웹 문서들을 참고하였습니다. Prerequisites for Android Development Create a New Android Project Import an Existing Project Explore the Project Structure Build and Runt the Application Edit the UI Layout Using the Designer Edit the UI Layout Through the Text Editor Creating Unit Tests Make the Application Interactive Package the Application for the App Store 먼저 자바 SDK 를 다운로드한 .. 2014. 2. 27. IntelliJ IDEA 13 설치 & JBuilder 키맵 적용 오랫동안 프로그래밍을 해오다보면, 개발 언어 그 자체보다는 개발 환경에 종속되는 경우가 많습니다. 저 같은 경우 1~2년에 한번 꼴로 자바 프로젝트를 하곤하는데... 걸림돌은 항상 자바 언어 자체 보다는 IDE 가 주는 낯설음이었습니다. 하여 볼랜드 IDE 의 노예인 저는 자바 프로젝트가 있을 경우 JBuilder 를 사용하였습니다. 하지만, 그 마저도 사실상 단종된 상황인지라 최근엔 대안으로 IntelliJ 를 사용합니다.(이유는 아래에...) 애초 웹 개발 용도로 자바를 사용하는 편은 아닌지라, 무료버전인 Community Edition 만으로도 저는 충분히 하고 싶은 것을 다 할 수 있습니다. ^^ http://www.jetbrains.com/idea/download/ 설치 과정에 특별한 부분은 없.. 2014. 2. 26. sublime text 2, FTP 연동하기....(SFTP 설정) SFTP 패키지를 설치하기 위하여 Package Control 을 사용한다. 참고: 2014/02/10 - [프로그래밍/언어 - 기타] - sublime text 2, 기본 환경 설정(한글, 패키지 관리). 에디터에서 Ctrl+Shift+P 를 누른 후, Install Package 를 선택한다. SFTP 를 검색하고 설치를 진행한다. 아래는 에디터의 하단 상태바에서 설치 진행 중인 상태를 나타낸다. 잠시 후, 설치가 완료되면 메시지 파일을 불러온다. 에디터를 재실행한 후에, SFTP 가 정상적으로 설치되었는지 확인한다. 사용방법은, 연동할 폴더에서 마우스 우클릭으로 팝업 메뉴를 띄운 후 "Map to Remote..." 를 실행한다. 이어 자동으로 생성된 sftp-config.json 파일의 내용을 사.. 2014. 2. 18. 크롬 앱(Chrome Apps) 개발 - 1 - 크롬은 웹앱 외에도 네이티브랑 유사한 형태의 크롬 앱을 지원한다. 물론, 개발 언어는 웹앱과 동일하게 HTML5, JavaScript, CSS 를 사용하지만, 크롬 API 와 기존 웹사이트에서 접근할 수 없는 서비스들을 사용할 수 있다. 크롬 앱으로 개발할 수 있는 것들로 다음과 같은 것이 있다.(정말? @@) Shells (VMWare, Citrix, SSH, RDP or VNC clients)Music/video streamingPhoto/video/music editing 크롬 앱은 설치 후, 로컬에서 실행되므로 네트워크에 의존적이지 않으며 오프라인 상태에서도 동작한다. 이 즈음 하여, 구글 홈페이지(https://developer.chrome.com/apps/first_app.html)에 나와있는.. 2014. 2. 12. sublime text 2, 기본 환경 설정(한글, 패키지 관리) 먼저, 한글입력이 가능하도록 한다. Preferences > Settings - User 메뉴를 선택한다. 폰트를 지정해준다. 윈도우7 의 대표 폰트인 맑은고딕으로 변경해보았는데, 파일을 저장함과 동시에 IDE 의 폰트가 즉시 변경된다.(현재 시스템에 설치되어있는 폰트 중 사용하고 싶은 폰트를 지정하면 된다.) 다음으로 다양한 패키지를 설치 및 제거, 관리가 가능한 Package Control 을 추가한다. View > Show Console 메뉴를 선택한다. 상기 이미지에서 박스로 지정한 영역에 다음의 코드를 복사하여 붙여넣는다. import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); o.. 2014. 2. 10. sublime text 2, node.js 빌드 추가하기 sublime text 2 에서 작성한 node.js 소스를 IDE에서 실행하는 방법은 다음과 같다. 먼저, Tools > Build System > New Build System... 메뉴를 선택한다. {"cmd": ["node", "$file"],"selector": "source.js"} 위와 같이 코드를 작성한 후, node.sublime-build 로 파일을 저장한다. 실행할 node.js 파일을 열고 Tools>Build System>node 를 선택한 다음... Ctrl+B 를 눌러 실행한다. 중지는 Ctrl+Break 이다. 2014. 2. 10. ArcGIS 측지기준계 공부삼아 한국 ESRI 에서 배포한 "세계측지계와 ArcGIS를 이용한 좌표변환" 문서의 내용을 요약 & 발췌해보았습니다. 측지기준계: 지구상에서의 위치를 경도와 위도로써 나타내기 위한 기준체계 및 지구의 형상을 나타내는 타원체 한국측지계: 천문관측에 의해 결정된 경도/위도값 및 원방위각을 기준으로 하고 Bessel 타원체를 적용한 측지기준계로 1910년대 이래 동경측지계로 불리었으나 1985년 표준명칭으로 한국측지계로 명명됨. 세계측지계: 세계에서 공통으로 이용할 수 있는 측지기준계. 기준과 적용타원체의 구분에 따라 ITRF계, WGS계, PZ계 등이 있다. 우리나라는 2001년 측량법 개정을 통해 ITRF계 세계측지계를 근간으로 한 세계측지계를 도입하였다. ITRF 세계측지계: 지구의 질량중심을 3차.. 2013. 7. 11. 갤럭시S2 젤리빈 펌웨어 업그레이드 수행기~ 간단요약1. KIES 를 미리 업데이트 할 것.2. 폰에 외장 메모리가 존재한다면 미리 제거하고 진행할 것. 3. S다이어리를 실행하거나 위젯을 등록하지 말 것.(무한 터치위즈 다운 발생함) 오랫동안 기다려왔던 갤럭시S2 를 젤리빈으로 업그레이드하였다. 먼저, KIES 를 통해서 젤리빈 업그레이드를 진행한다. 대충 내용을 보니 백업 -> 펌웨어 업그레이드 -> 복원 순인 것으로 보인다. 조금 시간이 걸리지만 백업이 진행된다. 하지만 이어지는 펌웨어 업그레이드 단계에서 바이너리 파일이 등록되지 않았다는 요상한 메시지와 함께 업그레이드 과정이 실패한다. 대충 찾아보니 KIES 를 최신 버전으로 업데이트하란다.(미리 경고를 날리던가.ㅡ,.ㅡ) 제길... 그래서 이번엔 KIES 업데이트를 시도~ 하지만, 업데이.. 2013. 2. 11. Turbo Vision #1 Turbo Vision 1.0 (아마도...)에 대한 개인적인 감상 or 기록입니다. 공부하길 원한다면 도움말을 살펴보거나, http://www.baskent.edu.tr/~tkaracay/etudio/ders/prg/pascal/PasHTM3/pas/pasles03.html 의 글을 참고하기 바랍니다. 터보 비전 객체의 계층도는 다음과 같다. 최고 조상님은 TObject 가 되시겠고, 모든 Visible 객체는 TView 를 상속받는다. 보통 TView 를 인스턴스화하여 사용하지는 않는다.(상속용) 멤버 변수와 메소드는 다음과 같다. 각각에 대한 상세 설명은 도움말을 참고하면 되겠고... 프로그램의 기준이 될 놈들은 TGroup 을 상속받은 것 중 TProgram, TApplication 이 되시겠다... 2012. 11. 12. Turbo Pascal 6.0 소스 컴파일 하기... 이래저래 구글링하다보면 TP 6.0 소스를 찾을 수 있다. 그 놈을 가지고 컴팔을 해보기로 결정~ 먼저 DOS 환경을 구축하고, Turbo Assembler 3.0 과 Turbo Pascal 5.5 를 준비하였다. 하지만, 컴파일 실패... 우습게도 돌아다니는 소스를 컴파일하려면 Turbo Assembler 3.0 과 Turbo Pascal 6.0 (으응?) 이 필요하였다. 또한, 빌드를 하는 과정에서 메모리 부족 오류가 뜰 수 있으니 CONFIG.SYS 에서... DOS = HIGH, UMB 상위메모리 처리를 해주고, 한글 관련 기능을 주석처리한다. rem DEVICE=C:\DOS\HBIOS.SYS AUTOEXEC.BAT 에서는 PATH 지정을 한다. 이때 Turbo Assembler 는 C:\TASM.. 2012. 10. 30. Turbo Pascal 6.0 README 파일 가끔 필요할 때가 있어 정리해둡니다. WELCOME TO TURBO PASCAL 6.0 --------------------------- This README file contains important, last minute information about Turbo Pascal 6.0. In addition to this file, there are several .DOC files in the \TP\DOC directory that you should browse. The HELPME!.DOC file answers many common Technical Support questions. The FIXES.DOC file provides corrections to the printed documen.. 2012. 10. 24. XE2 에서 Custom VCL Style 을 리소스로 포함하여 사용하기 다음은 직접 제작한 vsf 파일을 리소스로 포함하여 사용할 경우이다. 먼저, Project > Resources and Images.. 를 실행한다. Add... 버튼을 클릭하여 제작한 vsf 파일을 선택한 후, Resource type 을 VCLSTYLE 로 입력한다. Resource identifier 에는 리소스를 불러올때 사용할 이름을 지정한다. 프로젝트에 생성된 RC 파일을 추가한다. 끝으로, 프로젝트 소스에 리소스로부터 스타일을 불러오도록 아래의 코드를 CreateForm 이전에 추가한다. 이때 반드시 uses 에 Vcl.Themes 와 Vcl.Styles 를 추가하여야한다. TStyleManager.SetStyle(TStyleManager.LoadFromResource(HInstance, '.. 2012. 8. 9. FieldByName 사용팁 FieldByName 의 소스를 보면 다음과 같다. function TDataSet.FieldByName(const FieldName: string): TField; begin Result := FindField(FieldName); if Result = nil then DatabaseErrorFmt(SFieldNotFound, [FieldName], Self); end; 3행의 FindField 메소드의 소스는 다음과 같다. function TDataSet.FindField(const FieldName: string): TField; begin Result := FFields.FindField(FieldName); if (Result = nil) and ObjectView then Result := F.. 2012. 7. 25. 이전 1 ··· 5 6 7 8 9 10 11 다음