wox-launcher / wox Goto Github PK
View Code? Open in Web Editor NEWA cross-platform launcher that simply works
License: GNU General Public License v3.0
A cross-platform launcher that simply works
License: GNU General Public License v3.0
I didn't find existed libraries that we can use in .Net.
In the Wox window, press Alt+F4 will crash.
在 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
在 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
在 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
在 Wox.EntryPoint.Main(String[] args) 位置 C:\Projects\Wox\Wox\App.xaml.cs:行号 20
在 System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
在 System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
在 Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
在 System.Threading.ThreadHelper.ThreadStart_Context(Object state)
在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
在 System.Threading.ThreadHelper.ThreadStart()
Auto hide when the focused has changed to other apps.
Wox has an error that can't be handled. System.Reflection.TargetInvocationException: 调用的目标发生了异常。 ---> System.NullReferenceException: 未将对象引用设置到对象的实例。
在 System.Windows.Controls.VirtualizingStackPanel.InsertContainer(Int32 childIndex, UIElement container, Boolean isRecycled)
在 System.Windows.Controls.VirtualizingStackPanel.AddContainerFromGenerator(Int32 childIndex, UIElement child, Boolean newlyRealized)
在 System.Windows.Controls.VirtualizingStackPanel.BringIndexIntoView(Int32 index)
在 System.Windows.Controls.ListBox.OnBringItemIntoView(Object arg)
在 System.Windows.Controls.ListBox.ScrollIntoView(Object item)
在 Wox.ResultPanel.lbResults_SelectionChanged(Object sender, SelectionChangedEventArgs e)
在 System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
在 System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
在 System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
在 System.Windows.Controls.ListBox.OnSelectionChanged(SelectionChangedEventArgs e)
在 System.Windows.Controls.Primitives.Selector.SelectionChanger.End()
在 System.Windows.Controls.Primitives.Selector.SelectionChanger.SelectJustThisItem(Object item, Boolean assumeInItemsCollection)
在 System.Windows.Controls.Primitives.Selector.OnSelectedItemChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
在 System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
在 System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
在 System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args)
在 System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, OperationType operationType)
在 System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, OperationType operationType, Boolean isInternal)
在 System.Windows.DependencyObject.SetValue(DependencyProperty dp, Object value)
在 System.Windows.Controls.Primitives.Selector.set_SelectedItem(Object value)
在 Wox.ResultPanel.Select(Int32 index)
在 Wox.ResultPanel.SelectFirst()
在 Wox.ResultPanel.AddResults(List`1 results)
在 Wox.MainWindow.b__e()
--- 内部异常堆栈跟踪的结尾 ---
在 System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
在 System.Delegate.DynamicInvokeImpl(Object[] args)
在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
在 System.Windows.Threading.DispatcherOperation.InvokeImpl()
在 System.Threading.ExecutionContext.runTryCode(Object userData)
在 System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
在 System.Windows.Threading.DispatcherOperation.Invoke()
在 System.Windows.Threading.Dispatcher.ProcessQueue()
在 System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
在 MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
在 MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
在 System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Boolean isSingleParameter)
在 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
在 MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
在 System.Windows.Threading.Dispatcher.TranslateAndDispatchMessage(MSG& msg)
在 System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
在 System.Windows.Threading.DispatcherOperation.Wait(TimeSpan timeout)
在 System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Boolean isSingleParameter)
在 System.Windows.Threading.Dispatcher.Invoke(Delegate method, Object[] args)
在 Wox.MainWindow.b__d(String k)
在 Wox.DispatcherExtensions.<>c__DisplayClass2.b__0(Object s, EventArgs e)
在 System.Windows.Threading.DispatcherTimer.FireTick(Object unused)
在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
在 System.Windows.Threading.DispatcherOperation.InvokeImpl()
在 System.Threading.ExecutionContext.runTryCode(Object userData)
在 System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
在 System.Windows.Threading.DispatcherOperation.Invoke()
在 System.Windows.Threading.Dispatcher.ProcessQueue()
在 System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
在 MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
在 MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
在 System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Boolean isSingleParameter)
在 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
在 MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
在 System.Windows.Threading.Dispatcher.TranslateAndDispatchMessage(MSG& msg)
在 System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
在 System.Windows.Application.RunInternal(Window window)
在 Wox.SingleInstanceManager.OnStartup(StartupEventArgs e)
在 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
在 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
在 Wox.EntryPoint.Main(String[] args)
When I input a command and it executed. Next time i active wox, the command is still there. I must clear it by myself, which is not handy, I think.
I think every thime I active wox, it should be clean
Would you please think about it
Maybe FileSystemWatcher
API is an approach.
Some times, when user input some queries, the UI will be freezed and waiting for the results returned, which is a very bad UE.
As title descripted, I think we should support python plugin system. Python is a good choice for extending this kind of things.
Provide setttings:
Some commands may be failed to execute, such as typos.
I think we should allow user to re-run their last command if there was an error before.
BTW, command history is important, I think.
Could you put the results of plugin at the head of results list, ohter than at the end?
for example,
When I type "g sth", I prefer the results like this
search "sth" on the internet with google
application1
application2
Actually, I got that
application1
application2
search "sth" on the internet with google
which i think is not handy.
This will prevent Wox.Plugin.Doc working on a x86 system.
363 C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1635,5): warning MSB3270: There was a mismatch between the processor architecture of the project being built "MSIL" and the processor architecture of the reference "System.Data.SQLite, Version=1.0.90.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL", "AMD64". This mismatch may cause runtime failures. Please consider changing the targeted processor architecture of your project through the Configuration Manager so as to align the processor architectures between your project and references, or take a dependency on references with a processor architecture that matches the targeted processor architecture of your project. [C:\Projects\Wox\Plugins\Wox.Plugin.Doc\Wox.Plugin.Doc.csproj]
Currently, we log all infos to error level. We need to change the log settings for showing specific errors.
LogLevel = Error, Warning, Info, Debug
this feature shouldn't be trigger by workflow keywords. When user type "a" in the search box, it should return the application names or settings start by "a"
As a plugin, there is no need to know the actual ActionKeyword, and action keyword may event changed due to the #21.
Maybe there is a lot of translation workflows (Google, Baidu, Yodao, etc.) sharing the same ActionKeyword "fy".
There is no need to create a new project for installer since we can merge this function into main project.
log.txt如下:
Date:2014-03-19 11:09:42,212 Level:ERROR Msg:Python Invoke failed: ValueError :
Date:2014-03-19 11:09:43,962 Level:ERROR Msg:Python Invoke failed: ValueError :
Date:2014-03-19 11:09:44,626 Level:ERROR Msg:Python Invoke failed: ValueError :
Date:2014-03-19 11:09:44,876 Level:ERROR Msg:Python Invoke failed: ValueError :
下午提交了一个calc的插件pycalc,感觉目前的插件机制实现计算器类的插件不是很方便。
目前的机制,只有在输入ActionKeyword后才能触发插件,在实现计算器类的插件时,感觉这种方式不是很方便。在launchy中,计算器插件直接输入表达式后就可以有结果,不需要任何键触发,效率比较高。
能否优化一下?
allow user to search keywords by google or baidu or bing. search engine should be customizable.
因为挺好用的自己clone了一份编译了一下,发现有时候全屏玩游戏的时候会自己弹出来,好像是Wox的原因,可能的话排查下是否有这个问题?
什么时候能推出自定义索引项的功能?
Wox will hide the content behind it, we should allow user to drag the Wox.
For users who don't already know what Wox is, a brief introduction of the goals and features of Wox will come in handy.
重现步骤:
1.快捷键唤出窗口(此时又焦点)
2.点击其他程序(此时失去焦点)
3.快捷键隐藏窗口
4.快捷键唤出窗口(此时无焦点)
Maybe we can provide a setting panel for users to add custom workflow hotkey. e.g. there is a workflow whose action keyword is fy
. Users can set a hotkey for this keyword, like Ctrl + Alt + T. After user pressed Ctrl + Alt + T, WinAlfred will auto show with query fy
.
Wox crashed with the following exception on Python plugins
Date:2014-03-26 19:14:38,654 Level:FATAL Msg:Wox has an error that can't be handled. System.ArgumentNullException: Value cannot be null.
Parameter name: key
at System.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
at System.Collections.Generic.Dictionary`2.FindEntry(TKey key)
at System.Collections.Generic.Dictionary`2.TryGetValue(TKey key, TValue& value)
at Python.Runtime.GenericUtil.Register(Type t) in c:\Projects\Wox\Pythonnet.Runtime\genericutil.cs:line 42
at Python.Runtime.AssemblyManager.ScanAssembly(Assembly assembly) in c:\Projects\Wox\Pythonnet.Runtime\assemblymanager.cs:line 270
at Python.Runtime.AssemblyManager.Initialize() in c:\Projects\Wox\Pythonnet.Runtime\assemblymanager.cs:line 60
at Python.Runtime.Runtime.Initialize() in c:\Projects\Wox\Pythonnet.Runtime\runtime.cs:line 166
at Python.Runtime.PythonEngine.Initialize() in c:\Projects\Wox\Pythonnet.Runtime\pythonengine.cs:line 118
at Wox.Commands.PluginCommand.SwitchPythonEnv(PluginPair thirdPlugin) in c:\Projects\Wox\Wox\Commands\PluginCommand.cs:line 64
at Wox.Commands.PluginCommand.Dispatch(Query q) in c:\Projects\Wox\Wox\Commands\PluginCommand.cs:line 26
at Wox.MainWindow.<TextBoxBase_OnTextChanged>b__7(String o) in c:\Projects\Wox\Wox\MainWindow.xaml.cs:line 215
at Wox.DispatcherExtensions.<>c__DisplayClass2.<DelayInvoke>b__0(Object s, EventArgs e) in c:\Projects\Wox\Wox\DispatcherExtensions.cs:line 39
at System.Windows.Threading.DispatcherTimer.FireTick(Object unused)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at System.Threading.ExecutionContext.runTryCode(Object userData)
at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
at System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Boolean isSingleParameter)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
at System.Windows.Threading.Dispatcher.TranslateAndDispatchMessage(MSG& msg)
at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
at System.Windows.Application.RunInternal(Window window)
at Wox.SingleInstanceManager.OnStartup(StartupEventArgs e) in c:\Projects\Wox\Wox\App.xaml.cs:line 43
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
at Wox.EntryPoint.Main(String[] args) in c:\Projects\Wox\Wox\App.xaml.cs:line 20
It seems probem in .net 4.5 that described here pythonnet/pythonnet#3
From Alfred official website:
Access text you've saved to your clipboard with a keyboard shortcut, search past clips and paste them wherever you're working.
in this place:
\wox\Wox\PluginLoader\CSharpPluginLoader.cs line 23
Assembly asm = Assembly.LoadFile(metadata.ExecuteFilePath);
“System.BadImageFormatException”类型的未经处理的异常出现在 Wox.exe 中。
其他信息: 未能加载文件或程序集“Wox.Plugin.Everything, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。试图加载格式不正确的程序。
Originally posted by happlebao @ V2EX.
个人觉得去掉这个会好看一点。
https://onedrive.live.com/redir?resid=1452AAA400732A3D!25153&authkey=!AGHTNx91ehRaFNY&v=3&ithint=photo%2c.png
In fact I'd like to use amo (AVG Maker Orange) instead of cgwz to run the rubbish, 橙光文字游戏制作工具, so alias would be very useful here.
Is it possible to write some getting-started article about how to set up a development environment. This will be a significant help for people from different background including me from java.
As all other launchers do.
wpm list
--Iist all plugin you installed.wpm install [plugin name]
--Install plugin on the fly, (with http://www.getwox.com/plugin)wpm uninstall [plugin name]
--Uninstall a pluginFor example, user search "everything" then select the second item in the result, whose score is 70. The second time user search "everything" , this item should +1. after several select this item, it's score will be greater than the first item(75), then, the item will now be the first one.
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.