Blog

  • indego-py-lib

    Indego Bike Share Python Library

    About

    I have tried to make a re-usable Python library for the Philadelphia Indego Bike Share API!

    I wrote this similarly to my existing Indego PHP library.

    Check out the City of Philadelphia GitHub if you think this library is interesting!

    I created indego.ericoc.com (source code) using this library as well

    Installation

    Installation of this library should be as simple as running:

    pip install indego
    

    Compatibility

    Please note that this library is only compatible with Python 3+. Python 2 is not supported.

    Example

    When combined with the provided Indego class, the following code will generate the example output:

    from indego import Indego
    
    # Instantiate the Indego class
    indego = Indego()
    
    # Retrieve and print "university" stations
    uni_stations = indego.get_stations('university')
    print(uni_stations)
    
    # Show how many stations were returned above
    uni_count = len(uni_stations)
    print(uni_count, 'stations returned')
    

    Output:

    $ python3 university_example.py
    {3008: {'id': 3008, 'name': 'Temple University Station', 'coordinates': [-75.15067, 39.98081], 'totalDocks': 17, 'docksAvailable': 11, 'bikesAvailable': 5, 'classicBikesAvailable': 3, 'smartBikesAvailable': 0, 'electricBikesAvailable': 2, 'rewardBikesAvailable': 5, 'rewardDocksAvailable': 12, 'kioskStatus': 'FullService', 'kioskPublicStatus': 'Active', 'kioskConnectionStatus': 'Active', 'kioskType': 1, 'addressStreet': '1076 Berks Street', 'addressCity': 'Philadelphia', 'addressState': 'PA', 'addressZipCode': '19122', 'bikes': [{'dockNumber': 2, 'isElectric': False, 'isAvailable': True, 'battery': None}, {'dockNumber': 4, 'isElectric': False, 'isAvailable': True, 'battery': None}, {'dockNumber': 7, 'isElectric': False, 'isAvailable': True, 'battery': None}, {'dockNumber': 10, 'isElectric': True, 'isAvailable': True, 'battery': 42}, {'dockNumber': 12, 'isElectric': True, 'isAvailable': True, 'battery': 29}, {'dockNumber': 16, 'isElectric': False, 'isAvailable': False, 'battery': None}], 'closeTime': None, 'eventEnd': None, 'eventStart': None, 'isEventBased': False, 'isVirtual': False, 'kioskId': 3008, 'notes': None, 'openTime': None, 'publicText': '', 'timeZone': None, 'trikesAvailable': 0, 'latitude': 39.98081, 'longitude': -75.15067}, 3020: {'id': 3020, 'name': 'University City Station', 'coordinates': [-75.19007, 39.94855], 'totalDocks': 36, 'docksAvailable': 35, 'bikesAvailable': 0, 'classicBikesAvailable': 0, 'smartBikesAvailable': 0, 'electricBikesAvailable': 0, 'rewardBikesAvailable': 0, 'rewardDocksAvailable': 36, 'kioskStatus': 'FullService', 'kioskPublicStatus': 'Active', 'kioskConnectionStatus': 'Active', 'kioskType': 1, 'addressStreet': '3051 South St.', 'addressCity': 'Philadelphia', 'addressState': 'PA', 'addressZipCode': '19147', 'bikes': [{'dockNumber': 23, 'isElectric': False, 'isAvailable': False, 'battery': None}], 'closeTime': None, 'eventEnd': None, 'eventStart': None, 'isEventBased': False, 'isVirtual': False, 'kioskId': 3020, 'notes': None, 'openTime': None, 'publicText': '', 'timeZone': None, 'trikesAvailable': 0, 'latitude': 39.94855, 'longitude': -75.19007}}
    2 stations returned
    

    Providing an argument/filter to get_stations() to limit the selection of stations only limits the results within the Indego class. The API end-point itself always returns all stations.

    Unfortunately, there does not appear to be a signifcant amount of documentation for the API being used nor does there seem to be any parameters available to limit the stations being retrieved from the API.

    Calling get_stations() without any arguments will return a list of all (currently, 132) stations.

    More Information

    Visit original content creator repository
    https://github.com/ericoc/indego-py-lib

  • glimmer_metronome

    Glimmer Metronome 1.1.4

    Gem Version

    Glimmer Metronome supports different beat counts, click sounds, and tempos, including tap-based tempo calculation (click to see a video demo drum solo).

    metronome demo drum solo

    metronome demo

    Download Glimmer Metronome 1.1.3 DMG for Mac (ARM64 Ventura and Older)

    Download Glimmer Metronome 1.1.4 DMG for Mac (x64 Catalina and Older)

    Features

    metronome

    Beat Count Change

    metronome beat count changed

    Tempo Change (hit ENTER repeatedly to auto-calculate tempo)

    metronome tempo changed

    Click Sound Change (via mouse-click on beats to toggle yellow or white)

    metronome click sound changed

    Menus

    Action Menu

    metronome

    Action Menu – Beat Count

    metronome

    • Increment (CMD+= / CTRL+= on Linux/Windows)
    • Decrement (CMD+- on Mac / CTRL+- on Linux/Windows)

    Action Menu – Tempo

    metronome

    • Increment (CMD+ArrowUp / CTRL+ArrowUp on Linux/Windows)
    • Decrement (CMD+ArrowDown on Mac / CTRL+ArrowDown on Linux/Windows)
    • Increment by 10 (CMD+SHIFT+ArrowUp / CTRL+SHIFT+ArrowUp on Linux/Windows)
    • Decrement by 10 (CMD+SHIFT+ArrowDown on Mac / CTRL+SHIFT+ArrowDown on Linux/Windows)

    Help Menu

    metronome

    • Tips (CMD+T / CTRL+T on Linux/Windows)
    • About (CMD+A / CTRL+A on Linux/Windows)

    Software Setup Instructions

    You may download a pre-packaged version:

    Download Glimmer Metronome 1.1.3 DMG for Mac (ARM64 Ventura and Older)

    Download Glimmer Metronome 1.1.4 DMG for Mac (x64 Catalina and Older)

    Alternatively, if you are a software engineer and would like to install this application as a Ruby gem, you may follow these instructions:

    Lastly, you can package a native executable for your specific system (e.g. produce MSI/EXE file on Windows 10 x64) by following these instructions instead:

    • Ensure you have Glimmer DSL for SWT 4.22.2.1 prerequisites setup (like JDK and JRuby).
    • Clone repo: git clone https://github.com/AndyObtiva/glimmer_metronome.git (or git clone git@github.com:AndyObtiva/glimmer_metronome.git if you prefer SSH)
    • Go into directory: cd glimmer_metronome
    • Install project gems: bundle
    • Package native executable with glimmer package to produce APP on Mac, native project directory with exe on Windows, and native project with binary on Linux
    • Package native executable with glimmer "package[dmg]" to produce DMG file on Mac
    • Package native executable with glimmer "package[msi]" to produce MSI installer on Windows (assuming you installed the WiX Toolset as per the instructions at Glimmer DSL for SWT Packaging & Distribution)
    • You can also directly run the project from the cloned repo directory with glimmer run

    Contributing

    • Check out the latest master to make sure the feature hasn’t been implemented or the bug hasn’t been fixed yet.
    • Check out the issue tracker to make sure someone already hasn’t requested it and/or contributed it.
    • Fork the project.
    • Start a feature/bugfix branch.
    • Commit and push until you are happy with your contribution.
    • Make sure to add tests for it. This is important so I don’t break it in a future version unintentionally.
    • Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

    Copyright

    MIT

    Copyright (c) 2022-2023 Andy Maleh. See LICENSE.txt for further details.

    Glimmer Metronome icons made by Freepik from www.flaticon.com

    Visit original content creator repository https://github.com/AndyObtiva/glimmer_metronome
  • timew-bashcompletion

    timew-bashcompletion

    Bash completion for Timewarrior

    Installation

    1. Clone the repository.
    2. Copy or link the bash script to the appropriate place.

    Clone the repository

    $ git clone https://github.com/lauft/timew-bashcompletion.git
    

    Copy/link the Bash script

    You can either copy or symbolic link the bash script to install it.
    For global installation the target directory is /etc/bash_completion.d:

    $ cd /etc/bash_completion.d
    $ ln -s /path/to/timew_bashcompletion_repo/timew
    

    Alternatively you can source the completion script in your current shell.

    Usage

    Type a (partial) Timewarrior command and hit [TAB][TAB]

    List available commands:

    $> timew[TAB][TAB]
    cancel       diagnostics  help         report       stop         untag
    config       export       join         shorten      summary      week
    continue     extensions   lengthen     show         tag
    day          gaps         month        split        tags
    delete       get          move         start        track
    

    Complete a partial command:

    $> timew st[TAB][TAB]
    start  stop
    

    For timew tag you can get a list of available tags after entering an id:

    $> timew tag @2 [TAB][TAB]
    TAG1    TAG2    TAG3
    

    Environment variables

    With increasing size of your Timewarrior database the number of tags can also get quite large.
    In consequence, the completion of tags can become quite slow.

    With the environment variable TIMEW_COMPLETION_TAGS_RANGE, you can set a search range for your tags, e.g. 4w for the last 4 weeks.
    The default is :all for the complete database.
    See timew help ranges and timew help hints for details on that.

    Limits

    Currently, not all commands are fully supported – work in progress!

    License

    This work is licensed under the MIT licence.

    Visit original content creator repository
    https://github.com/lauft/timew-bashcompletion

  • ngm

    This was ported from an internal repo, and import URLs for the github.com/ragzilla/ngm/ pieces may not work, I’m not sure.

    Written against a much older version of go (before DSOs) which would be a much cleaner way to implement nowadays.

    Written against an older version of InfluxDB (before int64 support).

    • Requires NATS (gnatsd tested) running on localhost, and a telegraf server.
    • Compile sendngmsnmp (demo program) and ngmsnmp.
    • Run ngmsnmp as a daemon and it’ll listen on the NATS queue snmp.request
    • Run sendngmsnmp (or your own job submitter) from cron to send jobs into snmp.request. The design idea behind this internally was putting hosts on a consistent hash ring and submitting jobs across the 60 second polling window so we’d be submitting 50 jobs/second instead of 3000 jobs all at once. Using NATS (gnatsd) should allow for horizontal scaling as needed (just add more ngmsnmp processes listening on the same queue).
    • Results are posted in InfluxDB line format to queue snmp.result, have telegraf listen on that queue and insert into InfluxDB (handles bulking etc so the poller can be more of a naive implementation)

    Visit original content creator repository
    https://github.com/ragzilla/ngm

  • meta-hyperion

    Description
    ===========
    
    Yocto layer for Hyperion (https://github.com/hyperion-project/hyperion)
    
    Hyperion is an opensource 'AmbiLight' implementation supported by many devices.
    The main features of Hyperion are:
      - Low CPU load. For a led string of 50 leds the CPU usage will
        typically be below 1.5% on a non-overclocked Pi.
      - Json interface which allows easy integration into scripts.
      - A command line utility allows easy testing and configuration of
        the color transforms (Transformation settings are not preserved
        over a restart at the moment...).
      - Priority channels are not coupled to a specific led data provider
        which means that a provider can post led data and leave without the
        need to maintain a connection to Hyperion.
        This is ideal for a remote application (like our Android app).
      - HyperCon. A tool which helps generate a Hyperion configuration file.
      - Kodi-checker which checks the playing status of Kodi and decides
        whether or not to capture the screen.
      - Black border detector.
      - A scriptable effect engine.
      - Generic software architecture to support new devices and
        new algorithms easily.
    
    Dependencies
    ============
    
    This layer depends on:
    
      URI: git://git.yoctoproject.org/poky
      branch: master
      revision: HEAD
    
      URI: git://git.openembedded.org/meta-openembedded.git
      branch: master
      revision: HEAD
    
      URI: git://github.com/meta-qt5/meta-qt5.git
      branch: master
      revision: HEAD
    
    Patches
    =======
    
    Please submit any patches against the hyperion layer to the
    the maintainer:
    
    Maintainer: Thomas COIN <esvcorp at gmail.com>
    
    
    Table of Contents
    =================
    
      I. Adding the hyperion layer to your build
     II. Hyperion configuration
    III. Build
    
    
    I. Adding the hyperion layer to your build
    ==========================================
    
    In order to use this layer, you need to make the build system aware of
    it.
    
    Assuming the hyperion layer exists at the top-level of your
    yocto build tree, you can add it to the build system by adding the
    location of the hyperion layer to bblayers.conf, along with any
    other layers needed. e.g.:
    
      BBLAYERS ?= " \
        /path/to/yocto/meta \
        /path/to/yocto/meta-openembedded/meta-oe \
        /path/to/yocto/meta-yocto \
        /path/to/yocto/meta-yocto-bsp \
        /path/to/yocto/meta-raspberrypi \
        /path/to/yocto/meta-qt5 \
        /path/to/yocto/meta-hyperion \
        /path/to/yocto/meta-hyperion/meta-raspberrypi \
        "
    
    You also need to set a valid machine in your local.conf. e.g.:
    
      MACHINE = "raspberrypi2"
    
    
    II. Hyperion configuration
    ==========================
    
    The hyperion configuration is made via PACKAGECONFIG.
    The list of available package configurations is:
      - amlogic : Enable the AMLOGIC video grabber
      - dispmanx : Enable the RPi dispmanx grabber
      - fb : Enable the framebuffer grabber
      - protobuf : Enable PROTOBUF server
      - spi : Enable SPI device
      - tinkerforge : Enable the TINKERFORGE device
      - v4l2 : Enable the V4L2 grabber
      - x11 : Enable the X11 grabber
      - ws2812b : Enable the WS2812b-PWM device
      - ws281x : Enable the WS281x-PWM device
    
    By default are enabled :
      - protobuf
      - spi
      - v4l2
      - x11 (if x11 is in the DISTRO_FEATURES)
    
    When using meta-raspberrypi extra layer from meta-hyperion,
    the following extra package configurations are added :
      - dispmanx
      - ws2812b
      - ws281x
    
    You can change the hyperion config by adding the list of desired
    features in you local.conf. e.g. :
      # override PACKAGECONIFG
      PACKAGECONFIG_pn-hyperion = "some features"
      # append a feature
      PACKAGECONFIG_append_pn-hyperion = " feature"
      # remove a feature
      PACKAGECONFIG_remove_pn-hyperion = "feature"
    
    To add you own hyperion JSON configuration file, you need to override the
    HYPERION_CONFIG_FILE variable. You can set it in your local.conf. e.g. :
    
      HYPERION_CONFIG_FILE = "/path/to/your/config/hyperion.config.json"
    
    III. Build
    ==========
    
    First you need to source Yocto env:
    
      source oe-init-build-env build-hyperion-rpi
    
    To build hyperion package:
    
      bitbake hyperion
    
    To generate the image:
    
      bitbake <IMAGE_NAME>
    
    The available images are:
    
      - hyperion-minimal-image A minimal image, just able to boot and run hyperion + SSH
      - hyperion-minimal-dev-image A minimal image, just able to boot and run hyperion + SSH + debug tweaks + package management
      - hyperion-image-base A standard full-featured Linux system with hyperion
    
    Login: root
    Password: empty (no password)
    
    

    Visit original content creator repository
    https://github.com/ThomArmax/meta-hyperion

  • battleship

    🚢 BATTLESHIP

    Version Documentation

    A Battleship game using Test Driven Development with Jest.
    Developed for The Odin Project’s curriculum.

    ✨ Demo

    Battleship Homepage

    📜 Docs

    Install

    npm install

    Installs dependencies.

    Start

    npm run start

    Starts the development server.

    Test

    npm run test

    Runs the tests.

    Watch

    npm run watch

    Runs the test runner in watch mode.

    Build

    npm run build

    Builds the app for production to the dist directory.

    🚀 Manual Deployment

    Deploy to GitHub Pages from dist directory.

    1. Remove distdirectory from .gitignore.

    2. Create production bundle:

    npm run build
    
    1. Make sure git knows about your subtree (the subfolder with your site).
    git add dist && git commit -m "Initial dist subtree commit"
    1. Use subtree push to send it to the gh-pages branch on GitHub.
    git subtree push --prefix dist origin gh-pages

    📖 Lessons Learned

    • How to setup testing.
    • Developing using Test Driven Development with Jest.
    • Using Factory Functions and the Module Pattern.
    • Using SASS (or SCSS) to style the application using the SASS guidelines.
    • Manual deployment to GitHub Pages.
    • Using webpack for bundling and compiling.
    • Using [contentHash] in webpack bundles for cache busting.

    Author

    👤 Juan Carlos Lucio

    Visit original content creator repository https://github.com/JCarlosLucio/battleship
  • battleship

    🚢 BATTLESHIP

    Version Documentation

    A Battleship game using Test Driven Development with Jest.
    Developed for The Odin Project’s curriculum.

    ✨ Demo

    Battleship Homepage

    📜 Docs

    Install

    npm install

    Installs dependencies.

    Start

    npm run start

    Starts the development server.

    Test

    npm run test

    Runs the tests.

    Watch

    npm run watch

    Runs the test runner in watch mode.

    Build

    npm run build

    Builds the app for production to the dist directory.

    🚀 Manual Deployment

    Deploy to GitHub Pages from dist directory.

    1. Remove distdirectory from .gitignore.

    2. Create production bundle:

    npm run build
    
    1. Make sure git knows about your subtree (the subfolder with your site).
    git add dist && git commit -m "Initial dist subtree commit"
    1. Use subtree push to send it to the gh-pages branch on GitHub.
    git subtree push --prefix dist origin gh-pages

    📖 Lessons Learned

    • How to setup testing.
    • Developing using Test Driven Development with Jest.
    • Using Factory Functions and the Module Pattern.
    • Using SASS (or SCSS) to style the application using the SASS guidelines.
    • Manual deployment to GitHub Pages.
    • Using webpack for bundling and compiling.
    • Using [contentHash] in webpack bundles for cache busting.

    Author

    👤 Juan Carlos Lucio

    Visit original content creator repository https://github.com/JCarlosLucio/battleship
  • GistsForWallpapers

    Gists for Wallpaper Maker


    About

    This is simply a list of gists that was available on the first version of on FreeWallpaperMaker.com.

    The collection is presented in the form of a Github repo to make it easier for anyone to suggest changes or contribute their own gists.


    Gists included in the dropdown menu on FreeWallpaperMaker.com

    Description Gist ID Contributor
    Windows Terminal Commands 4664c9e22df3471964ad22a6840a770b Schbz
    Linux Terminal Commands ae1368d698df13014ac5f66c66cb1157 Schbz
    Git Commands 9c84a18384934775b14c835e8b9d9543 Schbz
    Calendar Cheat Sheets 759560893a913c8a6c6160ffa109cbf2 Schbz
    Icon Organizer Templates 31429a4f0a5606d282da5d00d7d30283 Schbz
    Markdown Cheat Sheet e9581611cb06035a7fbcf377b669adf7 Schbz
    NPM Cheat Sheet 1a032781db1d866ef1aa70a5a5077f77 Schbz
    Emmet HTML Abbreviations f2245d1eb9a3b2e2ac1b5998b2185a9a Schbz


    to download all the gists, run:

    python backup.py
    

    Ideas for future pasting gists

    • Package manager command cheat sheets (chocolatey, yarn, etc.)
    • Motivational quotes
    • VScode shortcut cheat sheets
    • Windows keyboard shortcuts cheat sheets
    • Mac keyboard shortcuts cheat sheets
    • Recipes/ cooking times
    • Workout schedules

    Contributing

    Anyone is welcome to contribute to the collection, by sending a pull request to this repo or by adding comments directly on the gists.

    Requirements for contributions

    • The gists should be something that people might want to add to their desktop wallpaper
    • Txt files should be formatted with spaces to look good when pasted as-is
    • Content should be free of any potential copyright infringement

    Visit original content creator repository
    https://github.com/schbz/GistsForWallpapers

  • Quran-App

    Quran App

    GitHub stars GitHub forks GitHub watchers

    GitHub license platform Open Source Love

    Features

    • Show All Surah
    • Last Read Surah
    • Detail Surah & Verses
    • Bookmark Verses
    • Play Audio Verses
    • Dark Theme Mode

    Banner Design

    
    
    
    

    Quick start

    This is a normal flutter app. You should follow the instructions in the official documentation. This project uses BLoC (business logic component) to separate the business logic with UI itself. It’s recommended to do self-study about it before jumping into the project here. And also on this project uses Modularization approach to separate each feature (domains, features, resources, shared_libraries modules).

    Modularization Structure 🔥

    # Root Project
    .
    ├── domains                # Name of directory
    |   ├── domain A           # Domains module with a data and domains layer inside it.
    |   ├── domain B
    |   └── domain etc
    |
    ├── features               # Name of directory
    |   ├── feature A          # Feature module with a presentation/ui/feature layer inside it.
    |   ├── feature B
    |   └── feature etc
    |
    ├── lib                    # Name of module (default from Flutter)
    |
    └── resources              # Name of directory
    |       └── resources      # Handle resources like style, fonts, constant value, etc.
    |
    └── shared_libraries       # Name of directory
        ├── common             # Handle common utility class.
        ├── core               # Core module.
        └── dependencies       # Handle dependency version updates.
    

    Resources 🔥

    Built With 🛠

    • Modularization – Separate functionality into independent, interchangeable modules.
    • Clean Architecture – The blueprint for a modular system, which strictly follows the design principle called separation of concerns.
    • Dependency Injection (get_it) – Simple direct Service Locator that allows to decouple the interface from a concrete implementation and to access the concrete implementation from everywhere in your App.
    • BLoC Pattern – Business logic component to separate the business logic with UI.
    • SQLite – Local Database
    • Equatable – Being able to compare objects in Dart often involves having to override the == operator.
    • Dio – A type-safe HTTP client.
    • Shared Preferences – Cache implementation approach.
    • Provider – A wrapper around InheritedWidget to make them easier to use and more reusable.
    • Flash – A highly customizable, powerful and easy-to-use alerting library.
    • Just Audio – A feature-rich audio player for Flutter.
    • Handle State – (Loading, No Data, Has Data, Error)

    Author

    • Raden Saleh

    Don’t forget to follow me, fork and give me a ⭐

    License

    MIT License
    
    Copyright (c) 2022 Raden Saleh
    
    Permission is hereby granted, free of charge, to any person obtaining a copy
    of this software and associated documentation files (the "Software"), to deal
    in the Software without restriction, including without limitation the rights
    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
    copies of the Software, and to permit persons to whom the Software is
    furnished to do so, subject to the following conditions:
    
    The above copyright notice and this permission notice shall be included in all
    copies or substantial portions of the Software.
    
    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
    SOFTWARE.
    
    Visit original content creator repository https://github.com/radensaleh/Quran-App
  • DXXcodeConsoleUnicodePlugin

    DXXcodeConsoleUnicodePlugin

    可以使用 https://github.com/dhcdht/XcodeHelper 管理和自动升级插件

    转换 Xcode 控制台中一些不可阅读的字符。

    比如:

    Error Domain=kCFErrorDomainCFNetwork Code=310 “\u4e0e\u5b89\u5168 web \u4ee3\u7406\u670d\u52a1\u5668 (HTTPS) \u901a\u4fe1\u65f6\u51fa\u73b0\u95ee\u9898\u3002” UserInfo=0x155e20e0 {_kCFStreamErrorCodeKey=-2096, NSErrorFailingURLStringKey=https://api.leancloud.cn/1.1/batch/save, NSErrorFailingURLKey=https://api.leancloud.cn/1.1/batch/save, NSLocalizedDescription=\u4e0e\u5b89\u5168 web \u4ee3\u7406\u670d\u52a1\u5668 (HTTPS) \u901a\u4fe1\u65f6\u51fa\u73b0\u95ee\u9898\u3002, _kCFStreamErrorDomainKey=4, NSLocalizedRecoverySuggestion=\u8bf7\u68c0\u67e5\u60a8\u7684\u4ee3\u7406\u8bbe\u7f6e\u3002\u6709\u5173\u6b64\u95ee\u9898\u7684\u5e2e\u52a9\uff0c\u8bf7\u8054\u7cfb\u60a8\u7684\u7cfb\u7edf\u7ba1\u7406\u5458\u3002}

    转换到:

    Error Domain=kCFErrorDomainCFNetwork Code=310 “与安全 web 代理服务器 (HTTPS) 通信时出现问题。” UserInfo=0x155e20e0 {_kCFStreamErrorCodeKey=-2096, NSErrorFailingURLStringKey=https://api.leancloud.cn/1.1/batch/save, NSErrorFailingURLKey=https://api.leancloud.cn/1.1/batch/save, NSLocalizedDescription=与安全 web 代理服务器 (HTTPS) 通信时出现问题。, _kCFStreamErrorDomainKey=4, NSLocalizedRecoverySuggestion=请检查您的代理设置。有关此问题的帮助,请联系您的系统管理员。}

    使用方法:

    两种:

    1.快捷键 option+c 会转换当前 剪贴板 中的内容并用一个对话框把转换后的内容显示出来。

    2.在 Xcode 的 Edit 菜单中勾选 ConvertUnicodeInConsole,然后 console 中再出现 \u4e0e 时,就会自动转换成 显示。

    Visit original content creator repository
    https://github.com/dhcdht/DXXcodeConsoleUnicodePlugin