본문 바로가기

IT

[Sketch] Symbol Library가 깨지는 이유와 유형

Sketch.. 이놈의 CV

스케치 47버전 이후에 도입된 심볼라이브러리 기능은 디자인 작업에서 많은 편리함을 제공하지만 반대로 가장 흔히하는 cmd C + V 과정에서 엄청난 혼란을 주기도 합니다.
몇가지 오류 케이스를 찾아보고 해결 방법을 기록합니다.

이 게시물은 51버전을 기준으로 2018년 10월15일에 작성됐습니다.

오류 케이스

"심볼 라이브러리 업데이트가 반영이 안됩니다"

심볼 라이브러리 작업의 가장 대표적인 오류로..라이브러리 작업자의 실수로 예상됩니다.

모든 심볼은 각각 ID와 Name을 가지고 있습니다. 우리가 보는 스케치 화면에서는 Name으로 보이지만, 실제로 내부적으로는 각 심볼마다 ID를 바탕으로 연결되어 있습니다.
즉, 같은 이름(name)의 심볼이라고 라이브러리 업데이트로 연동되는 것이 아닙니다. 

그런데, 작업자가 만약 심볼을 삭제하고, 같은 이름의 심볼을 다시 만들어서 작업을 했다면? 라이브러리 심볼이 연동되지 않는 문제가 발생합니다. 
혹시 이런 문제가 의심된다면 'Insert > Organize Style > Imported Symbol'을 확인해보세요. 아마 문제가 되는 심볼은.. 같은 이름의 여러개의 심볼이 연동되고 있을지도 모릅니다.


심볼의 연결을 끊어보면 (Unlink) 문제는 더 확실해집니다.
아래 이미지처럼 같은 이름의 심볼이 중복된 것을 확인할 수 있습니다. 


해결방법1 : 수작업(노가다)

중복된 심볼이 적은 경우라면 수작업으로 교정을 하는 것을 추천합니다.
중복된 항목의 이름을 변경하고, Symbol Renamer 플러그인으로 모든 문서의 심볼 이름을 변경하면 아래 그림과 같이 손쉽게 검색해서 변경을 할 수 있습니다. 

    



플러그인을 사용하지 않는다면 심볼을 붉은색이나 아래 그림과 같이 패턴 등의 눈에 띄는 모양으로 변경을 해서 육안으로 찾는 것도 방법입니다.
찾은 심볼은 우측의 Override를 변경해서 심볼을 하나로 정리를 해줍니다. 


해결방법2 : 가장 손쉬운 방법은 플러그인을 사용하는 것입니다. 

다만 플러그인에만 너무 의존하는 것에 문제가 있고..
플러그인으로 한번에 심볼을 수정한다면 Override Text가 초기화되는 등의 문제가 있습니다. 따라서 무조건 플러그인을 맹신하는 것은 권장하지 않습니다.
심볼이 지나치게 복잡하게 꼬여있는 경우라면 사용하시기 바랍니다. 

제가 추천하는 플러그인은 Symbol Instance Locator 입니다. 이 플러그인을 사용해서 중복되는 심볼의 Instance와 Override를 찾아서 손쉽게 수정할 수 있습니다. 
또한 Merged Symbol 플러그인을 사용해서 합치는 것도 가능합니다. 


" 심볼이 업데이트가 되는 것이 아니라 로컬심볼로 복사 붙여넣기 됩니다."


초보자에게 가장 흔하게 발생하는 문제기도 합니다. 

심볼라이브러리를 사용하지 않고, 그냥 심볼의 컴포넌트 페이지를 복사 붙여넣기를 통해서 작업을 하는 경우...

심볼이 라이브러리가 아니라 그냥 로컬 심볼로 복사 붙여넣기 되는 경우가 있습니다. 

이 경우는 라이브러리가 아니므로 당연히 연동도 되지 않습니다. 심볼페이지를 유심히 확인하셔야 합니다. (중복도 흔합니다..)



" 같은 심볼이 여러 개가 업데이트 됩니다."

맨 처음에 언급한 Imported symbol이 문제일 가능성이 높습니다. 
'Insert > Organize Style > Imported Symbol' 에서 같은 이름의 심볼을 확인하고 연결을 풀어서 정리하세요.

그게 아니라면 아마 원본 라이브러리에서 여러 개의 동일한 이름(name)의 심볼이 있을 것 입니다... (라이브러리 제작자에게 따져야 합니다.)