omz:forum

    • Register
    • Login
    • Search
    • Recent
    • Popular

    Welcome!

    This is the community forum for my apps Pythonista and Editorial.

    For individual support questions, you can also send an email. If you have a very short question or just want to say hello β€” I'm @olemoritz on Twitter.


    Time to release a new version to App Store

    Pythonista
    7
    56
    23806
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Matteo
      Matteo @Guest last edited by Matteo

      @lpl Hi, I can understand your disappointment, because omz in the last year was significantly more absent on this forum than some years ago. People who bought Pythonista in the last year are less lucky (in my opinion) than people who bought Pythonista in previous years, due to less support by omz on this forum in the last year compared to previous years, so for this reason (in my opinion) people who bought Pythonista in the last year feel more abandoned than others. I should say also that in this forum you will find a lot of info about Pythonista written by a lot of great people, you know omz can't answer every question personally, especially if the questions are often the same made by different people.

      Unfortunately for us (who buy softwares) the cost of a software does not always means that the author provides future updates included in the purchase; about Pythonista you pay once for the application itself and the author has not specified anywhere that he will release regular updates (in other words, like someone already said before in this forum, when you pay about $ 10 for Pythonista, you pay only the app, not future updates because nowhere it is known that the $ 10 also includes updates). It is also for this reason that those who bought Pythonista some years ago were more lucky to pay for the same price the app and to see several updates of it.

      I use only (I think) some little percent of all features provided by Pythonista, that is one of the very few apps in AppStore that tries to be customizable through ObjC. It is really powerful and if you can perform experiments on it, you could improve a lot of things of Pythonista without needing any updates by omz. But I suppose that it is possibile to perform experiments on ObjC for Pythonista only if you have XCode and a Mac computer...

      If you, instead, wants to be able to install anything on Pythonista, unfortunately not even the powerful and mysterious objc world can allow you to install anything you want, it needs suitable full C-Fortran compiler, and in ios world it doesn't currently exist. But even if it existed, in order to create your application with some not-pure python code, you should pay Apple to install on your iPhone or iPad your app... So you understand that Apple make things a little strange...arousing the disappointment of many people, which then attack the developer...

      I'd like to ask you what would you expect in a new version of Pythonista, regardless of the fact that the author does not answer frequently on the forum and gives poor info about his app in the last year?
      Bye

      cvp ? 2 Replies Last reply Reply Quote 1
      • cvp
        cvp @Matteo last edited by

        @Matteo said:

        I suppose that it is possibile to perform experiments on ObjC for Pythonista only if you have XCode and a Mac computer

        Hello, I agree with almost 100% of what you said.

        For info, I have a Mac (that I no more use) but not XCode, and all I have programmed using ObjectiveC has been done with Pythonista

        Matteo 1 Reply Last reply Reply Quote 0
        • ?
          A Former User @Matteo last edited by

          @Matteo I understood that I can only install pure python modules and I think it is good enough for most of us. I hope pythonista can upgrade the modules like numpy, PIL and others. And I'm waiting for the features about siri. And I think all of you have seen that many people are still waiting for Pandas.

          1 Reply Last reply Reply Quote 0
          • Matteo
            Matteo @cvp last edited by

            @cvp Hi, but which tool do you use to learn objc using only Pythonista? Any particular library written by someone here? Where do you find documentation about it? And can you make experiments in a protected environment (any sandboxed environement inside Pythonista main folder) on your idevice without risks to delete anything if some objc tests are not what you expected? only to learn something, not to become a objc guru :-)

            @lpl Hi, yes I'm agree with you about some old not-pure python libs, but only if you need to use some extra-new features of the new versions of numpy, matplotlib, PIL, ... I mean, about your use of Pythonista, really you need new features of new libraries versions listed by you or you can do what you want with the old ones built-in? For example, which kind of great new features the new version of numpy can offer compared to version 1.8.0 version of Pythonista? Remember, also if you had the newest version of numpy on Pythonista, you could not install anything not-pure python that requires the last version of numpy, and any pure-python library that requires the last version of numpy could be modified to be used with the old built-in numpy version (not always, you are right, and only if you know how to modify it, but generally it is possible).

            About Siri, which kind of innovation could exist for people who write python scripts with Pythonista? You know, about Siri I'm still waiting for Apple to add in iOS a feature that allows me to automatically answer incoming calls with Siri and to end a call at any time when I say with my voice a word that I saved in a Siri database (but it doesn't exist)... Sorry but I can't see any great advantages in developing Siri capabilities in Pythonista, can you suggest me someone? In my opinion it is better if someone could create an interface to use Pythonista on any computer with big screen, with a bluetooth connection (for example). I mean, I would use more and more Pythonista if I could link it to any computer that I use in order to use big keyboard, mouse, big screen, and to have on computer screen all keys, buttons, windows that I see on my iphone when using Pythonista.

            Regards
            Bye

            cvp ? 3 Replies Last reply Reply Quote 0
            • cvp
              cvp @Matteo last edited by

              @Matteo The doc I use is only the Apple developer doc...You find there all classes documentation.
              Often, I only type dir(ObjCInstance(any Pythonista object)) and I spend some time to check the methods and properties listed

              1 Reply Last reply Reply Quote 0
              • cvp
                cvp @Matteo last edited by cvp

                @Matteo You can't imagine what you can find with our big friend Google
                Try this little script, only to see what you could do with Pythonista
                And read this interesting topic and this one

                # https://rambo.codes/ios/2019/01/11/hacking-with-private-apis-on-ipad.html
                import ui
                from objc_util import *
                
                NSBundle = ObjCClass('NSBundle')
                UIWindow = ObjCClass('UIWindow')
                UIColor  = ObjCClass('UIColor')
                
                window = UIWindow.new()
                window.setBackgroundColor_(UIColor.darkGrayColor())
                NSBundle.bundleWithPath_('/System/Library/PrivateFrameworks/SpringBoardUIServices.framework').load()
                controller = ObjCClass('SBUIPowerDownViewController').new()
                window.setRootViewController_(controller)
                window.setHidden_(False)
                
                def close():
                	window.setHidden_(True)
                	
                ui.delay(close,5)
                
                1 Reply Last reply Reply Quote 2
                • ?
                  A Former User @Matteo last edited by

                  @Matteo Like this? https://pillow.readthedocs.io/en/stable/releasenotes/3.4.0.html#append-images-to-gif

                  And for siri, we can get weather from different resources. Or we just roll the dice to make a decision.

                  cvp 1 Reply Last reply Reply Quote 1
                  • cvp
                    cvp @Guest last edited by

                    @lpl said:

                    for siri, we can get weather from different resources

                    Sorry, I don't understand what you want to do with Siri

                    ? 1 Reply Last reply Reply Quote 0
                    • ?
                      A Former User @cvp last edited by

                      @cvp
                      -- Hi, siri how is the weather?
                      -- Here are some reports from different resources.

                      -- Hi, siri. Should I go with her?
                      -- I roll the dice. The answer is yes.

                      cvp 1 Reply Last reply Reply Quote 0
                      • cvp
                        cvp @Guest last edited by cvp

                        @lpl I think you can do that with the beta version, isn'it?

                        You have even Examples/Roll Dice.py

                        ? 1 Reply Last reply Reply Quote 0
                        • ?
                          A Former User @cvp last edited by

                          @cvp yeah. I'm using this.

                          cvp 1 Reply Last reply Reply Quote 0
                          • cvp
                            cvp @Guest last edited by cvp

                            @lpl you can use requests to get internet info in Shortcuts, even in background mode

                            #!python3
                            import requests
                            import shortcuts
                            def main():
                            	if shortcuts.is_shortcut():
                            		#shortcuts.set_tap_action(shortcuts.ACTION_SHOW_RESULTS)
                            		url = 'https://www.google.be/search?client=safari&q=meteo+local'
                            		r = requests.get(url)
                            		html = r.text
                            		shortcuts.set_html_output(html)
                            if __name__ == '__main__':
                            	main()
                            
                            ? 1 Reply Last reply Reply Quote 0
                            • ?
                              A Former User @cvp last edited by A Former User

                              @cvp Sorry, I don't like shortcuts and it is hard to debug on shortcuts. But I think I'll try this, that sounds interesting. Do you have a documentation about this module?

                              cvp 2 Replies Last reply Reply Quote 0
                              • cvp
                                cvp @Guest last edited by cvp

                                @lpl It is a standard module of the beta version.
                                Thus you find documentation by the normal way:

                                • select the word shortcuts in your edited script, choose help, as usual.
                                • Or the ? In the console part, then "What’s New in Pythonista"

                                Edit: shortcuts is not the Apple app Shortcuts but a module added by omz in the beta, thus is not difficult to debug. In background mode = without running the full Pythonista app.

                                1 Reply Last reply Reply Quote 0
                                • cvp
                                  cvp @Guest last edited by cvp

                                  @lpl you can even run a Pythonista script with Siri without using the new Shortcuts module:

                                  #!python3
                                  import ast
                                  import requests
                                  #import shortcuts
                                  city = 'Waterloo,be'
                                  url = "http://api.openweathermap.org/data/2.5/weather?q="+city+"&APPID=beb97c1ce62559bba4e81e28de8be095"
                                  r = requests.get(url)
                                  dict = ast.literal_eval(r.text)
                                  for k in dict:
                                  	print(k,dict[k])
                                  

                                  Edit: you can run and thus test this script in Pythonista normal mode, then configure as a Siri shortcut linked to a sentence, like "get my weather"...

                                  1 Reply Last reply Reply Quote 0
                                  • ccc
                                    ccc last edited by ccc

                                    for key, value in requests.get(url).json().items():
                                        print(key, value)  # or
                                        print(f"{key}: {value}")
                                    
                                    cvp 1 Reply Last reply Reply Quote 0
                                    • cvp
                                      cvp @ccc last edited by cvp

                                      @ccc I knew there was something better πŸ˜€

                                      Edit: print(f”{key}: {value}”) Refused

                                      Edit: invalid double quote

                                      	print(f"{key} : {value}")
                                      
                                      1 Reply Last reply Reply Quote 0
                                      • ccc
                                        ccc last edited by

                                        Thx. Fixed inline above.

                                        ? 1 Reply Last reply Reply Quote 0
                                        • ?
                                          A Former User @ccc last edited by

                                          @cvp try f-str
                                          f"http://api.openweathermap.org/data/2.5/weather?q={city}&APPID=beb97c1ce62559bba4e81e28de8be095"

                                          cvp 1 Reply Last reply Reply Quote 0
                                          • ccc
                                            ccc last edited by

                                            import location, requests, speech
                                            
                                            loc = location.reverse_geocode(location.get_location())
                                            city_country = "{City},{Country}".format(**loc[0])
                                            print(f"Weather in {city_country}:")
                                            url = "http://api.openweathermap.org/data/2.5/weather?APPID=beb97c1ce62559bba4e81e28de8be095&q="
                                            weather = requests.get(url + city_country).json()
                                            for key, value in weather.items():
                                                print(f"{key}: {value}")
                                            speech.say(f"It is currently {weather['weather'][0]['main']} in {city_country}.")
                                            
                                            cvp 1 Reply Last reply Reply Quote 2
                                            • First post
                                              Last post
                                            Powered by NodeBB Forums | Contributors