Hi devs,
This is not a priority (we need to finish our first stable release of
the WYSIWYG editor first) but I wanted to propose 2 things and start a
discussion on it:
* That we make our new GWT WYSIWYG editor a top level project (i.e.
with a separate jira, separate wiki like http://wysiwyg.xwiki.org with
a better name, etc)
* Make it usable by someone who is not using XWiki
The rationale is:
* If we want our editor to become strong and compete with the likes of
FCKEditor/TinyMCE we need to open it up to others and for that we need
to:
- advertise it (hence the http://wysiwyg.xwiki.org that would lists
all features same as http://www.fckeditor.net/)
- make it be usable easily and thus without dragging xwiki dependencies
Other options:
1) Don't do anything. Cons: we won't get enough help and it'll be hard
to compete with other editors. They'll have more features/less bugs
and we'll have a hard time keeping up. In addition it's possible
someone else creates a new GWT WYSIWYG editor and it would be better
if we could all join force on that and using what we have started
2) Externalize it on some forge other than the xwiki forge. This is
nice from a marketing point of view (i.e. easier to show it as a pure
wysiwyg editor) but it has some drawbacks:
- further from the xwiki community and thus harder for us to maintain
it there
- doesn't strengthen our xwiki project
In addition, what we need to evaluate is how do we make it independent
of xwiki and how long would that take. This is probably more a
question for Marius. Marius this is not urgent compared to the 1.7.1
release. Whenever you have time.
Thanks
-Vincent
Hi devs,
A) Should xwiki/2.0 support multi-line headers?
I'm +0. Wikimodel, HTML and Open Office support them.
B) What should happen when you press Enter inside a header in the new
WYSIWYG?
B1) Currently, the text is moved on a new line, but still inside the
header (multi-line header).
I'm +1 since it's already done (We agreed that you have to press Enter
twice to generate a new paragraph).
B2) Text is moved in a new paragraph, below the header. Shift+Enter
would have the effect described in B1).
I'm -0.
B3) Text is moved in a new header of the same level, below the current
one. Shift+Enter would have the effect described in B1). This is what
Open Office does (and we agreed not to follow it).
I'm -0.
Please cast your vote asap.
Thanks,
Marius.
Hi.
Regarding the http://jira.xwiki.org/jira/browse/XWIKI-2967 issue and the
http://jira.xwiki.org/jira/browse/XWIKI-2882 one, this is the proposal:
Proposal:
The title to support wiki syntax and the image to support absolute URLs
as well as local stored images.
Reason:
The goal is to reuse the boxMacro in for implementing RssMacro, Warning
and Error macros. The most complex of them being the RssMacro. So, a RSS
feed should be rendered as follows:
---------------------------------------
optional image (provided as an URL to an image stored outside the wiki,
anywhere in the web)
title (which can be a static text or a link to a web location containing
the full news article)
body - which consists of several news articles, each article being
structured as follows:
.................................................
title (link or static text, the same situation as above)
optional body (plain text)
.................................................
-----------------------------------------
Basically, the Wiki 2.0 RssMacro should behave like the old Radeox RssMacro.
Now, for the RssMacro I was planning to use a "big" box (rendendered
using the improved BoxMacro) which would take care of the title and the
image of the RSS feed and which would contain nested "small" boxes for
each news article.
Also, i was planning of offering the same CSS-related features as the
old Radeox RssMacro. (see
http://code.xwiki.org/xwiki/bin/view/Macros/RssMacro for details) for
which adding an optional cssClass parameter to the BoxMacroParameters
is required.
So I look forward to knowing what you think about this.
Tnx.
PS: all I posted here was suggested in a skype discussion with Vincent
and Thomas:
...................................................................................
[15:34:31] Dan Miron: well, the title is not an ordinary text it's an
anchor to a web location
[15:34:31] Vincent Massol: but on the general principle, do you agree
about a single box macro?
[15:34:48] Dan Miron: +1 for me
[15:34:50] Vincent Massol: I don't understand the use case
[15:34:52] … can you give one?
[15:35:04] … I've never seen a title be a url
[15:35:24] Dan Miron: well, when displaying the contents of a Rss feed
[15:35:43] … each title is a link to the site which contains that
specific article
[15:36:15] Vincent Massol: you want one box per post?
[15:36:24] … currentl all posts are in a single box
[15:36:34] Thomas Mortagne: dan it's not the title of the box you want ?
[15:36:56] … I did not understood that
[15:37:23] Vincent Massol: IMO it's one box
[15:37:31] Thomas Mortagne: yes
[15:37:32] Vincent Massol: and iside the box macro you can put whatever
wiki syntax you want
[15:37:40] … including links
[15:37:39] Thomas Mortagne: the macro is an entire feed
[15:37:55] Dan Miron: well, i need a big box for the hole rss content
which holds several other "small" boxes for each article
[15:38:16] Vincent Massol: oh you want to nest box macros
[15:38:19] Thomas Mortagne: theses small bowex are not macros
[15:38:27] Vincent Massol: it could be thomas
[15:38:36] Thomas Mortagne: well
[15:38:57] Dan Miron: i was planing to use for both the big and the
small boxes the same messageboxMacro i was going to create
[15:38:59] Thomas Mortagne: I don't like very much that a macro generate
other macro if it's not really needed
[15:39:25] Vincent Massol: but if he wants to have a style for the boxes
inside he'll need that I think
[15:39:26] Thomas Mortagne: but meybe it make sense here
[15:39:43] Vincent Massol: or he'll have to reinvent the box macro
[15:40:10] Thomas Mortagne: this means the boxmacro need to support to
be in a boxmacro
[15:40:26] Vincent Massol: that's supported by the rendering engine
[15:40:35] Thomas Mortagne: currently it's not the case as the big and
small box will have the same color for example
[15:40:44] … it needs some css
[15:40:45] Vincent Massol: but the box macro will need to support this
[15:40:49] … yes
[15:40:55] Thomas Mortagne: but on pure rendering side yes it's supported
[15:41:59] … so yes use nested macro boxes is a good idea here Dan ;)
[15:42:26] Vincent Massol: now re the links I'm not sure yet
[15:42:37] … there are different ways of doing that I guess
[15:43:29] … one idea (brainstorming): we could allow inline wiki syntax
to be used the title parameter maybe
[15:44:14] Dan Miron: yes, it could be a way
[15:44:17] Thomas Mortagne: I like that yes
[15:46:45] Vincent Massol: hmm I wonder if this is something we'd want
for all macros
[15:47:09] … not sure
[15:47:17] Thomas Mortagne: at wors we can add a isTitleWiki
[15:47:19] Vincent Massol: even for this use case I'm stil not fully sure
[15:47:51] … it sounds good but I wonder if we'd get side effects
[15:48:09] … actually we wan't do that in a generic way for all macros
[15:48:20] … since it's not going to generate text
[15:48:25] … but Blocks
[15:48:32] … so the macro needs to handle that
[15:48:50] … s/Wan't/can't/
[15:49:33] … ok I think I'm +1 for making the image and title params
allow inline wiki syntax here for this macro
[15:49:45] … (it's a good experiment, we'll see how it goes)
[15:49:49] … wdyt?
[15:49:53] Thomas Mortagne: +1
[15:50:03] Jean-Vincent Drean: +1
[15:50:45] Thomas Mortagne: by the way Dan, Vincent already created
http://jira.xwiki.org/jira/browse/XWIKI-2967 (on which you are assigned)
[15:51:01] Vincent Massol: since our wiki syntax is clean there's little
chance a normal title will not be rendered as the user thinks
[15:52:11] Dan Miron: +1
[15:53:03] Vincent Massol: dan: I think you can close
http://jira.xwiki.org/jira/browse/XWIKI-3025 as duplicate
[15:54:16] Dan Miron: so we drop the idea of creating a new
messaboxMacro and we focus on using the existing boxMacro?
[15:55:09] Vincent Massol: yep
[15:55:32] … and at the same time if you could implement
info/message/error macros that would be great
[15:55:41] … (there are already jira issues assigned to you for those I
believe)
[15:56:54] Dan Miron: in this case, could we enhance the boxmacro a
little bit?
[15:56:58] … for example
[15:57:08] … the ability to specify custom css sheets
[15:57:18] Vincent Massol: it's already supported
[15:57:32] … using the (% %) notation
[15:57:36] … isn't it?
[15:58:54] … (% class="whatever" %){{box...}}
[15:59:09] Thomas Mortagne: boxmacro alreadu support custom for the box
it sould be enought
[15:59:39] Dan Miron: the only way i knew for specifying a css class is
inheriting the AbstractBoxMacro and overriding the getClassProperty() method
[15:59:44] Thomas Mortagne: then you can use
.rssbox a {
}
isn't it ?
[16:00:42] … (for the link of rss box)
[16:00:50] … an same for other content
[16:01:13] … (it's maybe not the better way i'm not a css expert)
[16:01:36] Vincent Massol: thomas: that's not good enough
[16:01:43] … since there can be other a inside other boxes
[16:02:01] … but using a FormatBlock can be used to create a new class
as I mentioned above
[16:02:07] Thomas Mortagne: then bow can define specific class for title
and such
[16:02:31] … and then you use
.rssbox .box_titlea {
}
[16:02:57] … bow = box macro
[16:04:14] Vincent Massol: not sure we support params for block macros
[16:04:16] … checking...
[16:04:19] … but we should
[16:04:40] Thomas Mortagne: we support in Block but maybe XHTMLRender
does not
[16:04:49] Vincent Massol: wikimodel
[16:05:56] Thomas Mortagne: ok I was speaking about parameters blocks in
the macro
[16:06:17] Vincent Massol: inside the macro is ok since it's inline
[16:06:17] Thomas Mortagne: I don't think the Xiki parser support (%%)
parameters for macro
[16:06:22] Vincent Massol: and we support inline params
[16:06:25] … for everything
[16:06:47] … note that they'll be applied to a span surrounding the element
[16:07:02] Thomas Mortagne: boxmacro content is not inline
[16:07:10] … you could have table intable etc.
[16:08:24] Vincent Massol: ok I've checked and I don't think it's
implemented
[16:08:33] … we have it for all other block elements
[16:08:41] … but it doesn't seem to be there for macros
[16:09:02] Thomas Mortagne: as macro as parameter I guess we did not
thing of supporting generic parameters
[16:09:29] Vincent Massol: it could be added easily though
[16:09:37] Dan Miron: if you mean specifying a css class via block
parameters, it's not working, i tried that, but it gets overriden
[16:11:06] Vincent Massol: actually it should even maybe fail
[16:11:17] … I don't have the time to work on this right now unfortunately
[16:11:56] … maybe for now you could have an optional "cssClass" parameter?
[16:12:24] … and when thomas or me implement params for block macros we
could refactor it
[16:13:09] Dan Miron: yes, that's what i was thinking about from the
beggining
[16:13:37] Vincent Massol: it would be only temporary
...................................................................................
Hi devs,
As stated in a previous thread we need a roadmap for the
implementation of the final WYSIWYG specifications.
This roadmap is also about making the WYSIWYG use a 3rd party
framework and re-usable components.
Here's a proposal :
- Until december 17 all the persons working on the WYSIWYG continue
fixing bugs. (Marius, Anca, JV)
- December 23 :
-- First version of the "wiki explorer" [1] based on smartGWT, allow
to browse wikis, spaces and pages. See if it is a valid option with
the link plugin as a real world example (Marius).
-- Wysiwyg wizard, allow to chain dialogs and to navigate between
them. Use of this wizard in the image plugin with 3 dialogs : current
image browser, upload file dialog, upload in progress dialog (Anca).
-- Final version of the Table UI (JV).
- January 9 :
-- WIP on the "wiki explorer". Allow to add spaces, add pages, browse
pages attachments (Marius).
-- Final version of the Link UI (Anca).
-- Verbatim and quote features implemented (JV).
- January 16 :
-- Final version of the "wiki explorer" : allow to rename
pages/spaces, to change pages parent with drag and drop. Replacement
of the YUI tree by the GWT one in XE (Marius).
-- Final version of the Image UI (Anca).
-- Definition list feature implemented (JV).
- January 23
-- First version of the Macro plugin (Anca).
-- Alignment, color [2], font family [2], font size [2], custom
parameters features implemented (Marius).
- January 30
-- Import plugin (Marius).
-- WIP on the Macro plugin, hopefully a final version (Anca).
[1] Components like "wiki explorer", "color picker", "file uploader"
must be usable outside of the WYSIWYG.
[2] We need to vote for the inclusion of those features.
JV.
Hi devs,
We have to decide upon the proper behavior of the Tab key in the new
WYSIWYG editor. Open Office has the following behavior:
A) If the caret is inside a table cell then jump to the next one (or
previous one with Shift).
B) If the caret is at the beginning of a list item then indent that item
(or outdent with Shift). By indent I mean make it a subitem of the
previous list item.
C) Otherwise insert a Tab. The Tab doesn't always have the same width;
it depends on the top ruler and on the caret position. Shift+Tab is ignored.
I'm +1 for A) and B)
Regarding C), it's difficult to have the same behavior. What we can do is:
C1) Insert spaces (say 4); we would have to use non-breaking spaces of
course.
C2) Insert just one (breaking) space to discourage users from using the
tab key to layout text.
I'm +0 for C1) and +0.5 for C2).
I need your vote asap.
Thanks,
Marius
Hi,
I would like to vote to include the 2 following patches on 1.7.1. They
would allow Curriki to run on the standard 1.7.1 core (except for Lucene
which has other changes).
http://jira.xwiki.org/jira/browse/XWIKI-3054 Support configurable
velocity macro files in xwiki.cfg
http://jira.xwiki.org/jira/browse/XWIKI-3054 Fix a bug which prevents to
use "order by" in queries on DBListClass
Both patches have been used successfully on a custom 1.5.2 based core in
Curriki
Here is my +1
Ludovic
--
Ludovic Dubost
Blog: http://blog.ludovic.org/
XWiki: http://www.xwiki.com
Skype: ldubost GTalk: ldubost
Dear all,
I've committed a first implementation of the RESTful API as described on
http://dev.xwiki.org/xwiki/bin/view/Design/RestfulAPI
Not all the URIs are working but pages and translations are.
You can:
* GET /
* GET /spaces
* GET /spaces/{spaceId}/pages
* GET|PUT /spaces/{spaceId}/pages/{pageId}
* GET|PUT /spaces/{spaceId}/pages/{pageId}/translations/{translationId}
PUT will create/modify the corresponding page.
You can use curl to interoperate with the API. Some examples:
* curl -u Admin:admin -X PUT -d "Hello world" -H "Content-Type:
text/plain" http://localhost:8080/xwiki/rest/spaces/Main/pages/WebHome
Will set the content of Main.WebHome to "Hello world"
* curl -u Admin:admin -X PUT -d @text.txt -H "Content-Type: text/plain"
http://localhost:8080/xwiki/rest/spaces/Main/pages/WebHome
Will set the Main.WebHome content to whatever is writen in the text.txt
file.
* curl -u Admin:admin -X PUT -d @page.xml -H "Content-Type:
application/xml" http://localhost:8080/xwiki/rest/spaces/Main/pages/WebHome
Will set the Main.WebHome attributes to whatever is written in the
page.xml. The xml file must conform to the structure described in the
design page. This allows to change the content, the title and to
reparent the page.
* curl -u Admin:admin -X PUT -d @text.txt -H "Content-Type: text/plain"
http://localhost:8080/xwiki/rest/spaces/Not/pages/Existing
Will create the Not.Existing page and set its content to whatever is
writen in the text.txt file.
Currently the implementation is in the sandbox and is available for
public review
(http://svn.xwiki.org/svnroot/xwiki/sandbox/xwiki-core-rest/). It uses
the XStream library (http://xstream.codehaus.org) for XML
serialization/deserialization of data types. Very handy.
Comments are welcome.
-Fabio
Hi,
I think it might be interesting to export a document's structure (the
XDOM) to the XML we generate for pages (?xpage=xml), in addition to
the unparsed content and the rendered content.
This would make it easy for external tools to process page structures
and extract required information. More importantly it's something easy
to do now.
WDYT? This is low priority but I thought it could be interesting.
Technically this means writing a DOMListener (which creates a w3c
Document from a XDOM).
Thanks
-Vincent
Hi Devs,
I'm upgrading office-importer code base to new architecture. For this I
suggest following methods to be added to the DocumentAccessBridge:
1. createNewDocument(String documentName, String content) //This method will
throw an exception if the document already exists.
2. setDocumentContent(String documentName, String newContent) //For updating
an existing document.
3. setDocumentSyntaxId(String documentName, String syntaxId) //For
presentation documents the syntax would be 1.0 and for others it would be
2.0
4. addAttachmentToDocument(String documentName, String AttachmentName, byte
[] attachmentData) //For making attachments
5. isDocumentEditable(String documentName) //This is following
isDocumentViewable() mthod. But we could also have a hasRight() mthod
instead.
I'm +1 for all. But please let me know if any of above methods are redundant
/ not required / has wrong signature.
Thanks.
- Asiri
Hi everyone
Currently the XWiki 2.0 parser does not support multilines headers,
meaning that it consider new line as end of header:
= Heading
1 =
give "<h1>Heading</h1><p>1 =</p>"
I propose to have the same things than paragraphs: need two
consecutive new lines (or the =* syntax of course) to be end of
header.
= Heading
1 =
= Heading
2 =
would give "<h1>Heading<br/>1</h1><h1>Heading</h1><p>2 =</p>"
Here is my +1
Thanks,
--
Thomas Mortagne