https://github.com/jaem1n207/synchronize-tab-scrolling
A browser extension that lets you synchronize the scrolling position of multiple tabs
https://github.com/jaem1n207/synchronize-tab-scrolling
extension scroll-sync svelte webstore
Last synced: 3 months ago
JSON representation
A browser extension that lets you synchronize the scrolling position of multiple tabs
- Host: GitHub
- URL: https://github.com/jaem1n207/synchronize-tab-scrolling
- Owner: jaem1n207
- License: mit
- Created: 2023-07-12T02:32:44.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-22T02:41:11.000Z (about 2 years ago)
- Last Synced: 2024-04-22T04:20:31.382Z (about 2 years ago)
- Topics: extension, scroll-sync, svelte, webstore
- Language: TypeScript
- Homepage: https://chromewebstore.google.com/detail/synchronize-tab-scrolling/phceoocamipnafpgnchbfhkdlbleeafc
- Size: 1.48 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 7
-
Metadata Files:
- Readme: README-ko_kr.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
Synchronize Tab Scrolling
한 번 스크롤하면, 모든 탭이 함께 움직입니다.
여러 탭의 스크롤을 동시에 맞춰주는 브라우저 확장 프로그램이에요.
ENGLISH | 한국어
---
## 이게 뭔가요?
두 문서를 나란히 놓고 읽을 때(ex: 원문과 번역문) 스크롤을 맞추는 게 번거로웠죠? 이 확장 프로그램이 그 문제를 해결해 줘요.
**한 탭에서 스크롤하면, 연결된 모든 탭이 같은 위치로 자동으로 따라와요.**
---
## 사용 영상
---
## 사용 방법
### 1단계: 설치
위의 브라우저 배지 중 하나를 클릭해서 각 브라우저의 확장 프로그램 스토어에서 설치해 주세요.
### 2단계: 탭 열기
탭을 두 개 이상 열어 주세요.
### 3단계: 동기화 시작
1. 브라우저 도구 모음에서 확장 프로그램 아이콘을 클릭해 주세요
2. 동기화할 탭을 선택해 주세요 (체크박스 선택)
3. **"동기화 시작"** 버튼을 클릭해 주세요
### 4단계: 스크롤!
동기화된 탭 중 아무 곳에서나 스크롤해 보세요. 연결된 모든 탭이 자동으로 따라와요.
### 팁: 수동 위치 조정
원문과 번역문처럼 같은 내용이라도 언어에 따라 길이가 달라요—어떤 언어는 간결하게, 어떤 언어는 길게 표현하니까요. 그래서 스크롤하다 보면 읽고 있는 위치가 점점 어긋나기도 해요.
**Option** (Mac) 또는 **Alt** (Windows) 키를 누른 채로 스크롤하면, 다른 탭에 영향을 주지 않고 특정 탭의 위치만 조정할 수 있어요. 키를 놓으면 조정된 위치를 기준으로 동기화가 계속돼요.
### 5단계: 동기화 중지
확장 프로그램 아이콘을 다시 클릭해서 **"동기화 해제"**를 선택하거나, 동기화된 탭을 닫으면 돼요.
---
## 지원되지 않는 페이지
브라우저 보안 제한 때문에 아래 페이지에서는 동기화가 안 돼요:
- 브라우저 내부 페이지 (`chrome://`, `edge://`, `about:`)
- 확장 프로그램 스토어
- Google 서비스 (문서, 드라이브, Gmail, 스프레드시트 등)
- 일부 웹 앱 (Figma, JIRA, Microsoft Office Online, Notion 등)
- 검색 엔진 결과 페이지 (Google 검색, 네이버, Bing, DuckDuckGo 등)
- PDF 파일 및 PDF 뷰어
- 로그인/인증 페이지
- 특수 URL (`view-source:`, `data:`, `file://`)
이런 탭은 선택 목록에서 비활성화돼요.
---
## 누구를 위한 건가요?
- 여러 논문을 동시에 검토할 때
- 코드 버전을 나란히 비교할 때
- 원문과 번역문을 비교할 때
- **여러 문서를 동시에 다루는 모든 분**
---
## 주요 기능
### 실시간 스크롤 동기화
한 탭에서 스크롤하면, 연결된 모든 탭이 같은 위치로 즉시 이동해요.
```mermaid
flowchart LR
subgraph 사용자["사용자 동작"]
A[탭 A에서 스크롤]
end
A --> B[확장 프로그램이 위치 감지]
B --> C[탭 B가 같은 위치로 이동]
B --> D[탭 C가 같은 위치로 이동]
```
### 수동 위치 조정
문서의 위치가 완벽하게 맞지 않을 때가 있어요. **Option** (Mac) 또는 **Alt** (Windows) 키를 누른 채로 스크롤하면, 동기화를 유지하면서 개별 탭의 위치를 조정할 수 있어요.
```mermaid
flowchart TD
A["Option/Alt 키 누르기"] --> B["한 탭에서 자유롭게 스크롤"]
B --> C["키 놓기"]
C --> D["새 위치가 저장됨"]
D --> E["새 기준점에서 동기화 계속"]
```
### URL 이동 동기화
한 탭에서 링크를 클릭하면, 연결된 모든 탭이 같은 주소로 함께 이동해요.
### 자동 동기화 제안
동일한 URL을 가진 탭이 여러 개 열리면, 각 탭의 오른쪽 하단에 토스트 알림이 나타나요. 클릭 한 번으로 스크롤 동기화를 시작할 수 있어요.
```mermaid
flowchart LR
A[동일 URL 탭 2개 이상 열기] --> B[토스트 표시]
B --> C{사용자 선택}
C -->|동기화 시작| D[동기화 시작됨]
C -->|지금 안 함| E[세션 동안 무시됨]
C -->|이 사이트에서 표시 안 함| F[도메인 영구 제외]
B --> G[10초 후 자동 사라짐]
```
이 기능은 **기본적으로 활성화**되어 있어요.
- **작업 메뉴** → **"동일한 URL 동기화 제안"**에서 전체 비활성화할 수 있어요
- 토스트의 **"이 사이트에서 다시 표시 안 함"**을 클릭하면 특정 도메인만 제외할 수 있어요
- **작업 메뉴** → **"제외된 도메인 관리"**에서 제외 목록을 관리할 수 있어요
이미 동기화가 진행 중일 때 새로운 동기화 제안이 나타나면, 토스트에 경고 메시지와 **"교체하고 동기화"** 버튼이 표시돼요.
### 도메인 제외 관리
특정 도메인을 자동 동기화 제안에서 영구적으로 제외할 수 있어요. 동기화 제안이 필요 없는 사이트에 유용해요.
**도메인을 제외하는 방법:**
- 동기화 제안 토스트에서 **"이 사이트에서 다시 표시 안 함"**을 클릭
- 또는 **작업 메뉴** → **"제외된 도메인 관리"**에서 직접 추가
**제외 목록 관리 방법:**
- 확장 프로그램 팝업 → **작업 메뉴** → **"제외된 도메인 관리"** 열기
- 새 도메인 추가 또는 기존 도메인 삭제
- 키보드로 탐색: 화살표 키로 이동, Enter로 확인, Delete로 삭제
### 자동 재연결
탭의 연결이 끊어지면(예: 컴퓨터가 절전 모드에서 깨어난 후) 확장 프로그램이 자동으로 다시 연결하고 동기화를 재개해요. 별도의 조작이 필요 없어요.
```mermaid
flowchart LR
A[연결 끊김] --> B[자동 감지]
B --> C[재연결]
C --> D[동기화 재개]
```
---
## 지원 언어
확장 프로그램 인터페이스는 **9개 언어**로 제공돼요:
| 언어 | 코드 |
| ------------------- | ----- |
| English (영어) | en |
| 한국어 | ko |
| 日本語 (일본어) | ja |
| Français (프랑스어) | fr |
| Español (스페인어) | es |
| Deutsch (독일어) | de |
| 중국어 (중국) | zh_CN |
| 중국어 (대만) | zh_TW |
| हिन्दी (힌디어) | hi |
---
## 개인정보 보호정책
**여러분의 개인정보를 소중히 생각해요.**
- **데이터 수집 없음**: 어떤 개인 정보도 수집하거나 저장하지 않아요
- **분석 없음**: 추적, 쿠키, 원격 측정 없음
- **네트워크 요청 없음**: 확장 프로그램은 완전히 오프라인으로 작동해요
- **오픈 소스**: [모든 코드를 직접 확인](https://github.com/jaem1n207/synchronize-tab-scrolling)할 수 있어요
이 확장 프로그램은 동기화를 위해 명시적으로 선택한 탭에만 접근하며, 모든 데이터는 여러분의 기기에만 저장돼요.
---
## 지원
문제가 있으신가요? 도움을 드릴게요:
- **이메일**: [tech.jmtt@gmail.com](mailto:tech.jmtt@gmail.com)
- **GitHub**: [버그 신고하기](https://github.com/jaem1n207/synchronize-tab-scrolling/issues/new?title=버그%20신고&labels=bug&assignees=jaem1n207)
---
## 기여하기
기여하고 싶으신가요? [Contributing Guide](./CONTRIBUTING.md)에서 개발 환경 설정과 가이드라인을 확인해 주세요.
---
## 라이선스
MIT 라이선스. 자세한 내용은 [LICENSE](./LICENSE) 파일을 확인해 주세요.