macOS 터미널에서 사용자이름 숨기기

Before

우리가 macOS를 사용하고 터미널을 켜면 다음과 같이 username@computername와 같은 형식으로 나타납니다.

이처럼 계정과 컴퓨터 이름이 나오는 경우 SSH와 같은 원격 접속시에는 어떤 계정으로 어떤 기기에 접속했는지 알 수 있기 때문에 편리하지만 로컬 개발 컴퓨터같은 경우에는 위와같은 정보가 터미널 앞에 붙어있으면 명령어가 길어질 경우 한 줄 내에 나오지 않을 수 있습니다.

macOS의 터미널 기본 너비는 80자(영문)입니다.

After

위의 이유로 아래와 같이 ~ 표시만 나오게 하면 좀 더 사용에 편리합니다.

Solution

만약 여러분이 “beomi”라는 계정명을 사용중이라면 다음과 같이 .zshrc 파일에 코드를 추가해주세요.

1
2
# DEFAULT_USER
DEFAULT_USER="beomi"

만약 여러분이 계정명이 무엇인지 알지 못한다면 다음과 같이 .zshrc 파일에 코드를 추가해주세요.

1
2
# DEFAULT_USER
DEFAULT_USER="$(whoami)"

여러분이 터미널을 종료하고 다시 켜면 After의 스크린샷처럼 ~만 터미널에 나오게 됩니다.

키노트로 고화질 타이틀 이미지 만들기

이번 글은 애플 키노트를 다루니 당연히 macOS가 대상입니다 :)

들어가며

블로그 글을 맥에서 작성하다보면 자연스럽게 키노트로 메인 타이틀이나 설명을 만드는 경우가 많습니다. 아래 화면처럼 이미지와 글자를 조금 배치하는 방식으로 깔끔한 이미지 하나를 만들게 됩니다. (이번 글 대표 이미지도 이 방식으로 만들었습니다.)

하지만 문제가 있습니다.

애플 키노트에서 기본적으로 제공하는 Export to Image, “다음으로 보내기 -> 이미지..”를 사용하는 방법도 물론 있습니다. 하지만 사실 이렇게 작업하면…

화면에서 바라볼때는 고해상도의 레티나 결과물이 나왔지만, 실제로 Export된 이미지 파일을 보면 이미지 픽셀은 1920*1080으로 충분히 고화질이지만 ppi가 72밖에 되지 않는 것을 볼 수 있습니다.

(아니 왜 레티나를 샀는데 보여주지를 못하니 ㅠㅠ)

해결방법

해결방법은 한 단계를 더 거치는데, 다른 프로그램을 사용하는 것이 아니라 맥에 내장되어있는 ‘미리보기’를 이용하는 방법입니다.

단계는 다음과 같습니다.

  • 키노트에서 PDF로 내보내기
  • PDF파일을 ‘미리보기’로 열기
  • 미리보기에서 ‘내보내기’ 기능으로 고해상도 이미지 만들기

네, 귀찮습니다. 하지만 레티나 이미지를 포기할 수는 없으니까요. 요즘은 특히 모바일 기기도 해상도가 굉장히 높으니 그에 맞춰 높은 해상도를 제공해주는 것도 좋지 않을까 생각합니다.

그러면 이제 진행해 봅시다.

만들어봅시다!

PDF로 내보내기

우선 위처럼 키노트를 만들어주세요. 그리고 아래 사진처럼 파일 > 다음으로 보내기 > PDF… 순서대로 클릭을 해주시면 됩니다.

클릭을 해주면 다음과 같은 창이 하나 뜹니다. 여기서 유의하셔야되는 점은 ‘이미지 품질’을 ‘최상’으로 해 두셔야 300ppi로 내보내기가 이루어집니다.

NOTE: 여러분이 글자만 있는 상태라면 (아이콘/사진이 없다면) 굳이 이미지 품질을 신경쓰지는 않으셔도 됩니다. PDF에서 글자는 폰트를 내장해 글자 정보 자체로 읽고 쓰기 때문에 이미지 품질로 인한 차이가 발생하지 않습니다.

미리보기로 PDF 열기

