프로그래밍/General 64

구글 설문지 (Google Forms) 완료시 데이터 외부 API로 전송하기

구글 설문지를 완료했을때 보상을 주거나, 추가 정보를 처리해야 할 일이 있을 수 있다. 그래서 구글 설문지를 완료하면 외부 API로 데이터를 보내는 방법을 정리해보려한다. OAuth Scope 추가하기 먼저 더보기 메뉴에서 [스크립트 편집기]로 진입한다. 외부 API로 요청을 보내기 위해서 아래 scope에 대한 권한이 필요한데, 이것을 정의하려면 appsscript.json을 편집해야한다. "https://www.googleapis.com/auth/script.external_request" 프로젝트 설정 > 편집기에 [appsscript.json 매니페스트 파일 표시] 체크를 하면 편집기에서 appsscript.json이 생긴 것을 볼 수 있을 것이다. { "timeZone": "Asia/Seoul"..

vim Cheatsheet

u 뒤로 (Undo) y 복사 (Yank) p 붙여넣기 (Put) c 변경 (Change) d 삭제 (Delete) r 대치 R 단어모두 대치 x 지우기 o 다음줄 삽입 O 이전줄 삽입 w 다음 단어 시작으로 이동 e 다음 단어 끝으로 이동 b 뒤로 한 단어만큼 이동 gg 처음으로 G 끝으로 Ctrl + G 현재 문서에대한 정보 Ctrl + f 다음 페이지 (Forward) Ctrl + b 이전 페이지 (Backward) / 검색 (문서 처음부터) ? 검색 (문서 끝부터) n 다음 검색결과 N 이전 검색결과 :/s/old/new/g 현재 한 줄에있는 old를 new로 변경 :! 외부 명령어 사용 :set nu 라인넘버 보이게 :set hls 검색시 하이라이트 켜기 (highlight search) :se..

VS Code 파란 물결 표시 색상 바꾸기 (flutter const)

Flutter 개발할때 const 키워드를 붙이지 않으면 아주 짜증나는 물결표시가 시선을 강탈한다. 각자 Theme에 따라서 크게 거슬리지 않을때도 있지만, 사진에서 보듯 내 테마는 좀 심했다. ㅋㅋㅋㅋ VS Code settings에서 workbench.colorCustomizations 아래에 editorInfo.foreground 색상을 설정해주면 된다. "workbench.colorCustomizations": { /* 특정 테마만 설정 */ "[Min Dark]": { "editorInfo.foreground":"#58585899" }, /* 전역 설정 */ "editorInfo.foreground":"#58585899", }

[CloudFlare] Workers Log 편하게 보는 법

wrangler tail Worker에 찍은 console.log들을 편하게 보고싶은데, CF에서 제공하는 Real-time Logs는 내가 원하는 정보보다 방대하다. 아래는 그 로그의 예시인데, "logs" 부분에 당시 내가 찍은 console.log가 있다면 담기는 식이다. 실패한 요청만 필터링을 거는 등 스마트하게 로그를 보고싶다면 wrangler tail 명령어를 이용하면된다. { "outcome": "ok", "scriptName": "entrypoint", "exceptions": [], "logs": [], // ****** 바로 여기 !! ********* "eventTimestamp": 1675348988505, "event": { "request": { "url": "https://....

[AppsScript] 스프레드 시트 Row 업데이트한 날짜 자동으로 적는 법

행에 수정이있을경우, 수정한 날짜를 자동으로 기록하는 방법을 소개한다. AppsScript는 여러 트리거들을 제공하는데, 몇몇 함수들이 예약되어있다. 그 중에서도 셀의 편집때 자동으로 트리거되는 onEdit(e) 함수를 사용해서 셀의 변화가 일어날때마다 업데이트 날짜를 찍어주는 만들어 보았다. 구글 스프레드시트 > 확장 프로그램 > Apps Script 메뉴에 들어가, 아래 코드를 붙여넣고 저장한다. HTML 삽입 미리보기할 수 없는 소스 사진의 시트를 기준으로 작성된 코드이므로 하나하나 뜯어서보자면, UPDATED_COLUMN은 날짜를 적을 컬럼의 위치다. 그리고 HEADER_ROW_LENGTH는 헤더부분의 길이를 나타내는데, 헤더를 수정했다고해서 업데이트 날짜가 찍히면 안되니 그 이상의 Row에서 수..

[프로그래밍] 마인크래프트로 알아보는 랜덤이 랜덤이 아닌 이유

컴퓨터의 랜덤 술 먹고, 같이 먹은 사람들의 카드를 부채꼴로 펼치면서 식당 종업원에게 카드를 골라달라고 해본적있는가? 고를 확률은 랜덤이라고 할 수 있을까? 식당 종업원이 좋아하는 디자인 취향, 왼손잡이인지 오른손잡이인지에 따라 결과는 치우쳐질 수 있다. 이까지는 누구나 인지하는 사실이다. “그래! 이건 완전한 랜덤이 아니야!” 계산할 사람을 지목하는데에 네이버 사다리 타기를 이용하기로 했다. 흔히 이렇게 “랜덤성”을 컴퓨터 프로그램에 의존하고는 한다. 뭔가…뭔가 객관적이어 보이니까? 하지만 컴퓨터는 결정론적으로 동작하고, 어떻게 보면 랜덤과는 가장 거리가 멀다. 모든 프로그래밍 언어에는 random()이라는 함수가 있다. 그러면 이들은 어떻게 구현이 된걸까? 만약에 내가 구현한다면 어떻게 랜덤성을 부여..

[Windows] Git Bash에 zsh (Oh-my-zsh) 설치해서 꾸미기

Windows zsh 설치방법 1. https://repo.msys2.org/msys/x86_64/zsh-5.8-5-x86_64.pkg.tar.zst 를 다운받는다. 2. 압축을 해제한다. 해제하면 zsh-5.8-5-x86\_64.pkg.tar파일이 있을텐데, 이것도 압축을 해제한다. 3. 안의 내용물을 C:/Program Files/Git 아래에 붙여넣는다. Git내에도 usr, etc가 있을건데 덮어써준다. 4. Git bash를 켜서 zsh라고 입력한다. 옵션을 잘 읽어보면 몇가지 기초설정에 들어갈 것이고, 이를 마치면 홈 디렉토리에 .zshrc 파일이 생겨났을 것이다. $ zsh 5. git bash가 아직도 모양이 바뀌지 않았다면, 아래 명령어를 쳐주자. $ source ~/.zshrc 6. 그..

[batch] Windows 바탕화면에 바로가기 만들기 배치 스크립트

바탕화면에 현재 bat이 위치하는 디렉토리의 TinyDoge.exe에 대한 바로가기를 만드는 스크립트이다. @echo off set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs" echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT% echo sLinkFile = "%USERPROFILE%\Desktop\TinyDoge.lnk" >> %SCRIPT% echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT% echo oLink.TargetPath = "%cd%\TinyDoge.exe" >> %SCRIPT% echo oLink.Save >> %SC..

[Windows] Git Bash에 tmux 설치해서 사용하기

Git Bash는 설치되어 있다고 가정하도록 하겠다. 먼저 MSYS2를 설치해야하는데, 윈도우에서 사용할 수 있는 GCC 지원 프로그램은 MINGW, MSYS2, CYGWIN 3가지가 있다. Git Bash는 MINGW에 해당한다. MSYS2 설치 https://www.msys2.org/ 에들어가서 Installer를 다운받아서 설치한다. 아래 링크를 이용해도 되지만, 최신버전을 원한다면 홈페이지에 들어가기~! https://github.com/msys2/msys2-installer/releases/download/2022-06-03/msys2-x86_64-20220603.exe MSYS2 관리자 권한으로 실행 설치가 완료되었다면, MSYS2 터미널을 관리자 권한으로 실행한다. TMUX 설치 이제 pac..

애플 실리콘 칩(M1, M2) Python 환경설정 한번에 끝내기

1. PackageManager인 Homebrew 설치 echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile eval "$(opt/homebrew/bin/brew shellenv)" 2. Rosetta (인텔 CPU 호환용) 설치 softwareupdate --install-rosetta 3. python 설치 brew install python 이 글은 파이썬 3.7을 기준으로 하고 있다. 3. ~/.zshrc를 만들어서shell 설정 파일을 추가한다. vi ~/.zshrc export LDFLAGS="-L/opt/homebrew-x86_64/opt/mysql-client/lib" export CPPFLAGS="-I/opt/homebrew-x..