본문 바로가기

반응형

전체 글

Mac의 zsh에서 rbenv 사용하기 맥 버전이 10.15(카탈리나)로 바뀌고 기본 쉘이 zsh로 바뀌면서 여러 환경 설정을 바꿔 줄 필요가 생겼습니다.(어쩐지 안되더라..) 다룰 일이 없어서 이런 기초적인 부분에서도 한참 헤맸습니다. 1. rbenv를 설치 brew로 설치합니다. rbenv설치가 돼 있으면 생략합니다. ~ % brew install rbenv ruby-build 2. .zshrc 파일을 작성 후 불러오기 홈(~)에 파일을 작성해 줍니다. ~ % vim .zshrc # .zshrc export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init - zsh)" # 저장 후 실행 ~ % source ~/.zshrc zsrhc같은 오타를 조심합시다. 3. 루비 설치 및 버전 설정 ~ % rben.. 더보기
Mac의 Firefox에서 '터치패드로 확대'기능 활성화 파이어폭스에서는 안 되지만, 크롬에서는 터치패드를 통해 페이지를 확대/축소하는 기능이 있습니다. command +/- 으로 확대할 수는 있지만, 이렇게 확대하면 레이아웃이 무너지거나 변경되는 문제가 있어서 잘 쓰지 않습니다. 회의 때 화면 공유를 하면 화질 때문에 글씨가 안 보이는 경우가 많은데, 맥 자체 확대 기능을 쓰면 화면이 안 보인다고 해서.. 참 난감합니다. 그런데 찾아보니 활성화할 수 있네요. 파이어폭스의 고급 설정 페이지에 들어간 뒤, apz.allow_zooming의 값을 true로 변경해 주면 사용이 가능해집니다. 더보기
Sourcetree에서 Permission Denied가 뜰 때 해결법 보안을 위해 SSL 인증을 설정한 뒤, 몇 번 푸시를 하다가 어느 순간부터 푸시가 안 되는 경우가 발생했습니다. Git CLI에서는 아무런 문제가 없었기에 당황스러웠는데요, 이에 대한 해결 방법을 찾아 여기에 적어보고자 합니다. SSH 인증에 문제가 있는 건 아닌지 확인하기 % ssh -T git@github.com Enter passphrase for key '/Users/hee/.ssh/id_rsa': # SSH키 비밀번호 입력 Hi hee! You've successfully authenticated, but GitHub does not provide shell access. 이 단계에서 Hi ***! 라는 응답을 받지 못했다면 Github에 등록된 SSH 인증이 잘못되어 있는 경우이므로, Gith.. 더보기
Vue-cli로 웹앱 생성 및 Github page 연동 오늘은 Vue CLI툴을 사용해 만든 페이지를 Github page로 올리는 방법에 대해 정리해 보겠습니다. 여기서는 페이지를 subtree로 올리는 방법을 다루겠습니다. subtree에 대한 보다 자세한 설명은 링크를 첨부합니다. 사실 저는 subtree로 관리하는 게 익숙하지 않아서 상당히 까다로웠지만, 개발 / 출시를 분리해 두는 것이 유지보수 측면에서도 편하기 때문에 저는 subtree를 사용했습니다. 1개의 브랜치만으로도 깃허브 페이지를 생성할 수 있습니다. (빌드한 페이지를 /docs경로에 넣으면 가능) Vue CLI로 프로젝트 생성 먼저 npm으로 vue-cli을 설치하고, 프로젝트를 생성합니다. ~ % npm install -g @vue/cli # 적당한 경로에 프로젝트를 생성 [folde.. 더보기
Ruby : 기초(6) 클래스 선언 클래스는 def 클래스명 - end로 선언합니다. 기초 1의 내용과 같이, 클래스명은 파스칼 케이스로 짓는 것이 관례입니다. 함수 스코프와는 관계 없는 인스턴스 변수 클래스 내에서 사용되는 인스턴스 변수(@var)는 선언 위치와 상관 없이 클래스 내의 어디에서든 접근할 수 있습니다. class Apple def set_phone(phone_name) @phone = phone_name end def print_phone puts @phone # 접근이 안될 것 같지만 가능하다 end end 접근제어 기본적으로 클래스 내 모든 메소드는 public이지만 필요에 의해 바꿀 수 있습니다. ... public def func1 ... end private def func2 ... end protected .. 더보기
Ruby : 기초(5) 메소드 메소드(method) 루비의 함수는 클래스에 들어있든 아니든 메소드(경우에 따라 메서드)라고 불립니다. # 인자가 없으면 괄호를 생략할 수 있다 # 기본값이 없으면 생략할 수 있다 def 메소드명(인자명=기본값) # 코드블럭 end블록의 표시 방법 루비에서 블록을 표시하는 방법은 두 가지가 있습니다. 중괄호({ })와 do-end입니다. 중괄호는 한 줄로 정의할 때 사용됩니다. 반환 값은 따로 지정하지 않아도 괜찮다 특별히 지정되지 않은 경우, 메소드는 마지막 줄의 결과값을 반환합니다. 가변 매개 변수(argument) 루비의 메소드는 한 매개 변수에 별표(*)를 붙임으로써 여러 인자(parameter)를 받을 수 있습니다. 모호함을 막기 위해 가변 매개 변수는 한 개만 허용됩니다. def functio.. 더보기
Ruby : 기초(4) 해시와 심볼 해시 해시는 컬렉션을 지원합니다. 해시의 내부는 키와 키에 해당하는 값이 들어 있습니다. hash = { :apple => "iPhone", # 키= :apple / 값= "iPhone" "samsung" => "Galaxy", # 키= "samsung" / 값= "Galaxy" google: "pixel" # 키= :google / 값= "pixel" } 예시 코드를 보시면 아시겠지만, 해시를 만들 때 값을 정의하는 방법이 총 세 가지가 있습니다. 첫 번째는 심볼이라는 값을 키로 설정하는 방법, 두 번째는 문자열을 키로 설정하는 방법, 세 번째는 첫 번째와 동일한 방법(축약 표현)입니다. 해시 : 값 추가, 접근 해시에 값을 추가할 때는 해시변수[키] = 값형식으로 넣을 수 있습니다. hash = Ha.. 더보기
Ruby : 기초(3) 반복 while과 until 루비의 조건문에 if, unless가 있던 것처럼, while에도 반대에 해당하는 until이라는 것이 있습니다. until은 조건이 거짓일 때 반복되는 반복문입니다. i = 3 until i < 1 print i end # 3 2 1for 루비에는 전통적으로 사용되어 오던 for문(초기식; 조건식; 증감식)이 없고, 대신 for-in문이 있습니다. 규칙은 for 변수 in 범위값(Range)입니다. 예를 들어, 단순 반복을 5회 하고 싶다면 for num in 1..5 # doSomething end으로 5회 반복이 가능합니다. 그리고 이러한 반복문을 제어하는 명령어로 break와 next(continue가 아닙니다)를 제공합니다. loop 단순 반복문(조건에 따른 break가 .. 더보기