라이믹스 CKEditor4 config.js 구성 방법
CMS/프레임워크 | Rhymix 2.1 |
---|---|
개발 언어 | PHP 8.2 |
https://ckeditor.com/docs/ckeditor4/latest/features/mentions.html
위 문서를 보고 mention 플러그인은 관리자 페이지에서 활성화 했는데,
// Passing mentions configuration when creating the editor.
CKEDITOR.replace( 'editor', {
mentions: [ { feed: ['Anna', 'Thomas', 'John'], minChars: 0 } ]
} );
// You can also set it up globally.
CKEDITOR.config.mentions = [ { feed: ['Anna', 'Thomas', 'John'], minChars: 0 } ];
CKEDITOR.replace( 'editor', {
mentions: [ { feed: ['Anna', 'Thomas', 'John'], minChars: 0 } ]
} );
// You can also set it up globally.
CKEDITOR.config.mentions = [ { feed: ['Anna', 'Thomas', 'John'], minChars: 0 } ];
와 같이 config.js로 넣어달라고 하는데요.
현재 라이믹스의 기본 config.js를 구성하는 위치나 방법에 대해서 문의 드리고자 합니다.
활성화 되어 있는 플러그인 목록이나 (관리자 페이지 이외에 기본 구성(rx_paste 같은)) 구성 방법은 어디에 있을까요?
제가 찾기로는 modules/editor/skins/ckeditor/config.blade.php 에 있는 것 같은데 이 파일이 맞을지요?
얼음조각티
Lv. 3
:)
댓글 5
common/js/plugins/ckeditor/ckeditor/ckeditor.js 를 수정하는 방법으로 변경하였습니다.
혹여 더 좋은 방법이 있다면... 알려주시면 감사하겠습니다 (__) 꾸벅
common/js/plugins/ckeditor/ckeditor/config.js 입니다.
코어 한복판에 집어넣는 것 같아서 영 어색하지만, 원래 ckeditor 설치 경로와 같은 곳에 넣는 것이 관례인 것 같습니다.
설정을 잘못 건드리거나, 기존 값을 확인하지 않고 덮어쓰면 에디터 모듈 설정과 연동되는 부분이 날아가 버릴 수 있으니 조심하세요. 예를 들어 iOS에서 한글이 분해되거나 줄바꿈이 안 되는 문제 패치, 사진을 붙여넣으면 자동으로 첨부해 주는 기능, 에디터 컴포넌트 등 거의 모든 부가기능이 CKEditor 플러그인으로 구현되어 있습니다.
일전에 config.js에 새로운 플러그인을 넣었을 때에 rx_paste가 작동하지 않았던 기억이 있어 이번에는 ckeditor.js를 수정하게 되었는데
혹시라도 이번에 다시 config.js를 작성하면서 체크 해보겠습니다 :)
플러그인 제작자들이 알려주는 플러그인 추가 방법을 그대로 쓰면 꼭 문제가 생기더라구요.
config.extraPlugins = '내플러그인';
대개 이렇게 하라고 알려주는데, 세상에 니 플러그인만 존재하는 게 아니잖아요? ㅋㅋㅋ
다른 플러그인이 이미 존재하는 경우에 대비해서
if (config.extraPlugins) {
config.extraPlugins = config.extraPlugins + ',' + '내플러그인';
} else {
config.extraPlugins = '내플러그인';
}
이렇게 조건문을 써야 하는데 그렇게 알려주는 사람이 거의 없어요.
설정 건드리는 부분마다 조건문 넣기는 무척 귀찮겠죠.
물론 CKEditor 측에서도 extraPlugins를 배열로 하거나, 플러그인을 추가하는 메소드를 제공해서
플러그인 제작자들이 서로의 발을 밟지 않도록 배려했다면 좋았겠지만,
20년 전에 설계된 물건이니 서드파티 개발자와 사용자들이 조심하는 수밖에요.
오늘도 벌써 날이 다 가네요, 좋은 하루 되십시오!