앞서 내보내기로 만든 PDF 파일을 아래처럼 열어줍시다. 보기만해도 높은 해상도인것을 느낄 수 있습니다.

미리보기로 PDF 열어본 모습

이제 상단 메뉴바 ‘파일’에서 ‘보내기’를 눌러봅시다.

미리보기에서 내보내기

이제 아래와 같은 화면이 보일텐데요, PDF가 아니라 JPEG로 바꿔준 뒤 해상도를 150정도로 맞춰준 뒤 저장을 해줍시다.

미리보기 내보내기에서 JPEG, 150PPI로 저장하기

끝났습니다!

이제 여러분은 여러분이 원하는 해상도의 고해상도 이미지를 얻게 되었습니다!

파일 사이즈를 조절하거나 무손실 압축 프로그램등을 사용한다면 좀 더 트래픽량이 줄어 사이트 로딩속도가 빨라질 수 있습니다.

macOS에서는 ImageOptim을 이용해보세요. 이미지가 단순한 경우 용량이 절반으로 줄어들기도 합니다.

Autoenv로 편리한 개발하기

이번 가이드는 macOS를 대상으로 합니다.

프로젝트를 여러가지를 동시에 진행하고 프로젝트에서 사용하는 개발환경이 다양해지다 보니 사용하게 되는 도구들이 많습니다.

Python에서는 virtualenv, pyenv등이 대표적이고 Node.js에서는 nvm이나 n등이 대표적인 사례입니다.

즉 시스템에 전역으로 설치되어있는 것과 다른 버전 혹은 다른 패키지들이 설치된 가상환경에서 개발을 진행해 각 프로젝트별로 다른 환경에서 개발을 진행합니다.

하지만 이러한 도구들을 사용하기 위해서는 프로젝트를 실행하기 전 특별한 명령어들(ex: workon venv_name등)을 사용해야 합니다.

Autoenv는 이러한 명령어들을 각 프로젝트 폴더 진입시 자동으로 실행할 수 있도록 도와줍니다.

Autoenv가 작동하는 방법

Autoenv는 시스템의 cd명령어를 바꿔, 폴더 안에 진입한 후 폴더 안에 .env파일이 있는지를 탐색하고 만약 .env파일이 있으면 그 파일을 한줄한줄 사람이 터미널에 치듯 실행새줍니다.

예를 들어, hello라는 폴더 안의 .env에 아래와 같이 되어있다고 가정해 봅시다.

1
2
# .env파일
echo "Hello World!"

이후 이 hello폴더에 진입할 때마다 Hello World!가 출력됩니다.

1
2
3
~ $ cd hello
Hello World!
~/hello $

이처럼 여러가지 방법으로 이용할 수 있습니다.

Autoenv 설치하기

Autoenv는 다음 두 절차를 통해 쉽게 설치할 수 있습니다.

우선 brew로 설치해 줍시다. (HomeBrew는 brew.sh에서 설치할 수 있습니다.)

1
brew install autoenv

다음으로는 autoenv 실행 스크립트를 .zshrc.bash_profile 파일의 끝부분에 적어줍시다.

1
2
# .zshrc 나 .bash_profile 의 파일 가장 끝
source /usr/local/opt/autoenv/activate.sh

만약 아직 ZSH을 설치하지 않았다면 멋진 Terminal 만들기을 읽어보세요!

유의사항

.env파일 설정 후 첫 폴더 진입시 .env파일을 신뢰하고 실행할지 않을 지에 대한 동의가 나타납니다. 이 부분은 .env파일이 악의적으로 변경되었을때 사용자에게 알리기 위해서 있기 때문에 즐거운 마음으로 Y를 눌러줍시다.

SSH키파일 등록하기

SSH키파일을 .bash_profile등에 등록해 터미널이 켜질때마다 불러오는 방법도 있지만, 그 대신 ssh-add명령어를 통해 직접 현재 터미널에만 제한적으로 불러오는 방법이 있습니다.

만약 ~/.ssh폴더 안에 my_key_file.pem이라는 키 파일들이 있다면 아래와 같이 .env를 구성할 수 있습니다.

