A Questions about Vim License

207 views
Skip to first unread message

othree

unread,
Jun 23, 2019, 10:33:46 AM6/23/19
to vim_dev
Hi

Because many Vim Plugins/Scripts use "same as Vim" License. And lots of Vim
plugin manager supports install Vim plugin from GitHub. I think it will be
great if GitHub can recognize Vim License[1]. And I am working on this now.
While working on this. I realized that Vim License text have many content
directly related to Vim, such as project name, maintainer, URLs.

So, if I as a Vim Plugin author. Want to use Vim License and create a License
file in code base. I should update these contents to reflect my project.
I created a modified sample online[2].

My question is:

Is this modified License still Vim License?
(only modify project name, URL/maintainer name, email)

Or any modification is not allowed if I want to call it "Vim License".
I know some project modify the content and rename the license, ex: tagbar[3]


[1]:https://help.github.com/en/articles/licensing-a-repository
[2]:https://github.com/othree/vim-license/blob/master/LICENSE
[3]:https://github.com/majutsushi/tagbar/blob/master/LICENSE

Bram Moolenaar

unread,
Jun 23, 2019, 11:08:12 PM6/23/19
to vim...@googlegroups.com, othree

> Because many Vim Plugins/Scripts use "same as Vim" License. And lots of Vim
> plugin manager supports install Vim plugin from GitHub. I think it will be
> great if GitHub can recognize Vim License[1]. And I am working on this now.
> While working on this. I realized that Vim License text have many content
> directly related to Vim, such as project name, maintainer, URLs.
>
> So, if I as a Vim Plugin author. Want to use Vim License and create a License
> file in code base. I should update these contents to reflect my project.
> I created a modified sample online[2].
>
> My question is:
>
> Is this modified License still Vim License?
> (only modify project name, URL/maintainer name, email)
>
> Or any modification is not allowed if I want to call it "Vim License".
> I know some project modify the content and rename the license, ex: tagbar[3]

I'm not a lawyer, but I would think that if you change "Vim" to
"[Product Name]". and fill in the product name, that is still the Vim
license, but used for another product.

Note that "Vim maintainer" is different, that is not the product name
and should remain as-is. In the bigger context this part is a bit
confusing, but we can't change it now. The basic idea is that if
someone wants to make changes to [product name] but not publish the
changed code, the maintainer will have the right to decide about that.
This if you publish a plugin with the Vim license, I get to decide what
happens when someone makes a modified version and doesn't want to
publish it. In practice this never happened, thus it's a precaution,
while keeping the door open for a commercial spin-off.

--
hundred-and-one symptoms of being an internet addict:
259. When you enter your name in the AltaVista search engine, the top ten
matches do indeed refer to you.

/// Bram Moolenaar -- Br...@Moolenaar.net -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///

othree

unread,
Jun 24, 2019, 11:00:59 AM6/24/19
to vim_dev
Hi Bram

Thank you for reply so quick. That's very helpful.

Still have two questions:


* Follow your example. I develop a plugin with Vim License and published.
Someone modified it but not open source. Based on the Vim License.
Someone should provide what he modified to Vim Maintainer(you).
And you will decide what to do.

Is it correct?


* Is every "maintainer" in license text means "Vim Maintainer"? Or some
"maintainer" are "[Project] Maintainer"?

What I cared about most is `III)` which also includes a email address
in the text. If this is also a "Vim Maintainer". Is it means every
project(not Vim) with Vim License, have a modified version. You
encourage people mail those changes to you.


Bram Moolenaar於 2019年6月24日星期一 UTC+8上午11時08分12秒寫道:

Bram Moolenaar

unread,
Jun 24, 2019, 10:13:15 PM6/24/19
to vim...@googlegroups.com, othree

> Thank you for reply so quick. That's very helpful.
>
> Still have two questions:
>
>
> * Follow your example. I develop a plugin with Vim License and published.
> Someone modified it but not open source. Based on the Vim License.
> Someone should provide what he modified to Vim Maintainer(you).
> And you will decide what to do.
>
> Is it correct?

If that plugin is distributed, yes. If someone only makes changes for
themselves, then publishing is not required.

Note that since Vim plugins only work with Vim script, thus anybody who
gets the plugin also implicitly gets the source code. It could be
obfuscated, but that's about it.

