daybreaker 작성:

textarea나 위지윅 박스 하나만 놓고 편집하는 게 아니라, 글을 여러 개의 세분화된 항목으로 나누어 각각의 내용을 입력하도록 만든다든가 하는 것도 가능하겠죠.

Mediawiki처럼 단락별 수정이 가능해진다면 그것도 괜찮겠군요. 위키피디아에서도 단락별 수정이 가능하기에 편집하기 용이했던 기억이 납니다.

지금 편집기의 버튼 중에 제목을 h1~h6 태그로 넣을 수 있는 부분이 있습니다. 안그래도 이 제목(단락) 기능이 거의 쓰이지 않는다는 게 아쉬웠습니다. Mediawiki처럼 단락 수정이 되면 좀 더 적극적인 사용이 될 수 있습니다. 즉 h* 태그로 각 단락을 구분하게 쓰고 단락별 글 수정을 할 수 있게 만드는 방식입니다.

긴 글의 경우 단락으로 나누어도 수정할 때마다 마치 스킨 내부의 복잡한 태그를 찾는 불편함이 있더군요. 편집기의 제목 기능을 활성화할 수 있는 방법으로도 좋으리라 봅니다.

웹 에디터의 위지위그 모드에서 속성 선택 박스에서 제목란에 html에 없는 h7 항목이 있습니다. h* 요소는 h1~h6까지이므로 h7은 삭제되어야 합니다.

http://www.w3.org/TR/html401/struct/global.html#h-7.5.5

태터툴즈 버전은 1.1.2.1 입니다.


여담으로 이 '제목'(또는 단락) 기능이 좀 더 본격적인 사용이 되었으면 합니다. 인터페이스 면으로 유도하게끔 하는 게 이상적인데 새로운 웹 에디터가 도입되면 다시 건의하겠습니다.

우선 연달아 토픽을 올리게 되어 죄송합니다. 한 번 생각이 트기 시작하니 걷잡을 수가 없어서...

상단에 걸려있는 patchworks 프로젝트를 봤습니다. 처음엔 편집기 계층의 시멘틱 태그와 표현 css를 나눈다는 얘기인지 알았습니다. 알고보니 그게 아니라 편집기와 포매터를 나눈다는 얘기더군요. 앞으로 이 형식으로 바뀌게 된다면 같이 도입했으면 하는 기능이 있습니다.

글을 쓰다보면 특정 분류의 글은 일정한 형식을 갖출 때가 있습니다. 가령 서평이나 전문 분야의 동일 계열 글을 쓸 때 이전과 거의 유사한 외형을 갖추는 경우입니다. 이럴 때 이전과 같은 틀을 맞추기 위해 매번 반복되는 작업을 해야 합니다. (물론 동일 계열의 글이라도 쓸 때마다 의도적으로 외형을 바꾸는 경우도 있습니다)

이때 템플릿 기능이 있다면 미리 정해진 틀을 따라 정형화된 외형을 만들어낼 수 있습니다. 일단 한 번 외형을 갖춘 글을 쓰고나면 다음에 다른 글을 쓸 때도 틀만 불러서 채워넣을 수 있습니다. 다만 이게 편집기 계층의 기능으로 들어가야 할지 아니면 포매터에 들어가야 할지는 모르겠습니다.

템플릿 기능을 도입하게 되면 기존의 방식과는 반대로 글을 작성하게 됩니다. 기존에는 글 내용을 쓰고나서 부분부분 모양을 덧해주는 형태지만, 템플릿은 미리 모양을 불러온 후 내용을 채워넣는 형식입니다. 틀을 잘 만들어 놓는다면 요긴하게 쓸 수 있는 기능이 아닌가 싶습니다.

템플릿을 구현할 경우 일단 하나의 완성된 글에서 내용(텍스트)만 빼고 모양만 저장한 다음, 새 글에서 템플릿을 불러오면 됩니다. 단, 내용이 비어있을 경우 위지위그 모드에서는 간격 구분이 잘 되지 않으므로 적절한 문장을 넣어줄 필요가 있습니다.