1
2
# .env파일
ssh-add ~/.ssh/my_key_file.pem

이와 같이 구성하면 폴더에 진입시마다 아래와 같이 키 파일이 등록된다는 것을 확인할 수 있습니다.

1
2
3
~ $ cd project
Identity added: /Users/beomi/.ssh/my_key_file.pem (/Users/beomi/.ssh/my_key_file.pem)
~/project $

Python 가상환경 관리하기

venv를 사용할 경우

파이썬 3.4이후부터 내장된 venv를 이용한 경우 다음과 같이 .env를 구성할 수 있습니다.

1
2
# .env파일
source ./가상환경폴더이름/bin/activate

virtualenv를 이용할 경우

venv와 동일합니다. 아래와 같이 .env를 구성해 주세요.

1
2
# .env파일
source ./가상환경폴더이름/bin/activate

virtualenv-wrapper를 이용중인 경우

workon명령어를 그대로 사용할 수 있습니다. 아래와 같이 .env를 설정해 주세요. (저는 이 방법을 사용하고 있습니다.)

1
2
# .env파일
workon 가상환경이름

Pyenv를 이용중인 경우

pyenv에서는 local이라는 명령어를 통해 기본적으로 폴더별 Python 버전을 관리해 줍니다. 따라서 .env를 통해 Global설정을 하는 경우를 제외하면 사용하지 않는 것을 추천합니다.

Node.js 개발환경 관리하기

n을 사용할 경우

node버전을 관리해 주는 nsudo권한을 필요로 합니다. 시스템 전역에서 사용하는 node의 버전을 변경하기 때문입니다. 그래서 패스워드를 입력해 주는 과정이 필요할 수 있습니다. .env파일을 아래와 같이 만들어 주세요.

1
sudo n latest # 버전은 사용 환경에 맞게 입력해 주세요.

마무리

사실 Python을 주력 언어로 사용하다 보니 다른 언어들에 대해 언급은 적은 측면이 있습니다. 하지만 Autoenv 자체가 굉장히 심플한 스크립트로 이루어져 있기 때문에 필요에 맞춰 바꾸어 사용하는 것도 방법중 하나라고 생각합니다.

멋진 Terminal 만들기

이번 가이드는 macOS를 위한 가이드입니다.

맥을 개발용으로 사용하는 경우 터미널을 좀 더 편리하고 다양하게 사용하는 방법 중 기본 Shell인 bash대신 zsh을 사용하는 경우가 많습니다. 그리고 oh-my-zsh을 함께 사용해 더 많은 기능을 편리하게 깔수 있기도 합니다. 물론 oh-my-zsh의 기본 테마인 robbyrussell도 예쁘지만, 약간 아쉬운 점이 남기도 하죠. 좀 더 예쁘고 사용하고싶어지는 기분이 들도록 agnoster테마를 깔고 Oceanic Next색 테마를 입힌 후 터미널에서 사용하는 명령어가 제대로 쳤는지 확인해주는 zsh-syntax-highlighting를 깔아봅시다. 참, 터미널은 iTerm2라는 멋진 맥용 터미널을 먼저 깔아야 해요.

앞으로 나오는 가이드는 이미 깐 경우 Pass해주시면 됩니다.

iTerm2 설치하기

우선 iTerm2 다운로드 페이지에 들어가서 iTerm2를 받아주세요.

iTerm2 Download Page

Stable Releases중 최신 버전을 받아주세요. 다운 받은 후 압축을 풀면 iTerm2라는 맥 앱이 생길거에요. 맥 파인더에서 ‘응용 프로그램’으로 iTerm2를 옮겨주세요.

HomeBrew 설치하기

우분투의 APT와 비슷하게 프로그램 패키지를 관리해 주는 프로그램이 있습니다. 바로 HomeBrew라는 프로그램인데요, brew라는 명령어로 패키지를 관리할 수 있습니다.

HomeBrew 공식 홈페이지는 https://brew.sh/입니다.

아래 명령어를 터미널에 입력해주세요.

1
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Zsh 설치하기

