2020년 10월 11일 일요일

MANIC K61 미니 기계식 키보드에는 역따옴표(back quote)와 물결표(틸드, tilde)가 없다

마이크로닉스 MANIC K61키보드는 60% 혹은 포커 배열의 미니 기계식 키보드이다. 작은 크기에 블루투스로 3개의 기기까지 연결도 지원한다. 그런데 이 키보드에는 특정 키가 하나 없다. 그리고, 그 키를 입력할 방법을 제공하지도 않는다. 바로 `와 ~를 입력할 수 있는 키. ANSI 기본 키를 제공하지 않다니. 일반적인 웹서핑과 글을 작성하는 경우에는 거의 쓸 일이 없는 키라고 없앤 것 같다. 그런데, 코드를 작성할 때는 없어서는 안되는 키이다.

 

MANIC K61 블루투스 기계식 키보드 (키캡 변경)

맥에서만 사용하기 때문에 해결 방법은 Karabiner-Elements의 complex modifications를 사용하는 것.

 

 

ESC를 tilde로 할당하고, ESC를 입력하는 방법으로 3가지 방법을 추가했다. 사용해보니 제일 많이 사용하게 되는 것은 Left Control 키를 단독으로 눌렀을 때 ESC로 인식하게 하는 것. CAPS LOCK을 Left Control로 사용하고 있다.

익숙해지니 ESC키를 누르기 위해서 손을 뻗을 필요가 없어서 손이 조금 편한 감도 있다.

2020년 10월 10일 토요일

Haskell - 숫자에 있는 홀수의 갯수 세기

정말, 이렇게까지?

oddDigits :: Integer -> Int
oddDigits = go 0
  where
    go :: Int -> Integer -> Int
    go s 0 = s
    go s n = s `seq` go (s + fromInteger r `mod` 2) q
      where (q, r) = n `quotRem` 10 
 
https://stackoverflow.com/questions/59824578/count-number-of-odd-digits-in-integer-haskell

프로그래밍은 데이터 변환

하스켈로 문제를 해결하려고 하다보면, 프로그래밍은 데이터를 다른 데이터로 변환하는 것이라는 것을 더 깊이 느끼게 된다. 원 데이터가 "표현"하는 것에서 결과 데이터가 "표현"하는 것으로 옮기기 위한 절차적인 프로그래밍이 아니라, 원 데이터를 결과 데이터로 변환하는 선언적인 프로그래밍.

2020년 10월 6일 화요일

Haskell 공부

 요즘은 저녁에 하스켈 공부를 조금씩 하고 있다. Learn You a Hasekll for Great Good!을 보다가 CIS 194 (2013)를 보고 있다. 강의록은 어려움이 없는데, 연습문제를 푸는데 시간이 많이 걸린다. Imperative programming이 돌에 새긴 글처럼 뇌에 박혀 있는 상태라 함수형으로 프로그램을 작성하는 것이 쉽지 않다. 어떻게든 해답을 보지 않고 풀어 나가고 있다.

오늘은 3주차의 Homework.


산책길에

 






흐리게 찍힌 꽃. 내일 다시 찍어줄께.



식 후 산행

사는 곳 바로 뒤가 광교산 자락이라서 등산은 쉽게 할 수 있는 활동 중 하나. 등산 스틱을 구입한 기념(?)으로 짧게 산에 다녀왔다. 왕복 1시간.






2020년 9월 28일 월요일

AI 스피커

이름도 거창하지. AI라니..

여튼 집에 있는 AI 스피커는

  • 구글 홈 / 구글 홈 미니 (Ok Google)
  • 에코 닷 (Alexa) 
  • Homepod (Siri)
  • 카카오 미니 (카카오야)

우리 말을 알아 듣는 건 구글 홈과 카카오 미니인데, 카카오 미니보다는 구글 홈이 더 잘 알아듣는다. 알렉사와 시리는 영어만 되기도 하고, 우리 나라에서는 연동되는 서비스가 거의 없다. 특히 알렉사. 그나마 시리는 애플 뮤직이라도 되지. 카카오 미니는 가끔 멜론 음악 듣는 것하고 타이머로 쓰는 용도? 부르지 않았는데, 대답하기도 한다.

목소리는 알렉사가 제일 좋다. 가끔 목소리가 듣고 싶어서 켜보기도 한다.

활용성은 구글홈이 좋은데, 스피커가 영.. 아니다. 스피커는 홈팟.

활용성이나 연동 서비스 음질이 제각각. 아직 중구난방.