TEUS.me

반응형

최신글 리스트 커버

이미지 크기를 최대한 줄여주는 iPress 3.00 업데이트

온라인에서 이미지의 크기를 줄여주는 많은 사이트들이 있다. TinyPNG가 가장 잘 알려져있는데, 최근에는 여기서 JPEG도 지원하도록 기능이 추가되었다. 그런데, 이런 사이트를 통해 이미지를 압축하려면 내가 가진 이미지를 업로드해야 한다는 근본적인 문제가 있다. 왜 내 개인 이미지를 온라인에 올려줘야 되지? 그리고, 그 사이트들이 내 이미지를 다른 목적으로 사용하지 않는다는 보장이 있나? 사실, 이 사이트들이..
자작 프로그램
2022.10.03

최대 절전 모드가 동작하지 않을 때 프로그래밍 적 해결책 (프로그램 포함)

이전 글에서 간략하게만 적었는데 바이오스의 버그 등으로 인해 윈도우의 최대 절전 모드가 동작하지 않는 경우가 있다. 이런 경우에 단순하게 명령창의 명령만으로 절전 모드에 진입시키는 것이 아예 불가능하다. shutdown.exe 이건 rundll.exe powrprof.dll 이건 무엇 하나 기대대로 동작하지 않는다. powrprof.dll을 활용해서 적절한 인자를 추가하여 최대 절전 모드 대신 절전 모드로 진입시키려 해도 제대로 되지 않는다...
잡담
2022.09.24

ASRock B550M Steel Legend 메인 보드 버그 이슈...

메인보드로 ASRock의 B550M Steel Legend를 사용하고 있다. 이 보드는 USB 포트에 역전류 방지 회로가 장착되어 있어 언제나 안정적으로 사용할 수 있다. 그런데, 어느 날부터 절전모드가 정상적으로 동작하지 않는 상황이 벌어지고 있었다. 해외 포럼들에서도 이 문제는 많은 이슈가 되어서 여러가지 글들이 많이 올라오고 있었고, 기본적인 해결책도 나와있었다. 시스템 설정에서 최대 절전 모드를 끄는 것. 이렇게 하면 윈..
잡담
2022.09.24

자신보다 크거나 같은 최소의 2의 제곱수는?

주어진 수보다 크거나 같은 최소의 2의 제곱수를 찾아야 될 경우가 있다. 대표적으로 FFT를 기반으로 하는 신호처리의 준비단계. 적절한 개수를 지정해놓고 DFT를 할 수도 있지만, 역시 미친듯한 속도를 내려면 2의 제곱수가 짱짱맨이다. 사실, 요즘 컴퓨팅 환경에서는 이를 위한 가장 빠른 방법[...] 따윈 알아볼 의미가 크게는 없다. x86/x64 환경이라면 어셈블리 단위에서 LZCNT(Count Leading Zeros) 명령을 지원하기 때문..
알고리즘
2022.09.18

Notepad2-mod 4.22.07 r4358 한국어화 버전 공개

오류를 수정하고 다양한 성능 개선이 반영된 버전을 공개한다. 아래 링크에서 다운받을 수 있으며, 언제나 그렇듯 x86/x64/avx2 버전이 함께 들어있다. password: teus.me ▲ 히스토리 2022.7.24: 4.22.07 r4298 공개 - CSS 속성 목록을 April 2022 내용으로 업데이트 (관련 링크) - PowerShell lexer 업데이트 및 API 목록을 7.2로 업데이트 (관련 링크) - WebAssembly 키워드 업데이트 (관련 링크) - PHP의 API 목록을 8.2로..
Notepad2
2022.09.18

디카 사진 정리 도구 FPO(Family Photo Organizer) v7.36 업데이트

이제 DSLR 이외의 수많은 장비들이 카메라의 자리를 대신하고 있다. 이러다보니, 여행을 가서 찍은 사진을 모아보면 의외로 정리가 쉽지 않다. 온라인/모바일 환경에선 정렬을 Exif 촬영일자 순으로 하는 경우가 많지만, PC에선 파일명 순인 경우가 일반적이다. 그러다보니 촬영시간 순서는 알기 힘들고 카메라 기종순으로 파일을 보게 되는 경우가 대부분이다. FPO는 HEIF/JPEG의 Exif 정보 중 촬영일자 정보를 읽어 파일명을..
자작 프로그램
2022.09.18

CMap vs std::map

C++의 자료 구조 중에 map이라는 것이 있다. key와 value를 한 쌍으로 저장하며, key의 중복을 허용하지 않고 정렬하여 저장하는 자료구조이다. 아는 사람은 다 아는 내용이니 map에 대한 설명은 여기까지만 하고... MFC에서는 이러한 경우를 처리하기 위해 CMap이라는 클래스를 만들어두었다. 또한 STL에서는 map과 unordered_map을 구현하여 유사한 기능을 수행하게 해두었다. 여기서 Windows 환경에서 어느 쪽의 구현이 더 빠..
알고리즘
2022.09.13

자막에 NEL(U+0085), NBSP(U+00A0)이 적용되면...