zshbash에 추가적인 명령어를 추가하고 편의성을 개선한 새로운 쉘입니다. 한가지 예로 git 폴더 상태를 관리해주고 터미널에 상태를 나타내주는 점 등이 있습니다.

zsh은 위에서 설치한 brew를 통해 설치할 수 있습니다. 아래 명령어를 터미널에 입력해 주세요.

1
brew install zsh

OhMyZsh 설치하기

oh-my-zshzsh을 좀 더 편리하게 이용하게 이용해주는 일종의 zsh 플러그인입니다. oh-my-zsh은 아래 명령어를 통해 설치할 수 있습니다. 터미널에 아래 명령어를 입력해주세요.

OhMyZsh을 설치하면 기본 쉘을 zsh로 바꾸기 위해 맥 잠금해제 암호를 물어봅니다. 암호 입력시에는 입력해도 *같은 표시는 뜨지 않으니 그냥 입력하고 엔터를 눌러주세요!

1
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

Oceanic Next iTerm 색 테마 입히기

oceanic-next-iterm을 이용해 터미널의 색 테마를 바꿔봅시다. 우선 master.zip 파일을 받아줍시다.

master.zip파일의 압축을 풀어주면 Oceanic-Next.itermcolors파일을 보실 수 있으실텐데요, 이 파일을 더블클릭으로 실행하면 iTerm2의 색 테마에 추가가 됩니다.

iTerm2를 실행하고 맥 화면 상단 좌측의 사과 아이콘 옆 iTerm2를 누르고 나오는 메뉴 중 ‘Preferences…’를 눌러주세요.

이제 위 스크린샷처럼 Profiles > Default > Colors > Color Presets… > Oceanic-Next 로 차례대로 눌러주신 후 iTerm2를 껐다가 켜면 적용이 완료되어있을 거랍니다.

Agnoster 테마 설치하기

이제 우리 zsh의 테마를 위 스크린샷처럼 Agnoster테마로 바꿔줍시다!

텍스트 편집기(vi, sublimetext3, atom등)로 ~/.zshrc파일을 열어주세요.

만약 .zshrc파일에 특별한 수정을 하지 않았다면 10번째줄 처럼 ZSH_THEME를 설정하는 코드가 보일거에요. 이 줄을 아래 스크린 샷처럼 바꿔주세요.

1
ZSH_THEME="agnoster"

이제 새 탭을 열면 Agnoster테마로 바뀐 쉘이 보일거에요! 하지만 이렇게 하면 폰트가 일부 깨진답니다. 아래 Ubuntu Mono Powerline폰트를 받아 설정을 진행해주세요.

Ubuntu Mono derivative Powerline 폰트 설치 & 설정하기

우선 Ubuntu_Mono_derivative_Powerline.ttf를 다운받아 서체 설치를 진행해 주세요.

서체 설치가 완료되면 iTerm2를 다시 실행해 주세요.

주의: 서체 설치 전 iTerm2이 켜져있었다면 완전히 종료 후 다시 켜 주세요. 켜져있는 상태에서 설정에 들어간다면 설치한 폰트가 뜨지 않을 수 있습니다!

위에서 Oceanic Next 테마를 설치한 것과 같이 위 스크린샷처럼 Preferences..에 들어가 주세요.

그리고 위 사진처럼 Profiles > Default > Text > ChangeFont를 눌러주세요. 그러면 아래와 같은 창이 뜹니다. 시스템에 깔린 모든 폰트가 나오기 때문에 ‘고정폭’을 먼저 선택하고 폰트를 선택해 주세요.

zsh-syntax-highlighting 설치하기

이제 시스템의 PATH에 등록된 명령어들을 자동으로 Syntax HighLighting을 해주는 zsh-syntax-highlighting를 설치해 봅시다.

아래 명령어 두줄을 터미널에 입력해 주세요.

1
2
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git
echo "source ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc

수고하셨습니다 :D

이제 모두 끝났습니다!! iTerm2를 완전히 종료한 후 다시 실행해 보면 잘 작동되는 것을 보실 수 있으실거에요!

서브라임텍스트 터미널에서 실행하기(macOS)

이번 가이드는 macOS 용입니다.

들어가기 전

프로그램의 설치 경로

