질문/조언질답게시판
Extra Form
PHP PHP 7.2
CMS Rhymix

 

ckeditor 에 메모장 내용을 붙여넣기하는데 엔터처리를 안하고 붙여넣어집니다, 해결방법이 무엇일까요?

 

안녕하세요.

 

안녕하세요.

 

안녕하세요.

 

메모장에 이런 내용이 있다면 ckeditor 에 붙여넣기를 하면

 

안녕하세요.

안녕하세요.

안녕하세요.

 

이런식으로 붙여넣기가 되네요.

이건 해결방안이 없을까요? 

  • profile

    CK에디터는 중간에 한 줄 띄우면 <p> 태그를 사용하여 문단을 바꾼 것으로 인식합니다.

    띄우지 않고 그냥 엔터만 친 것을 붙여넣으면 <br> 태그로 인식하고요.

     

    에디터 모듈에서 문단 간격이 0으로 설정되어 있어서 붙는 것 아닐까요?

  • profile ?
    https://xe1.xpressengine.com/tip/22992543

    이 글을 통해 해결했습니다, 감사합니다.
  • ? profile
    유용한 설정이 아니라 위험한 설정입니다.
    enterMode를 BR로 바꾸시면 여러 서드파티 모듈에서 문제가 일어날 수 있습니다.
  • profile ?
    그렇군요..

    문단간격이 0으로 설정되어서 붙는거보단
    이게 몇이 되어도 결국은 작성 후 보이는 결과는 본문과 같아서요.

    메모장에서 적은 엔터처리를 에디터부분에 붙여넣기를 하면 엔터처리를 자동으로 안해서 문제에요..
    이게 ckeditor 자체에서 그런데

    여기 xetown도 메모장에 엔터처리를 그대로 못가져오더군요..
    무엇이 문제인지는 저 글을 통해서 대충 <p> 가 아니라 <br>로 되야하는건 알겠는데..ㅠ
  • profile ?
    엔터만 친것을 그냥 붙여넣어도 p로 인식하는데 무슨 문제일까요..
  • ? profile

    메모장메모장메모장
    메모장메모장메모장
    메모장메모장메모장

    메모장메모장메모장

    메모장메모장메모장

  • ? profile

    위의 댓글에서 처음 세 줄은 메모장에서 한 번씩만 엔터를 친 것이고
    나머지 두 줄은 중간에 엔터를 두 번씩 쳐서 한 줄씩 빈 줄을 남겨놓았던 것입니다.

    XE타운은 문단 간격(<p> 태그의 margin)이 0으로 설정되어 있기 때문에 차이가 느껴지지 않겠지만,
    처음 세 줄은 <br>로 구분되어 있고, 나머지 두 줄은 <p>로 구분되어 있습니다.

    문제가 아니라 정상입니다. 요즘 에디터들은 엔터 처리를 <br>로만 하지 않습니다.

    <p> 태그에 적절한 스타일을 부여하면 엔터를 한 번 친 것과 여러 번 친 것을 구분할 수 있습니다.

  • profile ?

    그러네요, 저희쪽은 뭐가 문제인지 일단 디벨롭 버전으로 업데이트를 했는데도..

    1.png

     

    이런식으로 입력 후 복사를 해서 Ckeditor 부분에 붙여넣기를 해도

     

    1.png

    1.png

     

    이런식으로 출력이 됩니다.

     

    안녕하세요.

     

    메모장입니다.

     

    제 이름은 메모장

     

    메모장입니다.

    위 형식은 제가 붙여넣기하고 엔터로 나눠준겁니다.

     

    이런식으로 출력됐으면 하는데 이게 안되서 문제인거같습니다.

     

  • ? profile

    문제가 아니라 원래 그렇게 나오도록 되어 있다니까요?

    각 줄에 <p> 태그가 붙는 것도 정상이고, 엔터를 한 번만 친 것처럼 바짝 붙어서 표시되는 것도 정상입니다.

     

    원하시는 대로 출력되도록 하려면 에디터 모듈 설정에서 문단 간격을 적당한 값으로 설정해 주셔야 해요.
    기본값이 0px이어서 <br>과 구분이 안 될 만큼 바짝 붙거든요. 에디터 설정부터 다시 확인해 보세요.

  • profile ?
    아뇨아뇨, 제가 필요한건 문단간의 간격이 벌어지는게 아니라

    메모장에서 처리한 엔터처리가 왜 에디터에 붙여넣기하면 엔터처리가 사라지는지가 문제에요.


    안녕하세요.

    메모장입니다.

    제 이름은 메모장

    메모장입니다.

    지금 이 댓글창에 메모장 내용을 복붙한건데 이렇게 엔터처리까지 같이 에디터에 붙여넣어졌음 좋겠어서 말씀드린거에요 ㅠ..
  • profile ?
    에디터에 붙여넣기하면 엔터처리가 사라져버려서;
  • ? profile

    엔터 1번 친 것은 <br>로 처리되고, 2번 친 것은 <p>로 처리된다고 말씀드렸잖아요. 사라지는 게 아니예요. 태그가 다르잖아요. 태그 구조에 집착하시지 말고, 엔터=<br>이라고 생각하시지 말고, 이렇게 각각 다른 태그로 처리된 것을 화면상에 어떻게 표시하면 될지를 고민하는 것이 더 생산적일 것 같습니다. 저나 라그릿님이 CK에디터의 작동 방식을 갈아엎는 것은 무리이고, enterMode를 임의로 바꾸는 방법에도 호환성 문제가 있으니까요.

    제가 제안드린 대로 문단 간격을 조정하는 방법을 시도해 보기나 하셨는지 모르겠네요.

  • profile ?
    문단 간격을 10px로 조정을 해봤습니다. 간격이 벌어진건 좋은데
    모든 엔터가 다 그렇게 간격이 벌어져버리니..
  • ? profile
    웹에서 직접 작성하는 데 최적화하거나, 메모장에서 붙여넣는 데 최적화하거나, 둘 중 하나를 선택하셔야 합니다. 그게 서양놈들이 선호하는 <p> 태그 방식이라;;;
  • ? profile
    <p></p> 이것이 다음 라인과 간격을 벌려주지 않는다고 생각하셔야 할건데요??
    CK에디터에서

    가나다라(엔터)
    가나다라(엔터)

    이렇게 하고 소스보기를 해보세요.

    가나다라(엔터)
    (엔터)
    가나다라(엔터)

    이렇게 비교해 보시면 아실겁니다.

    타 사이트에서 css에서 처리한 거랑 다르고 웹에디터에가 아닌 메모장이나 다른 에디터에서 보여지는 태그 구조가 CK에디터의 기본설정과 다를 수 있습니다.

    br과 P 의 차이가 있는 거구요.

    따라서 복붙해서 붙여넣은 다음 이 P와 BR 차이에 의한 것은 직접 수정하는 정도의 과정은 거쳐야 한다고 생각합니다.


    이세상 모든 사이트나 혹은 오프라인 에디터 등에서 모두 한가지로 다 통일할 수는 없을 것 같구요.
  • profile ?
    그렇군요. 알겠습니다.

    그리고 마지막으로 하나 더 질문있습니다.

    방금 라이믹스 디벨롭 버전으로 덮어쓰고 테스트서버에서도 덮어써봤는데
    파일 첨부 후 해당 파일을 본문 삽입하면 에디터에서 첨부된 파일은 파란색 글씨에 밑줄쳐져있던 스타일이였는데
    아예 스타일이 없던데 의도된건가요?
  • profile ?
    알겠습니다.
    그냥 메모장에서 붙여넣고 알아서 엔터처리 하라고 해야겠네요.
    좋은 팁 감사합니다.
  • ? profile

    예전에는 에디터 내에서만 통하는 스타일이 따로 있었는데,
    이제는 레이아웃과 게시판 스킨에서 지정한 스타일을 그대로 따라갑니다.

     

    이것도 링크가 <p> 태그 안에 있느냐 아니냐에 따라 다를 수 있습니다.

    대부분의 서드파티 스킨들이 본문을 <p> 태그로 감싸 놓았다고 가정하고 있어서요....

  • profile ?

    혹시 해당 스타일 설정을 어떻게하나요..?

     

    테스트 서버에는 다 기본값이라 p태그 안에 있습니다.

  • profile ?
    아 레이아웃 css 파일에 a태그를 따라가는군요....
    에디터 스타일로 다시 변경은 못하나요?
  • ? profile

    스킨이나 레이아웃에서 .editable 또는 .cke_editable 안에만 적용되는 CSS 규칙을 추가하시면 됩니다.

  • profile ?
    감사합니다.
  • profile
    으 저도 늘 고생하는 문제입니다 ㅠ_ㅠ