nodebb-plugin-composer-quill: WYSIWYG alternative to redactor

  • @PitaJ ,
    That's possible. Perhaps that's the way to go. Note I ignored textarea to make the emoji work, exactly like you described.

  • Hi @PitaJ ,

    I can look into changing the store format.
    May I assume you would like to see emojis stored as follows: :${name}: - for example: "🙂 "

    Can you please let me know what function i can call to render the emoji? is the function accepting ":${name}: " returns html link?

    Rendering the emojis in posts should be possible (i'll have to write a small blot).
    However, displaying the emojis inside quill editor may prove challenging as I'll have to write a plugin for quill.

    One Q/D solution is to use the store a link (as I do now), but just before the post is sent out for storage, to replace the link with :${name}:. However, long term you may want to capture text such as 😏 and automatically replace with emoji, so a quill plugin may make more sense.

    Looking forward for your response,

  • Global Moderator Plugin & Theme Dev

    @JJSagan said in nodebb-plugin-composer-quill: WYSIWYG alternative to redactor:

    Can you please let me know what function i can call to render the emoji?

    The function you're looking for is buildEmoji:

    You have to pass in the emoji object, which you get from the table. Both are exported from the emoji requirejs module.

  • Hi @PitaJ ,

    Looks like I am failing to do this from a quill-plugin. Note however, I am pretty novice, and perhaps lack sufficient knowledge to make it work.

    May I propose to insert the emoji name and bitmap (without the link) into the editor. That will enable the emoji to display properly inside the editor prior to saving. When the post data is read from the DB on its way to the client, the client will use the :CODE: and replace the bitmap, that is PRIOR to rendering or editing by quill again.
    The disadvantage is client processing time on scanning/updating the delta.
    Your thoughts?

  • Hi @PitaJ did you and @julian reach any conclusions how to address the emojis? is there anything else you guys need help with, so we can make this plugin perfect?

  • GNU/Linux Admin

    Not yet, but one problem at a time. There are a lot of posts here in this thread! 😆

    Keep in mind emoji already work in Quill, just not the toolbar selector and it doesn't show the emoji in the editor itself. Right now it just shows :laughing: or whatnot, which is acceptable, but of course, not 100%. I put in a bit of effort at the start to ensure the autocomplete is working (because mentions requires it as well), so the emoji autocomplete works as expected as well.

  • GNU/Linux Admin



    The autocomplete doesn't automatically convert yet, and the emoji window doesn't work, but we're getting there.

  • GNU/Linux Admin

    The emoji autocomplete works now. Will have to create a new Emoji Blot in Parchment to handle the proper classes and such... but theoretically should be fine.

  • Hi @julian great job!
    I reviewed the github page, and looks like you were able to reproduce the issues I mentioned.
    I noted that you have bypassed rendering quill by keeping two versions of the post, one in html and one in delta. That will solve a lot of issues down the line, so I completely understand.
    Kindly consider:

    1. Fixing the tooltips,
    2. Allowing icons in the chat windows.
    3. Move the tag below the topic (so it may appear in mobile).
      All have a potential solution above.

    Do you need help with anything?

  • GNU/Linux Admin

    Emoji are now the correct size, some more work needs to be done in chat, but glad to get Emoji blots working.

  • @julian ,
    Great work, thank you!
    With composer, when someone posts a link, you see a description of the link - example:

    How can that be integrated into Quill?

    PostMidnight created this issue in NodeBB/NodeBB

    closed Email throttling #6911

  • GNU/Linux

    @JJSagan Hello, do you have any idea when the plugin will be added to NPM?
    I wouldn't know how to clone it as you suggested above, and this plugin looks great!

  • GNU/Linux Admin

    @Per0x aiming for some time in Q2, though no definite timeline

  • Hi @Per0x , I see @julian already addressed your comments.
    I would not suggest cloning it now, unless you have some programming skills.
    A lot of work has been done, but still there are few things that are yet to be accomplished, see list here: I guess we'll have to wait till Q2.
    In the meantime, Quill is working on v2 so lots of good things to wait for 😉

  • @JJSagan
    Sorry, what do you mean by Q2?

  • Hi @Kosiak
    See @julian 's reply. I guess he is planning to get plugin done by July.

  • Hey @Kosiak
    @julian delivers -

  • GNU/Linux Admin

    Still some polishing to do 😄

  • @julian is being modest. this plugin kicks ass!

  • Unfortunately, the plugin does not work.

    2019-05-31T08:36:25.279Z [4567/46996] - warn: [meta/css] File not found! nodebb-plugin-composer-quill/node_modules/quill/dist/quill.snow.css
    2019-05-31T08:36:25.279Z [4567/46996] - warn: [meta/css] File not found! nodebb-plugin-composer-quill/node_modules/quill/dist/quill.bubble.css
    2019-05-31T08:36:25.345Z [4567/46996] - warn: [meta/css] File not found! nodebb-plugin-composer-quill/node_modules/quill/dist/quill.snow.css
    2019-05-31T08:36:25.345Z [4567/46996] - warn: [meta/css] File not found! nodebb-plugin-composer-quill/node_modules/quill/dist/quill.bubble.css
    2019-05-31T08:37:37.896Z [4567/47037] - error: /admin/plugins/composer-quill
    Failed to lookup view "admin/plugins/composer-quill" in views directory "/var/www/myforum.tld/nodebb/build/public/templates" {"view":{"defaultEngine":"tpl","ext":".tpl","name":"admin/plugins/composer-quill","root":"/var/www/myforum.tld/nodebb/build/public/templates"},"stack":"Error: Failed to lookup view \"admin/plugins/composer-quill\" in views directory \"/var/www/myforum.tld/nodebb/build/public/templates\"\n    at Function.render (/var/www/myforum.tld/nodebb/node_modules/express/lib/application.js:580:17)\n    at ServerResponse.render (/var/www/myforum.tld/nodebb/node_modules/express/lib/response.js:1008:7)\n    at content (/var/www/myforum.tld/nodebb/src/middleware/render.js:84:15)\n    at /var/www/myforum.tld/nodebb/node_modules/async/dist/async.js:3880:24\n    at replenish (/var/www/myforum.tld/nodebb/node_modules/async/dist/async.js:1011:17)\n    at /var/www/myforum.tld/nodebb/node_modules/async/dist/async.js:1016:9\n    at eachOfLimit (/var/www/myforum.tld/nodebb/node_modules/async/dist/async.js:1041:24)\n    at /var/www/myforum.tld/nodebb/node_modules/async/dist/async.js:1046:16\n    at eachOf (/var/www/myforum.tld/nodebb/node_modules/async/dist/async.js:1117:5)\n    at _parallel (/var/www/myforum.tld/nodebb/node_modules/async/dist/async.js:3879:5)"}

Suggested Topics

| |