macOS에 프로그램을 설치하면 기본적으로 /Users/유저이름/Library(~/Library와 같음)에 위치합니다. 사용자의 Library에 저장되는 이 경로는 root 권한 없이도 응용프로그램을 추가하거나 제거하는 것이 가능합니다.

터미널에서 실행되는 경로, PATH

대부분의 운영체제에서는 PATH가 있습니다. 그리고 이 PATH에 등록된 경로는 시스템 전역에서 호출 가능한 위치가 됩니다. 예를들어 PATH에 등록된 경로 중 /usr/local/bin폴더가 있었다면 아래와 같이 python명령어를 실행할 경우 /usr/local/bin/python에 있는 파이썬이 실행됩니다.

1
2
➜ ~ which python
/usr/local/bin/python

그리고 기본적으로 /usr/local/bin폴더는 사용자 터미널의 PATH에 등록되어있습니다. 따라서 SublimeText3(혹은 2) 실행 프로그램을 ln -s명령어를 통해 /usr/local/bin폴더에 심볼릭 링크를 걸어줘야 합니다.

심볼릭 링크란? 파일을 이동하지 않고 어떤 위치에 바로가기를 하나 더 만드는 것입니다. 윈도우의 바로가기 아이콘과 비슷하다고 생각하시면 됩니다.

SublimeText가 깔렸는지 확인하기

최신 버전의 sublimetext는 3버전입니다. 하지만 2버전도 유사한 방식으로 사용할 수 있습니다.

우선 아래 명령어를 터미널에 입력할 경우 실행이 되는지 확인해보세요.

코드를 그대로 복사해서 사용하세요!

1
2
3
4
# SublimeText3 의 경우
open /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl
# SublimeText2 의 경우
open /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl

위 명령어를 쳐서 서브라임 텍스트 창이 뜬 경우 아래 가이드를 따라가 주시면 됩니다.

심볼릭 링크 등록하기

우리는 subl이라는 명령어로 서브라임 텍스트 프로그램을 실행할 계획입니다.

터미널에 아래와 같은 명령어를 입력해 주세요.

SublimeText3인 경우:

1
ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl

SublimeText2인 경우:

1
ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl

모두 끝났습니다!

이제 터미널에서 subl이라는 명령어를 통해 서브라임 텍스트를 실행할 수 있습니다 :)

그냥 서브라임텍스트를 실행하려면

1
subl

현 폴더를 열려면

1
subl .

이와 같이 subl뒤에 파일/폴더등을 인자로 전달해 줄 수 있습니다.

만약 위 방식으로 되지 않으신다면 .zshrc이나 .bashrc등의 파일에 아래와 같이 입력해 주세요.

1
alias subl="open -a /Applications/Sublime\ Text.app"

macOS 환경설정에서 Shift Space로 한영 전환하기

이번 가이드는 macOS 10.12 Sierra 기준입니다.

맥을 사용하다 보면 한영 전환키가 계속 바뀌어 불편함을 느끼는 경우가 많습니다. 처음에 알게 된 전환키를 익숙하게 쓰고, 특히 여러 OS를 번갈아가며 사용할 때에는 언어 전환 키를 통일해 사용하는 것이 편리합니다.

물론 맥의 키보드 환경설정에서는 기본적으로 사용자가 원하는 키보드 조합을 통해 언어 전환을 할 수 있습니다.

우선 키보드 전환 설정으로 들어가봅시다. 환경설정에서 키보드로 들어가주세요.

키보드로 들어가신 후 아래 빨간 네모대로 클릭을 해 주세요.

여기서 마지막 네모를 더블클릭하고 키를 입력하면 언어 변경키를 지정할 수 있는데요, 더블클릭 후 Shift+Space를 누르면 아무런 반응이 일어나지 않는걸 보실 수 있습니다.

하지만 사실은 가능합니다!

입력키 변경(입력키 부분 더블클릭시 변경 가능)을 할 때 fn + shift + space를 이용하면 위 사진와 같이 Shift+Space조합으로 이전 언어로 변경하기 키가 사용가능하도록 바뀐 것을 볼 수 있습니다.

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×