2021년 1월 31일 일요일

아이폰에서 070전화 차단하기

걸려오는 070 전화가 1백통이라면 제대로 된 전화는 한통 미만인듯 싶다. 대부분 광고 전화. 안올때는 안오다가 한번 오기 시작하면 반나절에 대여섯통씩 걸려온다. 일단 모든 070 전화는 받지 않고 있고 검색 후 고객센터라고 나오는 번호에 한해, 나에게 전화할 이유가 있는 곳으로 보이면 다시 전화를 건다. 예를 들면 쇼핑몰 상품 판매자가 품절이나 배송 지연등을 안내하기 위한 경우가 드물지만 가끔 있으니까. 사실 이런 경우가 있다하더라도 받지 않으면 업무용 휴대폰으로 전화든 문자든 다시 연락하기 때문에 070 전화를 받지 않아서 뭔가 손해를 보는 일이란건 없었다. 앞으로 070을 받기로 하자! 했을 때 절대 다수를 차지하는 스팸전화로 인한 불편함까지 생각하면 더욱 더.

아래는, 현재 사용중인 아이폰과 SKT향 알뜰폰에서 070 전화를 차단하는 방법을 이리저리 알아본 결과 가장 괜찮은 방법이다. (이통사에서 070국번 전체로부터의 수신콜을 차단해주는 부가서비스가 있다면 단연코 제일 좋은 방법이고...)

