Qt Coding Style + clang-format + kate.git
Christoph Cullmann
christoph at cullmann.io
Sat Aug 24 20:35:51 BST 2019
On 2019-08-24 21:02, Dominik Haumann wrote:
> Btw, we can discuss at Akademy again...
Yes, we can take there a look, thought not that many people are there
that are concerned :=)
For the issues:
I think most of them stem from the too short column limit,
like I mentioned before, I think that should be raised to some
reasonable amount.
That should avoid any strange re-flowing of comments, if not, we could
turn that off
completely.
The initializer stuff can be tuned to use , m_..., we do that at
company, too.
For the const ll &x, yes, that is the Qt style and I would prefer it
that way.
Perhaps these concerns should be raised in
https://phabricator.kde.org/T11214
too, as I would prefer that we use some "common" style between the KDE
sub-projects.
Greetings
Christoph
>
> On Sat, Aug 24, 2019 at 8:53 PM Dominik Haumann <dhaumann at kde.org>
> wrote:
>
>> Hi,
>>
>> I just applied clang-format to Kate's source code. And already
>> looking at kateapp.cpp we find:
>>
>> KateApp::KateApp(const QCommandLineParser &args)
>> - : m_args(args)
>> - , m_wrapper(appSelf = this)
>> - , m_docManager(this)
>> - , m_adaptor(this)
>> - , m_pluginManager(this)
>> - , m_sessionManager(this)
>> + : m_args(args),
>> + m_wrapper(appSelf = this),
>> + m_docManager(this),
>> + m_adaptor(this),
>> + m_pluginManager(this),
>> + m_sessionManager(this)
>>
>> Is there an option for clang-format to prefer the old behavior? The
>> leading comma allows us to have much cleaner diffs with better
>> history.
>>
>> Let's continue:
>>
>> - qputenv("KATE_PID",
>>
> QStringLiteral("%1").arg(QCoreApplication::applicationPid()).toLatin1().constData());
>> + qputenv("KATE_PID",
>> +
>>
> QStringLiteral("%1").arg(QCoreApplication::applicationPid()).toLatin1().constData());
>>
>> Ok, although given wide-screens I think the old variant is more
>> readable. It gets more apparent here:
>>
>> - } else if (!m_args.isSet(QStringLiteral("stdin")) &&
>> (m_args.positionalArguments().count() == 0)) { // only start session
>> if no files specified
>> + } else if (!m_args.isSet(QStringLiteral("stdin"))
>> + && (m_args.positionalArguments().count()
>> + == 0)) { // only start session if no files
>> specified
>>
>> I really cannot say that the new version looks better to me.
>>
>> Continuing:
>>
>> KMessageBox::sorry(activeKateMainWindow(),
>> - i18n("The file '%1' could not be
>> opened: it is not a normal file, it is a folder.",
>> info.url.toString()));
>> + i18n("The file '%1' could not be
>> opened: it is not a normal file, "
>> + "it is a folder.",
>> + info.url.toString()));
>>
>> Not convinced.
>>
>> - for (const auto& window : m_mainWindows) {
>> + for (const auto &window : m_mainWindows) {
>>
>> Now, do we want the & left or right-aligned?
>>
>> Let's have a look into the header file:
>>
>> /**
>> - * Close the given \p document. If the document is modified,
>> user will be asked if he wants that.
>> - * \param document the document to be closed
>> - * \return \e true on success, otherwise \e false
>> + * Close the given \p document. If the document is modified,
>> user will be asked if he wants
>> + * that. \param document the document to be closed \return \e
>> true on success, otherwise \e
>> + * false
>> */
>>
>> The reformatted version breaks the doxygen comment. Ok, maybe
>> doxygen still gets it right, but the \return in the same line is
>> imho totally wrong.
>>
>> Unfortunately with current config: -2 (rejected) from my side. Maybe
>> there is a better config, but breaking the comments this way is not
>> worth it.
>>
>> Best regards
>> Dominik
>>
>> On Sat, Aug 24, 2019 at 4:31 PM Christoph Cullmann
>> <christoph at cullmann.io> wrote:
>>
>>> On 2019-08-24 07:48, Dominik Haumann wrote:
>>>> No, will do later today.
>>>
>>> Thanks!
>>>
>>> I did inspect my local result with the config again.
>>>
>>> The only thing I might want to change is the
>>>
>>> # Column width is limited to 100 in accordance with Qt Coding
>>> Style.
>>> # https://wiki.qt.io/Qt_Coding_Style
>>> # Note that this may be changed at some point in the future.
>>> ColumnLimit: 100
>>>
>>> part.
>>>
>>> For stuff with long variable + function names, you get ugly wraps.
>>>
>>> In company we settled to some 240 limit.
>>> No limit doesn't work well either, as otherwise a lot of stuff
>>> will
>>> just be collapsed to "LONG" lines.
>>>
>>> Greetings
>>> Christoph
>>>
>>> --
>>> Ignorance is bliss...
>>> https://cullmann.io | https://kate-editor.org
--
Ignorance is bliss...
https://cullmann.io | https://kate-editor.org
More information about the KWrite-Devel
mailing list