이상적인 시나리오는 아래와 같습니다.

하나의 완성된 글을 작성
→ 템플릿 뽑아내기 기능으로 틀 만들기
→ 템플릿의 각 파트마다 설명 문장 추가 (*1)
→ 새로운 글 작성
→ 분류에 맞는 기존의 템플릿 불러오기
→ 내용만 채워넣으면서 글 작성

*1은 해도 되고 안해도 되지만 자연스레 유도할 수 있는 게 좋습니다.
위지위그 모드를 사용해보신 분들은 아시겠지만, 모양을 입힌 뒤에 내용을 지우면 그 부분이 원래 무엇을 위한 공간이었는지 알기 어렵습니다. 그래서 “이곳에 제목을 적습니다”, “별점을 표시하는 구간입니다.”, “자료에 대한 메타 데이터를 기록하는 곳” 등으로 기입하는 것이 좋습니다. 물론 이것은 템플릿의 성격에 따라 변하기 때문에 템플릿 작성자에게 맡길 수 밖에 없습니다. 또는 미리 일정의 템플릿을 만들어놓고 배포할 때 포함시키는 방법도 있습니다.


기타.

템플릿 기능이 도입될 경우의 부작용도 생각할 수 있습니다.
- 웹 에디터의 복잡한 구현 (버그 발생 가능성이 높아질 수 있음)
- 템플릿을 만들어 놓은 뒤 잘 쓰지 않게 됨 (이렇게 되지 않기 위해 템플릿을 공개/공유한다던가...)
- 글 형태의 정형화 (대신 좀 더 글을 편리하게 쓸 수 있다는 장점이 있음)


대충 생각난 건 이 정도입니다. 도입될 여지가 있다면 검토해주시길 바랍니다.

웹에디터 부분에 건의할 게 많았는데 마침 관련 글을 찾아서 붙여봅니다.

지금 웹에디터에서 색상이 들어가는 텍스트 상자는 다섯 가지가 있습니다. 그런데 이 색상이 inline style 내에서 선언되는 형식이라 스킨이 바뀌거나 배경색이 바뀌게 될 경우 문제가 생길 수 있습니다. background-color만 선언되어 있고 color이 선언되어 있지 않아서 스킨이 바뀔 경우 글자를 아예 못 읽는 사태가 생길 수도 있습니다.

여기까지는 이미 내부에서도 인지하고 있는 문제가 아닐까 싶어 자세한 건 생략하겠습니다. 지금 웹에디터도 근본부터 뜯어고치는 중인 듯 하니...  스킨에서 미리 정의된 박스 스타일을 선택할 수 있다면 좋겠지만 그리 쉬운 문제가 아닐 듯 하군요.

그리고 이쪽은 좀 다른 얘기입니다만 추후 웹에디터가 바뀌더라도 참고 사항으로..

edit 모드로 편집을 해보니 일부 편집은 그대로 무시가 됩니다. 가령,

<img src="[##_ATTACH_PATH_##]/파일명.gif" width="80" height="16" />

위와 같은 코드에 style="" 이나 class="" 식으로 덧붙여놓고 저장하거나 html 모드로 변경하면 초기화 되어 있습니다. FREE 버튼을 이용해서 문단 모양에 영향을 받지 않고 이미지를 삽입할 때 이미지 속성을 선택할 수 없습니다. 따라서 수동으로 고쳐야 하는데 고칠 수가 없는 상태가 됩니다. alt 속성을 넣거나 하는 것도 안 되더군요. 따로 수정이 가능하던가 아니면 FREE 버튼으로 삽입한 것도 이미지 속성이 나오도록 해야겠습니다.