유니코드에서는 한글은 물론이고, 다양한 언어의 다양한 기능을 폭넓게 제공하고 있다. 그리고, 언제나 그렇듯 종종 과유불급 상황이 벌어지곤 한다. 한글과 같은 비영어권 문자는 물론이고, 심지어 영어권 문자 영역에서도 이런 현상을 볼 수 있다. 유니코드에서 U+0085는 NEL(Next Line)으로 정의되어 있다. 이게 뭐냐면... EBCDIC 코드에서 기원한 New Line으로... 그냥 CR/LF와 비슷한 것이다... 그리고, U+00A0은 NBSP(No-..
미디어
2022.09.10

자소 분리된 한글 파일명 수정(+URLDecode) 프로그램 공개

유니코드에서 한글 테이블을 만들 때 많은 분들이 각고의 노력을 기울였던 결과 넓은 한글 코드 영역을 사용하고 있다. 심지어 여기엔 고어도 포함되어 있고, 일반적인 코드 외에 초성, 중성, 종성이 분리된 자소 역시 별도로 코드를 할당받았다. 그런데, 이게 약간 과유불급이 되어버린 면이 있다. 우리가 흔히 사용하는 한글(가, 각, 간... 힢, 힣) 외에 자소 분리 코드도 정식으로 사용할 수 있게 된 것이다. 특히, iOS에서..
자작 프로그램
2022.09.03

구라제거기[키보드 보안 프로그램 삭제] 6.34 업데이트

PC 뱅킹의 주적은 PC 뱅킹 프로그램이다. PC 뱅킹을 하고 나면 컴퓨터가 미친 듯이 느려지기 때문이다. 키보드 보안 프로그램을 필두로 컴퓨터를 느려지게 만드는 악의 무리들이 너무나 많다. 전통의 명가(?) nProte**부터 컴퓨터 발목잡기의 거목 안* 온라인 시큐**, 그 외에도 수많은 잡 구라들… KISA에서 I사 보안모듈 프로그램에 문제가 있다고 발표할 정도로 완성도가 엉망인 경우도 있다. 보안 취약점을 갖고있는 보..
구라제거기
2022.09.03

Visual C++에서 Epoch time 계산하기

정리 차원에서 간단히 기록... 유닉스/리눅스와 윈도우는 근본적으로 다른 점들이 꽤 있다. 그 중 하나가 시간을 계산하는 기준. 유닉스/리눅스의 Epoch time은 1970년 1월 1일 00:00:00GMT부터 누적된 시간(초)이다. 윈도우 환경에서도 이 Epoch time을 읽는 함수가 있다. 밀리초 이하의 단위를 사용하지 않고, 단순하게 초 단위에서만 계산하려면 아래와 같이 사용하면 된다. #include #include #ifdef _MSC_VER #include #eli..
알고리즘
2022.08.28

SRT 자막 관리 도우미 SRTier v5.06 공개

SRT 자막 관리 도우미 SRTier를 5.06으로 업데이트했다. 사소하지만 다양한 UI의 오류들을 제거하고, 인터페이스를 튜닝했다. 시간값을 인식하는 기능을 좀 더 똑똑하게 수정했고, 화면비율이 100%가 아닐 때에도 어색하지 않도록 조정했다. 더불어, SAMI 자막 중 같은 괴랄한 자막도 인식하도록 수정했다. 이 프로그램의 주요 기능은 아래와 같다. - SRT 교정: SRT 파일을 읽은 뒤 오류를 수정한 뒤 다시 기록하거나 시간을 조..
자작 프로그램
2022.08.24

이제는 안드로메다로 가버리는 SAMI 자막...

SRT나 ASS 등 다양한 자막 포맷이 있지만, 여전히 우리나라에서 널리 사용되는 자막 포맷은 SAMI이다. 태생적인 기능의 한계나 형식의 불명확함 등의 약점에도 불구하고, 워낙에 널리 사용되어 온 포맷이다. SAMI Example Media {cheap44.wav} Metrics {time:ms;} Spec {MSFT:1.0;} The Speaker SAMI 0000 text Le narrateur Texte SAMI 0000 SAMI 1000 text Texte SAMI 1000 SAMI 2000 text Texte SAMI 2000 SAMI 3000 text Tex..
미디어
2022.08.23

결국 코로나에 감염... ㅠㅠ

day 0 여차저차한 사정으로 지방 모처에 일자리를 구해 일을 하고 있었다. 그런데, 막상 내려와보니 사람들도 내 맘 같지 않거니와 문화생활이 거의 이루어지지 못했다. 그러다 마침 집 가까운 곳에 하고 싶던 분야의 개발자 자리가 있어 이직하기로 했다. 기존 직장에서의 업무를 서둘러 정리하고 인계서를 정성들여 작성한 뒤 부랴부랴 주말에 올라왔는데... 올라오는 길에 몸이 이상하게 피곤했다. 막판에 너무 무리해서 그런..
가족 및 신변 일반
2022.08.23

Visual C++ 환경에서 정규식 선택 삽질기

정규식은 문자열을 비교 처리할 때 사용되는 강력한 표현법이다. Perl, JavaScript 등의 언어에서는 대단히 높은 활용도를 보여주고 있다. C++ 언어의 경우 정규식을 처음부터 지원한 건 아니었고, C++11부터 지원하기 시작했다. 표준에 포함되긴 했지만, C++ 언어의 문법 구조상 정규식을 사용하는데는 불편함이 있다. 예컨데, 아래의 정규식은 메일 주소를 확인하기 위한 꽤 흔한 식이다. var regExp = /^[0-9a-zA-Z]([-_\.]?[..
잡담
2022.08.12
반응형