개성 있는 클릭 시간 설정 방법

7780 단어 GittimetermsGitHubQMK
지나가다에서 콘토르키와 엔타키의 조합 자제 함수를 만들어 보았다.
하지만 복잡함으로 좌절했다.
자체 제작의 목적은 다른 조합은 90밀리초 정도의 가볍게 두드리는 시간으로 조작하고 싶지만 상술한 조합은 60~70밀리초로 설정하고 싶다.
짧은 시간 내에 리턴 키를 눌러야만 순간적으로 제어 키를 사용할 수 있다.
따라서 TAPPING_TERM 을 낮은 값으로 설정하여 PERMISSIVE_HOLD 유효하게 하면 문제를 낮출 수 있으나 누르는 속도에 의존하기 때문에 받아들이기 어렵다.
그리고 개별 설정은 안 될 것 같아요.
결론은 get_tapping_term 함수를 사용하면 공사 시간을 단독으로 바꿀 수 있다는 것이다.
자기 작품도 필요 없어.
너무 좋아요.

함수에 키 코드만 설정하면


사용탭 시간 사용자 정의 준비는 그다지 필요하지 않습니다.
기존 원본 파일에 조금만 추가하면 완성할 수 있기 때문이다.

config.h


다음 내용만 추가하면 끝입니다.
config.h
#define TAPPING_TERM_PER_KEY
간단하죠?
물론 #define TAPPING_TERM 90 필요하다.
※ 시간은 임의입니다.

keymap.c


가설CTL_T(KC_ENTER)의 행위는 TAPPING_TERM 시간을 바탕으로 300밀리초 증가한다.
다음 코드 자체.
keymap.c
uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
    switch (keycode) {
        case CTL_T(KC_ENTER):
            return TAPPING_TERM + 300; // 390ミリ秒(極端な例)
        case LGUI_T(KC_ENTER):
            return 39; // 高橋名人以上の素早さが必要(これも極端な例)
        default:
            return TAPPING_TERM; // 90ミリ秒
    }
}
상기 외에 LGUI_T(KC_ENTER) 는 39밀리초로 설정되었다.이것은 예사롭지 않은 속도로 클릭하지 않으면 Enter 키가 움직이지 않는 시간 설정입니다.

키 코드 설정


물론 상술한 설정CTL_T(KC_ENTER) 등을 실제 키 코드로 사용하지 않으면 의미가 없다.
(아래, 많은 키맵이 생략됨)
keymap.c
 * |------+------+------+------+------+------+------+------+------+------+------+------|
 * |Ctrl/Ent|      |      |      |      |      |      |      |      |      |      |      |
 * `-----------------------------------------------------------------------------------'
 */
[BASE] = LAYOUT_planck_grid(
    CTL_T(KC_ENTER),・・・,・・・,・・・ ・・・
나중에.
여기까지가 클릭 시간의 설정 방법입니다.
다음은 원본 코드의 최신화에 관한 것이다.

Git 명령


특별히 이 페이지에 기재된 이유는 이번 일로 Github에 있는 Clone의 원본 코드를 최신화하지 못했기 때문에 비망록으로 남기는 것이 목적이다.
참조 문서Updating your master branch를 통해 최신화할 수 있습니다.
겸사겸사 말씀드리지만, 이docs.qmk.fm는 github 저장소에서 생성되기 때문에 참조어느 쪽도 문제가 없습니다.
동기화라기보다는github에서 끌어온 거예요.

get_tapping_term 함수


자신의 키가 비치는 것을 확인했지만 전혀 반영되지 않아 속수무책이어서 상당히 난처했다.
게시판에 도움을 요청했지만 샘플 코드처럼 define 값을 추가하면 사용할 수 있다고 답장했을 뿐이다.
그러나 원격의 원본 코드를 확인한 결과 내 로컬의 원본 코드와 전면적인 프로그램이 다르다는 것이 분명해졌다.
따라서 현지 환경을 최신화하는 것이 절실하다.

Git


클론의 경우 클론 소스가 변경될 때도 클론 목적지에 반영되지 않는 것으로 보입니다.
나는 네가 복제라는 이름을 부르지 않기를 바란다.
コピー 최신판을 얻을 수 있다는 것은 비밀이다.

결론


다음 명령의 입력을 통해 드디어 최신화를 실현하였다.

※ 쉽게 볼 수 있도록 이미지 가공이 완료되었습니다.

현재 포인터 가져오기


최신 소스를 자신의 원격 위치에 추가합니다.
명령 프롬프트
git remote add root_branch https://github.com/qmk/qmk_firmware.git
조금명령이지만 이해할 수 없을 정도로 복잡하다.

현재 상태와 비교


방금 검색한 최신 버전의 Fork와 자신의 자료 라이브러리를 비교합니다.
명령 프롬프트
git fetch root_branch

표식


특별한 작업으로 필요는 없지만 초보적인 기록이라 태그를 추가하기로 했다.
명령 프롬프트
git tag 'forkGet'
git tag -a 'forkGet' -m 'fork元取得(最新化)'
첫 번째 줄은 Tag 자체의 제작이기 때문에 한 번만 실행하면 두 번은 필요 없다.
두 번째 줄은 작업에 대한 표시이기 때문에 적당한 주석과 함께 실행한다.

잠시 회피하다


원래는 합병 작업만 진행했지만, 나의 경우 작업 중에 원본 파일이 존재하기 때문에 합병에 실패했다.
따라서 작업 중인 파일을 피하고 다시 통합을 시작하는 데 성공했다.
명령 프롬프트
git stash save
깊이 있게 말하면 임의로 명명하여 이 이름으로 표시하거나 넣을 수 있다.

소스 파일 병합(합)

プル에 추가된 최신 버전의 원본 파일은 저장소 환경과 통합됩니다.
명령 프롬프트
git merge root_branch/master
제 환경은 add이기 때문에 그것에 대한 인식은 일치하는 거죠?
거꾸로 하면 움푹 들어가요.
논평을 남길 필요가 있다.

합병 후의 반영


푸시 명령을 통해 반영합니다.
명령 프롬프트
git push origin master
원격 반영 일 거예요.

일시적인 회피 회복


위의 상태가 회피되었으므로 여기로 돌아갑니다.
명령 프롬프트
git stash pop
하나만 피했으니까 이 정도면 충분해.

최신 종료


여기까지 최신화를 했을 거예요.

주의사항


위에서 master 명령을 사용합니다.
이 때 git remote add 는 원격에 남아 있기 때문에 수동으로 삭제합니다.
하지만 안 돼요.
그 후의 작업에서 오류가 발생하여 제거할 수 없습니다.
네.
이번에는 반드시 이 문제를 해결해야 한다.
난 곤란해.

감상


이번 시간 설정을 통해 더 유연한 키 매핑이 가능하지 않습니까?
이렇게 하면 자체 제작 함수의 필요성에서 해방되어 시간을 효과적으로 이용할 수 있다.
역시 모르면 바퀴를 재개발해 시간을 낭비할 뻔했다.
여기서도 학습이야말로 인류가 갖춰야 할 자세이고 경험을 중시하는 것은 어리석은 것이며 개와 짐승보다 못한 다음 생활 방식이라는 것을 증명했다.
앞으로도 배워서 인간의 입장을 포기하지 않기 위해 노력해야 한다.
그 전에 Git 사용법을 배워라... 할 일이 많아...
아, 먼저 일자리를 구해라.
이상

좋은 웹페이지 즐겨찾기