해당 분류를 선택해서 분류 목록의 글을 수정 후, 분류뿐 아니라 해당 페이지도 같이 유지된 상태로 전환되는 게 좋겠습니다. 다만 해당 페이지가 없다면 그 이전 페이지를 표시해야 할 겁니다.

예를 들어, <임시 글>이라는 폴더를 선택 후 10 페이지로 가서 글을 수정했는데 분류도 같이 바꾸어서 해당 페이지가 없을 때 처리도 필요합니다. 10 페이지에 표시되는 글이 딱 한 개였다면 그 글의 분류가 바뀌게 되면 10 페이지는 존재하지 않으므로 9 페이지로 가야합니다. 이 경우는 원래 분류 페이지를 유지하기보다는 9 페이지를 표시하는 게 올바르다고 봅니다. (너무 꼼꼼한 처리일까요?)

글로 설명하기가 좀 애매하군요. 이해하셨으리라 믿습니다. ^^

답변 감사합니다.

스킨을 웹 페이지에서 바로 편집하는 부분은 자바스크립트를 어디까지 활용하느냐가 문제입니다. 너무 기능적으로 만들게 되면 분명히 브라우저 동작이 무거워집니다. 특히 문자열을 다루는 문제이니만큼 일정 수준이 넘어가면 오히려 기능 때문에 편집하기가 답답하다고 느낄 우려가 있습니다. 가급적이면 심플하면서도 기본 기능에 부족하지 않는 방향으로 개발되었으면 합니다.

1번 문제의 경우 제가 태터툴즈의 현재 내부 구조를 잘 모르기 때문에 이 변경 사항이 어떤 영향을 끼칠지 모릅니다. 현 상태에서 바꿀 수 있는 방법을 일단 제안해본 것인데, 에디터 부분의 문자열 취급은 상당히 복잡한 문제라고 생각합니다. 아마 \ 등의 몇몇 문자 처리도 몇 번 시행착오를 거쳤을 것이라 봅니다. 또한 기존에 적은 글이 바뀐 지침에 의해 의도치 않게 편집되는 일이 있어선 안될테니 꽤 복잡한 문제겠군요.

대량의 미분류된 글을 수정하고 있습니다.
글 목록 보기 화면에서 미분류 목록을 선택 후(분류하기 위해 따로 임시 분류를 생성했음) 하나씩 수정을 해보니 불편한 점이 있습니다. 글 수정 후에 분류 선택했던 상태가 유지되지 않고 모든 분류의 글이 나오게 됩니다. 그래서 임시 방편으로 브라우저의 탭 기능을 이용해서 하나씩 수정하고 있습니다.

분류 선택 후 글 수정시 선택했던 분류로 다시 글 목록이 나왔으면 합니다. 사용자가 분류 글만 출력 후 글을 수정했다는 것은 해당 분류에 할 일이 있다는 뜻이라고 생각합니다.

안녕하세요. 옛날(?) crizin님에게 포럼 방문을 제안받았다가 이제서야 들러봅니다.
개인적으로 예전부터 생각하던 것과 요즘 들어 새롭게 생각나는 건의 사항을 같이 올려봅니다.