> * Is every "maintainer" in license text means "Vim Maintainer"? Or some
> "maintainer" are "[Project] Maintainer"?

All the occurences of "maintainer" in the license refer to the Vim
maintainer.

> What I cared about most is `III)` which also includes a email address
> in the text. If this is also a "Vim Maintainer". Is it means every
> project(not Vim) with Vim License, have a modified version. You
> encourage people mail those changes to you.

If not otherwise published, yes. But as mentioned, it would be
difficult to create a Vim script and distributed it without implicitly
distributing the source code.


--
XML is a nice language for computers. Not for humans.

othree

unread,
Jun 25, 2019, 11:38:46 AM6/25/19
to vim_dev
Thank you

Now I can understand which part can be modify.
I create a new template LICENSE text[1].
And will use it for following process.

Hope everything goes well.


[1]:https://othree.github.io/vim-license/?project=[project]#license-preview

Bram Moolenaar於 2019年6月25日星期二 UTC+8上午10時13分15秒寫道:

othree

unread,
Jun 28, 2019, 6:19:29 AM6/28/19
to vim_dev
Hi Bram

The staff of GitHub, Linksvayer told[1] me about the SPDX License List Data.
If the license text have substitutions. It will be great to update the license
data XML[2] first. I did dome research and known how to modify it. But I
don't know who submits Vim license to SPDX at first.

So I think I should ask for your permission before I contact and send PR to SPDX.

[1]:https://github.com/licensee/licensee/issues/385#issuecomment-506386613
[2]:https://github.com/spdx/license-list-XML/blob/master/src/Vim.xml

othree於 2019年6月25日星期二 UTC+8下午11時38分46秒寫道:

Bram Moolenaar

unread,
Jun 28, 2019, 3:39:22 PM6/28/19
to vim...@googlegroups.com, othree

> The staff of GitHub, Linksvayer told[1] me about the SPDX License List Data.
> If the license text have substitutions. It will be great to update the license
> data XML[2] first. I did dome research and known how to modify it. But I
> don't know who submits Vim license to SPDX at first.
>
> So I think I should ask for your permission before I contact and send PR to SPDX.

You'll have to figure out the right terminology. I see "the work"
mentioned in other licenses, it's probably better than using "product".
And figure out the right XML to use... I suppose they have tools to
match the text against what's in a project, thus you will need to check
that the XML still matches in the Vim project itself.


--
Life would be so much easier if we could just look at the source code.

OOO

unread,
Jun 29, 2019, 11:35:00 AM6/29/19
to Bram Moolenaar, vim_dev
I didn't discuss with people at SPDX yet.
But I supposed it will by using XML tag <alt>

I found BSD-3, BSD-4 uses a lot of <alt> tag[1].
Sample code:

<alt match=".+" name="organizationClause3">the organization</alt>

The name is the name of this substitute slot. Match is regexp pattern.
And the content of the tag could be general value or specific value.
SPDX uses it on their website too.

For BSD license, the content is general value, like organization,
copyright holder. And PostgreSQL[2] provides specific value like:

<alt match=".+" name="copyrightHolderAsIs">THE UNIVERSITY OF
CALIFORNIA</alt>

I suppose to use the second form, maybe:

<alt match=".+" name="projectName">Vim</alt>

Which will not change the result on the SPDX website. Won't
change the License text it self. Just define which part is the
project name and can be modified.

[1]:https://github.com/spdx/license-list-XML/blob/master/src/BSD-4-Clause.xml#L35
[2]:https://github.com/spdx/license-list-XML/blob/master/src/PostgreSQL.xml#L22

Bram Moolenaar <Br...@moolenaar.net> 於 2019年6月29日 週六 上午3:39寫道:
Bram Moolenaar <Br...@moolenaar.net> 於 2019年6月29日 週六 上午3:39寫道:
--
OOO

othree

unread,
Oct 24, 2019, 11:06:23 AM10/24/19
to vim_dev
A quick update

The PR[1] for SPDX is already merged and released in 3.7.
You can see the change is on the website[2].
I might add notes about the "Vim maintainer".

I will also start to help people to modify their license text (for those projects using Vim licenses).



othree於 2019年6月29日星期六 UTC+8下午11時35分00秒寫道:
Reply all
Reply to author
Forward
0 new messages