stevencohn / onemore Goto Github PK
View Code? Open in Web Editor NEWA OneNote add-in with simple, yet powerful and useful features
License: Mozilla Public License 2.0
A OneNote add-in with simple, yet powerful and useful features
License: Mozilla Public License 2.0
I would like to be able to import PDFs and EPUBs into OneNote
I am not sure what language is this written in but maybe you can fork and include this in OneMore
OneNote Gem has an excellent to merge individual pages. Whatโs the idea?
When you clip a link, OneNote creates a separate page for each link. If youโre researching on a particular concept, having your links in a single page helps to consolidate ideas and notes. Is it possible to append links in a single OneNote page.
https://www.onenotegem.com/a/documents/gem-for-onenote/gem-tab/2019/1124/1044.html
Is it possible to bring this feature?
Hi Steven
Thank you so much for writing this.
Do you have any doc that can guide a non C# programmer to compile this project?
Do you have the binaries anywhere we can download them from?
thank you
1K1
Not sure if this is of a large interest but I am submitting this request anyway. Like all the requests I am making the intention for this one is to speed up the active reading process and making it more fluid
When I read I highlight text. I do not use color codes for it I just need to rotate the colors I use for highlighting in order to obtain contrast between adjacent highlighted pieces of text
Having that said I think it would be nice if I could pick let's say 5 colors from the color palette an add them to a set of colors that OneMore will loop through and use them to change the current highlighter color. That way any time when I select a text the short menu context pops up with the next color in the loop selected and the user does not need to bother with alternating the colors when highlighting (if this is needed)
Hi,
pls, specify the procedure for installing this add-in for those with no knowledge of coding. I am not a software developer and heavily rely on one note for note-making.
Applying default styles to a page that has a dark background turns bullets and the numbers on numbered lists black, making them very hard to see.
Currently we can only 'move' a section group, however lots of users (me included of course) need to copy the section group to other locations, while keeping the original one in place.
That would be really helpful.
And thanks again for the awsome work you are doing ๐ ๐
From user coderxyz (issue #56 )
Feature request: Text to table, converts selected text into table.
It would be nice to have the option to select text and then right click and select a search engine to search that text
This should be in the context menu
How to install the add-in?
How do I add an add-in to OneNote?
I often have to read documents that have mixed content (belong to different topics I am researching) .
I would like to be able so select text on a page, right click and say: send the selected text as a new page either in within the current section or in another section, or append to an other existing page within the same section or in a different section
Great Add On!
It's great that someone has been able to start an open source Add On to extend OneNote. This has lot's of potential!
I would like to help, by creating a picture style. It would an image that was pasted resize it, move it to the 1st row of a 1x2 table, and setup the 2nd row cell to contain a caption.
It's not easy size pictures or images pasted in to OneNote consistently, especially if they are coming from screen shots or external files. Also, OneNote has no concept of figure captions that stick with the picture as it is moved around the page.
I'd like to help by trying to make such a macro. Can you suggest a good starting point in your code that I could use as a template?
A feature request, if it's useful to others! A few of the Onetastic macros offer a command to strikethrough/grey-out text next to completed task tags on the current page. It makes it much easier to scan through a page of tasks and see what's left.
It would be great if OneMore offered this. Thanks for the addin, btw. It's really really useful.
It would be great to have this feature, either as a context menu or otherwise. It really helps alot, especially in determining the approximate time for reading in the case of clippings, and writings too.
Thanks in advance !
Can you add a new function to set Chinese and English fonts separately, thanks
Hi Steven
Is it possible to implement the option to add one or an arbitrary number of OneMore commands to the context menu (the menu that shows up when you select text and right click)
I dealy it would be nice to have a custom field there and you could select any of the ribbon or quick access bar buttons/commands that could be added there (in my case Paragrah spacing or remove Paragraph or Line spacing)
This will minimize the actions the user has to take in order to do certain things with a selected text. Currently you need to select the text and then to go to the OneMore ribbon or to use the quick access bar for that
One of the greatest limitations of OneNote is a lack of a scripting interface. I wonder if a scripting interface, similar to what Onetastic or other office apps have can be added. There might be some packages which could be leveraged to achieve this. The interface could provide and object to the application and another object to the current document a long with some access to some xml functions and basic program flow control. I don't know if there is one such package already for VBscript or even python.
Inline markdown conversions. This is a biggie and I'm not sure of its usefulness since the OneNote UI is so feature rich already. But the idea is to associate markdown directives with styles and/or custom styles, invoke an Apply Markdown command and replace all inline directives with styling.
I think there are alternatives that convert markdown to HTML and then you can paste HTML into OneNote.
Sorry to bother you, but I did get some trouble on compiling this project.
I succeded in compiling Addin & Tests, but the Setup is incompatible with my IDE(VS2017 Community, with recent upgrade). I'm new in developing a distributable project, so I didn't get any solutions even if I'd tried surfing the Internet.
I'm wandering whether this project has any prerequisites or not. And it'll be greatful if you can give me a hand.
I am not able to open an OneNote File using Python which is the language I know
It would be great if you can provide any way to interact with your program while it is running so that a Python script can get the XML file from it do some processing and then upload it back
I can do that using Copy and Paste and I would expect that after manipulating the XML file and paste it back I should be able to change the document after pressing "Update"
Any chance you can add this functionality ? I do not even now know how this could be done but you might be able to figure it out
Any chance you could add a "Check for updates and download if a new release is available" option?
Consider you have a page with a diagram created using the Ink/pen feature.
It would be nice to find a way to aggregate user selected scribbles in a picture
Concrete situation , a diagram hand written.I can provide examples if needed
This idea was inspired by this utility which I came across yesterday
http://taoffi.isosoft.org/post/2018/04/21/OneNote-Explorer
In my case such a view will help me to understand how the paragraphs are indented and it will make the programming with XML easier
Problem:
Add-in does not appear on the ribbon
I tried to install the add-on on different computers.
Computer-1: win7x64; OneNote 2016 x64 for Office 365 MSO (16.0.12527.20986) (Version 2002 (Build 12527.20988));
Computer-2: win7x64; OneNote 2016 x64 MSO (16.0.6326.1010);
Question.
How to make the add-in appear on the ribbon for "Computer-1: win7x64; OneNote 2016 x64 for Office 365 MSO (16.0.12527.20986) (Version 2002 (Build 12527.20988));"
Description of the project assembly.
VS -> OneMore project -> I installed x64;
VS -> OneMore project -> I rebuilt the project;
VS -> Project Setup -> TargrtPlatfom -> I installed x64;
VS -> Setup project -> rebuilt the project;
VS created a file "\ OneMoreSetup \ Debug \ Setupx86.msi".
OneNote is not running.
Used by:
Description of installing Computer-1: win7x64; OneNote 2016 x64 for Office 365 MSO (16.0.12527.20986) (Version 2002 (Build 12527.20988))
I am downloading the file "\ OneMoreSetup \ Debug \ Setupx86.msi".
The installation is successful.
I am starting OneNote.
Result:
I open OneNote -> Options -> Add-Ins -> OneMore is in "Inactive Application Add-ins;"
I open OneNote -> Home Ribbon -> OneMore does not appear in the ribbon.
Used by:
OneMore Installation Description - Computer-2: win7x64; OneNote 2016 x64 MSO (16.0.6326.1010)
I am downloading the file "\ OneMoreSetup \ Debug \ Setupx86.msi".
The installation is successful.
I am starting OneNote.
Result:
I open OneNote -> Options -> Add-ons -> OneMore is in "Active Application Add-ins";
I open OneNote -> Home Ribbon -> OneMore appears in the ribbon.
But some functions do not seem to work. I did not study all the functions.
Note.
I previously tried to install OneMore. If I understand correctly, OneMore was set to x86.
Maybe the problem is that I installed in OneMore x86 and to install OneMore x64, you need to make some additional changes to the assembly?
Change GUID eg.
Sort Sections command doesn't recurse into section groups. Refactor SortCommand, clean up the code.
When trying to add a page with a non-latin title to the favorites, it first added a blank link (it added the page to the list but without showing the title), then it stopped working alltogether (clicking on favorites opens a tiny blank list). This occured with an Arabic page title. I tried removing then reinstallign the add-in, but nothing changed, same behaviour.
But as always, thanks for the awsome work ๐
The tag feature is great in OneNote
Unfortunately, as far as I can see, it can be added to paragraphs <p>
only
Would it be possible for you to implement the option to select text and add an attribute to the selected text? (I would use these attributes as tags)
There is a surrogate solution for this by using background colors but then you need one more step to map the color to a certain tag, it is a little bit convoluted and not very flexible
Related to the above -this could be implemented with the new plugin option IF the OneMore end could also pass as a second parameter, the selected text. After that the plugin I would write would look for that fragment in the file and I would process it myself.
Probably a creative way to do that is to mark the text with a designated color -that would create a with that specific color as attribute -assuming it will be unique and that is nowhere else in the file then a plugin could look for that and change it into an attribute
It will be very convoluted since I need to mark the text and then press the plugin button....
Set default font and size for
a) entire section
b) single page in section
Show/Hide timestamp for
a) entire section
Remove screen clipping watermark
(when we use Windows + S, to send to a section, it leaves a, grey coloured screen clipped from text, I need to remove it from all the pages)
Thanks for lovely software
This is a bit of a weird request, but I'd like to be able to quickly switch between dark and light mode. I know this covers a lot of the same area as Set Page Color, but it would be really useful as a workaround for NoteHighlight2016.
NoteHighlight2016 works extremely poorly in Dark Mode. I have tried to fix this by manually adding dark themes, but these behave ever more weirdly, showing up with a white highlight if the background is listed as a dark color in the theme file, and muted colors if the background is listed as white in the theme file.
It used to be possible to work around this using the Switch Background option, but this has disappeared in newer versions of OneNote. If you could add this button back in, it would be really useful, as development on NoteHighlight2016 seems to have halted.
Add keyboard shortcuts for the custom styles. This could be difficult without adding an entirely new bit of UI that allows users to press key sequences and record those; it's not as simple as saying H1 will always be this key sequence because the custom style names are, well, custom.
Windows Defender Smart Screen Filter will not allow the installer MSI to run. It indicates that it prevented an unrecognized app from starting. Possibly because the publisher is Unknown.
Question.
How do I connect an add-in for OneNote?
When I add an add-in to OneNote I get an error: "This is not a valid Office Add-in"
Description.
I am using the project: "Class Library (.NET Framework)".
I have created an add-on.
I added libraries:
I added a class: MyConnect.cs.
I added a file: Ribbon.xml.
I added the add-on to the registry.
I am adding an add-in to OneNote
Result:
Error:
C:\test\AddinOneNoteClassLibrary01\p01\AddinOneNoteClassLibrary01.dll "is not a valid Office add-in.
Used.
RegKeysImport.reg
`Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\AppID{C33CAD6D-E14D-45D5-94E5-6A9861061129}]
"DllSurrogate"=""
[HKEY_CLASSES_ROOT\AddinOneNoteClassLibrary01.MyConnect\CLSID]
"(Default)"="{C33CAD6D-E14D-45D5-94E5-6A9861061129}"
[HKEY_CLASSES_ROOT\CLSID{C33CAD6D-E14D-45D5-94E5-6A9861061129}]
"AppID"="{C33CAD6D-E14D-45D5-94E5-6A9861061129}"
[HKEY_CLASSES_ROOT\WOW6432Node\AppID{C33CAD6D-E14D-45D5-94E5-6A9861061129}]
"DllSurrogate"=""
[HKEY_CLASSES_ROOT\WOW6432Node\CLSID{C33CAD6D-E14D-45D5-94E5-6A9861061129}]
"(Default)"="AddinOneNoteClassLibrary01.MyConnect"
"AppID"="{C33CAD6D-E14D-45D5-94E5-6A9861061129}"
[HKEY_CURRENT_USER\Software\Classes\AppID{C33CAD6D-E14D-45D5-94E5-6A9861061129}]
"DllSurrogate"=""
[HKEY_CURRENT_USER\Software\Classes\AddinOneNoteClassLibrary01.MyConnect\CLSID]
"(Default)"="{C33CAD6D-E14D-45D5-94E5-6A9861061129}"
[HKEY_CURRENT_USER\Software\Classes\WOW6432Node\CLSID{C33CAD6D-E14D-45D5-94E5-6A9861061129}]
"(Default)"="AddinOneNoteClassLibrary01.MyConnect"
"AppID"="{C33CAD6D-E14D-45D5-94E5-6A9861061129}"
[HKEY_CURRENT_USER\Software\Classes\CLSID{C33CAD6D-E14D-45D5-94E5-6A9861061129}]
"AppID"="{C33CAD6D-E14D-45D5-94E5-6A9861061129}"
[HKEY_LOCAL_MACHINE\Software\Classes\AppID{C33CAD6D-E14D-45D5-94E5-6A9861061129}]
"DllSurrogate"=""
[HKEY_LOCAL_MACHINE\Software\Classes\CLSID{C33CAD6D-E14D-45D5-94E5-6A9861061129}]
"AppID"="{C33CAD6D-E14D-45D5-94E5-6A9861061129}"
[HKEY_LOCAL_MACHINE\Software\Microsoft\Office\OneNote\AddIns\AddinOneNoteClassLibrary01.MyConnect]
"Description"="Description - AddinOneNoteClassLibrary01 MyConnect"
"FriendlyName"="AddinOneNoteClassLibrary01"
"LoadBehavior"=dword:00000003`
MyConnect.cs
`namespace AddinOneNoteClassLibrary01
{
[System.Runtime.InteropServices.ProgId("ExcelCOMAddin.MyConnect")]
[System.Runtime.InteropServices.ComDefaultInterface(typeof(IMyConnect))]
// [System.Runtime.InteropServices.Guid("DE3911A1-C82F-42F1-BEFB-F3802E1B6D34")]
[System.Runtime.InteropServices.Guid("C33CAD6D-E14D-45D5-94E5-6A9861061129")]
[System.Runtime.InteropServices.ClassInterface(
System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Runtime.InteropServices.ComVisible(true)]
public class MyConnect : IMyConnect
{
Microsoft.Office.Interop.OneNote.Application _ApplicationObject;
Microsoft.Office.Core.COMAddIn _AddinInstance;
public void OnConnection(
object Application,
Extensibility.ext_ConnectMode ConnectMode,
object AddInInst,
ref Array custom)
{
this._ApplicationObject = (Microsoft.Office.Interop.OneNote.Application)Application;
if (this._AddinInstance == null)
{
this._AddinInstance = (Microsoft.Office.Core.COMAddIn)AddInInst;
this._AddinInstance.Object = this;
}
System.Windows.Forms.MessageBox.Show("onConnection");
}
public void OnDisconnection(
Extensibility.ext_DisconnectMode RemoveMode,
ref Array custom)
{
this._ApplicationObject = null;
this._AddinInstance = null;
}
public void OnAddInsUpdate(ref Array custom)
{ }
public void OnStartupComplete(ref Array custom)
{ }
public void OnBeginShutdown(ref Array custom)
{ }
//public string GetCustomUI(string RibbonID)
//{
// return "";
//}
public string GetCustomUI(string RibbonID)
{
return GetResourceText("COMExcelModelCover.Ribbon.xml");
}
private static string GetResourceText(string resourceName)
{
System.Reflection.Assembly asm = System.Reflection.Assembly.GetExecutingAssembly();
string[] resourceNames = asm.GetManifestResourceNames();
for (int i = 0; i < resourceNames.Length; ++i)
{
if (string.Compare(resourceName, resourceNames[i], StringComparison.OrdinalIgnoreCase) == 0)
{
using (System.IO.StreamReader resourceReader = new System.IO.StreamReader(asm.GetManifestResourceStream(resourceNames[i])))
{
if (resourceReader != null)
{
return resourceReader.ReadToEnd();
}
}
}
}
return null;
}
public void Button_One_Click(Microsoft.Office.Core.IRibbonControl control)
{
System.Windows.Forms.MessageBox.Show("Button_One_Clicked");
}
public void Button_Two_Click(Microsoft.Office.Core.IRibbonControl control)
{
System.Windows.Forms.MessageBox.Show("Button_Two_Clicked");
}
}`
Ribbon.xml
<?xml version="1.0" encoding="utf-8" ?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon>
<tabs>
<tab id="MyNewRibbonTab"
insertBeforeMso="TabInsert"
label="BETTER">
<group id="Group_ID_One" label="MyGroup">
<button id="Button_ID_One"
imageMso="Help"
onAction="Button_One_Click"
label="Button 1"
size="large"/>
<separator id="Separator_ID_One"/>
<button id="Button_ID_One"
imageMso="Help"
onAction="Button_One_Click"
label="Button 1"
size="large"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
Picture-4
HKEY_CURRENT_USER\Software\Microsoft\Office\Excel\Addins\AddinOneNoteClassLibrary01.MyConnect
If my plugin removes the xmlns namespace which is inherited downstream by all the children nodes and it process the XML needed and then it returns the file without that will OneNote be bothered by this ? (I am still learning how to remove it so I can't test directly)
Attempting this on the Show XML editor worked, OneNote added that back
I guess a more generic question is how much can I strip down from the XML filed passed to me by OneMore before returning it to OneMore? I would like to get rid of attributes like lastmodified, author and so on
When adding a page to the Favorites list, the list doesn't refresh until another OneMore UI element is activated. Seen on v2.9
Reproduction (for me at least):
Thank you for creating the Merge Command feature. When the pages gets merged, individual page gets it own container. For some reasons, the formatting of the container doesnโt respect the font type and size. Is there any way to implement it?
Also sometimes, OneNote itself forgets the formatting when creating a new content (different container) in a page. I have to select that container and choose my font type + size.
So is there any way, where I can select all the containers and apply a consistent font type and size?
Sent from PPHub
Hi Steven
Yesterday I stayed up till 4AM due to the incompentents at Microsoft who pushed an update for my Office 2013 which made the license unusable. The new installer gets in conflict with OneNote 2016 and you can't have OneNote 2016 and Office 2013 on the same computer anymore. This is what I learned by solving the problems myself after 6-7h calls and allowing 4 incompetent technical support ppl at M$ to touch my computer.
So now I am stuck with Office 2013 and OneNote 2013 and I noticed that OneMore is not there anymore.
Does OneMore x86 work with OneNote2013 x86?
thank you
Thanks for your work! Good one.
I tried the plugin on the onenote 2016, windows 10 version 1909 computer. But, the reaction speed of the plugin buttons is a little slow. After I click on "more" button, the content menu will appear after at least approximately 3 -- 6 seconds. I wonder if there is a solution for improvement of the reaction speed. Thank you again.
I noticed the first known issue in the "known issues" . But, I do not know if it is connected with my observation of slow reaction speed of the plugin.
The OneNote Application COM object times out if not used within a reasonable window (somewhere around a minute mabe?) and, regardless of whether you've wrapped the call in a try/catch, OneNote will abort the call, display a dialog, and maybe leave OneNote in an unusable state. As far as I know, there is no way around that other than killing the process and restarting. In my opinion, this was an oversight by the Microsoft engineers who didn't properly decouple the internal mechanisms from the COM API, and I'm sure they never will for the desktop because they're moving towards O365 and Office online... However, OneMore makes every effort to minimize how long it holds on to an Application instance, which may mean recreating it multiple times for a single OneMore operation.
I don't think I have done anything special to get this
https://i.imgur.com/C1FHhqq.png
I was working with OneNote 2013 on some materials and when I wanted to use the indentation based on tags option I got the above
Restarting OneNote fixed the issue
The tag feature is great in OneNote
Unfortunately it can be added to paragraphs only
Would it be possible for you to implement the option to select text and add an attribute to the selected text?
There is a surrogate solution for this by using background colors but then you need one more step to map the color to a certain tag, it is a little bit convoluted and not very flexible
Related to the above -this could be implemented with the new plugin option IF the OneMore end could also pass as a second parameter the selected text. Not sure how that cab be done. After that the plugin I would write would look for that fragment in the file and I would process it myself.
Probably a creative way to do that is to mark the text with a designated color -that would create a with that specific color as attribute -assuming it will be unique and that is nowhere else in the file then a plugin could look for that and change it into an attribute
It will be very convoluted since I need to mark the text and then press the plugin button....
I want to use it on OneNote 2013 (64 bit), How do I install it
I'm new to github
I select the text I want to change and then I either use the quick access bar or the OneMore ribbon button but none of them is working
Really excited to see the Insert Calendar feature. I think with few more updates, I can uninstall Onetastic from OneNote
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.