1. [] 문자 처리.
예전에 태터 클래식일 때도 그랬지만 스킨 자체의 예약어(치환자) 때문에 특정 플러그인을 만들거나 설명할 때 애로사항이 있는 점을 자주 보아왔습니다. 가령 스킨 내부에 있는 특정 치환 문자열을 표시하기 위해 [ # FOO# ] 이런 식으로 적은 다음 [ 와 #는 붙여쓰세요! 하는 식의 글을 보았습니다. 글에서 직접 그대로 표시하면 프로그램 내부의 코드에 의해 치환되어버리기 때문입니다.

HTML에도 이러한 형식의 문제가 있습니다. 그래서 미리 예약된 문자의 의미를 피하기 위해 html entity라는 형식이 있습니다. 다들 아시다시피 <는 < 로 >는 >로 &는 &로 등등. 이것을 태터툴즈에서도 적용할 필요가 있다고 봅니다. [# 로 시작하거나 #]로 끝나는 문자는 프로그램 내부에서 특정한 의미를 가지는 문자열이므로 이것을 entity 처리해주는 것은 어떨까요.

[# 를 [# 로
#] 를 #] 로

이와 마찬가지로 [code]<?php echo 'test'; (...) ?>[/code] 형식의 글을 적는 경우가 있는데, 이럴 때도 [code]는 entity처리를 해주는 것도 필요하지 않을까 싶은데... 위지위그 모드와 HTML 편집 모드에서 충돌이 있을지도 모르겠습니다. (지금 머리가 복잡해서 이전에 생각했던 해당 상황이 잘 떠오르지 않는군요)

겐도님이 공개한 Code Highlight 플러그인을 보면서 설명 글에 [ code ] 와 같은 형식으로 띄워서 적어놓고, 공백은 붙여쓰라는 것을 보니 이 경우에도 entity 처리가 필요하다고 생각했습니다. 만약 구현한다면 아래와 같은 형식으로,

[code](실제 코드 내용)[/code]

이렇게 하면 될 것입니다. 물론 이것은 내용에 실제로 쓰여지는 코드이며 눈으로 보일 때는 [code](실제 코드 내용)[/code] 이렇게 보일 것입니다.

뜻하고자 하는 바가 제대로 전달되었는지 모르겠습니다. 여기서도 code 인용이 가능하기에 충돌을 피하기 위해서 복잡한 & 문자의 사용을 해서 표현했습니다.


2. 스킨 구조의 세분화

스킨 편집을 할때마다 느끼는 것인데 너무나도 방대해서 심리적인 부담이 큽니다. HTML 내에 구조가 모두 들어가있기 때문에 한 눈에 훑어볼 때는 편하지만 세부 사항을 수정하려면 스크롤을 한참 해야합니다. 이미 차기 버전에 이에 대한 대비책으로 수정을 예정 중인 듯 합니다만 개인적인 제안을 해봅니다.

현재 스킨 구조는 크게 상단 중단 하단으로 나눌 수 있습니다. 사이드 바 같은 건 중단으로 분류할 수가 있겠습니다. 1단, 2단, 3단, 4단 스킨을 비롯해서 어떤 스킨이든 크게 3개의 분류로 나누고 이를 따로 편집할 수 있도록 했으면 합니다. HTML 자체를 나누자는 말이 아니라 스킨 파일은 일단 그대로 두고, 편집 화면의 인터페이스를 개선하는 방식입니다.

상단, 중단, 하단 부분으로 편집 인터페이스를 나누어서 표시하고 중단의 경우 사이드 바가 있다면 그 부분도 나눌 수 있습니다. 복잡하게 나눌 필요는 없고 딱 해당 영역이 구분만 되더라도 좋습니다. 실제 HTML 코드는 하나지만 보여지는 화면에서 구분하도록 만들자는 얘기입니다. 대신 웹에서 이런 편집 인터페이스를 구현하는 것은 꽤 난관이 있을지도 모르겠군요.

CSS 부분도 마찬가지입니다. CSS 정의의 제목을 클릭하면 자바스크립트로 해당 CSS가 있는 HTML 코드로 점프하는 기능 정도까진 바라지 않습니다. (구현은 가능하겠지만 브라우저가 무거워서 들썩댈 예감이 드는군요) CSS의 코드 별로 세분화해서 어느 어느 부분을 편집하고 있다는 명시적인 표시만 해주더라도 편집하기에 편하지 않을까 합니다.

가령 달력 CSS 부분은 따로 떼놓아도 충분하며(대개 다른 부분과 같이 건드릴 일이 드뭅니다) 그 밑으로 이어지는 편집자가 추가한 CSS도 각각 분류해서 관리할 수 있도록 한다면 좋을 듯 합니다. 보다 구체적인 사항은 다른 분들의 아이디어로 보충되길 바랍니다.