1. 후후 앱 ( https://apps.apple.com/kr/app/id1033450260 )을 설치한다.

2. 아이폰의 설정→ 전화→전화 차단 및 발신자 확인에서 "후후"와 "후후-070 pattern..."을 켜준다.

[아이폰의 설정→전화에서 설정]

3. 후후 앱에서 오른쪽 아래 더보기 → 차단관리 → 패턴차단 으로 간다. 미리 070 _____ XXXX 라고 써 있는데 중간에 차단할 국번 (방금 걸려온 스팸전화의 국번)을 입력하고 "패턴등록"버튼을 누른다.

[새로운 차단 패턴 등록]

4. 목록에 070-추가한 국번-XXXX이 새로 추가되고 앞으로 그 패턴의 번호로부터 걸려오는 전화는 차단된다.

[차단된 패턴들]


070으로 전화가 올때마다 국번을 추가해주면, 한번 스팸 전화벨이 울릴 때 마다 해당 국번에 속한 전화번호 1만개씩을 차단해나가는 것이다.

2021년 1월 28일 목요일

고구마 직화구이할 때는 반드시 찔러줘야...

[직화구이 냄비 속에서 폭발한 고구마]

두번째 고구마 폭발이다. 직화구이 중 고구마 폭발을 평생 두번 겪었는데 그게 다 이번 달에만 일어났다. 문제(?)의 발단은 백화점 식품매장에서 파는 호박고구마를 사오고 부터였다. 고구마 재배지역의 직거래장터에서 사왔던 고구마나 인터넷으로 구매한 고구마와 다르게 백화점 고구마는 아주 매끈하고 흠이 없었다.

고구마를 씻어서 직화구이냄비에 넣은 다음 약한 불로 각 10분씩 4면을 구워주면 딱 맞게 익는다. 익숙하기에 미리 젓가락으로 찔러보지 않고 그냥 40분을 그렇게 돌려야겠다 생각하고 굽는 도중, 30분쯤 지났을 때 퍽! 하는 소리와 함께 고구마가 폭발했다. 이걸 이번 달 초에 겪고나서 이후로는 꼭 고구마를 젓가락을 한번씩 찔러주는데, 이번에는 제대로 안 찔렀나보다. 쇠젓가락으로 눌리기만 하고 확실히 구멍을 내야하는데 미처 그걸 확인 안했다가 이 사달이 나고야 말았다.

냄비 재질이며 뚜껑이며 다 쇠로 되어 있고 고구마도 작은 크기여서 다행이 별 피해는 없었다. 뚜껑이 닫혀있을 때 터졌다는 것이 가장 큰 다행일테고.

이 고구마가 아직 대여섯개 더 남았는데 열기가 뿜어나갈 수 있도록 중간에 젓가락으로 구멍을 뚫거나 아예 처음부터 살짝 칼집을 한두개 내 줘야겠다.

2021년 1월 26일 화요일

자동차 에어컨 냄새 날 때 몇가지 대처방안

자동차라는게 참 가혹조건이다. 진동, 소음, 먼지, 배기가스, 바람소리, 속도, 눈비 등 셀수 없이 많은 외부 환경을 금속판과 유리, 플라스틱 등으로 막힌 공간에서 감당해야 하니 말이다. 이 조건에서 에어컨을 사용하는 것 역시 초기의 환경과 성능을 유지하기가 어렵다. 위에서 언급한 악조건에다가 공기흡입구로 들어오는 날벌레, 나뭇잎 부스러기, 꽃가루도 더해진다. 찬공기를 만들다보니 주위 습기들이 응축되고 거기에 들러붙은 불순물들이 오염되고 누적되다보면 쉰내부터 걸레빤 냄새까지 다양한 냄새가 나기 마련이다.


에어컨 냄새가 나기 시작하면 그 스트레스는 상당하다. 차에 누굴 태우기도 민망할 뿐더러 위생상으로도 찝찝한 노릇이다. 그동안 알아본, 겪어본 에어컨 냄새 방지,처리 방법과 의견을 좀 정리해본다. 에어컨 필터(캐빈필터) 교체는 너무나 당연한 것이고 방향제 비치(...)는 냄새의 근원을 해결하는 방식이 아니므로 제외한다.


1. 도착전 에어컨 끄고 송풍 모드로 10분 가량 가동
에어컨을 가동하다가 목적지 도착하기 10여분 전에 에어컨은 끄고 송풍 (바람) 모드만 10여분 유지함으로써 차량 내 습기를 말리는 원리라고 한다. 일리 있을거 같긴 한데 방금전까지 아주 차가운 상태로 있는 에어컨은 끈 직후에도 계속 수증기가 응결되는 중이라, 이때 바람을 10분간 쏘일 경우 현재 만들어진 물방울 + 어느 정도 계속 생성중인 물방울 때문에 효과적으로 수분 제거가 가능할 것 같지 않다. 어느 정도 실온과 비슷하게 온도가 올라간 후에 바람을 불어야 효과적으로 수분이 증발될 것이다. 이 도착전 에어컨 끄기의 단점은, 한여름 35도니 40도니 오르락 내리락 하는 때에 에어컨 끄고 10여분 가보면 내리기 전에 엉덩이와 등판이 땀으로 흥건해진다. 아울러 모든 경우에 "내리기 10분전"을 정확히 알 수 없기도 하다. 예를 들면 여행갔다가 오는 길 국도변에서 마음에 드는 식당이 저 쯤에 보이면 어떻게 하나. 운전할 때마다 에어컨을 도착10분전에 끄는걸, 까먹지 말고 실행해야 한다는 점 또한 이 방법의 어려움 중 하나다.


2. 외기 유입 모드로 두고 하차
이 방법도 상당히 괜찮다고 한다. 주차해있는 동안 자연스럽게 차량 내외부 공기가 통하면서 건조되는 방식. 단, 매번 하차할 때 마다 수동으로 외기유입으로 바꿔줘야하는 불편함이 있을듯 하다. 모든 차량이 외기유입 상태로 시동을 끄면 그대로 유지되는지도 궁금. 습도가 높은 날, 공기가 잘 통하지 않고 습한 지하주차장에서도 효과가 있을지 갸우뚱.


3. 대롱달린 스프레이 방식 에어컨 세정제
캔 방식의 에어컨 세정제에 대롱을 끼워 송풍구 안에 넣고 뿌리는 방식. 어디까지 약제가 전달되어 효과를 발휘할 지 모르겠다. 하수도가 막혔는데 세면대에 걸린 머리카락 긁어내는 격은 아닐까?

4. 훈증캔 방식
요 방법도 나쁘지 않다. 국내 모 제품은 물을 부은 통에 약제를 담그면 잠시 후 반응해서 연기인지 수증기인지 뿜어내는 방식이고 모 수입제품은 캔 윗부분을 딸깍 누르면 미세한 약제가 뿜어 나오는 방식. 제품 시공 후 향이라든가, 효과 유지기간 면에서 캔 제품이 나았다.


5. 에바크리너 시공
거품타입 세정제를 호스를 통해 에바포레이터 안으로 주입해서 꽉 채운 후 오염물질을 제거하는 방식. 오염물질은 차 하부 및 송풍구를 통해 구정물과 거품타입으로 일부 나온다. 예전 차 운행할 때 이 방식을 차 팔기 마지막 4~5년 가량 매해 이용했었다. 처음엔 효과가 좋았으나 사용햇수가 지나면서 부작용이 생겼다. 오염물질을 머금은 거품약제가 완전히 제거되지 못한채 진득하게 말라붙는 현상이 누적되다가 마침내 스위치나 내부 부품이 더 이상 움직이지 않는다. 에어컨 스위치가 눌리지 않고 바람 방향이 제대로 바뀌지 않았다. 차 팔던 해에는 에어컨 액츄에이터도 한번 고장나서 교체했다. (가동만 하면 무조건 최강풍으로만 동작). 공조기 내부를 채웠던 오염물질과 범벅된 거품이 어떻게 충분한 수준으로 배출되는지에 대한 확인이 필요하다. 관련하여 네이버블로그 폭주님의 글 참고. 에바크리너 부작용 및 유해성에 대한 생각 -폭주-


6. 살균램프 장착
에어컨 내부에 곰팡이를 죽이는 자외선 램프를 설치하는 방식. 효과는 잘 모르겠고 오존유해성과 특유의 냄새, 빛의 직진성으로 인한 사각지대 여부, 내부 플라스틱의 경화 문제 등에 대한 확신이 없다. 관련하여 읽어볼 클리앙 초보만쉐이님의 글. 오존 발생에 대한 정리.. 만약 이 방법이 반영구적이고 효과가 검증된 방식이라면 차량제조사에서 먼저 적용하지 않았을까 싶다.


7. 애프터블로우 장착
양산차에도 일부 적용되는 방식인데, 시동을 끈 후 수 분이 지나 냉기가 사라지면 일정 주기로 일정 시간동안 송풍기능을 동작시켜 에어컨 내부를 말리는 방식. 가정용 에어컨에도 내장되어 있는 기능이라 신뢰성 있음. 단점은 뿜어져 나온 습기가 주차중 차량 내부 습도를 높인다. 어느 정도 시간이 지나면 사라지지만 특히 비오는 날 30분 정도 주차했다가 다시 차에 탈 경우 안쪽 유리에 김이 상당히 서려있을 것이다.


8. 에어컨 분해 청소
이미 오염된 에어컨 내부를 들어내고 분해 안되는 곳은 내시경을 넣어서 확인하며 약제와 물로 청소하는 방법. 오염됐을 때는 이 방법뿐일듯 싶다. 다만 사용하는 약제의 안정성과 분해 조립시 잡소리 여부가 걱정.


차량 에어컨 냄새는 어찌보면 어느 정도는 당연한 현상일것 같다. 오염물질과 유기물이 어둡고 막힌 내부공간의 결로에 들러붙는게 반복되면 냄새 안나는게 이상한 일. 한번 냄새가 나기 시작하면 차에 타는게 고역일 정도로 괴로운 일이다. 약제를 뿌리는 것은 가습기살균제 사건에서 보았듯 약제의 안전성이 담보되어야 할 것이다. 사용 후 충분한 환기도 필수일것이고.

아무튼, 최종 선택은 애프터블로우 장착 후 여름철 2회 정도 캔 방식의 에어컨청소약제를 사용중이며 에어컨 필터 교체는 2~3개월마다하고 있다.

맥 파인더에서 최근 항목에 아무것도 안나올 때

거의 이용하지 않는 기능이라 몰랐는데, 파인더의 최근항목에 아무 항목도 나오지 않는 것을 오늘 발견했다. 스팟라이트 인덱스를 재구성해보라 해서 해보았으나 마찬가지.

[아무 것도 없는 최근 항목]

파인더를 재실행해보니 해결되었다는 글이 있어 따라했더니 다행이도 해결되었다.

메뉴바→ 강제종료 → 파인더 재실행

2021년 1월 24일 일요일

블랙박스+보조배터리 녹화시간 실테스트 결과

2채널 블랙박스와 20A짜리 블랙박스 전용 보조배터리를 사용하면 얼마간 주차녹화가 가능할까. 우선 변수들이 뭐가 있을까 생각해보자.

  • 사용 연차에 따른 보조배터리의 충,방전 성능 저하
  • 블랙박스별 주차시 소비전력 (기기특성, 채널갯수)
  • 주차시 모션 감지녹화인지, 충격감지 녹화인지, 별도의 조건인지 (레이더 등)
  • 모션감지,충격감지의 민감도 → 민감도가 높을수록 잦은 데이타 쓰기
  • 주차 시 외기 온도 → 혹한기 배터리 성능 저하

보조배터리는 인산철 배터리고 4년이 조금 넘었다. 20A.
블랙박스는 2채널(QHD+QHD)이고 모션감지 주차녹화시 소비전력은 평균 3.7Wh다. (고객센터 확인)
이론적으로 약 65시간 정도 녹화할 수 있다.

전에도 두번 테스트를 했으나 한번은 만충을 위한 주행거리가 부족했고 또 한번은 테스트가 끝나기 전에 (=완전 방전되기 전에) 차를 운행하게 되서 완벽한 테스트를 하지 못했다. 다만 측정했던 그래프 상으로 약 75~79시간 정도 될 것으로 추정이 가능했다.

다행이 이번에는 완전 충전이 충분한 사전 주행거리 및 완전 방전까지 차를 쓰지 않아서 보조배터리의 성능을 최대로 사용한 테스트였다.

테스트 결과 71시간 (2일 + 23시간) 녹화가 가능했다. 이 시간동안 675회의 모션이 감지되었고 1350개의 전방+후방 녹화파일이 생성되었다. 22기가바이트.

인산철배터리는 1500회 충방전에도 80%까지 최초 성능을 유지한다고 했으니 장착한지 1600일 가까이 되었기에 최대 20% 성능이 빠졌다고 치면 3.7Wh를 소모하는 블박에 물렸을 때 50시간 정도 녹화가 가능하다고 계산할 수 있다.

블박의 소비전력이 더 낮았던 것인지, 보조배터리의 성능이 설계상보다 잘 유지되고 있는 것인지 원인을 짚어낼 수는 없었다.

참고로, 보조배터리가 완전 방전되기 꺼지기 3시간 전 (68시간 경과시점) 전압은 12.1V이었으며 완전 방전 1시간 전 (70시간 경과시점)전압은 11.3V였다.

2021년 1월 23일 토요일

고양이 화장실 모래 교체주기 2.5년간의 기록

다섯살 반쯤 된 고양이 녀석의 화장실은 벤토나이트 모래를 사용한다. 2018년부터는 냉장고에 표를 붙여두고 화장실 모래 교체할때마다 날짜를 적어두었다. 화장실 모래라는 것이 대략의 교체 주기는 있으나 '바꿔줘야겠다' 하는 순간은 모래의 상태에 따라 정해진다. 당연히 고양이의 품종이나 나이, 물먹고 화장실 가는 습관에 따라서도 달라진다. 모래의 특성에 따라서도 달라질 것이다.

모래는 교체 후 하루하루가 지나면서 점점 무거워진다. 고양이의 응가와 쉬야는 물론 공기중의 수분을 흡수하여 원래 모래의 바스락거림은 사라진다. 소변을 신속하게 흡수하지 못해서 단단하게 뭉쳐지지 못하고 부서지는 경우가 생긴다. 또한 새 모래는 소변이 모래 표면에 닿는 순간 흡수해서 모래층 바로 아래 동그란 모양으로 뭉치지만 오래 사용하게 되면 소변이 모래층 바닥까지 내려간다. 화장실 바닥에 닿아 기둥모양으로 굳어지게 되면 모래를 교체할 때가 된 것이다.

2018년 7월1일부터 2021년 1월 23일까지 2년 6개월 모래 교체 기록은 아래와 같다.

  • 소말리 + 코숏 믹스. 5살. 암컷
  • 2년 6개월간 교체횟수 45회
  • 평균 교체 날짜수 23.5일 (약 3주에 1회)
  • 최장 교체주기 = 30일. 최단 = 12일
  • 최빈도 교체 주기: 18~23일
  • 교체방법 : 교체후 10일~15일사이 1회 모래 보충 (전체 양의 약 20~30%) 후 전체 모래갈이. 화장실 물청소 후 새 모래 깔아주기.
  • 사용량 : 8리터(6.2kg)1봉지 + 1/3 봉지 = 약 10리터(8kg) 정도 사용
[고양이 모래 교체 날짜 별, 모래 사용일수 차트. 가로축 날짜, 세로축 사용날짜]
[얼마의 기간에 가장 많이 교체하는지를 보여주는 히스토그램. 가로축 사용날짜, 세로축 발생빈도]

2021년 1월 21일 목요일

Pixelmator 사용할때 늘 불편했던 점

이미지 편집 프로그램인 pixelmator와 pixelmator pro를 사용할 때, 이미지를 불러오면 항상 자체 포맷인 pxm과 pxd로 변환시켰다. 새 이미지라면 자체 포맷으로 편집하는 것이 당연할 수 있는데 기존 png나 jpg 등을 불러와도 강제로 변환시키니, 단순 작업인 이미지 리사이즈나 화살표를 넣는다거나 테두리를 넣는 작업을 해도 "저장"이 아닌 "내보내기"를 해야 했다. 편집한 이미지 역시 pxm과 pxd상태로 남아있으니 프로그램을 그냥 종료할 수도 없고 이 pxm과 pxd를 따로 저장할 것인지, 삭제할 것인지를 한 번 더 눌러줘야했다.

불러오는 이미지 파일의 형식을 원본 형식을 유지하도록 하는 옵션이 있었는데, Pixelmator는 Preference → General → Open document in Pixelmator file format 의 체크를 끄는 것이다.

[Pixelmator에서 고유포맷 변환 끄기]

Pixelmator Pro에서는 환경설정 → 일반 → JPEG, PNG 및 TIFF 이미지 가져오기 의 체크를 끄면 된다.

[Pixelmator Pro에서 고유포맷 변환 끄기]

이렇게 설정 한 후 만약 픽셀메이터 포맷을 사용하고 싶으면 jpg나 png를 불러온 후 Duplicate로 사본을 생성해서 저장하던지 다른이름으로 저장 메뉴를 사용한다.

픽셀메이터는 2012년부터, 픽셀메이터 프로는 2019년부터 사용했는데 이걸 이제야 알다니. 심지어 이번주부터는 Affinity Photo로 갈아탔건만...

워드프레스 테마에서 강제 대문자 변환 제거하기

일부 워드프레스 테마에서는 블로그 내 영문자를 강제로 대문자로 바꾼다. 오늘 테스트하고 있는 Amphibious 테마가 그중 하나인데, "@hof 블로그"를 "@HOF블로그"로 바꾸고 제목에 들어간 소문자도 모두 대문자로 바꾼다. 주인장이 지정했던, 입력했던 영어 대소문자대로 되돌리기 위해서는 테마의 스타일 시트를 수정하면 되는데, 워드프레스 관리자메뉴에서 Appearance → Theme Editor에서 Stypesheet (style.css) 를 편집한다.

소스보기나 크롬의 개발자도구등을 이용해서 영향을 끼치는 속성을 찾아내어 교체를 해도 되고, 모든 강제 대문자 변환을 복구하기 위해서는 아래 방법을 따른다. 위 파일에서

text-transform: uppercase;

text-transform: uppercase; 라고 쓰여진 부분을 찾아 앞과 뒤를 각각 /* 와 */ 로 막는다.

/* text-transform: uppercase; */

편집기 아래 나오는 "Update File"이라는 파란 버튼을 눌러 저장시켜주면 완료.

2021년 1월 19일 화요일

블로그(워드프레스) 첨부이미지에 테두리 넣기

보통 사진같으면 상관없는데 캡춰이미지 특히 웹이나 앱의 캡춰이미지를 본문에 첨부할 때는, 본문 텍스트와 캡춰이미지를 구분하기 위해 테두리를 넣는다. 테두리가 없다면 지금 읽는 문장이 글쓴이의 의견인지 다른 이가 쓴 글의 캡춰이미지인지 헷갈릴 수 있다. 이 줄까지가 캡춰이미지고 다음 줄이 블로그 주인장의 설명인지 유심히 살펴보거나 마우스로 긁어서 흔들어 보아야 한다. 이건 마치 딸기를 먹으라면서 진짜 딸기와 음식모형 딸기를 한 바구니에 섞어 내오는 것과 같다. 블로그 주인장의 목소리와 첨부한 참고자료를 구분하자.

블로그에 작성한 글과 첨부한 캡춰 문서 이미지를 구별하기 위해서 이미지에 테두리를 넣는데는 몇가지 방법이 있다.

1. 이미지 편집 프로그램 사용

이미지 편집 프로그램을 이용해서 실제 이미지에 테두리를 두른 수정된 이미지를 만들어 사용하는 것이다. 윈도우의 포토웍스나 맥의 Th-MakerX를 사용하면 이미지 리사이즈와 테두리 생성을 빠르게 처리할 수 있다. 물론 포토샵을 이용해도 되고 픽셀메이터라면 스트로크 기능, Affinity Photo라면 Outline기능을 이용하면 된다.

2. Lunapic 등 테두리를 만들어 주는 웹 서비스를 이용할 수도 있다. (via Techwiser)

3. 블로그 편집기에서 html 모드로 전환하여 수정하기

편집기의 Rich Editor 모드를 html 모드로 바꾸어 이미지 태그에 스타일을 지정할 수 있다. 워드프레스라면 편집기 오른쪽 위 세로점 세개를 눌러 Code Editor 모드로 들어가면 된다. 이미지 태그에 style="border: 1px solid #00000;" 등을 추가하는 것이다.

<img src="https://img.hof.pe.kr/broken_band_connector.jpeg" alt="" class="wp-image-7273" style="border:1px solid #000000;" />

단, 이렇게 수정하고 다시 Visual Editor 모드로 돌아오면, 임의로 수정한 코드 때문에 워드프레스가 경고 메세지를 보낸다. 아래 캡춰이미지가 그 장면인데 여기서 "Attempt Block Recovery"를 누르면 수정한 내용이 사라진다.

[워드프레스의 Code Editor에서 img 태그 수정하면 나오는 메세지]

4. [워드프레스 한정] CSS에 테두리 속성을 지정하고, 편집기에서 속성 호출

워드프레스에서 Appearance → Customize → Additional CSS에 테두리 속성을 지정하고 이미지 첨부 후 이미지를 선택한 상태에서 편집기의 Block → Additional CSS class(es)에서 그 속성을 적어준다. CSS속성을 지정할 때 width: fit-content; 를 추가해야만 블럭 영역 전체가 아니라 블럭내 이미지 영역만큼만 테두리가 지정된다.

.border-image {
	border:1px solid #555555;
width: fit-content;
}

위와 같이 지정했다면 아래 캡춰처럼 호출해오면 이미지에 테두리가 씌워진다. 아래 이미지는 캡춰 후 이 방식으로 테두리를 추가했다.

width:fit-content는 IE를 제외한 대부분의 브라우저에서 지원한다. 참고로 IE의 점유율은 1% 내외. (국내, 세계)

2021년 1월 18일 월요일

Keyboard Maestro로 각 줄 맨 앞에 줄번호 넣기

Keyboard Maestro로 각 줄의 맨 앞에 1씩 증가하는 일련번호를 넣는 매크로.

원래 문장

사과
딸기

수박
오렌지

매크로 적용 후

1.사과
2.딸기
3.배
4.수박
5.오렌지

  1. 매크로 이름을 지정한다. (예: 줄번호 넣기)
  2. 트리커 핫키를 적당히 지정한다.(예: opt + cmd + L)
  3. Action목록에서 Variables → Prompt for User Input 선택
  4. Title: 시작줄번호 Prompt: 시작할 줄번호를 입력해주세요. Variables and Default Values에 LineNumber1 지정
  5. Action목록에서 Variables → Prompt for User Input에서 마지막 줄 번호를 지정한다.
  6. Title: 마지막 줄번호 Prompt: 줄번호를 몇번까지 넣을까요?Variables and Default Values에 LineNumberEnd10 지정
  7. Interface Control → Type a Keystroke 에서 cmd + Left Arrow
  8. Text → Insert Text by Typing에 %LineNumber%와 점(.)
  9. Interface Control → Type a Keystroke 에서 cmd + Down Arrow
  10. Variables → Set Variable to Calculation 선택. Set variable에 LineNumber, to에 LineNumber + 1
  11. 위 7번부터 10번까지를 선택한 후 톱니바퀴 아이콘을 눌러 Engroup→Repeat 선택.
  12. Excute there actions에 LineNumberEnd 입력.
[Keyboard Maestro에서 줄번호 추가]

2021년 1월 17일 일요일

애플워치 호환 밴드 커넥터 파손주의

며칠전 저녁에 집에서 워치를 푸르는 순간 워치가 바닥에 떨어지길래 살펴보니 호환 스포츠루프의 커넥터가 부러졌다. 스포츠루프가 두가지 장점이 있는데, 첫번째는 워치와 결합부가 플라스틱이라 금속제 커넥터를 사용하는 호환 밴드의 고질적 문제인 워치쪽 결합부 긁힘현상이 없다. 두번째는, 루프 구조로 일단 손목에 끼우면 완전히 체결하기 전이라도 떨어뜨릴 염려가 없다. 우레탄으로 된 스포츠밴드 사용시에는 손목위에 올려두고 워치의 윗쪽에 연결된 밴드와 아래쪽에 연결된 밴드를 구부려서 맞댄 후 잠금부위를 눌러야 하는데 잠그기 전까지는 떨어뜨리지 않도록 주의를 해야 했다.

이런 이유로 번들 스포츠밴드는 곱게 모셔두고 호환 스포츠루프를 사용했던 것인데 커넥터가 부러질 줄은 몰랐다. 아마 재질의 피로누적으로 미세 크랙이 생기고 조금씩 누적되다가 루프의 벨크로 부분을 제끼고 워치를 푸는 순간 한계점에 이른 것으로 보인다. 그나마 방바닥에서 떨어졌으니 다행.

구매내역을 보니 얼추 1년 3개월 정도 사용했다. 정품 스포츠루프라면 그렇지 않겠지만 호환 루프 등 플라스틱 커넥터를 사용하는 밴드는 수시로 커넥터의 크랙 여부를 상태를 살피고 수개월(6개월?)정도 사용한 다음 교체하는게 안전하겠다.

2021년 1월 16일 토요일

Keyboard Maestro로 라인 앞뒤에 특정 문자열 추가하기

텍스트에 특정 문자열을 앞뒤로 덧붙이는 작업을 하는 경우가 종종 있는데, 매크로를 지원하는 에디터가 마땅한게 없어서 범용적으로 쓸 수 있는 Keyboard Maestro를 알아보았다. 진입장벽이 다소 높은 프로그램이다.

아래와 같은 문자열을

샘플문자열1번째 줄
샘플문자열2번째 줄
샘플문자열3번째 줄
샘플문자열4번째 줄
샘플문자열5번째 줄
샘플문자열6번째 줄
샘플문자열7번째 줄

[원본 문자열]

아래와 같이 바꾸는 방법이다.

prefix-샘플문자열1번째 줄-suffix
prefix-샘플문자열2번째 줄-suffix
prefix-샘플문자열3번째 줄-suffix
prefix-샘플문자열4번째 줄-suffix
prefix-샘플문자열5번째 줄-suffix
prefix-샘플문자열6번째 줄-suffix
prefix-샘플문자열7번째 줄-suffix

[변환된 문자열]

먼저 Keyboard Maestro가 정상적으로 설치되어있고 시스템환경설정 → 보안 및 개인정보보호 → 손쉬운 사용에서도 설정이 끝났다고 가정한다.

첫번째는, 한줄에서 맨 처음으로 커서를 옮기고 prefix를 넣고 다시 맨 끝으로 커서를 옮긴 후 suffix를 넣고 아래줄로 한칸 내리는 매크로를 지정한다.

  • 맨 왼쪽 Group에 적당한 그룹 (예: 텍스트에디터용) 을 생성한다.
  • 다음 Macros 창에서 매크로를 하나 생성하고 이름을 적당하게 지정한다. (예: prefix suffix 넣기)
  • Triggerd by any of the following에서 This hot key를 선택하고 적당한 핫키를 지정한다. (opt + cmd + 1)
  • New Action을 선택하면 나오는 Action 목록에서 Interface Control → Type a Keystroke 를 선택한다.
  • 추가된 액션에서 Simulate keystroke 옆에 있는 입력창에서 x를 눌러 기본으로 들어가 있는 return을 삭제한 후 다시 한번 입력창을 클릭하여 키입력 대기상태로 만든다.
  • type 라고 써진 대기 상태에서, 한줄의 맨 앞으로 커서를 옮겨야 하니 CMD와 왼쪽 화살표를 누른다. 입력창에 ⌘Left Arrow 라고 입력된다.
  • 화면 하단에서 다시 + 를 누르고 New Action을 누른다.
  • Action category에서 Text를 누르고 Insert Text by Typing 을 누른다.
  • 추가된 액션의 입력창에 넣으려는 문자열을 넣는다. 지금 경우는 prefix. 여기까지 한 줄에서 맨 앞으로 커서를 옮기고 prefix라는 문자열을 추가한 상태가 되었다.
  • New Action → Interface Control → Type a Keystroke에서 이번엔 ⌘Right Arrow를 입력하여 줄의 맨 끝으로 커서를 옮긴다.
  • Action category→Text→Insert Text by Typing 을 누른후 입력할 문자열에 suffix 를 써 넣는다.
  • New Action → Interface Control → Type a Keystroke에서 Down Arrow로 커서를 한줄 내린다.

여기까지 지정한 매크로로 opt + cmd + 1 키를 누르면 한 줄의 맨 앞에 prefix 문자열을 넣고 맨 뒤에는 suffix 문자열을 넣고 커서를 한줄 아래칸으로 옮기는 것까지 가능하다.

[매크로 지정한 Keyboard Maestro 액션 화면]

추가적으로 작업할 라인 수를 입력하면 그 횟수만큼을 자동으로 진행되도록 할 수 있다.

아까 만들어둔 텍스트에디터용 그룹에 "반복횟수 입력 prefix-suffix" 정도로 새로운 매크로를 생성하자.

  • 핫키는 아까 핫키와 겹치지 않게 opt + cmd + 2 정도로 지정한다.
  • New Action을 누르고 Variables → Prompt for user input을 선택한다.
  • Title에 적당하게 제목을 넣는다. "횟수 입력"
  • Prompt에 설명을 넣는다. "매크로를 반복할 횟수를 입력해 주세요."
  • Variables and Default Values에서 +버튼을 누르고 변수명과 기본횟수를 지정한다. 한글 변수명도 잘 동작하니 "반복횟수"라고 쓰고 기본 횟수값은 적당히 넣는다. (예:5)
  • Buttons에는 버튼 이름을 적는데 OK와 Cancel을 그대로 두던가 확인,취소 정도로 적는다.
  • 이 상태에서 Keyboard Maestro 상단에 있는 [▶]Run 버튼을 누르면 횟수를 묻는 창이 떠야 정상.
  • 다시 New Action 을 누르고 Action Category에서 Control Flow를 선택하고 Repeat를 선택한다.
  • Repeat Actions 1 time 라는 액션이 추가되었고 바로 아랫줄에 1 이라는 숫자가 써 있는데 이 칸에 1을 지우고 조금전 지정한 반복횟수 변수명인 "반복횟수"라고 입력한다. 제대로 입력하면 바로 아랫줄에 기본 반복횟수 변수값으로 지정한 5가 "→5" 처럼 써진다.
  • 바로 아랫칸에 회색 점선안에 No Action 이라고 써진 영역을 눌러 파란 점선으로 바꾼다.
  • Action 목록에서 Execute→Execute a Macro를 누르면 방금 전 No Action 칸에 Execute a macro라는 액션이 생기게 된다.
  • Execute macro 옆에 None이라는 항목을 누르면 내가 생성한 매크로 목록들이 보이게 되고 아까 생성한 매크로를 선택할 수 있다.
[반복실행 매크로 지정한 Keyboard Maestro 액션 화면]

이제 텍스트 에디터에서 opt + cmd + 1을 누르면 커서가 있는 줄의 맨 앞과 맨 뒤에 각각 prefix와 suffix 문자열이 들어가고 커서가 한줄 내려간다. 누를 때 마다 반복.

만약 입력해야 하는 줄 수가 50줄이라면 opt + cmd + 1 을 50회 눌러도 되고 opt + cmd + 2를 눌러서 반복횟수를 50 이라고 지정하면 처음 매크로를 50회 불러와서 자동으로 실행하게 된다.

coteditor에서 Keyboard Maestro로 매크로 실행 중
coteditor에서 Keyboard Maestro로 매크로 실행 중

2021년 1월 12일 화요일

맥os 설치 후 셋팅할 것들

윈도우설치후 설정할 것들처럼 맥os도 설치 후 설정할 것들이 있다.

시스템환경설정

  • 트랙패드→이동속도 빠르게, 스크롤 및 확대/축소→ 스크롤방향:자연스럽게 끄기
  • 디스플레이→(외부모니터의) 고명암 대비 끄기
  • 배터리와 전원어댑터→ 디스플레이 끄기 시간 조절
  • 공유→ 컴퓨터이름 바꾸기
  • 보안 및 개인정보보호 → 잠자기 시작 직후부터 암호요구
  • 블루투스→ 매직터치패드,키보드 연결
  • 프린터,스캐너 드라이버 설치 (엡손 글로벌 드라이버 다운로드)
  • 키보드→단축키→입력소스→이전입력소스선택 (fn + shift + space)
  • 키보드→ 텍스트 → 맞춤법 자동수정 끄기, 맞춤법 언어별 자동설정에서 한국어 체크 해제.
  • 데스크탑 및 화면보호기 → 화면보호기 끄기
  • 손쉬운 사용 → 디스플레이 → 투명도 감소

그 외

  • 스크린샷 경로 설정 defaults write com.apple.screencapture location ~/Downloads/
  • 필수프로그램 설치 : keynote,pages,numbers,chrome,bitwarden, bartender, alfred, bettertouchtool, adapter,istat menus,final cut pro, motion, fantastical2, notion, dayone, telegram, movist, popclip
  • BTT에 트랙패드 3 finger click을 CMD+W, 기본 브라우저에서 키보드 Shift + cmd + L을 cmd + \ 로 매칭. (bitwarden용), Basic Setting에서 Launch BTT on startup 체크, enable window snapping 체크해제
  • Final Cut Pro용 플러그인 설치
  • 파인더→ 환경설정→고급→ 모든 파일 확장자 보기
  • 파인더→ 환경설정→사이드바→ 즐겨찾기 폴더에 몇가지 폴더 추가

맥에서 "문제가 발생했기 때문에 컴퓨터를 종료했습니다." 오류

며칠전 맥을 싹 밀고 Big Sur를 새로 설치했는데, 첫날부터 부팅만 하면 "문제가 발생했기 때문에 컴퓨터를 종료했습니다."라는 안내문이 떠 있다. 정상적으로 종료해도 뜨고, 부트캠프에서 윈도우를 종료해도 뜨고, 리부팅을 해도 뜨고 껐다가 켜도 뜨고 , 즉 모든 부팅 때 마다 이 메세지가 떴다.

시스템로그를 열어 fail 을 검색했더니 이런 로그가 보인다.

Jan 10 09:19:21 hof-MacBookPro Google Chrome Helper (GPU)[642]: getattrlist failed for /System/Library/Extensions/AppleIntelKBLGraphicsGLDriver.bundle/Contents/MacOS/AppleIntelKBLGraphicsGLDriver: #2: No such file or directory

Jan 10 09:19:22 hof-MacBookPro Google Chrome Helper[667]: Libnotify: notify_register_coalesced_registration failed with code 9 on line 2835

구글 크롬 헬퍼 관련 오류가 2가지 종류로 여러줄로 반복되어 있었다. 크롬을 삭제해보았으나 찌꺼기가 남아있어서인지 오류가 해결되지 않았다. 다시 밀고 OS 재설치.

이번에는 크롬을 빼고 필수 프로그램을 설치하고 리부팅해보니 오류가 나지 않았다. 웹브라우저는 사파리로 몇시간 써보다가 영 불편해서 안되겠기에 크로미움 엣지 설치. 또 몇시간 써보다 찾은 글. 현상은 다르지만 유사한 에러상황에서 PRAM 리셋으로 해결했다는 글을 보고 크롬을 설치해보기로 하였다. 다시 오류가 발생하면 PRAM 리셋을 해보거나 정 안되면 다시 미는(...) 수도 있으니.

다행인지 무슨 영문인지 몰라도 크롬 설치후 더 이상 오류가 생기지 않았다. 더 희한한 것은 system.log에는 여전히 위에서 언급한 오류가 쌓이고 있다는 점.

정말 크롬이 원인이었는지 아닌지는 알 수 없는 일이지만 혹시라도 비슷한 오류로 검색해보신 분들은 참고하시라고 경과를 기록으로 남긴다.

2021년 1월 2일 토요일

부트캠프 윈도우를 내장디스크로 변경

며칠전 외장SSD에 설치했던 윈도우투고를 폐기하고 맥 내장 디스크에 부트캠프를 이용해 설치했다. 외부 강의 환경이 1. 전원 2. 외장 디스플레이 3. 웹캠까지 들어가는데 여기에 윈도우투고를 위한 외장SSD까지 연결하면 남는 포트가 하나도 없게 된다. 상황에 따라 아이폰과 연결하여 유선태터링을 이용해야할 수도 있고 USB-C타입 마이크를 사용해야 할 수도 있어서 여유 포트를 남길 필요가 있었다. 아울러 케이블이나 커넥터가 움직여서 잠시라도 USB-C연결이 끊기는 순간 OS크래쉬가 날 수 있어 위험부담이 컸다.

어차피 512기가 중 300기가를 넘겨 쓴 적이 없었기에 안정적이고 빠른, 내장 디스크에 다시 설치하기로 하였다.

  • 부트캠프 실행해서 파티션 나누기 진행되다가 실패함.
  • 디스크 도구로 검사 해보니 문제점 없다고 함.
  • 중요파일 백업하고 맥 파티션 지우고 새로 설치하기로 함.
  • 맥 초기화하고 인터넷 설치해보니 카탈리나까지만 설치 가능.
  • 일단 설치하고 빅서 설치파일 다운받고 설치 미디어 생성.
  • 다시 파티션 지우고 빅서 설치.
  • 설치되다 중간에 먹통 됨. 강제종료하고 부팅하니 설치 이어서 진행됨 (다행)
  • 빅서 새로 설치하고 곧바로 부트캠프로 파티션 100기가 나누고 윈도우 설치 시작.
  • 윈도우지원도구 다운로드도 수시간 걸리던 것이 5분내 다운로드 가능함.
  • 그러나 설치된 윈도우에 윈도우 지원도구가 보이지 않음. 백업해둔 엊그제 셋업 파일 복사하여 실행.
  • 윈도우 설치과정에서 맥북의 키보드와 트랙패드 잘 동작함.
  • 여전히 블루투스 방식의 애플 매직 키보드와 매직 트랙패드는 윈도우에서 동작하지 않았다. 블루투스 장치에는 페어링되었다고 나오나 두 장치 모두 반응하지 않음.

다음 재설치를 대비하기 위해 필요한 것들 메모.