Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Observable
- collectionview
- Human interface guide
- tableView
- uitableview
- map
- HIG
- ios
- Xcode
- rxswift
- swiftUI
- 스위프트
- UICollectionView
- 클린 코드
- combine
- 애니메이션
- swift documentation
- Protocol
- uiscrollview
- MVVM
- Refactoring
- SWIFT
- 리펙터링
- clean architecture
- Clean Code
- 리팩토링
- UITextView
- RxCocoa
- ribs
- 리펙토링
Archives
- Today
- Total
김종권의 iOS 앱 개발 알아가기
[iOS - swift] 3. custom shortcut (커스텀 단축키) 만드는 방법 - shell script 입력, 정렬, 출력 (import문 알파벳 순으로 정렬 단축키) 본문
Git, CocoaPods, Xcode, Shell
[iOS - swift] 3. custom shortcut (커스텀 단축키) 만드는 방법 - shell script 입력, 정렬, 출력 (import문 알파벳 순으로 정렬 단축키)
jake-kim 2023. 3. 30. 01:011. custom shortcut (커스텀 단축키) 만드는 방법 - 기본 개념 (plistbuddy, defaults, NSUserKeyEquivalents)
2. custom shortcut (커스텀 단축키) 만드는 방법 - Xcode의 import 부분을 정렬하는 단축키 만들기 개념 (Services)
3. custom shortcut (커스텀 단축키) 만드는 방법 - shell script 입력, 정렬, 출력 (import 정렬 단축키 만들기)<
프로젝트 준비
- 2번글까지 알아본 개념
- Xcode > Services 항목에 키보드 맵핑까지 완료했고, .sh파일에서 테스트 용으로 echo test만 입력되어, 단축키 입력 시 test만 뜨는 상황
- 초기세팅인 github에서 clone 후 root로 이동
.
├── install.sh
├── my custom shortcut.workflow
│ └── Contents
│ ├── Info.plist
│ └── document.wflow
└── myCustomShortcut.sh
- 목표: myCustomShorcut.sh를 변경하여 Xcode에서 읽어온 문자열들을 저장한 후, 정렬하고나서 다시 출력하는것
myCustomShortcut.sh 수정) shell script 입력, 정렬, 출력
- 많은 입력이 들어올때 한줄씩 eof (end of file)까지 입력하는 명령어
#!/bin/sh
# eof 까지 파일 입력
while read line || [[ -n "$line" ]]; do
arr+=("$line")
done < /dev/stdin
- 정렬
# 정렬
arr_length=${#arr[@]}
for (( i=0; i<${arr_length}-1; i++ ))
do
for (( j=$i+1; j<${arr_length}; j++ ))
do
if [[ "${arr[$i]}" > "${arr[$j]}" ]]; then
temp=${arr[$i]}
arr[$i]=${arr[$j]}
arr[$j]=$temp
fi
done
done
- 출력
# 출력
for item in "${arr[@]}"
do
echo "$item"
done
(shell script 완성)
import문 알파벳 순으로 정렬 단축키 사용해보기
- ./install.sh 실행
% ./install.sh
copying Service into ~/Library/Services/ ...
copying myCustomShortcut.sh into ~/Library/Services/ ...
add custom shortcut for XCode ...
restart xcode
- Xcode 오픈
- 지정한 단축키 (ctrl + shift + cmd + 1) 입력하면 정렬 완료
- 단축키 쉽게 변경 방법
- 시스템 환경설정의 키보드 -> 키보드 단축키 -> 서비스 탭 -> 오른쪽 목록 텍스트 하위에서 키보드 단축키 등록
응용) impot 길이 순서 정렬하기
* 전체 코드
- (알파벳 순으로 정렬): https://github.com/JK0369/xcode_custom_shortcut
- (길이 순으로 정렬): https://github.com/JK0369/sort_by_length_shortcut_xcode
* 참고
https://github.com/kudinovdenis/Xcode-headers-sorting
https://apple.stackexchange.com/questions/115675/set-services-keyboard-shortcut-via-script-osx
'Git, CocoaPods, Xcode, Shell' 카테고리의 다른 글
Comments