윈도우로 PC 사용을 시작한 사람들이 macOS를 쓰면서 의외로 많이 찾는 프로그램이 메모장(Notepad)이더라구요. 기본앱에 윈도우에 메모장에 대응하는 앱이 텍스트 에디터(Text Editor)인데, 얘는 윈도우로 치면 오히려 워드패드(Wordpad)에 가까운… 기능이 아주 많은 앱이거든요. 게다가 기본 설정으로는 서식 없는 복사가 안됩니다. 설정에서 '일반 텍스트'로 바꿔 줘야 복사 붙여 넣기 할 때 서식을 뺍니다.
은근 사람들이 웹 페이지 등에서 텍스트를 복사하면서 서식을 빼버리고 싶을 때 메모장에 한 번 붙여 넣었다가 다시 복사해서 쓰거든요. 물론 서식없는 복사를 하는 단축키가 있기는 하지만 의외로 잘 모르는 사람들이 많습니다. 사실 저도 모릅니다.
그래서 macOS에서 서식 없는 복사를 하려고 별도 텍스트 에디터를 다운 받아 사용합니다. 저는 회사에서는 유료인 BBeditor를 쓰고 (회사에 볼륨 라이센스가 있습니다.) 제 개인 맥북에는 coteditor라는 오픈 소스 프로그램을 씁니다.
bbeditor나 coteditor를 알기 전에는 만들어서 썼습니다. 사실 서식 없는 텍스트 복사라는게 그냥 텍스트 필드 위젯 하나만 딱 붙여서 프로그램 하나 만들어 쓰면 되거든요.
그래서 프로그래밍을 할 줄 아는 사람들에게는 딱 한마디만 하면 됩니다.
"SwiftUI 에서 texteditor 하나만 붙여서 빌드하면 돼"
지금부터 저 한 마디를 어떻게 하는건지 알려드리겠습니다.
메모장 정도는 직접 만들어 쓰자구요 :)
Xcode에서 새로운 프로젝트 시작합니다.

macOS 에서 App을 선택합니다.

이름은 적당히 정합니다. 저는 Notepad로 정했어요.
SwiftUI로 설정합니다.

그러면 이런 코드가 자동 생성됩니다.
import SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Image(systemName: "globe")
.imageScale(.large)
.foregroundColor(.accentColor)
Text("Hello, world!")
}
.padding()
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
코드를 이해할 필요는 없습니다. 그래도 어디를 고쳐야 하는지는 찾아야 겠지요?
VStack 이라고 써 있는 부분만 바꾸면 됩니다.
이렇게 바꿉니다. 그냥 전체를 긁어서 다 덮어 써 버리면 됩니다.
import SwiftUI
struct ContentView: View {
@State private var fullText: String = ""
var body: some View {
VStack {
TextEditor(text: $fullText)
}
.padding()
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
그리고 신호등 버튼 옆에 있는 세모를 누릅니다. 재생 버튼 모양이죠.

여길 누르면 잠시 시간이 지나고 "Build success" 던가? 그런 팝업같은게 떴다가 사라진 다음 Notepad라는 프로그램이 나옵니다.

끝이에요.. 한번 코드를 붙여 넣어 볼께요. 서식이 없어진채로 붙여 넣기가 됩니다.
와! 여러분은 방금 메모장을 만들었습니다. :)
실행 파일은 아래 경로에 있어요.
~/Library/Developer/Xcode/DerivedData/Notepad-fybsyafkvhcusbcdehfbdoxfpoap/Build/Products/Debug
Notepad-xxxxxxxxx 에서 xxxxxx 부분은 아마 시스템마다 다를꺼에요. 저 경로에서 Notepad.app 을 복사해서 Application 디렉토리에 복사해 넣고 쓰거나…
메뉴에서 Product에 있는

Archive를 선택하고

Distribute App을 눌러봅니다. 그러면 아래처럼 뭘 선택하라고 나옵니다.

Copy App을 선택하고 디렉토리 이름을 적당히 적어서 export를 누르면

Notepad.app이 거기에 생깁니다.
이거를 Applications 에 복사해서 쓰면 됩니다.
참 쉽죠?
애플 단축어 앱 이용하는것도 괜찮습니다. 맥 경우는 상단바에 놔둘수도 있어서 투클릭으로 서식이 사라지는..
Cmd + Option + Shift + V
하시면 플레인 텍스트로 나옵니다 :)
말씀하셨듯이, 설정(>포맷)에서 리치 텍스트 대신 일반 텍스트를 선택해두면 계속 적용되기 때문에 별다른 불편없이 사용은 가능하죠. 그리고, 이곳 설정 메뉴를 조금만 조정하면 입맛에 맞게 사용이 가능한데, 저는 창크기와 서체, 폰트 사이즈 등을 조정하여 사용중입니다. 산돌고딕 네오, 14폰트 정도로 조정하면 가독성이 좋아지더라고요.
그리고 제가 사용하는 또 다른 팁은, 윈도우 메모장처럼 앱을 클릭하면 바로 빈 문서가 열리도록 하는 방법입니다.
대부분의 경우 빈문서를 열려고 텍스트편집기를 쓰는데, 첫화면이 불러오기 메뉴라 다시 새로운 도큐멘트를 선택해야하는 번거로움이 있어서 말이죠.
defaults write -g NSShowAppCentricOpenPanelInsteadOfUntitledFile -bool false
되돌리려면,
defaults write -g NSShowAppCentricOpenPanelInsteadOfUntitledFile -bool true
그맇게 사용하면, 별도의 에디터없이 기본 앱(텍스트편집기)만으로도 큰 불편없이 사용 가능하더라고요.
이런 간단하지만 유용한 프로그램 만드는 강좌 더 올려주신다면 너무 좋을 것 같습니다 ^^